vr-shopxo-plugin/shopxo/app/admin/view/default/index/init.html

800 lines
57 KiB
HTML
Executable File
Raw Blame History

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

{{:ModuleInclude('public/header')}}
<!-- right content start -->
<div class="content-right" data-url="{{:MyUrl('admin/index/stats')}}" data-is-stats="{{if isset($is_stats) and $is_stats eq true}}1{{else /}}0{{/if}}">
<div class="content bg-transparent am-padding-0">
<!-- 顶部钩子 -->
{{if isset($shopxo_is_develop) and $shopxo_is_develop eq true}}
<div class="plugins-tag">
<span>plugins_admin_view_index_init_top</span>
</div>
{{/if}}
{{if !empty($plugins_admin_view_index_init_top_data) and is_array($plugins_admin_view_index_init_top_data)}}
{{foreach $plugins_admin_view_index_init_top_data as $hook}}
{{if is_string($hook) or is_int($hook)}}
{{$hook|raw}}
{{/if}}
{{/foreach}}
{{/if}}
{{if $is_system_show_base eq 1}}
<!-- 顶部提示信息 -->
{{if !empty($site_store_info) and !empty($site_store_info['base']) and !empty($site_store_info['base']['site_top_notice'])}}
<div class="am-alert am-alert-danger am-radius" data-am-alert>
<button type="button" class="am-close">&times;</button>
<p>{{$site_store_info.base.site_top_notice|raw}}</p>
</div>
{{/if}}
<!-- 顶部基础信息 -->
<div class="block-container base-content-top am-nbfc">
<div class="am-fl am-nbfc left-content">
<!-- 帐号信息 -->
{{if !empty($site_store_info) and !empty($site_store_info['user'])}}
<i class="iconfont icon-admin-store-user am-vertical-align-middle"></i>
<span class="am-vertical-align-middle">{{$site_store_info.user.user_name_view}}</span>
<a href="javascript:;" class="am-margin-left-xs am-vertical-align-middle store-accounts-event">{{:MyLang('modify_title')}}</a>
{{else /}}
<a href="javascript:;" class="am-margin-left-xs am-vertical-align-middle store-accounts-event" data-title="{{:MyLang('store_bind_accounts_name')}}">{{:MyLang('store_bind_accounts_name')}}</a>
<!-- 连接商店错误信息 -->
{{if !empty($site_store_error)}}
<a href="javascript:;" class="am-icon-question-circle am-margin-left-xs am-vertical-align-middle" data-am-popover="{content: '{{$site_store_error}}', trigger: 'hover focus', theme: 'sm'}"></a>
{{/if}}
{{/if}}
<!-- 广告 -->
{{if !empty($site_store_info) and !empty($site_store_info['adverts']) and !empty($site_store_info['adverts']['name'])}}
<a class="am-margin-left-sm am-text-danger am-vertical-align-middle ad-content {{if !empty($site_store_info['adverts']['icon'])}}{{$site_store_info.adverts.icon}}{{/if}}" {{if empty($site_store_info['adverts']['url'])}}href="javascript:;"{{else /}}href="{{$site_store_info.adverts.url}}" target="_blank"{{/if}}> {{$site_store_info.adverts.name}}</a>
{{/if}}
</div>
<div class="am-fr am-nbfc right-content">
<!-- VIP授权信息 -->
{{if !empty($site_store_info) and !empty($site_store_info['vip']) and !empty($site_store_info['vip']['auth_view'])}}
<a class="vip am-radius {{if isset($site_store_info['vip']['status']) and $site_store_info['vip']['status'] eq 1}}vip-active{{/if}}" {{if empty($site_store_info['vip']['go_url'])}}href="javascript:;"{{else /}}href="{{$site_store_info.vip.go_url}}" target="_blank"{{/if}} {{if !empty($site_store_info['vip']['auth_person'])}}data-am-popover="{content: '{{:MyLang('store_bind_authorized_subject_name')}}{{$site_store_info.vip.auth_person}}', trigger: 'hover focus', theme: 'sm'}"{{/if}}>
<i class="iconfont icon-admin-store-vip"></i>
<span class="am-margin-left-xs">{{$site_store_info.vip.auth_view}}</span>
</a>
{{/if}}
<!-- 右侧版本信息及更新检查 -->
<span class="right-base">
<a {{if !empty($site_store_links) and !empty($site_store_links['system_update_log'])}}href="{{$site_store_links.system_update_log}}" target="_blank"{{else /}}href="javascript:;"{{/if}} class="am-margin-left-xs">{{$Think.APPLICATION_VERSION}}</a>
<a href="javascript:;" class="am-margin-left-sm inspect-upgrade-submit" data-url="{{:MyUrl('admin/index/inspectupgrade')}}">{{:MyLang('store_check_update_name')}}{{if !empty($site_store_info) and !empty($site_store_info['upgrade']) and !empty($site_store_info['upgrade']['version_old']) and $site_store_info['upgrade']['version_old'] eq $Think.APPLICATION_VERSION}}<i></i>{{/if}}</a>
</span>
</div>
</div>
{{/if}}
<!-- 公告顶部钩子 -->
{{if isset($shopxo_is_develop) and $shopxo_is_develop eq true}}
<div class="plugins-tag">
<span>plugins_admin_view_index_init_notice_top</span>
</div>
{{/if}}
{{if !empty($plugins_admin_view_index_init_notice_top_data) and is_array($plugins_admin_view_index_init_notice_top_data)}}
{{foreach $plugins_admin_view_index_init_notice_top_data as $hook}}
{{if is_string($hook) or is_int($hook)}}
{{$hook|raw}}
{{/if}}
{{/foreach}}
{{/if}}
<!-- 是否展示统计数据 -->
{{if isset($is_stats) and $is_stats eq true}}
<!-- 基础统计内部顶部钩子 -->
{{if isset($shopxo_is_develop) and $shopxo_is_develop eq true}}
<div class="plugins-tag">
<span>plugins_admin_view_index_init_stats_inside_base_top</span>
</div>
{{/if}}
{{if !empty($plugins_admin_view_index_init_stats_inside_base_top_data) and is_array($plugins_admin_view_index_init_stats_inside_base_top_data)}}
{{foreach $plugins_admin_view_index_init_stats_inside_base_top_data as $hook}}
{{if is_string($hook) or is_int($hook)}}
{{$hook|raw}}
{{/if}}
{{/foreach}}
{{/if}}
<!-- 基础统计 商城统计-->
<div class="am-flex am-flex-row am-flex-justify-between am-gap-1 shop-flex">
<div class="am-flex-1 am-flex-width">
<div class="block-container shopxo-base">
<div class="block-title echarts-title am-flex am-flex-row am-flex-justify-between am-flex-items-center am-flex-warp am-padding-bottom-sm">
<div class="am-pr">
<span class="title icon">{{:MyLang('index.base_item_base_stats_title')}}</span>
</div>
<div class="right-operate am-flex am-flex-items-center am-gap-1" data-type="base-count" data-empty-time="1">
{{if !empty($time_data)}}
<div class="quick-time am-flex am-flex-items-center">
{{foreach :array_values($time_data) as $k=>$v}}
{{if !in_array($v['key'], ['this-month', 'last-month'])}}
{{if $k lt 3}}
<a href="javascript:;" class="{{if !empty($default_day) and isset($time_data[$default_day]) and isset($time_data[$default_day]['start']) and isset($time_data[$default_day]['end']) and $time_data[$default_day]['start'] eq $v['start'] and $time_data[$default_day]['end'] eq $v['end']}} am-active{{/if}}" data-start="{{$v.start}}" data-end="{{$v.end}}">{{$v.name}}</a>
{{/if}}
{{/if}}
{{/foreach}}
<div id="base-dropdown" class="dropdown-more">
<div class="am-dropdown" data-am-dropdown="{justify: '#base-dropdown'}">
<a href="javascript:;" class="am-dropdown-toggle more-btn">{{:MyLang('more_title')}} <i class="iconfont icon-angle-down"></i></a>
<div class="am-dropdown-content am-radius-lg">
<div class="am-flex am-flex-warp am-gap-1">
{{foreach :array_values($time_data) as $k=>$v}}
{{if !in_array($v['key'], ['this-month', 'last-month'])}}
{{if $k gt 2}}
<div class="item">
<a href="javascript:;" class="am-inline-block time {{if !empty($default_day) and isset($time_data[$default_day]) and isset($time_data[$default_day]['start']) and isset($time_data[$default_day]['end']) and $time_data[$default_day]['start'] eq $v['start'] and $time_data[$default_day]['end'] eq $v['end']}} am-active{{/if}}" data-start="{{$v.start}}" data-end="{{$v.end}}">{{$v.name}}</a>
</div>
{{/if}}
{{/if}}
{{/foreach}}
<div class="item">
<a class="am-inline-block time" href="javascript:;" data-start="" data-end="">{{:MyLang('all_title')}}</a>
</div>
</div>
</div>
</div>
</div>
</div>
{{/if}}
{{:ModuleInclude('/index/stats_where')}}
</div>
</div>
<ul class="{{if isset($is_income) and $is_income eq true}}am-avg-sm-2 am-avg-lg-4{{else /}}am-avg-sm-1 am-avg-lg-3{{/if}}">
<li>
<div class="li-content down-hover glideover-hover">
<div class="am-flex am-flex-row am-flex-justify-between">
<div>
<p class="name">{{:MyLang('index.base_item_user_title')}}</p>
<p class="total animation-count-to base-user-count" data-to="{{$base_count.user_count}}" data-speed="1500">0</p>
</div>
<div class="item am-flex am-flex-col am-flex-items-end">
<span class="am-color-999">{{:MyLang('index.base_item_today_title')}}</span>
<span class="animation-count-to am-font-weight am-text-sm" data-to="{{$user.today_count}}" data-speed="1500">0</span>
</div>
</div>
<div class="am-flex am-flex-row am-gap-1 am-margin-bottom-xs">
<span>{{:MyLang('index.base_item_yesterday_title')}}</span>
<span class="animation-count-to" data-to="{{$user.yesterday_count}}" data-speed="1500">0</span>
</div>
<div class="li-content-foot am-flex am-flex-row am-flex-justify-between">
<div class="am-flex am-flex-row am-flex-justify-right am-gap-1">
<span>{{:MyLang('index.base_item_last_month_title')}}</span>
<span class="animation-count-to" data-to="{{$user.last_month_count}}" data-speed="1500">0</span>
</div>
<div class="am-flex am-flex-row am-flex-justify-right am-gap-1">
<span>{{:MyLang('index.base_item_same_month_title')}}</span>
<span class="animation-count-to" data-to="{{$user.same_month_count}}" data-speed="1500">0</span>
</div>
</div>
</div>
</li>
<li>
<div class="li-content down-hover glideover-hover">
<div class="am-flex am-flex-row am-flex-justify-between">
<div>
<p class="name">{{:MyLang('index.base_item_order_number_title')}}</p>
<p class="total animation-count-to base-order-count" data-to="{{$base_count.order_count}}" data-speed="1500">0</p>
</div>
<div class="item am-flex am-flex-col am-flex-items-end">
<span class="am-color-999">{{:MyLang('index.base_item_today_title')}}</span>
<span class="animation-count-to am-font-weight am-text-sm" data-to="{{$order_number.today_count}}" data-speed="1500">0</span>
</div>
</div>
<div class="am-flex am-flex-row am-gap-24 am-margin-bottom-xs">
<div class="item">
<span>{{:MyLang('index.base_item_yesterday_title')}}</span>
<span class="animation-count-to" data-to="{{$order_number.yesterday_count}}" data-speed="1500">0</span>
</div>
</div>
<div class="li-content-foot am-flex am-flex-row am-flex-justify-between">
<div class="am-flex am-flex-row am-flex-justify-right am-gap-1">
<span>{{:MyLang('index.base_item_last_month_title')}}</span>
<span class="animation-count-to" data-to="{{$order_number.last_month_count}}" data-speed="1500">0</span>
</div>
<div class="am-flex am-flex-row am-flex-justify-right am-gap-1">
<span>{{:MyLang('index.base_item_same_month_title')}}</span>
<span class="animation-count-to" data-to="{{$order_number.same_month_count}}" data-speed="1500">0</span>
</div>
</div>
</div>
</li>
<li>
<div class="li-content down-hover glideover-hover">
<div class="am-flex am-flex-row am-flex-justify-between">
<div>
<p class="name">{{:MyLang('index.base_item_order_complete_number_title')}}</p>
<p class="total animation-count-to base-order-sale-count" data-to="{{$base_count.order_sale_count}}" data-speed="1500">0</p>
</div>
<div class="item am-flex am-flex-col am-flex-items-end">
<span class="am-color-999">{{:MyLang('index.base_item_today_title')}}</span>
<span class="animation-count-to am-font-weight am-text-sm" data-to="{{$order_complete_number.today_count}}" data-speed="1500">0</span>
</div>
</div>
<div class="am-flex am-flex-row am-gap-24 am-margin-bottom-xs">
<div class="item">
<span>{{:MyLang('index.base_item_yesterday_title')}}</span>
<span class="animation-count-to" data-to="{{$order_complete_number.yesterday_count}}" data-speed="1500">0</span>
</div>
</div>
<div class="li-content-foot am-flex am-flex-row am-flex-justify-between">
<div class="am-flex am-flex-row am-flex-justify-right am-gap-1">
<span>{{:MyLang('index.base_item_last_month_title')}}</span>
<span class="animation-count-to" data-to="{{$order_complete_number.last_month_count}}" data-speed="1500">0</span>
</div>
<div class="am-flex am-flex-row am-flex-justify-right am-gap-1">
<span>{{:MyLang('index.base_item_same_month_title')}}</span>
<span class="animation-count-to" data-to="{{$order_complete_number.same_month_count}}" data-speed="1500">0</span>
</div>
</div>
</div>
</li>
<!-- 收入统计权限判断 -->
{{if isset($is_income) and $is_income eq true}}
<li>
<div class="li-content down-hover glideover-hover">
<div class="am-flex am-flex-row am-flex-justify-between">
<div>
<p class="name">{{:MyLang('index.base_item_order_complete_title')}}</p>
<p class="total animation-count-to base-order-complete-total" data-to="{{$base_count.order_complete_total}}" data-speed="1500" data-decimals="2">0.00</p>
</div>
<div class="item am-flex am-flex-col am-flex-items-end">
<span class="am-color-999">{{:MyLang('index.base_item_today_title')}}</span>
<span class="animation-count-to am-font-weight am-text-sm" data-to="{{$order_complete_money.today_count}}" data-speed="1500" data-decimals="2">0.00</span>
</div>
</div>
<div class="am-flex am-flex-row am-gap-24 am-margin-bottom-xs">
<div class="item">
<span>{{:MyLang('index.base_item_yesterday_title')}}</span>
<span class="animation-count-to" data-to="{{$order_complete_money.yesterday_count}}" data-speed="1500" data-decimals="2">0.00</span>
</div>
</div>
<div class="li-content-foot am-flex am-flex-row am-flex-justify-between">
<div class="am-flex am-flex-row am-flex-justify-right am-gap-1">
<span>{{:MyLang('index.base_item_last_month_title')}}</span>
<span class="animation-count-to" data-to="{{$order_complete_money.last_month_count}}" data-speed="1500" data-decimals="2">0.00</span>
</div>
<div class="am-flex am-flex-row am-flex-justify-right am-gap-1">
<span>{{:MyLang('index.base_item_same_month_title')}}</span>
<span class="animation-count-to" data-to="{{$order_complete_money.same_month_count}}" data-speed="1500" data-decimals="2">0.00</span>
</div>
</div>
</div>
</li>
{{/if}}
</ul>
</div>
</div>
<!-- 基础统计基础顶部钩子 -->
{{if isset($shopxo_is_develop) and $shopxo_is_develop eq true}}
<div class="plugins-tag">
<span>plugins_admin_view_index_init_stats_base_top</span>
</div>
{{/if}}
{{if !empty($plugins_admin_view_index_init_stats_base_top_data) and is_array($plugins_admin_view_index_init_stats_base_top_data)}}
{{foreach $plugins_admin_view_index_init_stats_base_top_data as $hook}}
{{if is_string($hook) or is_int($hook)}}
{{$hook|raw}}
{{/if}}
{{/foreach}}
{{/if}}
</div>
<div class="am-flex am-flex-row am-flex-justify-between am-gap-1 order-flex">
{{if isset($is_income) and $is_income eq true}}
<div class="am-flex-1 am-flex-width">
<div class="block-container">
<div class="block-title echarts-title am-flex am-flex-row am-flex-justify-between am-flex-items-center am-flex-warp am-padding-bottom-sm am-border-bottom">
<div class="am-pr am-flex am-flex-row am-gap-1 echarts-tabs">
<span class="title am-active am-cursor-pointer" data-key="order-profit">{{:MyLang('index.base_item_order_profit_title')}}</span>
<span class="title am-cursor-pointer" data-key="order-trading">{{:MyLang('index.base_item_order_trading_title')}}</span>
</div>
<div class="right-oprate-item">
<div class="order-profit">
<!-- 订单成交金额走势,收入统计权限判断-->
<div class="right-operate am-flex am-flex-items-center am-gap-1" data-type="order-profit" data-init="1">
{{if !empty($time_data)}}
<span class="quick-time am-flex am-flex-items-center">
{{foreach :array_values($time_data) as $k=>$v}}
{{if $k lt 3}}
<a href="javascript:;" class="{{if !empty($default_day) and isset($time_data[$default_day]) and isset($time_data[$default_day]['start']) and isset($time_data[$default_day]['end']) and $time_data[$default_day]['start'] eq $v['start'] and $time_data[$default_day]['end'] eq $v['end']}} am-active{{/if}}" data-start="{{$v.start}}" data-end="{{$v.end}}">{{$v.name}}</a>
{{/if}}
{{/foreach}}
<div id="order-profit-dropdown" class="dropdown-more">
<div class="am-dropdown" data-am-dropdown="{justify: '#order-profit-dropdown'}">
<a href="javascript:;" class="am-dropdown-toggle more-btn">{{:MyLang('more_title')}} <i class="iconfont icon-angle-down"></i></a>
<div class="am-dropdown-content am-radius-lg">
<div class="am-flex am-flex-warp am-gap-1">
{{foreach :array_values($time_data) as $k=>$v}}
{{if $k gt 2}}
<div class="item">
<a href="javascript:;" class="am-inline-block time {{if !empty($default_day) and isset($time_data[$default_day]) and isset($time_data[$default_day]['start']) and isset($time_data[$default_day]['end']) and $time_data[$default_day]['start'] eq $v['start'] and $time_data[$default_day]['end'] eq $v['end']}} am-active{{/if}}" data-start="{{$v.start}}" data-end="{{$v.end}}">{{$v.name}}</a>
</div>
{{/if}}
{{/foreach}}
</div>
</div>
</div>
</div>
</span>
{{/if}}
{{:ModuleInclude('/index/stats_where')}}
</div>
</div>
<div class="order-trading am-hide">
<!-- 订单交易走势 -->
<div class="right-operate am-flex am-flex-items-center am-gap-1" data-type="order-trading" data-init="1">
{{if !empty($time_data)}}
<span class="quick-time am-flex am-flex-items-center">
{{foreach :array_values($time_data) as $k=>$v}}
{{if $k lt 3}}
<a href="javascript:;" class="{{if !empty($default_day) and isset($time_data[$default_day]) and isset($time_data[$default_day]['start']) and isset($time_data[$default_day]['end']) and $time_data[$default_day]['start'] eq $v['start'] and $time_data[$default_day]['end'] eq $v['end']}} am-active{{/if}}" data-start="{{$v.start}}" data-end="{{$v.end}}">{{$v.name}}</a>
{{/if}}
{{/foreach}}
<div id="order-trading-dropdown" class="dropdown-more">
<div class="am-dropdown" data-am-dropdown="{justify: '#order-trading-dropdown'}">
<a href="javascript:;" class="am-dropdown-toggle more-btn">{{:MyLang('more_title')}} <i class="iconfont icon-angle-down"></i></a>
<div class="am-dropdown-content am-radius-lg">
<div class="am-flex am-flex-warp am-gap-1">
{{foreach :array_values($time_data) as $k=>$v}}
{{if $k gt 2}}
<div class="item">
<a href="javascript:;" class="am-inline-block time {{if !empty($default_day) and isset($time_data[$default_day]) and isset($time_data[$default_day]['start']) and isset($time_data[$default_day]['end']) and $time_data[$default_day]['start'] eq $v['start'] and $time_data[$default_day]['end'] eq $v['end']}} am-active{{/if}}" data-start="{{$v.start}}" data-end="{{$v.end}}">{{$v.name}}</a>
</div>
{{/if}}
{{/foreach}}
</div>
</div>
</div>
</div>
</span>
{{/if}}
{{:ModuleInclude('/index/stats_where')}}
</div>
</div>
</div>
</div>
<div class="echarts-content">
<div id="echarts-order-profit" class="echarts-tabs-change echarts-tabs-change-active"></div>
<div id="echarts-order-trading" class="echarts-tabs-change"></div>
</div>
</div>
</div>
{{/if}}
<div class="block-container shortcut-menu">
<div class="am-flex am-flex-row am-flex-justify-between am-flex-items-center">
<div class="am-pr block-title">
<span class="title icon">{{:MyLang('common_service.shortcutmenu.form_base_title')}}</span>
</div>
<div class="more-layout">
<a href="javascript:;" class="submit-popup" data-class="admin-index-shortcutmenu-popup" data-on-open="ShortcutmenuOpenBackEvent" data-on-close="ShortcutmenuCloseBackEvent" data-url="{{:MyUrl('admin/shortcutmenu/index')}}" data-title="{{:MyLang('admin_title')}}">{{:MyLang('admin_title')}}</a>
</div>
</div>
<div class="shortcut-menu-list am-margin-top-xl">
{{if empty($shortcut_menu_data)}}
{{:ModuleInclude('public/not_data')}}
{{else /}}
<div class="shortcut-menu-content am-flex am-flex-row am-flex-warp">
{{foreach $shortcut_menu_data as $v}}
<a href="javascript:;" data-url="{{$v.url}}" data-key="{{$v.menu}}" data-id="{{$v.menu}}" data-type="menu" data-name="{{$v.name}}" class="item am-text-center am-radius">
<img src="{{$v.icon}}" class="am-radius scale-sm" />
<p class="am-color-333">{{$v.name}}</p>
</a>
{{/foreach}}
</div>
{{/if}}
</div>
</div>
</div>
<!-- 订单金额走势统计内部顶部钩子 -->
{{if isset($shopxo_is_develop) and $shopxo_is_develop eq true}}
<div class="plugins-tag">
<span>plugins_admin_view_index_init_stats_inside_amount_trend_top</span>
</div>
{{/if}}
{{if !empty($plugins_admin_view_index_init_stats_inside_amount_trend_top_data) and is_array($plugins_admin_view_index_init_stats_inside_amount_trend_top_data)}}
{{foreach $plugins_admin_view_index_init_stats_inside_amount_trend_top_data as $hook}}
{{if is_string($hook) or is_int($hook)}}
{{$hook|raw}}
{{/if}}
{{/foreach}}
{{/if}}
<!-- 订单交易走势统计内部顶部钩子 -->
{{if isset($shopxo_is_develop) and $shopxo_is_develop eq true}}
<div class="plugins-tag">
<span>plugins_admin_view_index_init_stats_inside_order_trading_top</span>
</div>
{{/if}}
{{if !empty($plugins_admin_view_index_init_stats_inside_order_trading_top_data) and is_array($plugins_admin_view_index_init_stats_inside_order_trading_top_data)}}
{{foreach $plugins_admin_view_index_init_stats_inside_order_trading_top_data as $hook}}
{{if is_string($hook) or is_int($hook)}}
{{$hook|raw}}
{{/if}}
{{/foreach}}
{{/if}}
<!-- 组合商品和支付统计内部顶部钩子 -->
{{if isset($shopxo_is_develop) and $shopxo_is_develop eq true}}
<div class="plugins-tag">
<span>plugins_admin_view_index_init_stats_inside_compose_top</span>
</div>
{{/if}}
{{if !empty($plugins_admin_view_index_init_stats_inside_compose_top_data) and is_array($plugins_admin_view_index_init_stats_inside_compose_top_data)}}
{{foreach $plugins_admin_view_index_init_stats_inside_compose_top_data as $hook}}
{{if is_string($hook) or is_int($hook)}}
{{$hook|raw}}
{{/if}}
{{/foreach}}
{{/if}}
<!-- 组合 -->
<ul class="block-combination-container-2 am-flex am-flex-row am-flex-justify-between am-gap-1 am-margin-bottom-sm">
<li class="am-flex-1">
<!-- 热销商品 -->
<div class="block-title echarts-title goods-hot-flex am-flex am-flex-row am-flex-justify-between am-flex-items-center am-flex-warp am-padding-bottom-sm">
<div class="am-pr">
<span class="title icon">{{:MyLang('index.base_item_hot_sales_goods_title')}}</span>
</div>
<div class="right-operate am-flex am-flex-items-center am-gap-1" data-type="goods-hot" data-init="1" data-empty-time="1">
{{if !empty($time_data)}}
<span class="quick-time am-flex am-flex-items-center">
{{foreach :array_values($time_data) as $k=>$v}}
{{if $k lt 3}}
<a href="javascript:;" class="{{if !empty($default_day) and isset($time_data[$default_day]) and isset($time_data[$default_day]['start']) and isset($time_data[$default_day]['end']) and $time_data[$default_day]['start'] eq $v['start'] and $time_data[$default_day]['end'] eq $v['end']}} am-active{{/if}}" data-start="{{$v.start}}" data-end="{{$v.end}}">{{$v.name}}</a>
{{/if}}
{{/foreach}}
<div id="goods-hot-dropdown" class="dropdown-more">
<div class="am-dropdown" data-am-dropdown="{justify: '#goods-hot-dropdown'}">
<a href="javascript:;" class="am-dropdown-toggle more-btn">{{:MyLang('more_title')}} <i class="iconfont icon-angle-down"></i></a>
<div class="am-dropdown-content am-radius-lg">
<div class="am-flex am-flex-warp am-gap-1">
{{foreach :array_values($time_data) as $k=>$v}}
{{if $k gt 2}}
<div class="item">
<a href="javascript:;" class="am-inline-block time {{if !empty($default_day) and isset($time_data[$default_day]) and isset($time_data[$default_day]['start']) and isset($time_data[$default_day]['end']) and $time_data[$default_day]['start'] eq $v['start'] and $time_data[$default_day]['end'] eq $v['end']}} am-active{{/if}}" data-start="{{$v.start}}" data-end="{{$v.end}}">{{$v.name}}</a>
</div>
{{/if}}
{{/foreach}}
<div class="item">
<a class="am-inline-block time" href="javascript:;" data-start="" data-end="">{{:MyLang('all_title')}}</a>
</div>
</div>
</div>
</div>
</div>
</span>
{{/if}}
{{:ModuleInclude('/index/stats_where')}}
</div>
</div>
<div id="echarts-goods-hot"></div>
</li>
<li class="am-flex-1">
<!-- 支付方式 -->
<div class="block-title echarts-title pay-type-flex am-flex am-flex-row am-flex-justify-between am-flex-items-center am-flex-warp am-padding-bottom-sm">
<div class="am-pr">
<span class="title icon">{{:MyLang('index.base_item_payment_type_title')}}</span>
</div>
<div class="right-operate am-flex am-flex-items-center am-gap-1" data-type="pay-type" data-init="1">
{{if !empty($time_data)}}
<span class="quick-time am-flex am-flex-items-center">
{{foreach :array_values($time_data) as $k=>$v}}
{{if $k lt 3}}
<a href="javascript:;" class="{{if !empty($default_day) and isset($time_data[$default_day]) and isset($time_data[$default_day]['start']) and isset($time_data[$default_day]['end']) and $time_data[$default_day]['start'] eq $v['start'] and $time_data[$default_day]['end'] eq $v['end']}} am-active{{/if}}" data-start="{{$v.start}}" data-end="{{$v.end}}">{{$v.name}}</a>
{{/if}}
{{/foreach}}
<div id="pay-type-dropdown" class="dropdown-more">
<div class="am-dropdown" data-am-dropdown="{justify: '#pay-type-dropdown'}">
<a href="javascript:;" class="am-dropdown-toggle more-btn">{{:MyLang('more_title')}} <i class="iconfont icon-angle-down"></i></a>
<div class="am-dropdown-content am-radius-lg">
<div class="am-flex am-flex-warp am-gap-1">
{{foreach :array_values($time_data) as $k=>$v}}
{{if $k gt 2}}
<div class="item">
<a href="javascript:;" class="am-inline-block time {{if !empty($default_day) and isset($time_data[$default_day]) and isset($time_data[$default_day]['start']) and isset($time_data[$default_day]['end']) and $time_data[$default_day]['start'] eq $v['start'] and $time_data[$default_day]['end'] eq $v['end']}} am-active{{/if}}" data-start="{{$v.start}}" data-end="{{$v.end}}">{{$v.name}}</a>
</div>
{{/if}}
{{/foreach}}
</div>
</div>
</div>
</div>
</span>
{{/if}}
{{:ModuleInclude('/index/stats_where')}}
</div>
</div>
<div id="echarts-pay-type"></div>
</li>
</ul>
<!-- 地域分布统计内部顶部钩子 -->
{{if isset($shopxo_is_develop) and $shopxo_is_develop eq true}}
<div class="plugins-tag">
<span>plugins_admin_view_index_init_stats_inside_region_top</span>
</div>
{{/if}}
{{if !empty($plugins_admin_view_index_init_stats_inside_region_top_data) and is_array($plugins_admin_view_index_init_stats_inside_region_top_data)}}
{{foreach $plugins_admin_view_index_init_stats_inside_region_top_data as $hook}}
{{if is_string($hook) or is_int($hook)}}
{{$hook|raw}}
{{/if}}
{{/foreach}}
{{/if}}
<!-- 订单地域分布 -->
<ul class="block-combination-container-2 am-flex am-flex-row am-flex-justify-between am-gap-1 {{if $is_system_show_base eq 1}}am-margin-bottom-sm{{/if}}">
<li class="am-flex-1">
<div class="block-title echarts-title area-flex am-flex am-flex-row am-flex-justify-between am-flex-items-center am-flex-warp am-padding-bottom-sm">
<div class="am-pr area-select">
<span class="title icon">{{:MyLang('index.base_item_map_whole_country_title')}}</span>
<select name="value" data-am-selected="{btnWidth: '80px', btnSize: 'xs'}">
<option value="0" selected>{{:MyLang('index.base_item_map_whole_country_province')}}</option>
<option value="1">{{:MyLang('index.base_item_map_whole_country_city')}}</option>
<option value="2">{{:MyLang('index.base_item_map_whole_country_county')}}</option>
</select>
</div>
<div class="right-operate am-flex am-flex-items-center am-gap-1" data-type="order-whole-country" data-init="1" data-empty-time="1">
{{if !empty($time_data)}}
<span class="quick-time am-flex am-flex-items-center">
{{foreach :array_values($time_data) as $k=>$v}}
{{if $k lt 3}}
<a href="javascript:;" class="{{if !empty($default_day) and isset($time_data[$default_day]) and isset($time_data[$default_day]['start']) and isset($time_data[$default_day]['end']) and $time_data[$default_day]['start'] eq $v['start'] and $time_data[$default_day]['end'] eq $v['end']}} am-active{{/if}}" data-start="{{$v.start}}" data-end="{{$v.end}}">{{$v.name}}</a>
{{/if}}
{{/foreach}}
<div id="order-whole-country-dropdown" class="dropdown-more">
<div class="am-dropdown" data-am-dropdown="{justify: '#order-whole-country-dropdown'}">
<a href="javascript:;" class="am-dropdown-toggle more-btn">{{:MyLang('more_title')}} <i class="iconfont icon-angle-down"></i></a>
<div class="am-dropdown-content am-radius-lg">
<div class="am-flex am-flex-warp am-gap-1">
{{foreach :array_values($time_data) as $k=>$v}}
{{if $k gt 2}}
<div class="item">
<a href="javascript:;" class="am-inline-block time {{if !empty($default_day) and isset($time_data[$default_day]) and isset($time_data[$default_day]['start']) and isset($time_data[$default_day]['end']) and $time_data[$default_day]['start'] eq $v['start'] and $time_data[$default_day]['end'] eq $v['end']}} am-active{{/if}}" data-start="{{$v.start}}" data-end="{{$v.end}}">{{$v.name}}</a>
</div>
{{/if}}
{{/foreach}}
<div class="item">
<a class="am-inline-block time" href="javascript:;" data-start="" data-end="">{{:MyLang('all_title')}}</a>
</div>
</div>
</div>
</div>
</div>
</span>
{{/if}}
{{:ModuleInclude('/index/stats_where')}}
</div>
</div>
<div id="echarts-map-whole-country"></div>
</li>
<li class="am-flex-1">
<div class="block-title echarts-title user-flex am-flex am-flex-row am-flex-justify-between am-flex-items-center am-flex-warp am-padding-bottom-sm am-border-bottom">
<div class="am-pr am-flex am-flex-row am-gap-1 echarts-tabs">
<span class="title am-active am-cursor-pointer" data-key="new-user">{{:MyLang('index.base_item_new_user_title')}}</span>
<span class="title am-cursor-pointer" data-key="buy-user">{{:MyLang('index.base_item_buy_user_title')}}</span>
</div>
<div class="right-oprate-item">
<div class="new-user">
<!--新增用户-->
<div class="right-operate am-flex am-flex-items-center am-gap-1" data-type="new-user" data-init="1">
{{if !empty($time_data)}}
<span class="quick-time am-flex am-flex-items-center">
{{foreach :array_values($time_data) as $k=>$v}}
{{if $k lt 3}}
<a href="javascript:;" class="{{if !empty($default_day) and isset($time_data[$default_day]) and isset($time_data[$default_day]['start']) and isset($time_data[$default_day]['end']) and $time_data[$default_day]['start'] eq $v['start'] and $time_data[$default_day]['end'] eq $v['end']}} am-active{{/if}}" data-start="{{$v.start}}" data-end="{{$v.end}}">{{$v.name}}</a>
{{/if}}
{{/foreach}}
<div id="new-user-dropdown" class="dropdown-more">
<div class="am-dropdown" data-am-dropdown="{justify: '#new-user-dropdown'}">
<a href="javascript:;" class="am-dropdown-toggle more-btn">{{:MyLang('more_title')}} <i class="iconfont icon-angle-down"></i></a>
<div class="am-dropdown-content am-radius-lg">
<div class="am-flex am-flex-warp am-gap-1">
{{foreach :array_values($time_data) as $k=>$v}}
{{if $k gt 2}}
<div class="item">
<a href="javascript:;" class="am-inline-block time {{if !empty($default_day) and isset($time_data[$default_day]) and isset($time_data[$default_day]['start']) and isset($time_data[$default_day]['end']) and $time_data[$default_day]['start'] eq $v['start'] and $time_data[$default_day]['end'] eq $v['end']}} am-active{{/if}}" data-start="{{$v.start}}" data-end="{{$v.end}}">{{$v.name}}</a>
</div>
{{/if}}
{{/foreach}}
</div>
</div>
</div>
</div>
</span>
{{/if}}
{{:ModuleInclude('/index/stats_where')}}
</div>
</div>
<div class="buy-user am-hide">
<!-- 购买用户统计 -->
<div class="right-operate am-flex am-flex-items-center am-gap-1" data-type="buy-user" data-init="1">
{{if !empty($time_data)}}
<span class="quick-time am-flex am-flex-items-center">
{{foreach :array_values($time_data) as $k=>$v}}
{{if $k lt 3}}
<a href="javascript:;" class="{{if !empty($default_day) and isset($time_data[$default_day]) and isset($time_data[$default_day]['start']) and isset($time_data[$default_day]['end']) and $time_data[$default_day]['start'] eq $v['start'] and $time_data[$default_day]['end'] eq $v['end']}} am-active{{/if}}" data-start="{{$v.start}}" data-end="{{$v.end}}">{{$v.name}}</a>
{{/if}}
{{/foreach}}
<div id="buy-user-dropdown" class="dropdown-more">
<div class="am-dropdown" data-am-dropdown="{justify: '#buy-user-dropdown'}">
<a href="javascript:;" class="am-dropdown-toggle more-btn">{{:MyLang('more_title')}} <i class="iconfont icon-angle-down"></i></a>
<div class="am-dropdown-content am-radius-lg">
<div class="am-flex am-flex-warp am-gap-1">
{{foreach :array_values($time_data) as $k=>$v}}
{{if $k gt 2}}
<div class="item">
<a href="javascript:;" class="am-inline-block time {{if !empty($default_day) and isset($time_data[$default_day]) and isset($time_data[$default_day]['start']) and isset($time_data[$default_day]['end']) and $time_data[$default_day]['start'] eq $v['start'] and $time_data[$default_day]['end'] eq $v['end']}} am-active{{/if}}" data-start="{{$v.start}}" data-end="{{$v.end}}">{{$v.name}}</a>
</div>
{{/if}}
{{/foreach}}
</div>
</div>
</div>
</div>
</span>
{{/if}}
{{:ModuleInclude('/index/stats_where')}}
</div>
</div>
</div>
</div>
<div class="echarts-content">
<div id="echarts-new-user" class="echarts-tabs-change echarts-tabs-change-active"></div>
<div id="echarts-buy-user" class="echarts-tabs-change"></div>
</div>
</li>
</ul>
{{/if}}
<!-- 系统信息顶部钩子 -->
{{if isset($shopxo_is_develop) and $shopxo_is_develop eq true}}
<div class="plugins-tag">
<span>plugins_admin_view_index_init_system_info_top</span>
</div>
{{/if}}
{{if !empty($plugins_admin_view_index_init_system_info_top_data) and is_array($plugins_admin_view_index_init_system_info_top_data)}}
{{foreach $plugins_admin_view_index_init_system_info_top_data as $hook}}
{{if is_string($hook) or is_int($hook)}}
{{$hook|raw}}
{{/if}}
{{/foreach}}
{{/if}}
<!-- 系统信息 -->
{{if $is_system_show_base eq 1}}
<ul class="block-combination-container-2 am-flex am-flex-row am-flex-justify-between am-gap-1">
<li class="am-flex-1">
<div class="block-title">
<span class="title icon">{{:MyLang('index.system_info_title')}}</span>
</div>
<dl class="dl-content">
<dt class="am-text-truncate">{{:MyLang('index.system_ver_title')}}</dt>
<dd>{{$data.ver}}</dd>
<dt class="am-text-truncate">{{:MyLang('index.system_os_ver_title')}}</dt>
<dd>{{$data.os_ver}}</dd>
<dt class="am-text-truncate">{{:MyLang('index.system_php_ver_title')}}</dt>
<dd>{{$data.php_ver}}</dd>
<dt class="am-text-truncate">{{:MyLang('index.system_mysql_ver_title')}}</dt>
<dd>{{$data.mysql_ver}}</dd>
<dt class="am-text-truncate">{{:MyLang('index.system_server_ver_title')}}</dt>
<dd>{{$data.server_ver}}</dd>
<dt class="am-text-truncate">{{:MyLang('index.system_host_title')}}</dt>
<dd>{{$data.host}}</dd>
</dl>
</li>
<li class="am-flex-1">
<div class="block-title">
<span class="title icon">{{:MyLang('index.development_team_title')}}</span>
</div>
<dl class="dl-content">
<dt class="am-text-truncate">{{:MyLang('index.development_team_website_title')}}</dt>
<dd>
<a href="http://zongzhige.com/" target="_blank">{{:MyLang('index.development_team_website_value')}}</a>
</dd>
<dt class="am-text-truncate">{{:MyLang('index.development_team_support_title')}}</dt>
<dd>
<a href="http://shopxo.net/" target="_blank">{{:MyLang('index.development_team_support_value')}}</a>
</dd>
{{if !empty($site_store_links) and !empty($site_store_links['community_website'])}}
<dt class="am-text-truncate">{{:MyLang('index.development_team_ask_title')}}</dt>
<dd>
<a href="{{$site_store_links.community_website}}" target="_blank">{{:MyLang('index.development_team_ask_value')}}</a>
</dd>
{{/if}}
<dt class="am-text-truncate">{{:MyLang('index.development_team_agreement_title')}}</dt>
<dd>
<a href="{{if !empty($site_store_links) and !empty($site_store_links['source_license'])}}{{$site_store_links.source_license}}{{else /}}https://opensource.org/licenses/mit-license.php{{/if}}" target="_blank">{{:MyLang('index.development_team_agreement_value')}}</a>
</dd>
{{if !empty($site_store_links) and !empty($site_store_links['system_update_log'])}}
<dt class="am-text-truncate">{{:MyLang('index.development_team_update_log_title')}}</dt>
<dd>
<a href="{{$site_store_links.system_update_log}}" target="_blank">{{:MyLang('index.development_team_update_log_value')}}</a>
</dd>
{{/if}}
{{if is_array(MyLang('index.development_team_members_value'))}}
<dt class="am-text-truncate">{{:MyLang('index.development_team_members_title')}}</dt>
<dd>
{{foreach :MyLang('index.development_team_members_value') as $v}}
<a href="{{$v.url}}" target="_blank" class="am-margin-right-sm">{{$v.name}}</a>
{{/foreach}}
</dd>
{{/if}}
</dl>
</li>
</ul>
{{/if}}
<!-- 底部钩子 -->
{{if isset($shopxo_is_develop) and $shopxo_is_develop eq true}}
<div class="plugins-tag">
<span>plugins_admin_view_index_init_bottom</span>
</div>
{{/if}}
{{if !empty($plugins_admin_view_index_init_bottom_data) and is_array($plugins_admin_view_index_init_bottom_data)}}
{{foreach $plugins_admin_view_index_init_bottom_data as $hook}}
{{if is_string($hook) or is_int($hook)}}
{{$hook|raw}}
{{/if}}
{{/foreach}}
{{/if}}
</div>
</div>
<!-- right content end -->
<!-- 检查更新显示信息 -->
<div class="am-popup am-radius" id="inspect-upgrade-popup">
<div class="am-popup-inner">
<div class="am-popup-hd">
<h4 class="am-popup-title">{{:MyLang('index.base_update_system_title')}}</h4>
<span data-am-modal-close class="am-close">&times;</span>
</div>
<div class="am-popup-bd">
<form class="am-form am-form-popup-fixed">
<div class="upgrade-content"></div>
<div class="am-form-popup-submit">
<button type="button" class="am-btn am-btn-warning am-radius am-btn-xs am-margin-right-lg" data-am-modal-close>
<i class="am-icon-paint-brush"></i>
<span>{{:MyLang('cancel_title')}}</span>
</button>
<button type="button" class="am-btn am-btn-primary am-radius am-btn-xs inspect-upgrade-confirm" data-url="{{:MyUrl('admin/index/inspectupgradeconfirm')}}">
<i class="am-icon-check"></i>
<span>{{:MyLang('index.base_update_button_title')}}</span>
</button>
</div>
</form>
</div>
</div>
</div>
<!-- footer start -->
{{:ModuleInclude('public/footer')}}
<script>
// 常用功能
// 关闭弹窗监听回调
function ShortcutmenuCloseBackEvent()
{
var sttaus = parseInt(sessionStorage.getItem('admin_shortcutmenu_oprate_status') || 0);
if(sttaus == 1)
{
sessionStorage.setItem('admin_shortcutmenu_oprate_status', 0);
window.location.reload();
}
}
// 开启弹窗监听回调
function ShortcutmenuOpenBackEvent()
{
sessionStorage.setItem('admin_shortcutmenu_oprate_status', 0);
}
</script>