From f4950a7b9a57b880a3a34e001b99a4fcefe32f52 Mon Sep 17 00:00:00 2001
From: zq <136432190602163.com>
Date: Tue, 9 Sep 2025 18:33:27 +0800
Subject: [PATCH 1/8] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E6=94=B6=E6=94=AF?=
=?UTF-8?q?=E7=BB=9F=E8=AE=A1=E9=A1=B5=E9=9D=A2?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
src/components/GuipSelect.vue | 13 +-
src/router/index.js | 33 +++
src/views/agent/expenseStatistics.vue | 431 +++++++++++++++++++++++++++++++++
src/views/agent/statisticalDetails.vue | 226 +++++++++++++++++
4 files changed, 697 insertions(+), 6 deletions(-)
create mode 100644 src/views/agent/expenseStatistics.vue
create mode 100644 src/views/agent/statisticalDetails.vue
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/router/index.js b/src/router/index.js
index 2fa83a6..7a6bea7 100755
--- a/src/router/index.js
+++ b/src/router/index.js
@@ -321,6 +321,39 @@ const routes = [{
hideBreadcrumb: true // 一级页面不显示面包屑
}
},
+ {
+ path: '/agent/expenseStatistics',
+ name: '收支统计',
+ component: () => import( /* webpackChunkName: "expenseStatistics" */ '../views/agent/expenseStatistics.vue'),
+ meta: {
+ title:'各站点统计列表',
+ hideBreadcrumb: true // 一级页面不显示面包屑
+ }
+ },
+ {
+ path: '/agent/statisticalDetails',
+ name: '站点月详情',
+ component: () => import( /* webpackChunkName: "statisticalDetails" */ '../views/agent/statisticalDetails.vue'),
+ meta: {
+ breadcrumbParent: '收支统计' // 手动指定父级
+ }
+ },
+ {
+ path: '/agent/siteRank',
+ name: '站点排行',
+ component: () => import( /* webpackChunkName: "statisticalDetails" */ '../views/agent/statisticalDetails.vue'),
+ meta: {
+ breadcrumbParent: '各站点统计列表' // 手动指定父级
+ }
+ },
+ {
+ path: '/agent/serviceRank',
+ name: '服务排行',
+ component: () => import( /* webpackChunkName: "statisticalDetails" */ '../views/agent/statisticalDetails.vue'),
+ meta: {
+ breadcrumbParent: '各站点统计列表' // 手动指定父级
+ }
+ },
// -----------------分隔符-----------
diff --git a/src/views/agent/expenseStatistics.vue b/src/views/agent/expenseStatistics.vue
new file mode 100644
index 0000000..4236f6b
--- /dev/null
+++ b/src/views/agent/expenseStatistics.vue
@@ -0,0 +1,431 @@
+
+ 收支统计
+
+ 月利润
+
+ 月利润
+
+ 月利润
+
+ 月利润
+
F+}s7-!RAPfV;*7O|wt@ zrZPP+T<-D>2Wj6(q-N~4u5gND$qwWjFp8H}#(#Zh_!_g1(9w@(oJP*~)`HREbRhb1 z^nHoX;~pIvn*5ii^q1qQpXLV2b!=Q6!@M=hb?ilzW^3;s3OVYi)m==ao>l%FhtUw1 zr^=m$np>}M-F}*$D#&VcDGqNr_t5pNTKzA%@^#r#___JS@-c8%f%t&q@Ub#S6;12o zsV#cOB4LXUtGZ}F_3+a18@cX_P4W)Lq!i<3GLKtK=&wL8>Blh?@nPrQP&yU2ozQ;y zXlBBejbe{mXKn?6;^QY+8Pzg8?zPXnnRMD>0~>o^(! AR*<* zdeHXCS;;0us^b0lFU}XJFm1Mi66SEn3D_3!q?tN;N(Y7U>gY(C6z-s`xJWfbIPOB; z5=^-UFhj1|WL|f%{H>uvP4QXjFiRC`k_~Yp?x `GlyxFd?qnwnxqJzT0K6bwb0Amrs-YS|d-vzG>G-N-r-)JJV$ptz)C>bY&V3>nA0 zh{Q|yD-<>Y<%T4Z8)}D$yNMI#&j(P(dyU^+6tX`Zd@AD znF(gCg49mWW@UN>c2(!HFtDvduyr|@RV8qJYbwFFuk5YQ=mGWrrZPLpDfuz;0OOY| za-onTFV4CzK+hV~uFeoQI3 mG}1p#3N{oG=n#XgOc0?`PAxXgZ{PB%iwm~jsyjb!hxo3=9s633GH z^$_RJ`jZ-7LxoYe3%t3Tx{)0t+wl*jwSI|?@e0zMd4%N~zi<5IyY`xg7 {FB}SZ!qb&ha21*r-UD7l@VN9`nW#1NA#2tQ8%Q6?Dsg!;%@aPi-UMu(R2_ z=GHyCg)q=XqntT(Lg3*$A=1iR^Z(gpF!L BA7E4%!-F-Dq2%Bo^alXk Owh?-+)Yxi2FyE<>Zg&?|K9>Fw0s%jm2= 5QPa&cMn?!$cJ7lULP2^a^)MxpX&mR}KPnW7! zWOzFeZWfYEvJ?KAL>X@xP+)n`t+u`oND+(0?Q)BZ$)#IcD9dSkH)zx6*`uzB)P&u_ z!`v%gsO6|%{21+ihMor@ucOcdL(c-2o1B*2=7)?NKpqoL)f(^U48O#y5F@>OenW%& z }ZXwo4-(N zkyzY2K4dO;i{^YRGdEWfi8S!COyEf5O?3?S6F#Ng0DtURQXNPz_m _w46?TmX2QnA*bA4Vi>1g$wp4vpVnJ(bfTNHvbf0rgwFQ zf utOK{oI)-mF zcg86eav1qVgRv^~8mLxDo_v$e=56?ep}6(EFJ9y~fw{fVpD@wr@lkje#~6oqZ@Y01 z8$W-Umz1lCaQD?O8a1Df_k*ot@ilggkB#y}9__TA?wc}@Dks06N{s76X(Z%qTcBMH z!O_&vEmAc35@nAL()y+hE!~Qbz+RSAXR(()18gGGwjzbR6uJ+8DvCR(a5J=qo)& hKb8uHM(&%C^20&Omrct;jGFtqtDu3SO z$5+S$c$osmBYyNmZ*GmV8HzP`d}Bj`jWgxfj6FVT=vdGlzRfcr7k*MPIquTPL6uwh z`74XK)5dHK5kJtc|JfA6tc|YBHi|0n$1L!U`et0oQ7wP-VqL3tQO>bp115=asz#{B z4A5$@6p3u+!O`e{g^nhVObn0MB?k|qaMb4fOEb0wHhHte2nIiPCpJ_?Y2*Lv>8qmZ zTAFV6#@*fBJ;=r#f)gBqOR(S)oQ=B^Ah>&Qm*B3!-QC^g@}G0QJH~unFTJX}YtEWg zow&@V8~lUpS3@Zccis`4;<6i10=nh#!H8ZphX__3t~cKm5?C5FZDdR2!d=O|$5NMQ zjlFs25Y((zc$*eL 9a%Im;; zV2JR8_{VP(KX9$Nv 0|CUuO$D08haWT1>j{fB@ac3WM^vtE^<#EBDHvf z+uWk2?}hsBdX&iTe{2+WI=TdvZAY2Sg&MDPbgkZZ!~|7V=?X(%qI;0Ic|BsxPpm;6 zL!_T!`l6#B*hA}8vI%+mO|Qx^8MFY~-GCn65x0QJ+4!(eIV^-;=ol`u^FaKb!MbIb zRqlhm-0xP}-8C6M7^+*s)K%BqRZcwRY&6*16}fmt1AE&@Y3?9m1BcTXhY4(*x1#Q; z iA2 z3dH~<*zoxTS#kY|B*_6L eI8@t5)MRsIa z?ZIz5I8Rq7Pe&+ETU n7pL$ZOW7b3ci%2Y0sn{Lz{PRGhUwrO zLfiNKEaR2608}1BeYP`F``Z(5rZ%k>wk2=0fC@W%pSBQzHUH@F9_f#bDF{X_gZ`A7 z!U&$>BKLb&y-==l`_eULdfY=PhM<~nbL)kWNLCG#uV$YUJ`2uy*uwk#g*DkE9iy^U zJT-^ZMIHN!EfU4RAm;c$xwmEM>DQg_@Jb9A&u6*^f27M2Uq~qb266|*kr se7V5a_sni|}quS6_?5N8v5!)wbVTYo^?CndUgcml3J-@oG^^*z5oWEs95 zP$G5_;Y>O}pOKVbRgFw-o9ZWRm>swVe*_aJ*rxV;0&@EXPB2S!04O8`ObR$J0&^tY zhW6B=R<*w%+5Neub$h$*2;08>M3mW%%14sDyeE5(L;$7UEfy)tn6w+}a1XPb@b$uT zBKtl@eN1arA5o;7{wqwwGf#Kfq6v(syGTd?%7R8Cu)J)n43Af%FP(r-ihd5leVhy1 z;B{oQoyLH^5^@rELOGeIx7Nd+UC31#T40x Ar-8wVlcQB4F@&av_-K1Gah zXtu^~gLgU6pFKJpgk>ry(7WjuH;1ak?C6cfkq_H6jsV4}i%Lxze$fOnCf2W|tqBaA z4#;I7+ayBG>hyT4gKN2z7=K$7e*WipY4sVK(ZwF}QS2$93Gf@ (qBt7!L zQvdl=01>XaBZnicvlw0iSb@dgj{PK%boalTXHjX)$=F~Ikx#~J_lX$Z^n?@>7-8&v zM>J6Bh20IgyecQ)eh19-dBqoMdgr^K(@Obh%);DwfEw`#a1j*4!b3&f>qDblR|yts zD1Wlnp)fx SWD8}0Ltb%jeamy%cwr# zi${gO8v&vuKgXctPh$%VYZLN_EaNOR<7 ragJ - R$fx9c_D)srTWPF)kt8|w!(%!Yl?7ZhzQ0&oFBrkE&Pgj( zy0ZTHn)koEv_swok|=j;1)~wObf~Bp&OZrO5 5`J-?~N17&4h%tb`% zAQV~P X5}`%=W7OX z2q@Pk|B~;QhF|n>V!^9aQwLLv!2VQW3cFVE`qPRF?HPj&D>BNeTPqAxeTPIuiA0U4 z$y^W`I>q1PSNvkS(g~})4f(^t&CIw>Nz@;2f{B3``{b&IumJ)C-pSGOGZ!Nxg&-@} z{C^3>>&Q$rn*Vaz#biQ2!rb~PA~mt `WG`a#2vT_vHyMxZvm;s!!*xBrnSU29lo7#e{oV~ z&~yDUnJM#ixN^(OGi3KA^wR!#z!^Y;Aecce?$G8FY^J*LcB1mQbJ$aXag5jf#{pHg z2QeRlpwLu~qMyrBhYnme%v~W ! zP4xQH50M+C6uZ5BYb+q3mgpc%@5sWWk8|}L*v}gW7L2#aJ}f PhI}>?Y;`pws2|Wsq zH6OBQ)dEK7NOam{J&m+<+kE<@`2I|*_2&g?zmhI`fDkSV?9gAsrUp+TrK1-;j~7F` z@^;|a 6d;#@;hH4 lHrjYgoiMm-fv; zkt<#x ;>_3`C&_}^rw%Rh3=7_42{H=%#pN*=#D$?ff{ILNFusdNWD3jtlj2Y8q zb3SIbG1;PGYr!FE48G!Tcf7)l7 c+M_>cJgb2a-?z{*BGeW7_9@SZmTs+4yBOfCw38uvwCs{a6Vnb zu2| Rc2H{rNKevMA9k1%?S?%VBJ%Af8*F(1o{|=p8dz0lV!If=$mw=vI%*k!| zt3yb)S|>}@iPf>>WfhfSCQ_9k8a6aE=3wmJW84z+SBu%XGAP2vzs)Ev8H|=WqX6V; zK(CyKBATl%qxs5|4>MGvtdmS;eFhy^!4#f%p&B+D?evXcOX7rGRM-&W=abq(;b}~R zur+zXQ%lo8oABD3Q`q4DSl0W?%}6w)%%!o?(oGx17fKZALQydkylxGPpif&5sU^&J z-K|7fB4$Asz>yYXUFK}qp!8LrYJdmCreSg~qL!uz4koiY^g>gXy-+a?u9RO8d+&Gw z9LX5^a?Ck+8r5%IKvdX+bYv4@!~>ex-0(BPaGcgtmAc|LT|xJW&fZmcw?{a>+GiO$ z^H_|UoW0gdMYQy(NiK(d0DM{@95YTo#XS`IlqyyTlgulCsX^N%G)Is$ACNNZ&a06a zf-`JgEfXC9AGEktttB7rsx3sUMMX<3KqJm7KxgA+uTOzUM+yha9Y3Ke6xe$CYb-&{ zDlH0~Br|E<8|dX4aoL>pznoCm`gQLyw$NIIbt#UcoUaC?ckt`vh8JzS^jox8DqZon zRQ9%L6uotDl|QVwrC$Y-4qRI&hp|M?6X35&8+~hXH-;$4Nn_SB(?_32TQ)Li*2%NC ziQ_mNdwxNP->CH+eXerF`0?ly(?k~V7&ua+#SxB>xJbkk;TcLY-kJ7wQm{FMQvbeB zOcbc#e-=kT6aN<}FgvZm9S0BO5UpT(noX?Kz+By{2ur=(B^oD(W+W%to5`?ynwT1M zxmlCb{v*JDvga^P=CIEG*NszQ=+|lOp-X;?ucnJ4y>?M{Lq|j7wx6H3+@waLHx?x0 zpZ{Y_Z!0#;=@Ts4aUZ#z<-(b^LyQbL-f~Mw(9@+!3b8#;W=fSVDLcyi#sClA2m&8l zC%DG{Gk`DP0BH(2J0JjyayA?Zk|C4RI8YUp+Pz!)h8^D7p)wFo1eU4IUy*R9mDNv4 zUtG8eLf99=-2 9D2HVS${daxkDq&Fy)dbIO6uWhVQ(u70C07HwBo-@` z)9^Y7$ve>Z^R;X`bE`_#v_cQWq@m;63TM>AI8A*&e{ZAuRZK+Hun;dJ!!3icn*onQ z3B}~i0AgJm4@>*!ILJKBYIa>BG%WfmCN$^suBX{6NR#W`R!B>YWkQ)oi(G{RD@iTD znMeZIg?85R3&D=0OzH{mqP^Zzow;B9V9j6lEe{|Jq3uzQP3{Z!ZsB-+Zmq}U@iEqw zfJkigp(t7~CavrC9!{`Z{1;Zc#wn*Hb3MpzyoS8`kY4s@pGUGK2Mkgb!#A$*=q|p~ zDF}tQf2Fe`jGJ9CX>AbDm-`;}o#d|(JeLla+i*bcucqyt1qp_V=y?IUF-nO0Shis< z%ueb_#Tt*-Bf1*v)R3U6`$8<~zQ=x_Ha9F@^c3O*!Xt>mP8IRCwuHp?1KRZt(T>&2 zZI5frMG@qZiT_B_yY)G(lK1bG1;Gj6>-}oaGd h7RX%8=zpIouKvY2phZOq42@YD($NYKM8z`%kluSS9k zkcm_eG%iP%bp{nt=d!W=P1WPqRY2z(o{V+UfP# yjK7@;H^+z1#ZSpMl! zhlqGea>SkXk0|$XHu$!@>Is{Ed~W-RVVS0hUNo{kCsp! G1s*67Bm7=jde@!!X_*n zYN7;9jHl;!bPC@^S~>>8fiY7U#U|U6jeOmb?ow^-g)GGNj#v>7LyzyQh6z*AHa2n% zO@t$?{z+n^amnr5iBS82%yY#nAbK}XFaL}MVF8-)&ZuY00bgsmtn1hRaYEKVS-Gx? zgjq24-M99+7Wh*SZ^Vl^E$0)j@IF4AY;~m41G6gLN-^2Ha5|cXyvw`Q_-47Ez_kU0 zjF4V{Lzu2Dl_yG6Id=o{nK^`Q qWDUZUE9&NK_Xd$$nB4OuctAtaW3X=j%`TP@Mi_Bwk zbl!<7dB52ejX)%#G5tMSD2)ALKR*v|WhNtcvgL4d)Rdb|H33(!nW#dLX?#0s`$WIm ze;t;$oaVfrg|fxC$Vmv{I&qoSvm{9$u5vgl8eDc|OYX)@zzhxjBt27Hqhn^R23(b* zUg4b8hpy7#M%oQpqE=l^3B>dt&dzh-IY9}BCaQ<*hQvI}qeCeM638~=Y^pHsC=c?) z__F`W(^iIG-jQsEEi~IdNwk1er%`Jke3GGFj$q0YM*TbSpDu>mQlRHHQ0s(s>ln7D zox_cyja@ZdVv4Pw@*29`k7$40Ssakjo?+?QHBl?%9(-MvY^Y6!7=VIU^*tM1L@e8p z 8 ztCHlDi~&JvaRcNk;}**gUzK7{=%AF=fK-Z5SNGVcBOp|nJ1&`nWJJD%RgqV0T+aN8 zCt|O*Wz{2|>jQZxdiiYF3Xg4aKSj|X{2Wkwab{c+6XLFBMZ)Q#i#Eu289EQKQHuFH zS7tbjDVJ!%C2KD{US;^Y?~8+B9`l_P-#^Jcf1|;T#$DfwvGwg@H>3&)s+9-L-WSwL z_{fNO$zx7t*RWu1UjkzZWPBT!gJHyJLB^3;Y;K*-VYF|P-FUtD#wyroQu>VO&E`D^ z&^z4H;-A%w=EDr*a6ZFzN=cx(gvhScyk{xoK(e&Tp;__ep#Po1FuD%V@-?ZpGWry> zXuISmaRYq&2?!u2#B0N(*v=>=7=l4ZC_U9Ft*YD3&d2-8L__#zN{A%RA)h~ CaR6K!+h sdX6ZE` 7|rT1L+!0 zm!VA-mO>&{Ey@O0?n}Tx8Hx1UCmGpgT5FI9{e2|9gKMovl5*(ysf%`s_#wBmdfP{_ zV$m8((#7 SB zA>u9e>`9^y5m`Nwm$tcOVT~tlyLuxBIgLWL*vjhlwO-%-|D4|7xgHbW%4;Fn4G}d@ z*3#L<*Gr5t<8Hh4(mZiohEJ|;5pucGxhA%=2+|Ls3vfJ!+H1TZ^n{wg z>=??6jeHO+wKbx{cGbyJx~&8@I0 $;TN4=+=mg!EH=N7( 9PB;OB^Ia*h7X0~6cerEY0e>b3b7E|hW!M4dS+zB}~U5R*#9Dji#; z()6>7fg^7wgB+c@O`4tf^5f@l;>fN1Z1V#PdHnqzl3$Db?e#Z BBt|D#t&t-rLP zH|k;aN2mC~087Emt$m=tnl{al5wMccf{ |ba-Rl21DpJCQY z9}VTRG1zcA9kx(J6EGu!c3TPmYl~3TU^Wqvb*}ne<-Q(=;7<&Z^w9>>2;>8A-@Wy* z%v%;??-6<@@}F*F(O+XzAliIMD|Hn^_#bhQb;Ra<*F!y&(?*#A1sj!Qf^-Bry}L$0 zj)dZ?cH+%y?x`}df+A1g5f{MqXS_)+JnuGE`cHYT2uz+BIN8glP>tVo#_6Iu4-7x; zN|=2-WB(H~T9+OR&s#L|IOSJV7Al?YQ>bWr4GLSg-1f6MU7YGt`He!?`AF&nD0Fl& zA!&Z2>2Eh}h-oKPR iA6y*!Y39B=m)p4)%H2GP_^Y|e@0XMQqtAB z#AoCSZ3&>~ KTs5Bvr1fVxdfE{}-`)=Iq7EGtPwASt W}WV>985h z;S^Ptr0gGyL$=JWMO5`O{&!3^id<_&cw_VHZ2gk>Db@4De>I+Dm&o;rB*7!Q*xSOG zyHB2vAo{rRQ62+1{SG41ZrQu_SY&oGkh6_#61T>P~(VCs$T>Y60~C`qj*cp&<#T z+pf@}`0B=BT)ClJAQ3u1rQG4$?2QH4ckFO0^t-f=G%zg`N*SsO=a?3lZM@$;OpiL5 zlL!sGZmC8s$YC~7RMyg33?N$~76$+HOPWnbiW)(my8VSyK0f*TjYXZuND2VJD*nGW z0_@VB$l!HW5IOkvcT}YNCh(2YXY@oBWWm%wX6d;k@$M`URhalOB4Z h<*F<5eaA(6AR zo_s548o-;WrM2 kh^C7W}#BL|`17jRD<^;SZ-%PYguH-yiw2VXtMz3qh6On-~YURty$SFwnge1fJ zV1OoVNqqgn3~}9XfZp=iGJ5T}9jXNM4j~>wjUxSQuOz(wZ#b};@f&2UUN~w^Kj1fz zk2Uq5Ti6oP4Pjao0UkzZQ%_l}TN`2V?;HY3$L8ukohUAf0E4`h!J%E6ns|0+qFP;u zp0`FoR%Cl4$jua2f1~*O!tWIBXLKxD-wI9;fdxd2E)(=os3&<)-a@bZcj1$*HyiyW z@-^0JN3R@aKG+zNmMqfEUIJsy(#BJm3D>wJiIbo(j1f8cI$-jYNZ3t*M=X={lJ!OT zABzZ2&LmlLbWSBG{8k=u=|l8O#O |*;pad$0XaCXeo}7aTfrzv=Ykcq zk+3Rxi~z3=U9M74RtRfC-Zs0yw>!yjrtF72JebJlH7wUxqR4M`!nv=mAC`*$V{b;! zk_k{P*MT6ngBB`&+fZNDT&b@}N^+*FoG}2{`9Ok!zFL1Z3c3Dv{JhyMnN`dg_aB*< zJ8wfj;gz?yo#8A5H4xYqs1&ED;M79YdHP}cfOpJkk*O$jQng|~Emi-Pq^Ozt+RmPM z0!!wyu1^}6Ld*YvQu$aL3}>R1UiF_XfeG6`Bn@2Hw2#BT#jFzcMJD>kHEFaaaeZ=B zw#A#;`|_o(DI>vUDleCP|Ib4-$85(SX8m^FIcZ3KBZ71iEyNq!-VL7H(V!NAc^|DW zZgOIhx@lSKxn1Z=W_lqW;>j_d@^2e`SSv4Iasb|_4(fhpg|U-(`|I8R*5LA~{?_T$ zLIsi?x8v!RhkxxY>Z*~aVO35UrhXaMCE)Au7EV%$-d2`blNG-jEDSZHUB|NzlafIp zKn8#pVK&Nyq>p 1~(IkD7xzR?r^aznZZVb*?<4Holdon3|`(m6#1M8<|st*`WiF{TJzZ~QFpadB6 zd9}&CEDO3tL8=$uT>6Zu=wlF{K1A1@rWVvQO3H?)Au+$fNeDC?+QF;nFz0X=o6J1? zOZf~Qeme Z`e_B|3+cYryp2cnHSu3z1@e(`j1 zg}sejKY@f<-Lq_kY$F9+7x0P~D|hY9$m9oWoI}BV0>?XKQECE6Xe3bA7NG>}2~Zoc zQ$Hr+TXIlMl)@>hT9^^pvN2xbh5`O_ME!4be+3yY|87Mhjq!PcuU+aqqjip|82e98 z+CQ5KBU>ID+zEcCA3A?WRd8hZ^)&=%yl(BIw^%~$)rVAJg;`?WV)M#E@(&M}+Sp$^ z9&tqMl;iztWjQQV&dL2v>fDyK*izIXPfnS)h)d-Vul7O|`@eH4!^m#(yMjYS3__>+ z*AaMmHokSQt%Ni`S}i6fUPdQgUc|iDfLbkDTKPjw fmm-#mpC*lI$S)k089d7_jXXM4<0I4{szUVIS=>e|U6OaL8k5kO{SwkcXaMN4E zB_YZISQL4(*a*r`bYZQNMVl)fty+{S;owFu47HF}roGdTAhw=$&(vv~8MnM^2Z>^G z#j^}!?q+R`=|YgPz-m?aIVmIIxA^S=fHkV($P&1RgG1WdVwBV%rU=jG72^7)02Z2Q zUiwmUwQZZaH<4g_NiDh=Y(w`$k^EAe{YOk)DB1!u;x5Zk_TS 3gL73J87A8xW+IxZ*rn07mWsU zqp0FsRM+y@1tt~CdVq3;&sd-?C?X2aW5z`{@6e#xEVnZ-^L!FoTSS^RBC`9JucxuU zwTq~b1YGf!8vBlm%GgQmmrwrr{kiVZR&k{70Y)f1=!`Dn{<(;!;GE~5Qt9jU0!qA@ z{jICr O4=7iP>#%YEVnBmpaI4px+@3 z9O-$?l!JaEDIP6 iG>t$)dggf!iL%|tM@5TK^@iJ~X?rcSXvt6FwiDrsE znh`+zwMg+dno+83T6OTlETVATJ5=XREF|Qt!HLMzG9a-+S(9>aR5$tMKGvQsLg6hr zsi2~|KsZE)?9!OMz1R`$iCP~u=c;&%XcOJYE@T{GN&&|gkC!Ak+({s3kDbKc)s(bk zqBnRYfvEphTIzCO32MvYUbAJr^goBmgl@+syh8wShq;2sTDg7H^}3N&hi~H5ew27l zQi+L~Y;ZvE219fki gGiov+#3OhW_mj8< zdnGT<`zg<^>kkXJhi_o#07u4YjC_?W4ivs}iv2}E)^g5+(0pE0gr!|J%cy)#EMKA2 ztmyAu@nEkRVC3F?i9zr%#S;A(0|wLHV=FDpsScJ_m#@lwU9<=~n5L7JUOV7JJqC zxq7(hA;yxX*qYn`r69*{$zsW5w*V(W&hP@UZMaPBzZlkx4cxL955o<}%K!wv8Hf4Z`PNr%hj_~-6Z zg )O)^@2YBx^*Ti9wV6%@|re}pedu-qTD8z&jf^SkR@aG!)U2;nrOkwNLf&-Wa zcOL;lL^(wv@}BA(EL74!QEW`}JRnUl%&Bo~h+FJilp5VUia15S->Tb@lPI#<(+iD8 z&ZJ1KeAd*b<>Oxx`~a2FMh~ef 26unnc#y zex;IgB)BS1b^ouMWK@F41 E$9X-QYHc-dFa zNqm{`%_We@eSdR2wQ!`nBQ?Ya5IN((7Jka?Ma0by@;FzVdRVIcQ8IH6+oGeYh`y38 z77P>7NA@xDD?M+hZnQ=#BpkCO*PfpI|C*G9$9yE+6(xFIWb^MJPwr9fzK)f^S(6~3 zH6!rI!cr%itWL+Xrfg})qN9Wp*y JPs5mQ?Mlnsd{ULWD zZqFF5L0}3Qeqri1hx~#t`{^_4*{xj@L^PR4iuBjvPdcg206!=Lvj=hNxumkVQ1p_K z%^G-_=x>$N3DYL*$W+~;M17v__tACN4YwoLMQ^ex*02R1Q>(*z_@$+RoG<)ab0`~e zHe=jvq%+HUXMbLQ9Iu gOO6}swg5CW)B8u@;C2*L!y8!j{d|i{7qF2L36d{* zjD7r*P5y3WcTmpg+4SeqXP4n`+x~$`2ncLgY nWMs(C5GR#QsbLA2ohgyEKm)3T=Fp|g#{>JpU!j=pf1LGGn^V(ts=9FD z l1uSO*CP_cuL#A*|9 z f``K?h zvdB_ATYt8!v_yA!%clk(Ak)<1&tG30KH^2j-XTXEbHu!bhPX3`M8Q*k?W$0#HQy9r zM%QPqQxgwGMT}kPOL!IgA|;6aeE7-I#zsAqva;QshsZtU3+-L{{anY$K{FXf^Mkg! z ` nFh0aDByr<;e3mLr*ODYw9#7vCJWql6+zTz2@MoeAK8|PA{FY5XNr$k? zBB$V@DptRavTml=wW$If%jR8C_FNNIHdvVC?5~)p=!J}4(%Rk3HVa&l%Xlx+wsBi- zkYzeP3cnE09rf@F`tTbFY?NU g?N}rR$;e#x3CeZtV- G=dVDD(svp&)oARQ z%O3*~*OEuts(wGUcKBfX-nR&5D#>wHw#~6Bnj4gciD5Hm5EJnc<<&~um-gD3NrH-K z06Mz0>%w1D8*Nan-*P_K)CauKvtHc8lEvQpD9ip>vli)kKgP7bz@ vap*t{n} zYiUe60)F43uJwD|_=c?78MM9R0282?FZofaL~-dR`#mVeqaiiWc<`@kJqaSA#CQN9tja%&Q{+vrCAi0%Nry=79=Q9VB& zzKZCvD$lPE47QGU;Xa>sRNVF9j=Bg|cjyxBJNm}GKCaD9obLVC{qy|(`!(SFQO@>R zFZ%6m==`$zb^Gp)a9=a)tsi7!q?dJc$Yt*nRh vt6@LTsEZqPs<{ISzJq&+4{kfne@oCo5Pwwlzc(>u>;vJqOB-Y;yMU zwbLssyynPJw=f89?)e(FR2I2#hLGn%f#Q`0FnRtSu^zGZ4(TqJW7$QV+4k|yDL_V2 LQKCZ3(EtAd>8at~ literal 0 HcmV?d00001 diff --git a/src/views/agent/recharge.vue b/src/views/agent/recharge.vue index daa9732..7e77b97 100644 --- a/src/views/agent/recharge.vue +++ b/src/views/agent/recharge.vue @@ -1,5 +1,5 @@ - +余额管理
@@ -11,40 +11,112 @@-+@@ -52,9 +124,15 @@ import GuipRadio from "@/components/GuipRadio.vue"; +import GuipInput from "@/components/GuipInput.vue"; +import GuipButton from "@/components/GuipButton.vue"; +import GuipTable from "@/components/GuipTable.vue"; export default { components: { + GuipTable, + GuipButton, + GuipInput, GuipRadio }, @@ -69,48 +147,75 @@ export default { totalType:'1', tableLoading:false, + walletType: '', walletList:[], + prompt:'', + prompt_link:'', + bonus:[], + buy_price_type: '', + buy_price_types: {}, + buy_price_link: '', + buy_price_links: {}, + links_desc: '', + + ordernum:'', - siteNum: 1, tableKey: '', - monthList:[], - monthTotal:[], - payList:[], - nameList:[], - topList:[], - - domain_type: 1, - domain_types: {1: "平台免费域名", 2: "我自己有域名"}, + tableList:[], + currentPage: 1, //当前页 + pageSize: 20, //每页的容量 + total: 0, //列表总数 + total_money: 0, //列表总数 + + confirmBtnStyle: { + 'background':'#FF4D4F', + 'color':'#FFFFFF', + 'border':'1px solid #FF4D4F', + 'border-radius':'4px', + 'width': '88px', + 'height': '33px', + 'font-size': '12px', + } } }, mounted() { this.$nextTick(()=>{ this.totalType = this.total_type; - this.handleClick() }) }, methods: { - handleClickDetail(id){ - if(this.totalType == 2) this.$router.push(`/agent/statisticalDetails?uid=${id}&total_type=${this.totalType}&date=${this.date}`) - if(this.totalType == 3) this.$router.push(`/agent/statisticalDetails?chktype=${id}&total_type=${this.totalType}&date=${this.date}`) + walletClick(type){ + this.walletType = type + this.walletList.forEach(item => { + if(item.type === type){ + this.prompt = item.prompt + this.prompt_link = item.prompt_link + this.bonus = item.bonus + + item.links.forEach((v,idx) => { + this.buy_price_types[idx] = v.face_val+'元' + this.buy_price_links[idx] = v.url + }) + + this.buy_price_type = '0' + this.buy_price_link = this.buy_price_links[this.buy_price_type] + this.links_desc = item.links_desc + } + }) }, - handleClicksiteRank(id){ - this.$router.push(`/agent/siteRank?id=${id}&total_type=${this.totalType}&date=`+this.date) + jumpLink(link){ + window.open(link, '_blank'); }, - handleClickserviceRank(id){ - this.$router.push(`/agent/serviceRank?id=${id}&total_type=${this.totalType}&date=`+this.date) + buyLinkClick(){ + this.buy_price_link = this.buy_price_links[this.buy_price_type]; }, handleClick(){ - this.monthList = [] - this.payList = [] - this.monthTotal = [] - this.nameList = [] - this.topList = [] + this.tableList = [] this.tableKey = Math.random(); if(this.totalType == 1) this.getRechargeData() - if(this.totalType == 2) this.getSiteStats() + if(this.totalType == 2) this.getRechargeList() if(this.totalType == 3) this.getChktypeStats() }, getRechargeData() { @@ -118,7 +223,7 @@ export default { this.$http('POST', '/agentnew/ajax_get_recharge_data', {date: this.date}).then(response => { this.$nextTick(() => { this.walletList = response.data - console.log(response) + if(this.walletType == '') this.walletClick(response.data[0].type) }) }).catch(error => { console.error(error, 'error') @@ -127,17 +232,20 @@ export default { console.error('数据加载失败:', error) } }, - getSiteStats() { + getRechargeList() { this.tableLoading = true try { - this.$http('POST', '/agentnew/ajax_get_site_stats', {date: this.date}).then(response => { + this.$http('POST', '/agentnew/ajax_get_recharge_list', { + type: this.walletType, + cur_page: this.currentPage, + page_size: this.pageSize + }).then(response => { this.tableLoading = false this.$nextTick(() => { - this.monthList = response.data.list - this.payList = response.data.pay_list - this.monthTotal = response.data.total - this.nameList = response.data.name_list - this.topList = response.data.top_list + this.tableList = response.data.list + this.total = response.data.total + this.total_money = response.data.total_money + console.log(this.total_money) }) }).catch(error => { console.error(error, 'error') @@ -154,11 +262,7 @@ export default { this.$http('POST', '/agentnew/ajax_get_chktype_stats', {date: this.date}).then(response => { this.tableLoading = false this.$nextTick(() => { - this.monthList = response.data.list - this.payList = response.data.pay_list - this.monthTotal = response.data.total - this.nameList = response.data.name_list - this.topList = response.data.top_list + this.tableList = response.data.list }) }).catch(error => { console.error(error, 'error') @@ -169,24 +273,62 @@ export default { this.tableLoading = false } }, + doRecharge(){ + try { + this.$http('POST', '/agentnew/ajax_do_recharge', {orderId: this.ordernum,type: this.walletType}).then(response => { + if (response.status) { + this.$message.success('充值成功'); + return true; + } + this.$message.error(response.info); + }).catch(error => { + console.error(error, 'error') + }) + } catch (error) { + console.error('数据加载失败:', error) + } + }, + handleSizeChange(val) { + this.pageSize = val + this.getRechargeList() + }, + handleCurrentChange(val) { + this.currentPage = val + this.getRechargeList() + }, } }充值选择-设置通用余额提醒,防止余额不足,点此设置+{{prompt}} --+ +-
通用钱包-当前余额4560元+ +++ ++
{{item.name}}+当前余额{{item.remain_money}}元++++-充值卡面值- --通用钱包-当前余额4560元++-+
++ 充{{key}}元送{{value}}元 ++-+充值卡面值-+++ ++跳转淘宝购买 +
{{links_desc}}---- --跳转淘宝购买 -
- 充值以本页跳转链接为准!淘宝交易服务费(0.6%)已由平台承担,暂时无需支付 ++
+ +++ ++ 现在充值 ++充值流程:
+1.填写订单编号
+2.点击【现在充值】按钮
+3.到淘宝确认收货
+4.点击弹层中已【确认收货】按钮
++ + + ++ + + 充值金额 + 总计 {{ total_money }} + + ++ + + + + + + +确认收货 +----+ ++ + + + + + + + + + + + + + + + + + + + + + + + + +