From 5e4d06ff062809abf277c5cc5b0af64c67d2e084 Mon Sep 17 00:00:00 2001 From: Tim <47184194+imgde@users.noreply.github.com> Date: Wed, 18 Jun 2025 21:28:31 +0200 Subject: [PATCH] Improve Statistics Page --- 00-backend/datasource/database.sqlite | Bin 27684864 -> 27684864 bytes .../src/helper/adminpanel/StatisticsInfo.tsx | 22 +++++++++++------- 2 files changed, 13 insertions(+), 9 deletions(-) diff --git a/00-backend/datasource/database.sqlite b/00-backend/datasource/database.sqlite index db298bacac525f50a6abd3cb4d2eebb3276295df..6bc1ff6c767e75f37b752bc718da75b8525f8678 100644 GIT binary patch delta 2204 zcmYM!cT`q&0LF1&5bq1`%ll(*6(?>57w&<$#Vsxb+$f-;f{F?XiW_i(TcK=O8D&_Cf@1rs$=uAN80uj=k2=b^tp5LN_2Yvf66^u zZ=^hbQgnL9<;qDP^g}FzN73v;=R)~89*n>4} z4u4N8==LQamlfz9zE*&HI4ytoa9Dos;bR&1@NQvuY1zE}670V2Wn%2k+sn>1y&ap) zZeoh6N=vFrZSa66>cR{4V8IS=_`m@teBpwDAN&!3Km;KeAqYhn!V!T;M4>(!pdq5s z2#wJMP0XpatvMI1V!6FQ>{x*{Ik&>cO{6TQ$Ieb5*E&>smH zfJ6+$APmM348<@E#|R{0Bt~I0#$YVQVLT=v851!HlQ9KTk%DPRMHrsLY*oaNo zj4jxTZ74+<%CQ|guoJtm8+%ZJO66rRA7cnYWSG@ij3oW-+v4$tESoWqNF2`}S3Ucsw)4X@)3 zyotB)Hr~MnT*SM05AWjxe29Le!;K!4Zq_L{D~X*3xDGu)Z$;<#I4PI`=wAk6i=nD;-%D6EXA&PD?W-taVoxw zOEHR{;;#fKfl81Ptb{0`N|+L^L@1F;lu}=5pfpsXl}1WqrHRs1X{Iz+Vw4t2OQn_4 zT4|%SRoW@-l@3a*5~p-jIw_r%E=pG=Ug@TES9&Ntm0n73rH|5A>8JEp5|jZ-qB2k! zqzqPuC_|ND%5Y_blBA4OMk%9}G0IqFoHAaSpd>33l}XBEWr{LYNl~ULsY;rXu1r^E zC^MB=%4}thGFQn^<|*@)OeIUnRu(7=l|@R9vRGN7ELC!qJY|`(Tv?&yD=U>%%4(%R zDOA=dYn39USXrm6S4xx(%0^|AvRT=pY*n@?rAnDnu54F!C_9y1%5G(kQlV5TdzF34 be&v92P&uR=R*on~l`5s$c7}hHE#>lmW)aPI delta 1950 zcmWmERbUom7)Now(fPt?HoCjJySqC_j%IX>9KDg-XxJ1B5m0Qwn2N1nqoOFbh>7hv z7r%4&zkHs=Yv~0OkrES$+ZEe65_e`o=J@E`AuTGL47bAda6ViKSt0FQk(7lYgsf~K zk~0z$NliF=x=hr$w7KzxOXUk0*~0B`Gu#MQ!{u-(Tx4`AWH3nz>oby*GLj>RLU!ap zPUJ#vtjVH80$ilP{bqXbH#6iTBEVi1e6D2MW>fQqPu%BX^>sD|pO zftsj=+NguNsE7J!fQD#<#%O}3Xolu!ftF~6)@XyaXovRbfR5;d&gg=!=!Wj-fu87v z-spqA=!gCofPol3~(fsq)6(HMiV7>DtgfQgud$(VvTOvN-z#|+HGEW~3r z=3p-7VLldMAr>J4i?IYtu?)+x0xPi!tFZ=&Sc`R7j}6#}O-RCKY{6D+!*=YzP9!4* zyRaL3uowHVAE`(~Iu76<4&gA4;3$saI8Gn~nYaUY;w0|E-M9z$;y#?h{Wy&Wa0X{_ z4iDlXoX5j>1drk|JdP*uB%Z-exUdJ1F6K~-% zuHbFFgLm;B-p2>{5LfXLKE@}whEMSsuH$ojfgAV|U*T(fgKzO2zQ+%^i63zbKjCNm zf?x3)e#dS6fj{vV{>DG}7yoVJ_LE_vOm>sQ1aBc&Zdj$YPy;3ribZidYRs)kLhdr znf_*g8E6KX!DfgVYKEENW`r4OMw!uOj2Uajnek?VnP?`N$!3a)GgHkpGu_NEGtDd$ zZ)Tf0X0DlM=9>j(p;=@S%wn^|EH%r_a^G?<&7_+H=Ab!b4x1z9s5xein-eC(WJWIVqatIk F{SR}KwR->n diff --git a/01-frontend/src/helper/adminpanel/StatisticsInfo.tsx b/01-frontend/src/helper/adminpanel/StatisticsInfo.tsx index f3e0afb..1a479c7 100644 --- a/01-frontend/src/helper/adminpanel/StatisticsInfo.tsx +++ b/01-frontend/src/helper/adminpanel/StatisticsInfo.tsx @@ -122,31 +122,34 @@ export default function StatisticsInfo() { setMonthlyRevenueXaxis(cmmx) setTotalRevenue(tv) } - }, [dataRevenue]); + }, [dataRevenue, monthlyRevenueXaxis, t]); useEffect(() => { if(dataOrderStatus) { const orderStatus = [] - for(var status in dataOrderStatus) { + for(const status in dataOrderStatus) { orderStatus.push({value: dataOrderStatus[status], label: t(status)}) } setOrderStatus(orderStatus) } - }, [dataOrderStatus]) ; + }, [dataOrderStatus, t]) ; useEffect(() => { + function generateName(percent: string) : string { + return ">" + percent + "%"; + } if(dataStockPercent) { const stockPercent = [] let i = 0 for(let x = 0; x < 10; x++) { - stockPercent.push({value: 0, label: String(x*10), color: getColorFromPercent(String(x*10))}); + stockPercent.push({value: 0, label: generateName(String(x*10)), color: getColorFromPercent(String(x*10))}); } - for(var cat in dataStockPercent) { - for(var percent in dataStockPercent[cat]) { - let index = stockPercent.findIndex( (entry) => entry.label == percent) + for(const cat in dataStockPercent) { + for(const percent in dataStockPercent[cat]) { + let index = stockPercent.findIndex( (entry) => entry.label == generateName(percent)) const datapoint = dataStockPercent[cat][percent] if(index === -1) { - index = stockPercent.push({value: 0, label: percent, color: getColorFromPercent(percent)}) -1 + index = stockPercent.push({value: 0, label: generateName(percent), color: getColorFromPercent(percent)}) -1 } stockPercent[index].value += datapoint } @@ -222,7 +225,8 @@ export default function StatisticsInfo() { innerRadius: 10, outerRadius: 85, cornerRadius: 5, - paddingAngle: 2 + paddingAngle: 2, + valueFormatter: (v) => (v ? `${v.value}%` : '-'), }]} width={200} height={200}