From e12252beed070df9ea40ac947cf6fd8d4757e502 Mon Sep 17 00:00:00 2001 From: kron Date: Wed, 6 Aug 2025 18:36:30 +0800 Subject: [PATCH] =?UTF-8?q?UI=E6=9B=B4=E6=96=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/apis.js | 4 +++ src/components/EditOption.vue | 2 +- src/pages/point-book-create.vue | 62 ++++++++++++++++++++++++++++---- src/pages/point-book-detail.vue | 9 +++-- src/pages/point-book-list.vue | 10 ++++++ src/static/app-bg3.png | Bin 5930 -> 3242 bytes 6 files changed, 76 insertions(+), 11 deletions(-) diff --git a/src/apis.js b/src/apis.js index ce68424..cf4eb4d 100644 --- a/src/apis.js +++ b/src/apis.js @@ -432,3 +432,7 @@ export const getPointBookListAPI = async ( export const getPointBookDetailAPI = async (id) => { return request("GET", `/user/score/sheet/detail?id=${id}`); }; + +export const getPractiseDataAPI = async () => { + return request("GET", "/user/score/sheet/statistics"); +}; diff --git a/src/components/EditOption.vue b/src/components/EditOption.vue index 78b2996..53a656a 100644 --- a/src/components/EditOption.vue +++ b/src/components/EditOption.vue @@ -304,7 +304,7 @@ onMounted(async () => { .bowtarget-items > view, .amount-items > view { width: 20vw; - height: 14vw; + height: 12vw; border-radius: 10px; border: 2px solid #eeeeee; margin-bottom: 2vw; diff --git a/src/pages/point-book-create.vue b/src/pages/point-book-create.vue index 2e32310..3965059 100644 --- a/src/pages/point-book-create.vue +++ b/src/pages/point-book-create.vue @@ -3,6 +3,7 @@ import { ref, onMounted, onUnmounted } from "vue"; import Container from "@/components/Container.vue"; import EditOption from "@/components/EditOption.vue"; import SButton from "@/components/SButton.vue"; +import { getPractiseDataAPI } from "@/apis"; const clickable = ref(false); const expandIndex = ref(-1); @@ -10,6 +11,9 @@ const bowType = ref({}); const distance = ref(0); const bowtargetType = ref(""); const amountGroup = ref(""); +const days = ref(0); +const arrows = ref(0); + const onExpandChange = (index, expand) => { if (expandIndex.value !== -1) { expandIndex.value = -1; @@ -59,6 +63,11 @@ onMounted(async () => { distance.value = pointBook.distance; bowtargetType.value = pointBook.bowtargetType; } + const result = await getPractiseDataAPI(); + if (result) { + days.value = result.total_day || 0; + arrows.value = result.total_arrow || 0; + } }); @@ -70,10 +79,26 @@ onMounted(async () => { title="计分本" > - + + + + + {{ days }} + + + 训练天数 + + + + {{ arrows }} + + + 训练箭数 + + { flex-direction: column; align-items: center; } -.container > image { +.container > view:nth-child(2) { + margin: 0 10px; +} +.header { + width: 100%; + height: 27vw; + position: relative; + display: flex; + align-items: center; + color: #ffffffc7; + font-size: 14px; +} +.header > image { + position: absolute; width: 100%; border: 2px solid #fff; box-sizing: border-box; border-radius: 10px; } -.container > view:nth-child(2) { - margin: 0 10px; +.header > view { + position: relative; +} +.header > view:nth-child(2) { + margin-left: 7vw; + margin-right: 7vw; +} +.header > view > view > text:first-child { + font-size: 27px; + font-weight: 500; + margin-right: 5px; + color: #fff; } diff --git a/src/pages/point-book-detail.vue b/src/pages/point-book-detail.vue index 0c37373..f04e9d0 100644 --- a/src/pages/point-book-detail.vue +++ b/src/pages/point-book-detail.vue @@ -62,20 +62,21 @@ onLoad(async (options) => { v-for="(_, index) in groups" :key="index" @click="onSelect(index)" + :style="{ borderColor: selectedIndex === index ? '#FED847' : '#fff' }" > {{ index === 0 ? "全部" : `第${index}组` }} - + /> --> @@ -159,6 +160,8 @@ onLoad(async (options) => { color: transparent; } .tab-bar > view { + box-sizing: border-box; + border: 2px solid #fff; border-radius: 10px; background-color: #fff; width: 24vw; diff --git a/src/pages/point-book-list.vue b/src/pages/point-book-list.vue index 6b6229d..55ee7cd 100644 --- a/src/pages/point-book-list.vue +++ b/src/pages/point-book-list.vue @@ -89,6 +89,7 @@ const toDetailPage = (id) => { > + 暂无数据 { margin-bottom: 0; height: calc(100% - 70px); } +.no-data { + width: 100%; + height: 100%; + display: flex; + justify-content: center; + align-items: center; + color: #999999; + font-size: 14px; +} diff --git a/src/static/app-bg3.png b/src/static/app-bg3.png index 43288cb05b7c9bb8b67bb873abcdf0658b1ca438..8ea821ae9f61e019bf70a5583b814d81bc22fcfc 100644 GIT binary patch literal 3242 zcmb_eeK=HUAD%uoc7?WfL**+;zvq5__kI7){hV`M=Yo?1 zMgFsOpAiTIdE0$f&IH0zlt5VWMs^vFXhK(G@nw0i?Kt4 zHVosNA}4!SYtVNXi2Q&k0Em1+?>->%2fenSmm-x)L00KImAZwCY}Ka=7yP?aY3quA+JSq1|DJ1`sm}I&D<` zeMv>0QLVIc?BX#V>RFIl4mqe zh*jg2VF#t%kF@Tu9G$5kar$qxFxdPI*^=NI<@++sBAFEG?T)#}c+L+rwXE@Si9Mxyz)fXkJ9hVL7{1D`} zIdUjba^h*J7S^dxW#|nQUL9|q^P7cUaY(wvp7i_qQf*F2mCe9e8mS*~=lvlusMPzTxm|_9u{|)%ufM(E&kg4so}r zMB!|=x%)Q_)9W}S`Iamf6;tmI;xG+tQ`=r&L`E@?s|rw;+Si6Cx@)vu$r9C-o!%|Y z%Vvlbim=j0g(XwL-3};MIn^^opBi&a2m8tpZNJ$q7*CkfWnZl?9~1N1 zd?w@@0wcq8;G^h^Idzx>c5z6da^of#AlYhTM{dXWfOv*DbDLhj2{z2jAugS0@H)z> z6=zz+tDo6b-~mzYq}TUHJubw)Lq5M4H&MTNQj|kHJ26MJPfpi{Q|jxeq(qH=cZjkR zE-KF&L~x1Op^0C78$BV4#r>868E+b#noV8Z4GhsIW0yM}P{yt~YLnRE3eNuU&NNS@ z6Ibr+@*9KksY4gV$Ms&~RQJBAy=ybH;pL47Rp(eWv@nR`zuwQZY~~4WAe=pQb+!vH zCZ#V5!&Wl2roEdPzc`?!+X{z_ivnL7F)6&4?fY4#xFYW*u`Kx_@_C}+Krrk+b4Q%{ zYCc@!#8xsY8z~O**^Dvu0`1+p*yVbG996ZRpw{dXn#;H#CQ8*|MbJc|o%0t#=Jd?k z(GDzG6OQ%B`}U9`R_fMpY;)X9%c48;`wjB~Lp?HjtUW0H_S0Oy&Z?2I(Ah;8)Nzl0 zWg;##RKKQKfY$iA>^V0>8MpABdC<2Wa&#FCG!a)1jqkfknGD9}a|b%;h)Xnf$8aF? zqSBOf(vP0;<;=*k%j+Oo22GvYO)X@FfZ2?b--gOFOP;ixS)cl1V==$~y+hLNC$SM6 zl6I7$3&!9*X^3D&zJyE6m^$LF$8A1?#Tg?p8piTl*#;bvirSE|OU5(fYd3pIl*HTk z`)ZR!&2M(#Bxsq*Y~8FxMs4jyqTuVyJ;fL)xBMdFaV|HXneK;-me1c1MLVD!Lo^0{{e&(q+qe!<5lVY1tMb(9C+Tz}h z!G2Fwm=v>^9`o*mEnmA<8yH94!ao$J^7u!&)O4=?!on?VZg|5EW=pX27*AdK3f-}? zltbD@9t$a6v5VR|4{e2LneRJ&!bisw^Jl){aY@G1!I=}f_ufQQ@~G${%SRiF4PkSm zzg#ELvKXV+<2Q8iy@^|C44uD8?okGZq}N)XBx6Dk$gJMh*K>tKS|>0dm6=R$#4Pnd*}^Wln%)*<7*r>yK5UD2 zxR2D_y`uaBf5n5kU=LeVzb(G4yh+(KZtYrn(_V}l-*~yMPSFHPlNGJGV#Uj&n?Y&k zM@lglI7$oV)ctg8)7_CqIZ~7k7V;)y)f$hOJ$S=PQQD;AQlp@r*G72Ya-xN-HD^9o zQ)QC({jl!kfmgn>x!J@c%A)+`sOz{klN_q*95WZ$aZ>%Yu@)@bA#&gPE;LOgi&(7h z>UUvH?5$JZiWPKOv=hr6K!P@Wo?hN3d$ND8|Lh$@GRo);X+&Q4oigWd#F{R-)~=dI z;^L26qN^s|c3^Rmi3(#VO}WeMI6S<&v52DzxmFccPX2sJmy4JEt_DQK$Z;I4EK_u= zuezK=TwWSMj~m|oU`bEy3J|NiIr?yR{!>IEf;AXDDVPxl?)!cHQI=)$`v>2a#V-K=x;4N$*OxQ zO!79kXB44`GovBNh{6ymR)BQiJF9HbY16{893rzi_#DC&VVRu54P{m+!=FuL>R82) z<0M)eV;qZgU?{J1!KcfBNzNJxe_g_R?DanM>*dn<>-6ss%{RAHY$I3-<8n;0Q+xaQ z+dH*ZpN)1T^ucQVDTrptxTM}xtYF4s_f7mTH@$&LzJx}aR1j%ZI`v0owG~(tujoGO z=XsK{l+`jKgPI=R*6gW_ez#O*5%=di=3xJ9Zu%L!~UCA#3`Cl;X@Fu*&Fk9dnJ8~ z@u{4rb4P4`Z3sGaWKbmVsmq&2I&!FAg$}x$tTleTvNr0db2il~*EE;C!OBJ@e7kXx z7eqV%UU*}5RqO*{N?ZlE!2=3D);#H4EHBNOYRaOz-ZSlO)wlNaN{wv~Jdw1>=7ANP zk`YUkz+5I)$Rb+&seoiSsv7WVWXYe3zjpo`N&ZXc@7#}x|3k{h=K0O#;(h=jV3(QNE!`zt9#A@ey$oVBeMKs`S1GolYb0FQ~uEX okIO%XWJDc*8WorPKR{{Lr|A*A;wEzGB literal 5930 zcmb7Ic{o&W-?xOw79wg8sU(psG1<4YNcQY|$WjcGCWN9z2oc%0vV>%v$(G87!X*fM9Nt)&S^{m5|~+k4mMy1h9I<3rkB+S}VD z5m9@)MAly`()I%DujSr9&kkv4jkL4Ax4T8!n%>*p+}qjM+a-{<{;+19STpvl89UaD z4Vf^(oONMMTQgB!475K36HF$Iv!-t_u=iQh*I9qBkbxoA^fmh21M=o~3LZ|ux6$Wg zskmC|S~Yd;J$1F5x>`zIEvBs$&{pzk%Q>{A*R-WH`odHCLK2CHA#Kl*wwFmnG>OOt zE2N!O()K)QXN5$>lC~H3_O?mHnZ4Z&($-%Rah9}$-`fR9J2>*z6n(9fHGPvcZNr*% zpyR4oGq&WdN!F}0eZ7`7*a$LVl!1*T z1H+8DDB4B`nJ~h@LKt(=j5#O^8%PEQ$pDfJ{3HVdtm&)dO(c2q2Yv1#W%C<-E{3|< zMcM45&%-Diy_Aiwl#L$BMi*tHo3hbKpMON%WGlZ=@Lw3qFDUqS=0Xf*y_K@wLRoL7 ztT$2D8!79bDeIr;^YK(%BNbOqAx=_pAE~%HDxsgcR!Lp0q%S;XEN9SG3h7I!^u_1Y zl_J{mTiS9i3*$#y&Y~|S)0W@RmNIEe8C1eg+Tu(4;xqa}0&VdHeIb#t@`kaJ%UI20 ztiGdcjnLN$8H@4swGzfkHVYd-$5qhqA8Ggo=3FEV|A~hGOv5)b=R#@tHrfV)v64yK z{K8mDW-L8nEGANcJ{HE83VdTMJYp=TQ@4hhbK%UnyNu;j7B+}N{6*QGr4auz7UCGI z`Si77I_^Dvy@tO2p0-}coR4PCLzr{-slZppawZGoPbCacw}x0)f6CSvg*Z+jPOvcE z6yg+x_=kmdqY!6UXb6ndK!?MZhL$`*R#T}=!#ltPlBzI${MG2563YHBh4?V)-LoB zl8cAcU`=ong`PMZU3DdPL)p;@YRT^`Q<#2Ah}vZ}OaD!0b`DhocKNC_sQT3wHnCDeng6t zlyjrRLh>o~rYZCGCVR9gv_j*BF3g>`lSde?_H-_^o2&?vrkye(KbjXyCfmt_rOdk-RCdQ=U7`)FvRo69EP{H<>scN5tM%5tjVu2 zr7_SMyJTrpP}G$Y@Yt#Ar~TgDAbJ=<@dt2E3S7*2;lB5zn)Nr?e7njsqH5LmxzNTO zw)V57U=3(*TH~HyXbONtb%c(degrN-1nu4hVsnh3qJj6E)Y@{{*?Ze~HchRtLBbf2 z6NESbPcjM&PneNpYYs`HP8+tGLI*FQdpk$P*Mt*GVZvEzZ17bGs8O;17g5^v&jMBs z>`IMnzxNidv*RB_@>_4Vs|do?65kX7nnT~B*TUW;c^t{izmx#TpLFf)MMK%_#?m&4 zPk;xvmT&q8_<@^`Q`_BBmAVkNyT)R7)o%PX==CEwN zHQ}7hLCSeHnR>nPcMx2Sx6)TBsF-a(URj1nF9jbg9$bT@jBB$!F6jv!um`giGL%Enp+EQrWng;@^WfxC33)$*3#N!j>ETvGl%77V1%OUL5_UwpLye zFlgf2CseIaf#-C8eudc3j9hHd4 zb1b`k3O^l}!_Z3x273lpHN*-tK=|nI6S=~0#i-)om9Av~R>C%(F}04kN8n|ZRDUc% z#Q0E!xkd{+Ry&c3>uqCby=`;`O1$R0VyRq3f4+7pLU{>%a7L(MGjUoc~`K)PRT1!F`!n>Q@1@>WS_%i1|miRAE#-TVC{VW>&qvqMS7m zTV}Wk;boiSW@J|-?4-TG$JfI6ary@@)n>Riw1nd&;qT18OcfH%_te)4WgU#5S=ET$ zlXjz$HFqUM_E@3*st}zgyC=o5XHPk)%*fut8be_d!R1TN(fO^0=cvz05xNh9g4(%M zA))bs2a|ynQET+HOFY8hSMu4lFhQKIgU?wwB4HwGU+ZuZ5S`&MpsD`7L&ytemXrik zi5A%{*9=O;N+gcXn?k_{q5BW3Zp5dY5fs6(=Ume6SN*C0WGWYql`&!jy%^$mOfXL} zI%MXIguOA_yG>LbJO+_TDIP zakM;u%CmjTx#al~zrksP)uSl-K{&UhAD?v&(_bJFc+4}eh`eM=mLJv_L!WHY63MB7 z$?8R>009}HqQ2E|odal2ktTm=n)$Rlr56NuHExy5^u0yOF9Ca*L`N5uPU(j!tO-B3 z*Q9abOLYL-+X-ab%*^!-N9wWJ`KN!lBv*n)OrbqbH+ahhBWsk5|A7+1eIwmk5WW!P zh{mh%6QXf%*t5u_88D_lKkYge>%C!i=prJ>Fl{V0sLnj9Atd`mDdLD(R2k8ApEL#< zGAEBem9`uMZJmJIzOhJ|VskzV6iFz4P$&U6C0n)Z*R#_z+jY42h#oG0?)8BbBMZ(# z+7bf?ht^Ejzu!am2?3%VROUkZNv62N~NUmgRgD}e9n!c9XIgnY(8a8oD; zx)kjE0VpS*K(d=DSx#p!(NtgzBo9piIR0&?Z}-%lg`@y$c?rOnyDM1?^x8`sUXBG_ zKXj|uBK)v2f_|B8E=cvPoiT!{OQHJ-W;VV-+FpJO^dUcXYb>BTa4~)~r=mDkQ6m{( z2d5ieJO<|Awy5grh6$iK<(l3@L;CwueuFvWn(kbDWvB^LaK9+Z16P3@zV7dFr0lN| z#cgu@4bm??(t-0>(}0O#m!=)NQ+`w(DZF#`$DNC^aPISdt|7|Dt1n1q_yiW%2hvG6ZU|Gl%@+Li}I}r zzs=Y@^B!dSO#H#^r>8Cc5waD(al*N)u2yV}>3$QukR1N<$!W(7ccXdTOz0GQ+>=78 zdM-5RCCr2JolA3$JXMSlDeM$y&+>cdK7{lE>XS|Ge}oj(zU_^a4gIApjMNxf@GD}Y z$sUsg>{{awz~7aMpNDB)_D;qZ;C$D@4$dcU$MuQ%H~LgGi2Wl@mRznx(%UB0ae|xT zYiYkyBa}7xTdp9WW9UDKnnnw@_2hHYx}B}!_;)1;&=W*}!p}S|A)CTdPhpWKK(eT; zR`rSiq_%Kmtl`+Q5!CcbICw^`Jub!89gB;1P+ALn*3zsc?No8Ud>z3)g~Ei1ui(6` zHj72go_3{(3*XvWw=THWJ@trLfzC#mLa$Zkd23H!&&+mNmaYLobe>ZVST9l%9rE2P z_Xs}8K#nNk6j|4|SywrIa||t6*lwhZ|E+A;^?O~U+j0zTzkMD^hZYcXitO1(Xlvj% z%R$iHFXk!;@JMdMpE0z=whA-lt(MmS4crp1CnpYnXVOJ|@mZ2OO?LSST_0q3*ou6& zec-(>ClD<|idS)pcLx;t&W*cW6JJJMSPlIqSJfa#XKzz43)_LI8$%#St{C~^v{ZVW zodowai7BaHV>yN!QG+r*&1!P{vTI?fcK6Y0ya|nn6Fx5q@Q+HWq+2&H4^Z*SXmjbKr#A#d zd6pooJc?CtaeHx&U6wGf*JKyCCsY0XtXL)mf0 zHgiqz?Xsl@TwuCx^eO2sG!+LLwuZZa@v3^Oc7E zN4G?r&v_*%bUMFMeWQ`_HI2p>eeie7?t~4`LrI;wLy>8^e`<+m5si|5VoDb$vyW=Q z76@KtCi`v;&~7Z5%>3dRJ8_ykyqX2=VtT0Q#3?R?ed3WThS;IIQwi>ILNL|KxO&Al z=`PWZ<0O}RO~VeayRl&;6C^s=az^1i>r!X8Z!{s|*tzJo!6}&QQWnoCf@xUFa9VT6 zW`onwFTx$%+ODXTIKsVhp(mhy5n8GqO9m5PzV)~xeVoI_UwGWCSg(?9 zJ9PWNtb<6*Z@P_pOHge_P@_koWhc2R;GE`N@uhmB8!s(8$ikEFCK2bJFoR+A&deIE zpu@I8bXEQbIk0$``zzg-8A>)@Q3z-!na^?JZ4+O00n869mHgr z?p=H3oOJG~K#>Pwz%RaLS2Q*{x=7Dbj(re81_zEyXd5?HW6FuXvEJ25G6Ns@zYgR)B;N_QdeS%k zVZ!uPPS*$NUb2uDLhr%JNjZbaCbN=$8_nRWThC8P^;;+J$JalSdI70?b$By4Ji>cn z#Ymk&EnTX=Dqo;|h5~rmMS8CeKhkF|y#6J4LoDbsgnS@hK^%DA!RiCc420fuNXjSP0=0%-XY1kq0>0}H%evjf zlC*o%>@4sf)*t}2sBRU zeRFl*kp5%dE^iA&9QBLCK@>*458@IGjOCV#oW!1(px={f%>ccqOt8ds`9*S!O*MVu zrGS+bzZB(eK&x9**|To(3QtQpo`>Jmc! zRFvF3pU!zZAGeQ^<7sN~Upy6`W%+m`loSIvab~IS%tK>SQ5SSal2)RynW{ZYLv92t z>JC>{%l+TSSY`mScV*9DnAv6|tR3=j(Q5zou+e$#de_B1lnz(NbYtr{v?H7&Vi|GB zLzXw9t^U(|w}Apaq1u^VQ5@mPcYQcNxijuWH)mDgW_~AunpDSARX;A*J18SBCxe0g zeiWgUA@xcKCh|57^}2gb?%V}^vW0xS%#g5$?1AkXKWgKr3QpwbOzu9yJ1bd^?U9MO z<+u_K0IYub(Zr<)IU7+WmE62s7{ARK6#~eBmSBYhJyngn{l@tF;MI~wLHNS5N6Al5+{;oeHz*hdgO5b)9m+j zi6c%9x_7P}nM+szDJs^x<5#WU`1Gilm-dPr3c9Cmzgx*Y0P?7*s~bXX?~k-y6gj%u zHwv~s%h_<`sY%RrOvi6i^K!Y9=8u&NUm>8BJo!wS(%@)A0>%6s6se`K*(M+!GnsIJJ#S z6B*%L{~}-=Vyh)fcsoq(03GgNB$VS{)$A*?d5_s7p-Pp>t{hrR8vo`~`wy1_TjcBD zc3g=QFG+S2{9p{oLwkOrx&_#1ESs+L56O~n2G|JT=-~bzKpy%S#TmheWZx(LJNRFo q|B3zIp8wVu{~zT4uaGdRgjtnfKkN46m+YV299HJmX7wgsiT?%rV~kY*