From 9f3707a9a990d397b9dcb53e8c1e1445e6a0361b Mon Sep 17 00:00:00 2001 From: chenli Date: Wed, 17 Jan 2024 17:45:14 +0800 Subject: [PATCH] =?UTF-8?q?feat():=20=E5=AE=9E=E6=97=B6=E7=9B=91=E6=8E=A7?= =?UTF-8?q?=E6=A8=A1=E5=9D=97=EF=BC=8C=E6=96=B0=E5=A2=9E=E7=94=B5=E6=A1=A9?= =?UTF-8?q?=E7=9B=91=E6=8E=A7=EF=BC=8C=E5=85=85=E7=94=B5=E7=9B=91=E6=8E=A7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../RealtimeMonitor/PileMonitor/image-gz.png | Bin 0 -> 3974 bytes .../RealtimeMonitor/PileMonitor/image-kx.png | Bin 0 -> 4420 bytes .../RealtimeMonitor/PileMonitor/image-lx.png | Bin 0 -> 4414 bytes .../RealtimeMonitor/PileMonitor/image-zdzs.png | Bin 0 -> 4296 bytes .../RealtimeMonitor/PileMonitor/image-zy.png | Bin 0 -> 4483 bytes src/components/TableModule/index.jsx | 3 +- .../RealtimeMonitor/ChargerMonitor/dataSource.js | 183 ------------ .../RealtimeMonitor/ChargerMonitor/index.scss | 257 ++-------------- .../RealtimeMonitor/ChargerMonitor/loadable.jsx | 193 ++++++++---- .../RealtimeMonitor/PileMonitor/dataSource.js | 183 ------------ .../RealtimeMonitor/PileMonitor/index.scss | 309 +++++--------------- .../RealtimeMonitor/PileMonitor/loadable.jsx | 323 +++++++++++++++------ .../RecordsInquiry/Unlocking/loadable.jsx | 46 ++- src/services/NewEnergy/realtimeMonitor.js | 40 ++- 14 files changed, 530 insertions(+), 1007 deletions(-) create mode 100644 src/assets/images/NewEnergy/RealtimeMonitor/PileMonitor/image-gz.png create mode 100644 src/assets/images/NewEnergy/RealtimeMonitor/PileMonitor/image-kx.png create mode 100644 src/assets/images/NewEnergy/RealtimeMonitor/PileMonitor/image-lx.png create mode 100644 src/assets/images/NewEnergy/RealtimeMonitor/PileMonitor/image-zdzs.png create mode 100644 src/assets/images/NewEnergy/RealtimeMonitor/PileMonitor/image-zy.png diff --git a/src/assets/images/NewEnergy/RealtimeMonitor/PileMonitor/image-gz.png b/src/assets/images/NewEnergy/RealtimeMonitor/PileMonitor/image-gz.png new file mode 100644 index 0000000000000000000000000000000000000000..2ec3ad3f5acf48df43a8d50b7318aff88273a120 GIT binary patch literal 3974 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 literal 0 HcmV?d00001 diff --git a/src/assets/images/NewEnergy/RealtimeMonitor/PileMonitor/image-kx.png b/src/assets/images/NewEnergy/RealtimeMonitor/PileMonitor/image-kx.png new file mode 100644 index 0000000000000000000000000000000000000000..6067ae1672d8d8cfbba801755d4695e1e54eb308 GIT binary patch literal 4420 zcmV-K5xee*P)T_niOy=iC3B^S{o4z$Gl3o0^oOMczq~$f%zNnAcB;j{$xN z_;`%?IDQNE2!|-~@+ie`3OpL&_-`nTDvU&jyJGJ&*Vd|+Y8d2Vcf6x}cL9wQ1X)y_ z#;JEQQ5ki^16L@EkHs$dsdA1@9SiSSxO2=6J-cl$3V@rBG?f&1AxH@X30Dj4GHIti zC&~!p5FU#`xOq+Opq;i(>gE-|`nHE>DlB>hP+s7KIoE9%8B=NW&3!AjzvY^i0fD># z_~~O!K^A8VIPju;F>Z%$9OA=~;Yd&ORi6plX=kNwP66EY>VuP_@uG5%$|qat{9@N( zln<)Itf%41Z5MLYcTND@bmW1;>4B*WcwC*9E5`Ckhp6f~FDvQ!^_op1Zu@Z!V13&| zGl6>+D}=bF<#sT3+N+%NxB^`Vs<-ypX_r~o)u6YwG+g0RXqg)ZI4Dzr#nvm7&f|CHf3g`IYm>vCx06dpqh=4s1q^om3o=!l+w^`$kp#q6}T z1>lZ@y9?Cm1<6-Fp$9siVFPuL?Ndv^~vDmo|RjAWObzg?s#E$DfkN($q0$}1o+j2 z(Qo5=msf{@6)U2^O#!SsynnK%*jp`gIpN;#^KkOT z%Vo;Sz!6hg_0V79QWG%+hk_a%R*#yQeue;UeBu}W(z!Eg1UROhXj2yM!8!|Nj9*Ug zaa^x6&c7p@(g;wr_jG^jlQ(@iE7*nr*0t=f@+ykdwxvv4@2k2aqFriIIC&rC{3lq$p&2G)`J%lS=HNHcg88pmj|kv-1aN{rIRQZ7elPN>XrCGv zR8uNYLB0}ccix}*zj9Dv)}_O0@O$8cJzDh476X~YiZA%59Lz&ZZ2I4AD*!Y3K2LVVMG{%HoiyII6T|m z36J+?RnaVimQnGH%GK>eQKCi!VxV?6tk|a6)JXt$9sS)3W)@B3d^7s>%okaUEC*2P zzEZIs<^_aLHYI5~cquaDCC})+nA$%NJqM#Xl14`OedwKTHX069$c5i7`(#@Zz|F^+ zd0qD$Tz_rP*|Yv4Y>+z!bQ>;zKxHJsNl^P!eD{eGW&5;Wyof;535iwxDu- z9F^>afl^kq_V&S*UGSUj|UP5oI75SglfD(9z5fRQP8>u0OiAcv_k-{3o>C0Im;q)EAkUJwtE9gQ0(0`i;`* z=?xNK>YxI&hEKvDPqbK~XE;p>zXO-97mVJsvFLG>zyov8FKcYqGJYFQ-#Ry(+*!R5 z{J85TBqSv{>1&$+aChiGmb=+maTP2;Nt~!RCg=;5=0_c-`mnSwPRMRf_- z+PC342k`$DNW zczwk>xT1JknuG!TtM@hdCw@dJKydGsp)r*0MKx{52I41q{5nOdHBcVZ|E4QT+@A%JDY!Ex=L@9ok+)XSYUH)kE2PX7e{ zC=H>*&HS?!lr7Yzd(lT&Yb=2nd8q&uX;{7RW z?6j^LWfH_Gd;+KNHlvP2B9e3y0mgrUdZ3}DA{)g=E7rg~+ziGm(Yn_qB{@O@{}eis zB)23u2PWe>m)=h3lI0~c@$ZFF$rF-!27i=CLNCf#G<=WdTq~M$Up8KUlmP^=aS2A) zW*AoDa2Fo2y4EQdA1+%8ixG_UX{OUk2j?sf_R%x|Z$aQ^7f;PPJ+rmXM!&uP1pNDS zr&HDeBXxgA2EJzuAnzx;+8fFlr-t(Z*FfP!-RzW$1tl}!hJ|{JJ|%exdZ}jt;A5ee zlHGiyVl~XsBsa0fW!AUy{B(Ca^bER+pETndc%RYODPgCH%$1*u?1TF14}ni}pciCD#-(71b^GplZKG|}(ah5+o78~`1ezCO*CqH$= z$p_1-;61@oQ$L`Pz^6hf<9|cNDs2keiIJq+)?MK<@cfBa+^`L*#F-Eo<*$*g?G00X zoGvr!2`8DCFwL>(Sd|gdcWc!;Qz`623H)m)87+hxD^|iRhY}b?>3jJ2ArRkA3$D+@ zDq)+<+*u-1fmn)%xU`4GAeNUdz|X>@|1aHtC)UC~l)z^~DZBN$iW;242?^A#W?jN$ z&mFxz(2gHBMYe%x4%IGnsESTx5xHEs^fy$lfhmDR+&%?HVwfY*2)q$Kn*^&oI2#Im z{v-zaF020`v%UU)V00Ls>P)FaPC=B#hxKG54M5pO0-Vi2d-)G;gGyeU$~RQ5f+9`7 zvmXbR#YRT)NBC>!OCUB7H$?=MKp`I!$>v6M#s!r&pKJ;gh1E4?ox1hP=(MK-#226?=nko6CRko%j=Rh=eSf2nNt1k0_)l`$;CRF4;nJd zL-c8yV5zNzRuarzy14Q&c(*jAt}AT~lce~HI#!N2aK_3MpufWEj?Fu_1I}f8VYcDb zET2Wq)bt!(Y*cN_JhhZH+se`*8%D0gYnXn71Npx{=D-N~2Hr1a>UlLfY?Bqh&mDQJ zaMbh8D%nL6xo~ymQj(m|lIeVcrpN~j#3!|6yXC_$-%l2B*O^7t<~vB_dMC_Z`ZoL^ zqeOb*ARdpO-M_j%l#O3Q06&L!BSZ^IY7l>q2ky z7Z3o$TxijX;fc;;@u8QE?ou!WP&D3r@c!cB>A~fkfno-N08vrNU2al9E+)tb-hU9h z@5;c#yF}DDi?wAtBbS_kGRAkdG|k|OD$R`Kc$o`T)q33PKke3QBjd^Gd(F$j`EKS> z_7d&J6!YTxz_m_ZW+$h!q218I_+4l^T$&r(j4_EIdf&BtlSi(O{OkODsvvc*;cCOyN;IQLhyhPh1ae0mGes{wDpik8&-Wf>ZGnLag57KG2Ml;5fEAZzKUq2mFoZ| zwCDUL!pXJRsXS%X3ioMs5H!4`mb9ppKZmD`L_(CULOja3p<~c#_d;9S0P0-X*;pow z1gAGu>1teS)}fbs9S+zywZset&igTs`4CWgSS9eH>=q6qQWzjQg{n%oEyUlg>=;1N zUZ^-I_KQu=m{{Nn(}>H_kY9kz%%X(MLSV&5Bz5YEoxKQhAHM6wn>P9|XRi<2^x%#v z?#Oangq}C%WNXoYDvbwofM?cXye!^clPcg@}I;-AP!P5{&gw6W_6|Mam75WA)TIug|3ZPC{bISTjIWF$<)Koj%I<3ptJHtM2 z2#=?_4;p9ikQV^;KDHcbobFfHLZHf}G3%H*Hq4_v&8v3xJH=ksF0TNlOCP)>P~z&3@K4Iy?a z+S;|_7{?TwY(lE?sI8C@jmefpf!ryD_6v9z|fs^j6Bvc#kj zp@Q^KYuq|}%_DTHpu6+J|TE`_Qar0Nl&>xR(ul6c=}Q&W?1wT2-U zyW^H)$BN96c%>pml@MyVl%|po4?-xWl*WiDWWQ1#9@w>I%Tzw}{I*>b0GnHXTTxtO zR+>h*QVKKbmq|bMg;XZuYJ9+)QU>-kZ5{U0HkY~u1@M_eN0%B>T}3Jt<-%OvZ48>4 z5=PgT9@us{Z(2443IgDhtuIz8YPeCTvZPRq`=KihF>V_1&c~YW8}QT4OWi;LeCmZ) z%b@31D~eg}rSrwEqX-%v9@RVdKD2!#sJ;UMu=&W5XxJ!j1hJ~17%L=+e%hN@yG>P`-o5kQUO(+J>*h7+Cl9`~N>$~`ycjUd zB^bzNL7@gAjhK`aBOxkC$QTU33X8Uo!}vZ#QV!!a4Z#*1l9V{F81faVDuem-uPCzX z3!mQlQLZ#{0#HgRo;=*XKBS21Tsjs2O)6pwklBp(8w8BGTqPjIVnv#;z;ji2WN%|{D(QW>kd8-ZSeG3CR0ziM`t;O70 za!Bv(_+ZbTJ#jy6eF50g0xzPHZc(IB?57h*+F#(^?j}L2{k6-jHYBq{C`vN~^ml$J zn8KV?2Er$I?egx;cm|OD)`@WSMn9ee=EF@2iLYW1H~Se#P<18AcZ3u_g+!k8N|QaA zX#C0vul}`X0G~W`^cGc7mv~{s#EK9iK1Yms-g*#zI?4rSvPQaN-IMC6gJSbQ(cK^r)kqCAKGs3`q=`we}7w~ zbY;;-L8cYdv@1MiVZ=QS`Mb`I@oVh)SyLL{b(_+X6n*TYsS|tmZqEv~Er17p-F}l7 z-J_rE!xG``oKZjmy z27kYD<53+kjz9eHw(-n*SpjVM^>1&*l#DqN6?8lF-oL_c&B+aOV|dY?L&2Lu{DUC* zzfOG`rZM=~1KSqZlM4Xk@Vlmo4KB*{dZ6|b)VU@CrU8IG1{l9aia6~=OV{PwncD;l z0DSs|_6=@+E~ae@I$9F|*=urIGKY43X6rk1E6fA%=|k;R*dx2ii3GxE z_ozbo-ZeAwAQ_SJJ5tcAP9!JCr%rzP!B3?_X!8I(aPXx~PWu=Tb45|q=g>iYkbKux z#i*`2My1hWDk(0)clH>u_91Ko+Y&JdK?B316i+0m=gJ_yk5O;`5b5zmkZdrmGp1=g z23L;5WLXRB$FVQ$-1=tfVH&_^jvg&BCe=-j0xan-5qSP~5L`FZRnwY=I$D8G4#LfS zlh*J24>Qp@yXOpKM|Tf(obL$?Ow6#y(f5Bjjj=?JzR}e5iAk=L=KB{1k2Qo;!`2u! zq^X63`b<93r-ehbwsASFzpjD8Ar&CaNLT=$X948N(_J(^ncu!T%$kcB>%&k}x*doK zLp`_qvs)~mIt}1chhDzTaW_qh&taS{O4k0pF>p6uzmgb4+mb12nH4=eKX;**-u$40 z;(1JOXpNs>LHTz(KB37*zWBi1Z>0g;*V?MB2raq8Wn<`P&_#|5OtubVWhHd`t!t^G zENba8OQ*5K;m_RP`v!)oZ*Z8#C#Gn8D(N*1jf_*QeAZH0T3G=)CB&a0mS7ut3B#Zh z0I~BzZu{xrjlGV)vj)JN}kbkoF)r1_zn zSvQQ(?aKNZORute$n1}$_|@a@`34b-$&bPJ3wFGvJQHDs>Lal`CB)1@H~k3H?hda5 z{j(d_V0EoY%0v=9>$87w1d6_shR5>W&tAX^OZhs0xO&C1WPd4{M8CtMNpVAw z+Z1d-+qE-A(Fx(^edOwSG}Knpt2+eo%~n_%|NOS~REC$p;Jtn7oG&~W>@7IyKu%n z>>C)OF#y5Kz}Up3}TVy8Ka=fbASJD942BV$3ZYSDoDdKF!L$Btm! zq+a16c$$*|o!KcX^*cA-nACG~7D+~j0Xq*}bp^&W8^KN`R$gia8|rE*7trB$C*D5` z13VZI-3)3rWyCKJzx*-hYy;7XG1dj~T6v*Z*VvFYZ4A@2bQCWNehW(`>(B~FbIMfW z2+gT;-F`{g&rqTsyrm|)3LKdcPaSH%3l^ZQg9`B4!J*^MoF9(aOt}GmF+2S{<=iCB zjW*kT^-HS)qc^`lsbjL-YsUlLf5II=No{z;yi^8O%1cXV0s!Ud} z;Y1|&MMTnmta`SdN)U`P4PIT>uU=*Ov#iImfmpqyf*Ko^(Ih;Q4?4O4qHW+f5Vl|` zoWLTt*PfUh5-rakT@Sy99oMV{AtT=ZxF-;fY=|&;Ya3TkaZ$uFQFv;fW)SBD8>(Uz zv}$?nOel;1;uL*|It2#tC9K4pIFP+0j6QMTVEbyJ(sFx%#8)weKUYWq>uRbjvt%~D zM*tBkbk})H+A3q^h`0c}bo?)A!JO;9gg`+sCQG*Qp$`OAC2!wmEz+P1!Y!1KmWz^o zuwq#)v3{FdSkGNSkhQiNHeW{RzI2%ehXXtAksTnH$TWxc#V?*~uMI_Mt?d*RbO-X9 ze^f{bOwn$rTS^r$l->49diwei8Y}oQIL_B|3??Kd=tJ>uzxt0Q#U(|z*orAm2r5d5 z1B-#0GIssd*VZ6xKigF*oS2F;@RYsS+qW3+bKDSehf_Fz>6z>5|R)6(iHQeaTe zZmSXYh$pey4pP;U7?ngh>cZG2H>gb5iI=bRBc&sFNpwrPT(Gguh`2?jgGlYLLq3WH zqcX<%oXJ2T2U{oM4-X6trJL~cXp|4WC!h0AU;h9y5P}9!TuR8q=l!R4xa`jHNWgPo z$wir978e)8kS@0bjNP=M;e~cytfB($UXi6A`x!j{8|JRF$8GUo0$G!b_`%bMU%CUg zUqtMBnMrSZ3eO9YT*=^QScQj2>^%$yacmr+s{(+B_tJsP{YRbB+c*OA$o+T!F@@2* zRn^U?=0;FIi{_cQic8QHTs#l%&N0E#(uH0U%oi!d6*N9h^xQ*NmJ)ML@#QLBjyNDY ze+_}Hl|oW z0CFcS35ROLm#`=97@066?vlIQ^`_lj3XZ{nCt6!ei?yl^u>I#cqYIdx0r7hPF_09H z+)?q?68ye~e4l@E1CNiphKdt!J-lt<8M&->V7BfLw6@gHJxJWnTZ3U=*D62#YvM?(`Eosy9< z$H(_6$b{U1xBoW)G`Orv2O#;h5wZxMld5=88qTZiTr!+2G@OW@`1;H-E-&xOx3XtR z9MdY-p`q`q?l7qBI7)jDmYdtXFz2g|lsXCJI99S(OpsY7+%6%&`oy%P}|fJCm=YcinhPQ6#c!B<{#W{;jp8X(2euEo3`bY ziSAnh=Q44i?SE>N_|#g*GbSEH0e7&ih85I^%L8gL&1(TfEv`VWgQa05cH$Wp0ojYQ zwmq1hy{^U8G8IJb9u_Dghf=|2z&%kXJhVpAjSms9F)zFvQg|4^eMN(yZIy z84V+=VZba^`u`;VGXgsV_%`5QzVb>$?@L6ALuMqQP{b5kB!sxj)?pE*r07HdxZ{W2KAZRI4R0N60`ytN=2@grgy~#b>-*<9P zxVbsIdtM0{cjip)y=TAOZ-3|8-S2fag3e-@wMfQ`dsEkBnhIiZN))6i--_eHUuofz zl+Wx5K`9ZVR4k1vPN^iWSc+2dd`i_Fp>N7>6zQ`y4AIdY D!u|_Jf1of10>Lx6T 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 literal 0 HcmV?d00001 diff --git a/src/assets/images/NewEnergy/RealtimeMonitor/PileMonitor/image-zy.png b/src/assets/images/NewEnergy/RealtimeMonitor/PileMonitor/image-zy.png new file mode 100644 index 0000000000000000000000000000000000000000..4a368cfe76367166bc16191c9a4e326ba9a3b0d2 GIT binary patch literal 4483 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 VrZCwVTS@=`002ovPDHLkV1mJkx(EOO literal 0 HcmV?d00001 diff --git a/src/components/TableModule/index.jsx b/src/components/TableModule/index.jsx index 2607b67..8f59462 100644 --- a/src/components/TableModule/index.jsx +++ b/src/components/TableModule/index.jsx @@ -66,6 +66,7 @@ const TableModule = forwardRef((props, ref) => { showSerial = false,// 表格是否显示序号 limitType = 0, // 时间限制类型 0无限制, < 0 今天之前不可选, > 0 今天之后不可选 limit = 0, // 限制距离今天之前或之后天数 + rightHeaderCompSlot= null, // 右侧头部插入自定义组件,注意计算并表格样式高度 } = props; const [sessionTabList, setSessionTabList] = useSessionStorageState(pageName, { value: {} @@ -1051,7 +1052,7 @@ const TableModule = forwardRef((props, ref) => { : null} - + {rightHeaderCompSlot}
共查询到 diff --git a/src/pages/NewEnergy/RealtimeMonitor/ChargerMonitor/dataSource.js b/src/pages/NewEnergy/RealtimeMonitor/ChargerMonitor/dataSource.js index 99b73a3..e69de29 100644 --- a/src/pages/NewEnergy/RealtimeMonitor/ChargerMonitor/dataSource.js +++ b/src/pages/NewEnergy/RealtimeMonitor/ChargerMonitor/dataSource.js @@ -1,183 +0,0 @@ -//用来存储表头的js文件 -import React from "react"; -import { Button } from "antd"; -//支付记录的表头 -export const payRecordColumns = [ - { - title: "序号", - dataIndex: "id", - key: "id", - align: "center", - render: (text, record, index) => index + 1, - }, - { - title: "订单ID", - dataIndex: "order_id", - key: "order_id", - align: "center", - }, - { - title: "入场时间", - dataIndex: "admission_time", - key: "admission_time", - align: "center", - }, - { - title: "计费时间", - dataIndex: "charging_time", - key: "charging_time", - align: "center", - }, - { - title: "支付时间", - dataIndex: "pay_time", - key: "pay_time", - align: "center", - }, - { - title: "应收金额", - dataIndex: "receivable_amount", - key: "receivable_amount", - align: "center", - }, - { - title: "优惠金额", - dataIndex: "discount_amount", - key: "discount_amount", - align: "center", - }, - { - title: "实付金额", - dataIndex: "paid_in_money", - key: "paid_in_money", - align: "center", - }, - { - title: "支付类型", - dataIndex: "pay_type_name", - key: "pay_type_name", - align: "center", - }, - { - title: "支付渠道", - dataIndex: "payment_channels", - key: "payment_channels", - align: "center", - }, - { - title: "支付设备", - dataIndex: "payment_equipment", - key: "payment_equipment", - align: "center", - }, - { - title: "支付人", - dataIndex: "pay_person", - key: "pay_person", - align: "center", - }, - { - title: "付款路段", - dataIndex: "pay_road", - key: "pay_road", - align: "center", - }, - { - title: "第三方流水ID", - dataIndex: "third_party_flow_id", - key: "third_party_flow_id", - align: "center", - }, -]; -//退款订单的表头 -export const refundRecordColumns = [ - { - title: "序号", - dataIndex: "id", - key: "id", - align: "center", - render: (text, record, index) => index + 1, - }, - { - title: "退款方式", - dataIndex: "refund_type", - key: "refund_type", - align: "center", - }, - { - title: "支付渠道", - dataIndex: "pay_road", - key: "pay_road", - align: "center", - }, - { - title: "支付设备", - dataIndex: "paymentDevice", - key: "paymentDevice", - align: "center", - }, - { - title: "退款原因", - dataIndex: "reason", - key: "reason", - align: "center", - }, - { - title: "退款金额", - dataIndex: "refund_amount", - key: "refund_amount", - align: "center", - }, - { - title: "申请人", - dataIndex: "application_person", - key: "application_person", - align: "center", - }, - { - title: "申请时间", - dataIndex: "application_time", - key: "application_time", - align: "center", - }, - { - title: "退款时间", - dataIndex: "refund_time", - key: "refund_time", - align: "center", - }, -]; -//操作记录 -export const operatorRecordColumns = [ - { - title: "序号", - dataIndex: "id", - key: "id", - align: "center", - render: (text, record, index) => index + 1, - }, - { - title: "操作类型", - dataIndex: "type", - key: "type", - align: "center", - }, - { - title: "操作来源", - dataIndex: "source", - key: "source", - align: "center", - }, - { - title: "操作人/设备", - dataIndex: "object", - key: "object", - align: "center", - }, - { - title: "操作时间", - dataIndex: "time", - key: "time", - align: "center", - }, -]; diff --git a/src/pages/NewEnergy/RealtimeMonitor/ChargerMonitor/index.scss b/src/pages/NewEnergy/RealtimeMonitor/ChargerMonitor/index.scss index 9a8202a..9772ef5 100644 --- a/src/pages/NewEnergy/RealtimeMonitor/ChargerMonitor/index.scss +++ b/src/pages/NewEnergy/RealtimeMonitor/ChargerMonitor/index.scss @@ -1,238 +1,29 @@ -@import "@/assets/css/mixin.scss"; -$color-container-bg: var(--color-container-bg); -$color-user-list-bg: var(--color-user-list-bg); -$color-text: var(--color-text); -$color-primary: var(--color-primary); - -.ant-tabs { - margin-bottom: 16px; - - .ant-tabs-nav { - margin-bottom: 0 !important; - - &::before { - border-bottom: 1px solid var(--color-card-line) !important; - } - } - - .ant-tabs-nav-wrap { - width: 100%; - box-sizing: content-box; - - .ant-tabs-nav-list { - width: 340px; - - .ant-tabs-ink-bar { - height: 3px; - background-color: #00ccff; - } - - .ant-tabs-tab { - flex: 1; - width: 100%; - display: flex; - justify-content: center; - padding-bottom: 10px; - text-align: center; - cursor: pointer; - font-size: 14px !important; - font-family: MicrosoftYaHei; - text-align: center; - letter-spacing: 0.7px; - } - - .ant-tabs-tab-active { - div { - color: #00ccff; +.TableModule { + &.real-time-monitor_charger-monitor { + // .left-search{ + + // } + .right-list { + .cc-result-flow { + .ant-table-wrapper { + .custom-table-cell-span { + &.charge-status { + &__1 { + color: #2adc41; + } + &__2 { + color: #f99b2f; + } + &__3 { + color: #ec5761; + } + &__4 { + color: #a0b0bd; + } + } + } } } } } } - -.ant-input::-webkit-input-placeholder { - color: var(--color-placeholder); -} - -.ant-input::-moz-placeholder { - color: var(--color-placeholder); -} -.right-list .ant-btn-primary { - width: 68px; - height: 30px; - background: linear-gradient(180deg, #3aa9ff, #59b7ff); - border-radius: 4px; -} -.ant-input:-ms-input-placeholder { - color: var(--color-placeholder); -} -.right-list .cc-result-flow .table-wrap .yisa-table .ant-table-thead th { - background-color: #616b83 !important; -} -.right-list .cc-result-flow .table-wrap .yisa-table .ant-table-tbody td { - background-color: #3e4557 !important; -} -.right-list .cc-result-flow .table-wrap .yisa-table .ant-table-tbody tr:nth-child(even) td { - background-color: #3e4557 !important; -} -.ant-input::placeholder { - color: var(--color-placeholder); -} - -.ant-select-selection-placeholder { - color: var(--color-placeholder); -} - -.ant-select-disabled.ant-select-single:not(.ant-select-customize-input) .ant-select-selector { - background: var(--color-input-disabled-bg); - color: var(--color-placeholder); -} - -.ant-select-disabled .ant-select-arrow { - color: var(--color-placeholder); -} - -.ant-select-disabled.ant-select:not(.ant-select-customize-input) .ant-select-selector { - background-color: var(--color-input-disabled-bg); - color: var(--color-input-disabled-color); - cursor: not-allowed; -} - -.ant-select-multiple { - .ant-select-selector { - .ant-select-selection-item { - background-color: var(--color-bg-body); - border-color: var(--color-border); - - .ant-select-selection-item-remove { - color: var(--color-text); - } - } - } -} - -.ant-select-arrow { - color: var(--color-text); -} - -.ant-select-clear { - border-radius: 50%; -} - -.ant-select-dropdown-menu { - background-color: var(--color-input-bg); - - .ant-select-dropdown-menu-item { - color: var(--color-text); - - &.ant-select-dropdown-menu-item-active { - color: #fff; - // background-color: var(--radio-button-bg-checked); - } - - &.ant-select-dropdown-menu-item-selected { - color: #fff; - // background-color: var(--radio-button-bg-checked); - } - - &:hover { - color: #fff; - // background-color: var(--radio-button-bg-checked); - } - } -} - -.ant-select-selector { - background-color: var(--color-search-list-item-bg) !important; - box-shadow: none !important; - border-radius: 4px; - color: var(--color-search-list-item-value); - border-color: var(--color-search-list-item-bd) !important; -} - -.ant-select-selection { - background-color: var(--color-input-bg); - box-shadow: none; - color: var(--color-text); - // border-color:var(--checkable-tag-border); -} - -.ant-form-horizontal .ant-form-item-label { - label { - display: inline-block; - word-wrap: break-word; - white-space: normal; - } -} - -.ant-picker { - width: 100%; - background-color: var(--color-search-list-item-bg); - border-color: var(--color-border); -} - -// .yisa-table { -// width: 100%; - -// .ant-table-thead { -// th { -// background: var(--color-table-header-bg) !important; -// } -// } - -// .ant-table-tbody { -// td { -// background: var(--color-table-body-bg) !important; -// border-bottom-color: var(--color-table-border-bottom-color); -// } - -// tr:nth-child(even) { -// td { -// background: var(--color-table-body-bg-nth-child-even) !important; -// } -// } - -// tr:nth-child(odd) { -// td { -// background: var(--color-table-body-bg-nth-child-even) !important; -// } -// } -// } -// } -.totalModal{ - .ant-modal-footer{ - display: none; - } - position: absolute; - top: 40px; - right: 174px; -} -.ltc-item-img { - width: 390px; - height: 300px; - border: 1px solid; - background: #6565656b; - margin-right: 20px !important; - img { - height: 295px; - width: 387px; - // object-fit: contain; - } -} -.hanleHistoyModal{ - max-height: 700px; - overflow: auto; -} -.hanleHistoyModal::-webkit-scrollbar { - width: 5px; -} -.hanleHistoyModal::-webkit-scrollbar-thumb { - background-color: #9da2ab; - border-radius: 10px; -} -.modal-img{ - img{ - width: 200px; - height: 200px; - } -} \ No newline at end of file diff --git a/src/pages/NewEnergy/RealtimeMonitor/ChargerMonitor/loadable.jsx b/src/pages/NewEnergy/RealtimeMonitor/ChargerMonitor/loadable.jsx index 7d1888e..e3c82ab 100644 --- a/src/pages/NewEnergy/RealtimeMonitor/ChargerMonitor/loadable.jsx +++ b/src/pages/NewEnergy/RealtimeMonitor/ChargerMonitor/loadable.jsx @@ -30,69 +30,68 @@ import { } from "./dataSource"; // import errorImg from "@/assets/images/layout/error.png" -const { TextArea } = Input; - function ChargerMonitor() { - const [tableData, setTableData] = useState([]); - const [total, setTotal] = useState(0); + const [tableData, setTableData] = useState([]); // 列表数据 + const [total, setTotal] = useState(0); // 数据总数 const initFormData = { - charge_station: "", // 充电站 - tel: "", // 手机号 + status: "", // 充电状态 plate: "", // 车牌号 - charge_status: "", // 充电状态 - time:{ - - } + phone: "", // 手机号 + station_name: "", // 充电站 + start_time: "", // 开始时间 + end_time: "", // 结束时间 }; // 初始数据 const formSearch = [ { label: "充电桩", - name: "charge_station", + name: "charging_pile", type: "Input", placeholder: "请输入", }, { label: "会员手机", - name: "tel", + name: "phone", type: "Input", placeholder: "请输入会员手机", }, { label: "车牌号", - name: "plate_num", + name: "plate", type: "Input", placeholder: "请输入车牌号", }, { label: "充电状态", - name: "charge_status", + name: "charging_status", type: "Select", - placeholder: "请输入", - options:[] + placeholder: "请选择充电状态", + defaultValue: 0, + options: sysConfig.energyChargingStatus, }, { name: "time", type: "RangePicker", label: "充电开始时间", + defaultTitle: ["充电开始时间", " "], }, ]; // 检索栏 const columns = [ - { - title: "序号", - dataIndex: "index", - key: "index", - align: "center", - fixed: "left", - render: (text, record, index) => index + 1, - width: 100, - }, + // { + // title: "序号", + // dataIndex: "index", + // key: "index", + // align: "center", + // fixed: "left", + // render: (text, record, index) => index + 1, + // width: 100, + // }, { title: "用户手机号", - dataIndex: "user_tel", - key: "user_tel", + dataIndex: "phone", + key: "phone", align: "center", }, { @@ -103,38 +102,70 @@ function ChargerMonitor() { }, { title: "枪名称", - dataIndex: "plate_color", - key: "plate_color", + dataIndex: "muzzle_type_text", + key: "muzzle_type_text", align: "center", + render: (val, record) => { + return ( + + {val || "-"} + + ); + }, }, { title: "充电站", - dataIndex: "berth_id", - key: "berth_id", - width: 100, + dataIndex: "station_name", + key: "station_name", + // width: 100, align: "center", }, { title: "充电开始时间", - dataIndex: "in_time", - key: "in_time", + dataIndex: "charge_start_time", + key: "charge_start_time", align: "center", }, { title: "充电状态", - dataIndex: "operation", - key: "operation", + dataIndex: "charge_status_text", + key: "charge_status_text", align: "center", - fixed: "right", - width: 100, + // fixed: "right", + // width: 100, + render: (val, record) => { + return ( + + {val || "-"} + + ); + }, }, { title: "图像记录", - dataIndex: "operation", - key: "operation", + dataIndex: "pic_url", + key: "pic_url", align: "center", - fixed: "right", - width: 100, + // fixed: "right", + // width: 100, + render: (val, record) => { + return ( + <> + { + openImgRecordModal(val); + }} + > + 查看 + + + ); + }, }, { title: "操作", @@ -143,39 +174,83 @@ function ChargerMonitor() { align: "center", fixed: "right", width: 100, + render: (val, record) => { + return ( + <> + - + + ); + }, }, ]; // 表头 // 获取函数 function search(params) { - // utils.tableScrollTop("parent-table-scroll") - ajax.getParkingList(params).then((res) => { - if (res.status === 20000) { - setTableData(res.data.list); - setTotal(res.data.total); - } else { - message.error(res.message); - } - }); + ajax + .getChargingMonitorList(params) + .then((res) => { + if (res.status === 20000) { + setTableData(res.data.list); + setTotal(res.data.total); + } else { + message.error(res.message); + } + }) + .catch((err) => { + console.error(err); + }); } - useEffect(() => {}, []); + // 图像记录查看 + const [ImgRecordShow, setImgRecordShow] = useState(false); + const [ImgRecordData, setImgRecordData] = useState({ + pic_url: "", + }); + + const openImgRecordModal = (pic_url = "") => { + setImgRecordShow(true); + setImgRecordData({ pic_url }); + }; + const closeImgRecordModal = () => { + setImgRecordShow(false); + }; return ( <> + { + closeImgRecordModal(); + }} + > +
+ +
+
); } diff --git a/src/pages/NewEnergy/RealtimeMonitor/PileMonitor/dataSource.js b/src/pages/NewEnergy/RealtimeMonitor/PileMonitor/dataSource.js index 99b73a3..e69de29 100644 --- a/src/pages/NewEnergy/RealtimeMonitor/PileMonitor/dataSource.js +++ b/src/pages/NewEnergy/RealtimeMonitor/PileMonitor/dataSource.js @@ -1,183 +0,0 @@ -//用来存储表头的js文件 -import React from "react"; -import { Button } from "antd"; -//支付记录的表头 -export const payRecordColumns = [ - { - title: "序号", - dataIndex: "id", - key: "id", - align: "center", - render: (text, record, index) => index + 1, - }, - { - title: "订单ID", - dataIndex: "order_id", - key: "order_id", - align: "center", - }, - { - title: "入场时间", - dataIndex: "admission_time", - key: "admission_time", - align: "center", - }, - { - title: "计费时间", - dataIndex: "charging_time", - key: "charging_time", - align: "center", - }, - { - title: "支付时间", - dataIndex: "pay_time", - key: "pay_time", - align: "center", - }, - { - title: "应收金额", - dataIndex: "receivable_amount", - key: "receivable_amount", - align: "center", - }, - { - title: "优惠金额", - dataIndex: "discount_amount", - key: "discount_amount", - align: "center", - }, - { - title: "实付金额", - dataIndex: "paid_in_money", - key: "paid_in_money", - align: "center", - }, - { - title: "支付类型", - dataIndex: "pay_type_name", - key: "pay_type_name", - align: "center", - }, - { - title: "支付渠道", - dataIndex: "payment_channels", - key: "payment_channels", - align: "center", - }, - { - title: "支付设备", - dataIndex: "payment_equipment", - key: "payment_equipment", - align: "center", - }, - { - title: "支付人", - dataIndex: "pay_person", - key: "pay_person", - align: "center", - }, - { - title: "付款路段", - dataIndex: "pay_road", - key: "pay_road", - align: "center", - }, - { - title: "第三方流水ID", - dataIndex: "third_party_flow_id", - key: "third_party_flow_id", - align: "center", - }, -]; -//退款订单的表头 -export const refundRecordColumns = [ - { - title: "序号", - dataIndex: "id", - key: "id", - align: "center", - render: (text, record, index) => index + 1, - }, - { - title: "退款方式", - dataIndex: "refund_type", - key: "refund_type", - align: "center", - }, - { - title: "支付渠道", - dataIndex: "pay_road", - key: "pay_road", - align: "center", - }, - { - title: "支付设备", - dataIndex: "paymentDevice", - key: "paymentDevice", - align: "center", - }, - { - title: "退款原因", - dataIndex: "reason", - key: "reason", - align: "center", - }, - { - title: "退款金额", - dataIndex: "refund_amount", - key: "refund_amount", - align: "center", - }, - { - title: "申请人", - dataIndex: "application_person", - key: "application_person", - align: "center", - }, - { - title: "申请时间", - dataIndex: "application_time", - key: "application_time", - align: "center", - }, - { - title: "退款时间", - dataIndex: "refund_time", - key: "refund_time", - align: "center", - }, -]; -//操作记录 -export const operatorRecordColumns = [ - { - title: "序号", - dataIndex: "id", - key: "id", - align: "center", - render: (text, record, index) => index + 1, - }, - { - title: "操作类型", - dataIndex: "type", - key: "type", - align: "center", - }, - { - title: "操作来源", - dataIndex: "source", - key: "source", - align: "center", - }, - { - title: "操作人/设备", - dataIndex: "object", - key: "object", - align: "center", - }, - { - title: "操作时间", - dataIndex: "time", - key: "time", - align: "center", - }, -]; diff --git a/src/pages/NewEnergy/RealtimeMonitor/PileMonitor/index.scss b/src/pages/NewEnergy/RealtimeMonitor/PileMonitor/index.scss index 9a8202a..9a7abf9 100644 --- a/src/pages/NewEnergy/RealtimeMonitor/PileMonitor/index.scss +++ b/src/pages/NewEnergy/RealtimeMonitor/PileMonitor/index.scss @@ -1,238 +1,85 @@ -@import "@/assets/css/mixin.scss"; -$color-container-bg: var(--color-container-bg); -$color-user-list-bg: var(--color-user-list-bg); -$color-text: var(--color-text); -$color-primary: var(--color-primary); - -.ant-tabs { - margin-bottom: 16px; - - .ant-tabs-nav { - margin-bottom: 0 !important; - - &::before { - border-bottom: 1px solid var(--color-card-line) !important; - } - } - - .ant-tabs-nav-wrap { - width: 100%; - box-sizing: content-box; - - .ant-tabs-nav-list { - width: 340px; - - .ant-tabs-ink-bar { - height: 3px; - background-color: #00ccff; - } - - .ant-tabs-tab { - flex: 1; - width: 100%; +// 组件样式修改 +.TableModule { + &.real-time-monitor_pile-monitor { + // .left-search { + // } + .right-list { + .custom-right-list-header { display: flex; - justify-content: center; - padding-bottom: 10px; - text-align: center; - cursor: pointer; - font-size: 14px !important; - font-family: MicrosoftYaHei; - text-align: center; - letter-spacing: 0.7px; - } - - .ant-tabs-tab-active { - div { - color: #00ccff; + // align-items: center; + height: 100px; + padding-bottom: 20px; + .item { + width: 20%; + height: 80px; + display: flex; + .item-left { + width: 80px; + height: 100%; + .img { + width: 80px; + height: 100%; + border: none; + background-size: 100% 100%; + &-zdzs{ + background: url("@/assets/images/NewEnergy/RealtimeMonitor/PileMonitor/image-zdzs.png"); + } + &-kx{ + background: url("@/assets/images/NewEnergy/RealtimeMonitor/PileMonitor/image-kx.png"); + } + &-zy{ + background: url("@/assets/images/NewEnergy/RealtimeMonitor/PileMonitor/image-zy.png"); + } + &-gz{ + background: url("@/assets/images/NewEnergy/RealtimeMonitor/PileMonitor/image-gz.png"); + } + &-lx{ + background: url("@/assets/images/NewEnergy/RealtimeMonitor/PileMonitor/image-lx.png"); + } + } + } + .item-right { + width: calc(100% - 80px); + padding-left: 15px; + display: flex; + flex-direction: column; + justify-content: center; + span { + &.num { + color: #fff; + font-size: 20px; + font-family: Microsoft YaHei, Microsoft YaHei-Bold; + font-weight: 700; + text-align: left; + color: #ffffff; + } + &.label { + opacity: 0.8; + font-size: 14px; + font-family: Microsoft YaHei, Microsoft YaHei-Regular; + font-weight: 400; + text-align: left; + color: #ffffff; + } + } + } } } - } - } -} - -.ant-input::-webkit-input-placeholder { - color: var(--color-placeholder); -} - -.ant-input::-moz-placeholder { - color: var(--color-placeholder); -} -.right-list .ant-btn-primary { - width: 68px; - height: 30px; - background: linear-gradient(180deg, #3aa9ff, #59b7ff); - border-radius: 4px; -} -.ant-input:-ms-input-placeholder { - color: var(--color-placeholder); -} -.right-list .cc-result-flow .table-wrap .yisa-table .ant-table-thead th { - background-color: #616b83 !important; -} -.right-list .cc-result-flow .table-wrap .yisa-table .ant-table-tbody td { - background-color: #3e4557 !important; -} -.right-list .cc-result-flow .table-wrap .yisa-table .ant-table-tbody tr:nth-child(even) td { - background-color: #3e4557 !important; -} -.ant-input::placeholder { - color: var(--color-placeholder); -} - -.ant-select-selection-placeholder { - color: var(--color-placeholder); -} - -.ant-select-disabled.ant-select-single:not(.ant-select-customize-input) .ant-select-selector { - background: var(--color-input-disabled-bg); - color: var(--color-placeholder); -} - -.ant-select-disabled .ant-select-arrow { - color: var(--color-placeholder); -} - -.ant-select-disabled.ant-select:not(.ant-select-customize-input) .ant-select-selector { - background-color: var(--color-input-disabled-bg); - color: var(--color-input-disabled-color); - cursor: not-allowed; -} - -.ant-select-multiple { - .ant-select-selector { - .ant-select-selection-item { - background-color: var(--color-bg-body); - border-color: var(--color-border); - - .ant-select-selection-item-remove { - color: var(--color-text); + .cc-result-flow { + height: calc(100% - 34px - 13px - 100px); + .ant-table-wrapper { + .custom-table-cell-span { + &.online-status { + &__2 { + color: #2adc41; + } + &__1 { + color: #ec5761; + } + } + } + } } } } } - -.ant-select-arrow { - color: var(--color-text); -} - -.ant-select-clear { - border-radius: 50%; -} - -.ant-select-dropdown-menu { - background-color: var(--color-input-bg); - - .ant-select-dropdown-menu-item { - color: var(--color-text); - - &.ant-select-dropdown-menu-item-active { - color: #fff; - // background-color: var(--radio-button-bg-checked); - } - - &.ant-select-dropdown-menu-item-selected { - color: #fff; - // background-color: var(--radio-button-bg-checked); - } - - &:hover { - color: #fff; - // background-color: var(--radio-button-bg-checked); - } - } -} - -.ant-select-selector { - background-color: var(--color-search-list-item-bg) !important; - box-shadow: none !important; - border-radius: 4px; - color: var(--color-search-list-item-value); - border-color: var(--color-search-list-item-bd) !important; -} - -.ant-select-selection { - background-color: var(--color-input-bg); - box-shadow: none; - color: var(--color-text); - // border-color:var(--checkable-tag-border); -} - -.ant-form-horizontal .ant-form-item-label { - label { - display: inline-block; - word-wrap: break-word; - white-space: normal; - } -} - -.ant-picker { - width: 100%; - background-color: var(--color-search-list-item-bg); - border-color: var(--color-border); -} - -// .yisa-table { -// width: 100%; - -// .ant-table-thead { -// th { -// background: var(--color-table-header-bg) !important; -// } -// } - -// .ant-table-tbody { -// td { -// background: var(--color-table-body-bg) !important; -// border-bottom-color: var(--color-table-border-bottom-color); -// } - -// tr:nth-child(even) { -// td { -// background: var(--color-table-body-bg-nth-child-even) !important; -// } -// } - -// tr:nth-child(odd) { -// td { -// background: var(--color-table-body-bg-nth-child-even) !important; -// } -// } -// } -// } -.totalModal{ - .ant-modal-footer{ - display: none; - } - position: absolute; - top: 40px; - right: 174px; -} -.ltc-item-img { - width: 390px; - height: 300px; - border: 1px solid; - background: #6565656b; - margin-right: 20px !important; - img { - height: 295px; - width: 387px; - // object-fit: contain; - } -} -.hanleHistoyModal{ - max-height: 700px; - overflow: auto; -} -.hanleHistoyModal::-webkit-scrollbar { - width: 5px; -} -.hanleHistoyModal::-webkit-scrollbar-thumb { - background-color: #9da2ab; - border-radius: 10px; -} -.modal-img{ - img{ - width: 200px; - height: 200px; - } -} \ No newline at end of file diff --git a/src/pages/NewEnergy/RealtimeMonitor/PileMonitor/loadable.jsx b/src/pages/NewEnergy/RealtimeMonitor/PileMonitor/loadable.jsx index fe1f87b..af4272c 100644 --- a/src/pages/NewEnergy/RealtimeMonitor/PileMonitor/loadable.jsx +++ b/src/pages/NewEnergy/RealtimeMonitor/PileMonitor/loadable.jsx @@ -1,4 +1,4 @@ -import React, { useState, useRef, useEffect } from "react"; +import React, { useState, useRef, useEffect, useMemo } from "react"; import { message, Pagination, @@ -13,109 +13,124 @@ import { Select, Image, Timeline, - Popover + Popover, } from "antd"; + import { dictionary, utils } from "@/config/common"; -// import moment from 'moment' -// import { useSessionStorageState, useUpdateEffect, useSize, useUpdate } from 'ahooks'; +import { ResultFlow, ExportBtnNew, QuickMenu } from "@/components"; import ajax from "@/services"; -import errorImg from '@/assets/images/error-img-new.png' -import { QuestionCircleOutlined } from '@ant-design/icons'; +import errorImg from "@/assets/images/error-img-new.png"; +import { QuestionCircleOutlined } from "@ant-design/icons"; import { TableModule } from "@/components"; import "./index.scss"; +import { functions } from "lodash"; -// import errorImg from "@/assets/images/layout/error.png" -// import { useLocation } from "react-router-dom"; -const { TextArea } = Input; - -let array = []; function PileMonitor() { + // const [pageData,setPageData] = useState({ + // pn:1, + // page_size:15 + // }) + // const [loading,setLoading] = useState(false); + const [tableData, setTableData] = useState([]); // 列表数据 + const [total, setTotal] = useState(0); // 数据总数 + const [statsData, setStatsData] = useState({}); // 统计数据 - + const initFormData = { + station_name: "", // 充电桩 + muzzle_text: "", // 枪名称 + pile_type: "", // 充电类型 + charge_status: "", // 枪状态 + }; // 初始数据 const formSearch = [ { - name: "device_name", + label: "充电桩", + name: "station_name", type: "Input", - label: "设备名称", - placeholder:"请输入" + placeholder: "请输入", }, { - name: "device_num", + label: "枪名称", + name: "muzzle_text", type: "Input", - label: "设备编码", - placeholder:"请输入" + placeholder: "请输入", }, { - name: "device_state", + label: "充电类型", + name: "pile_type", type: "Select", - label: "设备状态", defaultValue: 0, - options: sysConfig.energyDeviceType, + options: sysConfig.energyChargingType, }, { - name: "lock_state", + label: "枪状态", + name: "charge_status", type: "Select", - label: "车位锁状态", defaultValue: 0, - options: sysConfig.energyLockState, + options: sysConfig.energyChargingGunStatus, }, - - ]; - const initFormData = { - device_name:"", - device_num:"" - }; - //历史处理的表头 + ]; // 搜索栏配置 + const columns = [ { - title: "序号", - dataIndex: "id", - key: "id", + title: "桩名称", + dataIndex: "name", + key: "name", align: "center", - render: (text, record, index) => index + 1, }, { - title: "设备名称", - dataIndex: "device_name", - key: "device_name", + title: "枪名称", + dataIndex: "muzzle_text", + key: "muzzle_text", align: "center", }, { - title: "设备编码", - dataIndex: "device_num", - key: "device_num", - align: "center", - }, - { - title: "设备类型", - dataIndex: "device_type", - key: "device_type", + title: "在线状态", + dataIndex: "pile_status_text", + key: "pile_status_text", align: "center", + render: (val, record) => { + return ( + + {val} + + ); + }, }, { - title: "设备供应商", - dataIndex: "device_vendor", - key: "device_vendor", + title: "枪状态", + dataIndex: "charge_status_text", + key: "charge_status_text", align: "center", + // render: (val, record) => { + // return ( + // + // {val} + // + // ); + // }, }, { - title: "对接平台", - dataIndex: "platform", - key: "platform", + title: "地锁状态", + dataIndex: "lock_status_text", + key: "lock_status_text", align: "center", }, { - title: "车位锁状态", - dataIndex: "lock_state_name", - key: "lock_state_name", + title: "充电类型", + dataIndex: "type_text", + key: "type_text", align: "center", }, { - title: "设备状态", - dataIndex: "device_state_name", - key: "device_state_name", + title: "充电站", + dataIndex: "station_name", + key: "station_name", align: "center", }, { @@ -123,53 +138,187 @@ function PileMonitor() { dataIndex: "operation", key: "operation", align: "center", - fixed: "right", render: (_, record) => { - return ( - - ); + return <>; + // return ; }, }, - ]; - - + ]; // 表头 - - const [tableData, setTableData] = useState([]); - const [total, setTotal] = useState(0); //获取函数 function search(params) { - utils.tableScrollTop("parent-table-scroll") - ajax.getPileMonitor(params).then((res) => { - if (res.status === 20000) { - setTableData(res.data.list); - setTotal(res.data.total); - }else{ - message.error(res.message) - } - }); + utils.tableScrollTop("parent-table-scroll"); + // setLoading(true); + ajax + .getPileMonitorList(params) + .then((res) => { + if (res.status === 20000) { + setTableData(res?.data?.list ?? []); + setTotal(res?.data?.total ?? 0); + } else { + message.error(res.message); + } + }) + .catch((err) => { + console.error(err); + }) + .finally(() => { + // setLoading(false); + }); + } + + // 获取统计数据 + function getStatsData(params) { + ajax + .getPileMonitorStatsData() + .then((res) => { + if (res.status === 20000) { + setStatsData(res.data ?? {}); + } else { + message.error(res.message); + } + }) + .catch((err) => { + console.error(err); + }) + .finally(() => { + // setLoading(false); + }); } + useEffect(() => { + getStatsData(); + }, []); + + // 右边头部 + const renderRightListHeader = useMemo(() => { + const renderItem = (type, num, label) => { + return ( +
+
+ {/* */} +
+
+
+ {num ?? 0} + {label } +
+
+ ); + }; + return ( +
+ {renderItem("zdzs", statsData?.all_count, "终端总数(个)")} + {renderItem("kx", statsData?.kx_count, "空闲(个)")} + {renderItem("zy", statsData?.zy_count, "占用(个)")} + {renderItem("gz", statsData?.gz_count, "故障(个)")} + {renderItem("lx", statsData?.lx_count, "离线(个)")} +
+ ); + }, [statsData]); + return ( <> + {/*
+
+
{"查询条件"}
+
+ {renderSearch()} +
+ + + {renderAdd()} +
+
+
+
+
+ + 共查询到 + {total} + 条结果 + +
+ + {true && ( + + total ? ( + 导出} + modalType="noImg" + ref={exportRef} + totalRecords={total} + exportUrl={exportUrl} + imgno={false} + postdata={{ + formData: pageData + }} + isTableModule={true} + onOk={handleExport} + /> + ) : <> + )} +
+
+ +
+ + +
+ `共 ${total_records} 条`} + total={total} + current={pageData.pn} + pageSize={pageData.page_size} + pageSizeOptions={dictionary?.pageSizeOptions} + onChange={onChange} + // onShowSizeChange={onShowSizeChange} + /> +
+ + + */} ); } diff --git a/src/pages/NewEnergy/RecordsInquiry/Unlocking/loadable.jsx b/src/pages/NewEnergy/RecordsInquiry/Unlocking/loadable.jsx index b1907fd..10d87f4 100644 --- a/src/pages/NewEnergy/RecordsInquiry/Unlocking/loadable.jsx +++ b/src/pages/NewEnergy/RecordsInquiry/Unlocking/loadable.jsx @@ -19,22 +19,21 @@ import { dictionary } from "@/config/common"; import ajax from "@/services"; import { TableModule } from "@/components"; import "./index.scss"; - +import moment from "moment"; const { TextArea } = Input; + // 开锁记录 function Unlocking() { - // 详情弹窗 - // const [detailVisible, setDetailVisible] = useState(false); - // 列表数据 - const [tableData, setTableData] = useState([]); - // 数据总数 - const [total, setTotal] = useState(0); - // 详情数据 - const [detailData, setDetailData] = useState({}); + + const [tableData, setTableData] = useState([]); // 列表数据 + const [total, setTotal] = useState(0); // 数据总数 + // 初始搜索条件 const initFormData = { - tel_number: "", - rule_name: "", + tel: "", + charging_station: "", + ground_lock_name: "", + unlocking_timerange:[moment().subtract(1,"weeks"),moment()] }; const formSearch = [ @@ -57,9 +56,9 @@ function Unlocking() { placeholder: "请输入", }, { - name: "timePeriod", - type: "RangePicker", - label: "降锁时间范围", + name: "unlocking_timerange", + type: "DateRangePicker", + label: "降锁时间", }, ]; // 搜索栏 @@ -113,14 +112,14 @@ function Unlocking() { }, ]; // 表头 - // 打开弹窗 - const openModal = (index, record) => { - setDetailData(record) - setDetailVisible(true); - } - // 检索 const search = (params) => { + let temp_obj = {...params} + if(temp_obj.unlocking_timerange?.length){ + temp_obj.unlocking_timerange = temp_obj.unlocking_timerange[0].format('YYYY-MM-DD') + ',' + temp_obj.unlocking_timerange[1].format('YYYY-MM-DD') + }else{ + temp_obj.unlocking_timerange = '' + } ajax.recordsInquiry.getUnlockingList(params).then((res) => { if (res.status === 20000) { setTableData(res.data.list); @@ -131,9 +130,6 @@ function Unlocking() { }); } - const handelAdd = () => { - setDetailVisible(true) - } return ( <> @@ -143,7 +139,7 @@ function Unlocking() { diyButton={ @@ -156,7 +152,7 @@ function Unlocking() { initFormData={initFormData} total={total} search={search} - exportUrl="/api/bpm/record/get_record_export" + exportUrl="/api/new_power/records/unlocking" /> {/* { return ajax({ url: "/api/new_power/realtime_monitor/pile_monitor/get_record_list", @@ -9,6 +9,36 @@ const getPileMonitor = (params) => { }); }; -export default{ - getPileMonitor, -} \ No newline at end of file +//获取充电监控接口 +const getChargingMonitorList = (params) => { + return ajax({ + url: "/api/nes/charge/list", + type: "post", + data: params, + }); +}; + +//获取电桩监控接口 +const getPileMonitorList = (params) => { + return ajax({ + url: "/api/nes/piles/list", + type: "post", + data: params, + }); +}; + +//获取电桩监控- 统计接口 +const getPileMonitorStatsData = (params) => { + return ajax({ + url: "/api/nes/piles/count", + type: "post", + data: params, + }); +}; + +export default { + getPileMonitor, + getChargingMonitorList, + getPileMonitorList, + getPileMonitorStatsData, +};