diff --git a/src/assets/input_ex_ic_high.svg b/src/assets/input_ex_ic_high.svg new file mode 100644 index 0000000..d2ace0d --- /dev/null +++ b/src/assets/input_ex_ic_high.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/mon-expend.svg b/src/assets/mon-expend.svg new file mode 100644 index 0000000..9ef3584 --- /dev/null +++ b/src/assets/mon-expend.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/mon-income.svg b/src/assets/mon-income.svg new file mode 100644 index 0000000..e2d205d --- /dev/null +++ b/src/assets/mon-income.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/mon-loss.svg b/src/assets/mon-loss.svg new file mode 100644 index 0000000..4c3ebb7 --- /dev/null +++ b/src/assets/mon-loss.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/mon-order-volume.svg b/src/assets/mon-order-volume.svg new file mode 100644 index 0000000..cbeb72e --- /dev/null +++ b/src/assets/mon-order-volume.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/mon-profit.svg b/src/assets/mon-profit.svg new file mode 100644 index 0000000..fa646f7 --- /dev/null +++ b/src/assets/mon-profit.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/site/recharge_bonus.png b/src/assets/site/recharge_bonus.png new file mode 100644 index 0000000..aa29937 Binary files /dev/null and b/src/assets/site/recharge_bonus.png differ diff --git a/src/assets/site/refund_reason.png b/src/assets/site/refund_reason.png new file mode 100644 index 0000000..cba1aba Binary files /dev/null and b/src/assets/site/refund_reason.png differ diff --git a/src/assets/site/tb_buy_btn.svg b/src/assets/site/tb_buy_btn.svg new file mode 100644 index 0000000..f7f3e6e --- /dev/null +++ b/src/assets/site/tb_buy_btn.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/components/GuipSelect.vue b/src/components/GuipSelect.vue index bb02428..2cf7da9 100644 --- a/src/components/GuipSelect.vue +++ b/src/components/GuipSelect.vue @@ -60,10 +60,12 @@ export default { computed: { processedOptions() { // 处理options为空的情况 + // let options = [1,5,3] || []; + let newOptions = null let options = this.options || []; // 如果是 [1,12,22] 格式 - if (Array.isArray(options) && options.every(item => typeof item !== 'object')) { - return options.map((item, index) => ({ + if (Array.isArray(options) && options.length > 0 && options.every(item => typeof item !== 'object')) { + newOptions = options.map((item, index) => ({ [this.valueKey]: index, [this.labelKey]: item })); @@ -76,19 +78,18 @@ export default { [this.labelKey]: options[key] })); } - // 当extraItem存在且不是空对象时,添加到options数组开头 if (this.extraItem && Object.keys(this.extraItem).length > 0) { - return [ + newOptions = [ { [this.labelKey]: this.extraItem.label || '', [this.valueKey]: this.extraItem.value || '', disabled: this.extraItem.disabled || false }, - ...options + ...newOptions ]; } - return options; + return newOptions; } }, watch: { diff --git a/src/components/super/DateSelect.vue b/src/components/super/DateSelect.vue index 9292fd3..39c91e1 100644 --- a/src/components/super/DateSelect.vue +++ b/src/components/super/DateSelect.vue @@ -11,7 +11,7 @@
- +
@@ -62,6 +62,10 @@ onlyYear:{ type:Boolean, default:false + }, + onlyMonth:{ + type:Boolean, + default:false } }, data() { diff --git a/src/router/index.js b/src/router/index.js index 41170a2..fbb5d0b 100755 --- a/src/router/index.js +++ b/src/router/index.js @@ -10,7 +10,7 @@ const whiteSecondSider = [ const blackSliderList = [ '/franchise', '/agreement', '/customizeDoc', '/agent/siteAdd', '/agent/siteServiceList', '/agent/siteTemplate','/agent/siteAddFinally','/agent/siteServiceAdd', '/agent/supplyList', '/agent/domainList','/agent/siteAddChooseService' - , '/agent/noticeList' + , '/agent/noticeList' , '/agent/expenseDetails', '/agent/siteRank', '/agent/serviceRank', '/agent/payoffDetails' ]; // 一级路由 let first_child_router = [] @@ -321,6 +321,68 @@ const routes = [{ hideBreadcrumb: true // 一级页面不显示面包屑 } }, + { + path: '/agent/expenseStatistics', + name: '收支统计', + component: () => import( /* webpackChunkName: "expenseStatistics" */ '../views/agent/expenseStatistics.vue'), + meta: { + hideBreadcrumb: true // 一级页面不显示面包屑 + } + }, + { + path: '/agent/expenseDetails', + name: '站点月详情', + component: () => import( /* webpackChunkName: "expenseDetails" */ '../views/agent/expenseDetails.vue'), + meta: { + breadcrumbParent: '收支统计' // 手动指定父级 + } + }, + { + path: '/agent/siteRank', + name: '站点排行', + component: () => import( /* webpackChunkName: "expenseDetails" */ '../views/agent/expenseDetails.vue'), + props: { + rankFlag: 'site' + }, + meta: { + breadcrumbParent: '收支统计' // 手动指定父级 + } + }, + { + path: '/agent/serviceRank', + name: '服务排行', + component: () => import( /* webpackChunkName: "expenseDetails" */ '../views/agent/expenseDetails.vue'), + props: { + rankFlag: 'chktype' + }, + meta: { + breadcrumbParent: '收支统计' // 手动指定父级 + } + }, + { + path: '/agent/recharge', + name: '账号充值', + component: () => import( /* webpackChunkName: "recharge" */ '../views/agent/recharge.vue'), + meta: { + hideBreadcrumb: true // 一级页面不显示面包屑 + } + }, + { + path: '/agent/payoff', + name: '代收款结算', + component: () => import( /* webpackChunkName: "payoff" */ '../views/agent/payoff.vue'), + meta: { + hideBreadcrumb: true // 一级页面不显示面包屑 + } + }, + { + path: '/agent/payoffDetails', + name: '核算订单记录', + component: () => import( /* webpackChunkName: "payoff" */ '../views/agent/payoffDetails.vue'), + meta: { + breadcrumbParent: '代收款结算' // 一级页面不显示面包屑 + } + }, // -----------------分隔符----------- @@ -361,7 +423,7 @@ const routes = [{ props: { pageTitle: '产品 - 毛利润排行', rank_type: 1, - type: 'ver_type' + type: 'check_type' }, meta: { hideBreadcrumb: true // 一级页面不显示面包屑 @@ -374,7 +436,7 @@ const routes = [{ props: { pageTitle: '产品 - 订单数排行', rank_type: 2, - type: 'ver_type' + type: 'check_type' }, meta: { hideBreadcrumb: true // 一级页面不显示面包屑 @@ -387,7 +449,7 @@ const routes = [{ props: { pageTitle: '产品 - 退单数排行', rank_type: 3, - type: 'ver_type' + type: 'check_type' }, meta: { hideBreadcrumb: true // 一级页面不显示面包屑 diff --git a/src/views/agent/expenseDetails.vue b/src/views/agent/expenseDetails.vue new file mode 100644 index 0000000..8c72c79 --- /dev/null +++ b/src/views/agent/expenseDetails.vue @@ -0,0 +1,405 @@ + + + \ No newline at end of file diff --git a/src/views/agent/expenseStatistics.vue b/src/views/agent/expenseStatistics.vue new file mode 100644 index 0000000..f771de9 --- /dev/null +++ b/src/views/agent/expenseStatistics.vue @@ -0,0 +1,505 @@ + + + \ No newline at end of file diff --git a/src/views/agent/payoff.vue b/src/views/agent/payoff.vue new file mode 100644 index 0000000..46140ba --- /dev/null +++ b/src/views/agent/payoff.vue @@ -0,0 +1,391 @@ + + + \ No newline at end of file diff --git a/src/views/agent/payoffDetails.vue b/src/views/agent/payoffDetails.vue new file mode 100644 index 0000000..9f4bb10 --- /dev/null +++ b/src/views/agent/payoffDetails.vue @@ -0,0 +1,92 @@ + + + \ No newline at end of file diff --git a/src/views/agent/recharge.vue b/src/views/agent/recharge.vue new file mode 100644 index 0000000..6e48849 --- /dev/null +++ b/src/views/agent/recharge.vue @@ -0,0 +1,605 @@ + + + \ No newline at end of file