From bb22c54eda0d25816c1f4e53e475f3ac0e7d0e3f Mon Sep 17 00:00:00 2001 From: yangjun <1173114630@qq.com> Date: Mon, 30 Jun 2025 10:14:24 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E6=A0=B7=E5=BC=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/assets/iot/a1.png | Bin 0 -> 2042 bytes src/assets/iot/a2.png | Bin 0 -> 1563 bytes src/assets/iot/a3.png | Bin 0 -> 2039 bytes src/assets/iot/a4.png | Bin 0 -> 1849 bytes src/assets/iot/a5.png | Bin 0 -> 1574 bytes src/assets/iot/a6.png | Bin 0 -> 2043 bytes src/assets/iot/a7.png | Bin 0 -> 1884 bytes src/assets/iot/a8.png | Bin 0 -> 2371 bytes src/assets/iot/a9.png | Bin 0 -> 2531 bytes src/views/invoicing/jxc/JxcInfo.api.ts | 72 +++++ src/views/invoicing/jxc/JxcInfo.data.ts | 109 +++++++ src/views/invoicing/jxc/QgdList.vue | 302 ++++++++++++++++++ .../NuInvoicingQgdInfo.api.ts | 72 +++++ .../NuInvoicingQgdInfo.data.ts | 66 ++++ .../NuInvoicingQgdInfoList.vue | 235 ++++++++++++++ .../components/NuInvoicingQgdInfoForm.vue | 193 +++++++++++ .../components/NuInvoicingQgdInfoModal.vue | 77 +++++ .../NuInvoicingQgdMain.api.ts | 72 +++++ .../NuInvoicingQgdMain.data.ts | 24 ++ .../NuInvoicingQgdMainList.vue | 235 ++++++++++++++ .../components/NuInvoicingQgdMainForm.vue | 151 +++++++++ .../components/NuInvoicingQgdMainModal.vue | 77 +++++ .../iot/tq/electricity/apilog/ApiLogList.vue | 5 +- .../tq/electricity/apilog/WaterApiLogList.vue | 11 +- .../iot/tq/electricity/electricity.data.ts | 4 +- src/views/iot/tq/electricity/index.vue | 116 +++++-- .../NuIotTqApiRequestLog.data.ts | 98 ++++-- .../NuIotTqApiRequestLogList.vue | 27 -- .../NuIotTqApiRequestLogList2.vue | 224 +++++++++++++ .../NuIotTqApiRequestLogList3.vue | 224 +++++++++++++ .../components/NuIotTqApiRequestLogForm.vue | 4 +- src/views/iot/tq/water/index.vue | 115 +++++-- src/views/iot/tq/wsdDevice/humid.data.ts | 127 ++------ src/views/iot/tq/wsdDevice/index.vue | 100 +++++- 34 files changed, 2508 insertions(+), 232 deletions(-) create mode 100644 src/assets/iot/a1.png create mode 100644 src/assets/iot/a2.png create mode 100644 src/assets/iot/a3.png create mode 100644 src/assets/iot/a4.png create mode 100644 src/assets/iot/a5.png create mode 100644 src/assets/iot/a6.png create mode 100644 src/assets/iot/a7.png create mode 100644 src/assets/iot/a8.png create mode 100644 src/assets/iot/a9.png create mode 100644 src/views/invoicing/jxc/JxcInfo.api.ts create mode 100644 src/views/invoicing/jxc/JxcInfo.data.ts create mode 100644 src/views/invoicing/jxc/QgdList.vue create mode 100644 src/views/invoicing/nuInvoicingQgdInfo/NuInvoicingQgdInfo.api.ts create mode 100644 src/views/invoicing/nuInvoicingQgdInfo/NuInvoicingQgdInfo.data.ts create mode 100644 src/views/invoicing/nuInvoicingQgdInfo/NuInvoicingQgdInfoList.vue create mode 100644 src/views/invoicing/nuInvoicingQgdInfo/components/NuInvoicingQgdInfoForm.vue create mode 100644 src/views/invoicing/nuInvoicingQgdInfo/components/NuInvoicingQgdInfoModal.vue create mode 100644 src/views/invoicing/nuInvoicingQgdMain/NuInvoicingQgdMain.api.ts create mode 100644 src/views/invoicing/nuInvoicingQgdMain/NuInvoicingQgdMain.data.ts create mode 100644 src/views/invoicing/nuInvoicingQgdMain/NuInvoicingQgdMainList.vue create mode 100644 src/views/invoicing/nuInvoicingQgdMain/components/NuInvoicingQgdMainForm.vue create mode 100644 src/views/invoicing/nuInvoicingQgdMain/components/NuInvoicingQgdMainModal.vue create mode 100644 src/views/iot/tq/nuIotTqApiRequestLog/NuIotTqApiRequestLogList2.vue create mode 100644 src/views/iot/tq/nuIotTqApiRequestLog/NuIotTqApiRequestLogList3.vue diff --git a/src/assets/iot/a1.png b/src/assets/iot/a1.png new file mode 100644 index 0000000000000000000000000000000000000000..8ae04ddf4eadd8a8f6bbaae5ce68f79d6037d67f GIT binary patch literal 2042 zcmaJ?Yg7|w8lG?ol#7BDP*5DALZs%xgb*^^O-P}d6i6tnVkMV>L`Wtk0|A6?tcQw- z*o8_Jkpcpul2*i0p$M{yg3HxlabYc6FBEpUDBiKHJF#N-$Fg(I%=doZd7tNf-tT?R znf+0M_w8+5Z2$nUkBs2P;H$UkwI<@<&dc4~@MR?y9*+spBuppPAV8Q5l^|fGQk;y$ zAYxhOu5Kg{0L;AAB1?k^vjie(R*IA@BZUNmff+DPphPe+n4wHnY2l0@(raEAk4?uk z68Jg=O9>+VE-IcM1#(ag0w{!1~DlR17@;d zA7AjzL&7U+WJz!gm-nU~z6&DBF-#59XgZyas$)=5O)|}g&1Tc+5DkJTcm_qAslvn= z6qR=E0s|M(N;L{Kra)DoiBT*;)36{CuJ-pflRRn_*yh z!=uZlZ0aoK1^qwop7?0YKEdMePW8)&T!tJ)g)M_=He|r@!pn*!Rq%4mvAuKnoeBV2 zHsxNoGR^?-9r=Q)-lVb=G?k^!X%weoJ+?aj-_{u!WA)|2VW%Elj`5jct zOTD#z?_Lt*omR+&kNfpzp{!tk{)L_I0I3afH`{ccsIy|aroue;Cu+93R2%DUhc*uG zHxF2UdY*IAR~{;++f7-LKRt6Jk-j-v2gef*jCJRRJ)|FE%?lg^+u(Hqk9U&}#4S^3W#7M$Y}#s=sBKmt4EE@v(77 zGOyUb@D*|Wd+stbXDY+f-s`M`sB^3vj{8e=4^4Wd-ziDUiVqP!0f)YGDgKG@tHt5U zes5#_N0rl#!TS9bhnpBSmS$_bHr1}~!gggLY?~JQmTsg~T zKWx21ycZ7}O556QRh6gyN;k+2p;pj0<7GyhbmSH`xmb^ZA);jfNQKk>umPp(?AcRmYUvkFTnq?}!!T996gl&KW)5 zJ-@I0VEwqu*ktdiQG0ztHT{VDot=;RoXHneiP*g&dFG^df~?`I;Fm`ae_VU|!-|Lb zjlqKK9kFT8KilS7n;BoUMH5JT5*|IA5xe1u?w|E~R}V%hTINxD^|#MBD_SQ*pVbSj zZ(rL@<*r+qUf6ypLUIn!wDXo7C;X7#X?{I4b7|7KBl^OuojqNd6DJk=b#`Y8C|0-6 zw7i(`6ns#imdBM31{6<5)qTM+yQX)h#!vjC9@YX@}#g_T9VEX|}hm#|hQvcAcC(G5vh*OL9@__nU^3vs|{@>UEeh z%k0Hh`-O~_p9eUW;k7@M_4_3zt_eFlwa*rKU=VIApP$=zYYl-21kILA?A`OQ-t;$) N3>R>}-jw+1e*h3EDu4h0 literal 0 HcmV?d00001 diff --git a/src/assets/iot/a2.png b/src/assets/iot/a2.png new file mode 100644 index 0000000000000000000000000000000000000000..1a6bf6ce0cfcb9ad3ea6f6ece4c77239d9dbe2de GIT binary patch literal 1563 zcmeAS@N?(olHy`uVBq!ia0vp^S|H591|*LjJ{b+9BuiW)N`mv#O3D+9QW+dm@{>{( zJaZG%Q-e|yQz{EjrrIztFso;VM3hAM`dB6B=jtVb)aX^@765fKFxc2v6eK2Rr0UTq__OB&@Hb09I0xZL0)vRD^GUf^&XRs)D7Sp>DE)fuVvqkY!?K zWMOG(Zf>rlU}RuqtZ!hZZ)B=#WNc+>Ze?hq00l}w8;erXtb$zJp!NZIwn`Z#B?VUc z`sL;2dgaD?`9ZUNlbykclj0Rv6HBC$ZMv>2~2MaLa!@My`c1vTL84#CABECEH%ZgC_h&L>}RV? z+-`BgX&zK>3U0SJ3*v4sm{0ZJS^s@b&zCn(dl~D}|H>~~5V0zGM&z&8a%Z@m<~`ni z$hPs5#Iwm8pJcE2?)aod{?nRAKD?|l!ohC$&UEbUVwqz2_-9PJ)nlJRyDu5~4)-18 zcYYCKxp**E=CpX2S=_FBau_E%xFfJw5C$D4$# zO%u5$l{<5kO!^zqSY=aV^XQHDohe%;F`O;D8UA9qkh$uwy>-WLNF+7BT6@vi?vD5# z&6S7t@Xc-sX<1s>lJB+bX1}?|kN-+5v`;*cn(dtvU_V2uX@RNJvRr+IPaMm(*IYfp zb!UpmiNaLoRqwBEpSxQ+JzV4AYqR_XcMmwb-?(o+`sY?E{%w?(&A%SJZx gT?(H5w4Z^Q!F$23=87+3UZCRI)78&qol`;+04~8-pa1{> literal 0 HcmV?d00001 diff --git a/src/assets/iot/a3.png b/src/assets/iot/a3.png new file mode 100644 index 0000000000000000000000000000000000000000..a3de4acd2eda10c073b48be0a92fa93cdcec3d74 GIT binary patch literal 2039 zcmaJ?YfuyC8cyUQjUW)YSWsMo91tNlATcQsLJ~-XAR$meVI;{evO+E-i-cPV7`f

>>Z3nOjNLx7KFsx2er>GL@7H(l?Le205ndu9R;D325;cTjgGwm`2;`Do zP#h!ybF=P2AsCE>4;-I}BnqRMGNqg-G3OAqautfkU_wH*Dv2xuLI5eW3s$fQv+bP( z00vovZNWmaP{o1LVSb((66eLl%kna043H4I83@rbQ35%HNC2%oQ=wsMS%i1IOf)th zlL)}O6eNR1_+3<@Fc#n_)eyiSQUYXTG6kTcQ4o!~iNT=L>HYwfObsNFX(VcJ05y;q zOlMMpfcFmpt*8dmm~q^Q_w~>ni;#{WDkh1PlaoWt2_!1jyGRrUgFzxwNmOb8nh~JM zRUi^=fI{Q7$iRg(GBvD1V5I^uGfJe&Y=lKX)&AawT=jugp?QB*=%tag5*3L;B%9k> zOcV|48Ihqac074;CpwJ)^g$xpKSp<}V2*V(gLk;I`B1h1J1Ia-Y zN(7m~;gG}GJO-6ar-ySR!WXezr7T+xDUd}h_y=~=l324J7gED}ATUC$lmqX2 zX2MHr30{)#Jr-PA3vEd(2^B*!PxeofUOYnWV-7!f7u|etKcqk{uSUIX2sxt1U@X%F zTz0&6cqS3%C$OFNG_R`@qNa|}3V#(wU&Ju@@?Vvu zuWH(iF=n2{M-Mm3-cH}90&X@Abs4(sha0nKqTzy`T;T~U^=j|OQ$5&E67;LcF{Oh) zoLfZ$9AmKm#(kF`_UZ_SOBn;pg|{WPzYSY{73E1>k>8T1BsM#t&X;e+x!}_DxLA4I^_!QjQ z=;hyuoz*$)Avs%TC;+Y#d38G0L&t4d|K!+h`(gTwEKt7PsrsOxw~Y1cUy_qTajx6WJ^HwHQ0mm&Oa4*2T^?)e&fYqwCx=RV#o zb^eodH%G%aS3GtO*&36wpf##<0#leT*F&sY#u~mpCvv^M+2bu?{RNZr1kH8tsi#c> zC%Y34PusLHuf1PPbJ+{0x?g{uM8l3xiNDUX3-iAMJ?_{s(6rCL4D;n2P3&8izU53q z!F0B}#l}ZsPg6GB`pdFF-FOxEnSS1B?9lg@)?M0P3RdCYwobKfT)4(j-}LjGZMYUu zhBM~fD{hb1&n2fGpVZpTG$!ji-?)nCc2O_yeX^r8P&5qAMB0jRWacb(CI={Wz_i>ch z$>&F1`1n34d`A!a;WL054JC5#`Xr+_*7#AAz1Lpn5oYa{q*C?}A*(Ll=FY6kRJ_G? z48!#0{;d(6h{b=M0ZX5wey0Y(15+Z;&J=1r(3~%K*>2s8)yh1lmj0*WbG3JG+E$!9P}46=4GNXc|0@U?IXEG@0(x9K zS--L64D`Zi%G~NVVB;m`R^4#i%uJEkhrt0Id6gB93Jw2hYfLRX&dO=@o?uynoahiO zt}B<_!Kw3QRu?6E#vd!5iLNd`F)_mS`#E6G6n5Dp-m~jj7tOZDbg4h@{Bit|AEWHI zhdWz6e8X<*Esk7%qxw-#=-$s72Y0?8V|mXeci&9V-z%z-4tzmFraxu6mrssdz$1yq z+bUDWiG8F3id$cQuAy*z7tj8XPvMX;zuEM}N(wy@tS#)dleywyuhj3O5Ux-0nB5nb zMDF^+p+Nnw!QDH3q(ygJ`V)vnjhT(3tH=N6GdwuALx;s^CM(Lu1jMW6U$KA}!@U@u GTJnDu%O)!T literal 0 HcmV?d00001 diff --git a/src/assets/iot/a4.png b/src/assets/iot/a4.png new file mode 100644 index 0000000000000000000000000000000000000000..0afa16d8143718af992f5026d85a7ef387e2b9c6 GIT binary patch literal 1849 zcmaJ?c~BEq9F7743dmg%!4N4&kZjllLRM3O9DMe7a9<$+>1D%w9vcV_qf-kb0He&?IbNo>H7v~nfJ#^L5K&??1}wJ?g0g;&cI3_^cP8v!qqG6)g=TryY5 zgyUtQ$trkRGEXQ;UMrzX2@Af#&(}hjfE-4}c&&V$LJesdgb%t9W*d$H0{#O8UCSVR z3`)f1Uczn2dN|)-YY_; zkRlqj_Xh%(3xz4vs8}I^!&nRgCP9+Pq!2Th#t9CjG5slIs-GW+OlMKpOpxi%rm_R* zOe%ex%R(fHa#(?mbERLntO>b>d5|kH&n#FaTMtV)DnyR|kTWEkIF{fE^*(W>6UP!V zAs4`c0Suk}SEt91u<glBGKbYH?bQSRH zH;Y|Uj@wK1?jcQ64he)VrqE`u{Kq&q$!T*Pi0{-Rn`Y%dyOz^ETr1NNEKc@SIvm%L z?GI!G;Y1cIu0{__M4FcHOZj${vzm(bRJykBk10;O?zZc(O*ggZ)w_jut)0e^d`q2s z`QTd|(Ry&W&Nkz`iKBIya#~t( z>V|jr%=FQ1xk>NalY~{CSr;mFvvS&5&!U^O*2GhLFr^5d(8#>HVdaGqS9Re-J5F8P z`@EpWjP0F|&xjKiMfF#NFS&PaLpV94G3|2tESJt}lYKTh>AWr{zHm63Kb=?Y8Rbc| z?lJk+O6twcIH!JIeu?XzupR7PU#Mb_9FTRV+&?_tyCv7#9boZ>vM`cdM!yzu?=%r7g; z6xBz}t37X70rBhgjxD@AcAF(Rh<01QN1PjVF^`?1TkiT(LgU-I^mO8AiAiYWontlU zl=B$FncDM9duscln^JQ8r`h>rkA-h}IBgZU^MF@hm3=W_HD_b)>lS6IbM1+Uq10+7 zHQ%@!`X-@ZUCB{P@a)_GvmWDstV0~1YYY4Zrc)G+XKbavhd6aXJ6;N9R&x6&Ipfyg z#WkxdV^EPW+GJ%z%G+Ibm*6_HQc`qorcbX(MYWGS!Ri3__MFcg(9PphqD4{{9sADy ze*ISuUhMYS>62Y!?Cy-_CKdlV9akOJafoPQarlpoWsAT%b_V?D@Sre8b^E!uv}4i} zua&-UD)zgWyU#B5hy&iY{xUu0v|Gt<^byM0_YT%4k>;%y@AUV6eCxOhXVo2ea|M#U Q#_%%>WAj*bA*;6h16^C(W&i*H literal 0 HcmV?d00001 diff --git a/src/assets/iot/a5.png b/src/assets/iot/a5.png new file mode 100644 index 0000000000000000000000000000000000000000..ed05722fe19da9c9e3d043556f11bfa8522326e2 GIT binary patch literal 1574 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 K{3rP1!~X?%r!#{9 literal 0 HcmV?d00001 diff --git a/src/assets/iot/a7.png b/src/assets/iot/a7.png new file mode 100644 index 0000000000000000000000000000000000000000..9a954d5ed88a43654822a9734a792d10a8953308 GIT binary patch literal 1884 zcmaJ?X;c$e7)?&XB1@70tg;N3!+rCR#R#f+lh+yN9mk1^S<}az4u#ZCMP^}iJ8e9 z6B3DJ#$5_W605WRHZ~-lmoHw6A(q*AfB=ue;&GKofs%X?EDi;@Qc(gLiHZ=-nro;h zi8Nt>gfGAaybz8UlafVx3|TFe6KoR6bFo@35+|WJ5Qip6WM1Hlx&{!CAYR}ycOI1| z_eT>YOSK9#N*l@-Ym>xm1YGP5c&a&sfE2|=fLfX?Q*zW^;0Ij}Ve5}6An*Z#CwYM% zgA(w<0e?(^0&FtmCZaV|&E1Vg=eV;t5CiyhfrLi| z63>Z*13&pAc3xm2j>|a|ib|y-tLS7*kwAgiY&L~TqtIw>1j0?Jk>Mh>n@njxrU0W# zu|gupC72A*D~jT<6x<6WqWzeLRQ_33rul%0x^K&=_PE;IvF4 zLok(c;Rgbb$KlG9xJV{Oxv&>VNRTBGgafl_RM>+_cc)Vs5EMvdvpoX*7;LsL->>=K*L(~ruCkyjA2eeSoqBg8Ay%7uOT>h5Q|Bun`bR?Vj- z*;f~o6ra4Dkx^23FgX)^7tXH{t~;7&-wnHLWCphu&MY0ygKfd1HQC_R1Afa7T$Mx| z@{X<*F0T=6aN~@I?%B}Vcl|u;mEp9d?<;%rbZSqiLR6C@akLL& z1ienT9d6Qe4JdSe`9{-yY`0F-X4D?AxwBzeANkBLsdcNe&V7^Y)I5D+lx1+ENn7J1 zaaEf{ZqPJf>1fi3T>6fBBCF?wui30)HZv%x6Eb6V#TeH5cMYra{S=lZ-J6l^uEw`~ zS5bxB7J=dSc2^lEzs*_OY!$xY#;Gk@t4vMyyiGx#+oo(g=KboC1?FR(BYfVVJ4@;9 zH9azWDC&C5TxLYRwHqw%#GiK)KIoSG8dTa%n{KIALRmRi-f8f75Db!`3|> zvXgG2h_4<+r_AcPSDO>(bYnr~mDnfyiW2OT4msVEl`p?A$1%0&X@1N8*!tTJe@{Bs zGinM=PFr?Yc(plZeoKD{ym(aeb>`u1%qc(*D{o$x zRwy>#T6!X{JUtWX(Ar)vrJEHNa1zLZIM=pjyUL3fIF4_GDZ`D| zfX-ODRj#FrZqRAp3FH2Dczfr&uGY4yH@x)Vj$D=bdV`9Qu*P6r{oXaLXKWI5>heE| z4%?gzK0S13O_F`rYKJU!>U2ca4J=Puu|Vk9ZP70%n@|`_9^Q1_+o$%$rqlg?%yzJS z=arO<=#mE4eVOKIyYv0Nl&_Z+k|0ZD2VsvDzvqgS#U=di$Onqqe~ws(60e z=2&=fd5HNz8P;y&+gtY6?~9s`+YV(rs207U01x2S6DBp=;(b^ zViUHvaY|Y4@e!Bsref!ava?}6xkGhH&)Dq146$}Jl-qI!DSUleH&`Rig_e5Xn%eU8 zWyrkSiF|nWBQLJaQ=2ctiU@6nD$ zX=Q`iS%JyDm-?OLgMlgO&aXo0;bZ4c>Hl}!fKa&7FE-;J D7gF!J literal 0 HcmV?d00001 diff --git a/src/assets/iot/a8.png b/src/assets/iot/a8.png new file mode 100644 index 0000000000000000000000000000000000000000..64be82c0c67825ccd177065462b51d091b7e663e GIT binary patch literal 2371 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 literal 0 HcmV?d00001 diff --git a/src/assets/iot/a9.png b/src/assets/iot/a9.png new file mode 100644 index 0000000000000000000000000000000000000000..8a23cb03c38558625a9afd812aaf67b64464c4e2 GIT binary patch literal 2531 zcmaJ@eLRzU8y}S%-)XF*YEoNaVvbi>4pZD z1`r6u(33&)*RKDXdG+X6>>}>K-Hw03)O^Y%u_#a=~x_>M3AH0{#G-8@sas zaE3tU*z#FH(jcZ6i317{?3o;dOd!&tArNPZOvL8w0Hn}xAd)X6!$zuaz@U6C8MX<> zL@`Bf0FTd*i-7>SH;W_R!69;C6c?zojHD$H08%zoCWsPBNHQ|)3ol6<&m1FR&@U;{ z9c0+wqJo&dP&ZHvK#2%6oP$E4p#*J&#bX?aL;`_e55=G`4oDOpiNV1!4kR3bgvLU@ zJ}_-XF*kzbPxJU%PrD<-cv7i|gha-~#2{iE5TG~`i6#<>NE8N%!N9c{a7nCC%9g=} z66;w88X)0_`64MF6hdbh+2PH9&RWq%^iowIiRp;v+L{`;O!8Ip1&uJ z%93?F433Lh;=cTo=5^OOdS|%_Pe(vo_)BWKbN`tnDo4ghv7=f0K@XXjDOSNUO*6y8 z8P-&O-+>KL`l>af2D*G)*m~A|8fv}0ALGzZp@M6nBl61XUc#%;>Zq7baut(%1nKbP zqo%2HEUr0wXY-3_nN1aQ#p>3gixffS!B)o9a4S`@+2DX<$@9tNZwmu>C&b6}1(=;8kW4NRaBv2SvB&qd` zT=VIsjLk7yvTEPCtuv|VdJ(dV(e3AJ*{@XDWRN4E$%7FT#>=4cv`Us57yEqF(Y3S- zpFDcjEQ?FC@y&PpkXG0lR}_$SB>1??h%&hBJxf7&swuIL#g{H`FLYtdOEx-KQf1t8 z-K4rILzkhiQ?xkx(Q(?7Nvc2h%%bgeErNIqj&NdM<4EC}tqWq)&N#eDUAMo*X9==t zj~&a!T*IKG4ZQ6u!oz=i)q5-XXwYf;&7Sy?;vTawbN7vUL&ftS9xehnx~wiVr?$$zS3}}*QvFRrcwxs)19ynkDD?5`LJofI&lzeZW>46Lj z$C?4?uWU(RTS52R3y;qQysKQS*=1546-&4oP?Z1X)-t{Fhb=+0MpgTk|K{MB&U zGGlgne~03w_jB~3ZM(MmC}4M5GxrwnxU_tlR-Bzj-sY{_4k;*QZ9qF$ZogwA6(fU{ z2={UP-P_lb2I_<-S)7m09PyE9k#Xv)L z+LOb5Z~suV>b39;gTtBg{aTIGCCY0HPcJC@^+Abg!%h1InY|g4DVJ*Dd+tb>&XIKq z1xYJ@Jl07oe($I*xtywr&OMZ6c{?&QH*en`Sr`Ryy+eK|L#=+T8IGvM_bly6&r=yd zROOTJtFVOyF+K-hZhHzpP_iw~&@4yEvNO%|63_qFmeJ|`;ea-3Y9GH$Gn@H z3~klzdncWTlvk+DGG`%3jeKE85Z{Tw$hThq=~gDvx3LTwF(&Fd{D iCrdl~SB8H!KtWn^tixQb1l}{hU7qgVv=Y~_r2hcJeJ;fS literal 0 HcmV?d00001 diff --git a/src/views/invoicing/jxc/JxcInfo.api.ts b/src/views/invoicing/jxc/JxcInfo.api.ts new file mode 100644 index 0000000..2b60dbf --- /dev/null +++ b/src/views/invoicing/jxc/JxcInfo.api.ts @@ -0,0 +1,72 @@ +import { defHttp } from '/@/utils/http/axios'; +import { useMessage } from "/@/hooks/web/useMessage"; + +const { createConfirm } = useMessage(); + +enum Api { + list = '/configMaterialInfo/configMaterialInfo/list', + save='/configMaterialInfo/configMaterialInfo/add', + edit='/configMaterialInfo/configMaterialInfo/edit', + deleteOne = '/configMaterialInfo/configMaterialInfo/delete', + deleteBatch = '/configMaterialInfo/configMaterialInfo/deleteBatch', + importExcel = '/configMaterialInfo/configMaterialInfo/importExcel', + exportXls = '/configMaterialInfo/configMaterialInfo/exportXls', +} + +/** + * 导出api + * @param params + */ +export const getExportUrl = Api.exportXls; + +/** + * 导入api + */ +export const getImportUrl = Api.importExcel; + +/** + * 列表接口 + * @param params + */ +export const list = (params) => defHttp.get({ url: Api.list, params }); + +/** + * 删除单个 + * @param params + * @param handleSuccess + */ +export const deleteOne = (params,handleSuccess) => { + return defHttp.delete({url: Api.deleteOne, params}, {joinParamsToUrl: true}).then(() => { + handleSuccess(); + }); +} + +/** + * 批量删除 + * @param params + * @param handleSuccess + */ +export const batchDelete = (params, handleSuccess) => { + createConfirm({ + iconType: 'warning', + title: '确认删除', + content: '是否删除选中数据', + okText: '确认', + cancelText: '取消', + onOk: () => { + return defHttp.delete({url: Api.deleteBatch, data: params}, {joinParamsToUrl: true}).then(() => { + handleSuccess(); + }); + } + }); +} + +/** + * 保存或者更新 + * @param params + * @param isUpdate + */ +export const saveOrUpdate = (params, isUpdate) => { + let url = isUpdate ? Api.edit : Api.save; + return defHttp.post({ url: url, params }, { isTransformResponse: false }); +} diff --git a/src/views/invoicing/jxc/JxcInfo.data.ts b/src/views/invoicing/jxc/JxcInfo.data.ts new file mode 100644 index 0000000..570f316 --- /dev/null +++ b/src/views/invoicing/jxc/JxcInfo.data.ts @@ -0,0 +1,109 @@ +import {BasicColumn} from '/@/components/Table'; +import {FormSchema} from '/@/components/Table'; +import { rules} from '/@/utils/helper/validator'; +import { render } from '/@/utils/common/renderUtils'; +import { getWeekMonthQuarterYear } from '/@/utils'; +//列表数据 +export const columns: BasicColumn[] = [ + { + title: '货品名称', + align: "center", + dataIndex: 'materialName' + }, + { + title: '货品编码', + align: "center", + dataIndex: 'materialNo', + width:'100px' + }, + { + title: '规格型号', + align: "center", + dataIndex: 'specificationModel' + }, + { + title: '销售单价', + align: "center", + dataIndex: 'salesUnitPrice', + width:'100px' + }, + { + title: '参考单价', + align: "center", + dataIndex: 'referenceUnitPrice', + width:'100px' + }, + { + title: '货品单位', + align: "center", + dataIndex: 'materialUnits', + width:'100px' + }, + { + title: '供应商', + align: "center", + dataIndex: 'suppliers_dictText', + width:'200px' + }, + { + title: '物料类别', + align: "center", + dataIndex: 'categoryId_dictText', + width:'100px' + }, + { + title: '物料类型', + align: "center", + dataIndex: 'typeId_dictText', + width:'100px' + }, + { + title: '用药类型', + align: "center", + dataIndex: 'medicationId_dictText', + width:'100px' + }, + // { + // title: '物料图片', + // align: "center", + // dataIndex: 'materialImg', + // customRender: render.renderImage, + // }, + // { + // title: '物料标识', + // align: "center", + // dataIndex: 'materialIdent', + // customRender: render.renderImage, + // }, + { + title: '是否启用', + align: "center", + dataIndex: 'izEnabled_dictText', + width:'100px' + }, +]; + +// 高级查询数据 +export const superQuerySchema = { + categoryId: {title: '物料类别',order: 0,view: 'radio', type: 'string',dictTable: "nu_config_material_category", dictCode: 'id', dictText: 'category_name',}, + typeId: {title: '物料类型',order: 1,view: 'radio', type: 'string',dictTable: "nu_config_material_type", dictCode: 'id', dictText: 'type_name',}, + medicationId: {title: '用药类型',order: 2,view: 'radio', type: 'string',dictTable: "nu_config_material_medication", dictCode: 'id', dictText: 'medication_name',}, + materialName: {title: '货品名称',order: 3,view: 'text', type: 'string',}, + materialNo: {title: '货品编码',order: 4,view: 'text', type: 'string',}, + specificationModel: {title: '规格型号',order: 5,view: 'text', type: 'string',}, + salesUnitPrice: {title: '销售单价',order: 6,view: 'number', type: 'number',}, + referenceUnitPrice: {title: '参考单价',order: 7,view: 'number', type: 'number',}, + materialUnits: {title: '货品单位',order: 8,view: 'text', type: 'string',}, + multiUnitSwitch: {title: '多单位开关',order: 9,view: 'switch', type: 'string',}, + oneUnit: {title: '父级单位',order: 10,view: 'text', type: 'string',}, + oneUnitProportion: {title: '父级单位兑换比例',order: 11,view: 'number', type: 'number',}, + oneUnitPrice: {title: '父级单位价格',order: 12,view: 'number', type: 'number',}, + twoUnit: {title: '爷级单位',order: 13,view: 'text', type: 'string',}, + twoUnitProportion: {title: '爷级单位兑换比例',order: 14,view: 'number', type: 'number',}, + twoUnitPrice: {title: '爷级单位价格',order: 15,view: 'number', type: 'number',}, + multiUnitType: {title: '多单位采购默认使用 0子集 1父级 2爷级',order: 16,view: 'text', type: 'string',}, + suppliers: {title: '供应商',order: 17,view: 'text', type: 'string',}, + materialImg: {title: '物料图片',order: 18,view: 'image', type: 'string',}, + materialIdent: {title: '物料标识',order: 19,view: 'image', type: 'string',}, + izEnabled: {title: '是否启用',order: 20,view: 'radio', type: 'string',dictCode: ' iz_enabled',}, +}; diff --git a/src/views/invoicing/jxc/QgdList.vue b/src/views/invoicing/jxc/QgdList.vue new file mode 100644 index 0000000..e5cca23 --- /dev/null +++ b/src/views/invoicing/jxc/QgdList.vue @@ -0,0 +1,302 @@ + + + + + diff --git a/src/views/invoicing/nuInvoicingQgdInfo/NuInvoicingQgdInfo.api.ts b/src/views/invoicing/nuInvoicingQgdInfo/NuInvoicingQgdInfo.api.ts new file mode 100644 index 0000000..2c0d4d9 --- /dev/null +++ b/src/views/invoicing/nuInvoicingQgdInfo/NuInvoicingQgdInfo.api.ts @@ -0,0 +1,72 @@ +import { defHttp } from '/@/utils/http/axios'; +import { useMessage } from "/@/hooks/web/useMessage"; + +const { createConfirm } = useMessage(); + +enum Api { + list = '/nuInvoicingQgdInfo/nuInvoicingQgdInfo/list', + save='/nuInvoicingQgdInfo/nuInvoicingQgdInfo/add', + edit='/nuInvoicingQgdInfo/nuInvoicingQgdInfo/edit', + deleteOne = '/nuInvoicingQgdInfo/nuInvoicingQgdInfo/delete', + deleteBatch = '/nuInvoicingQgdInfo/nuInvoicingQgdInfo/deleteBatch', + importExcel = '/nuInvoicingQgdInfo/nuInvoicingQgdInfo/importExcel', + exportXls = '/nuInvoicingQgdInfo/nuInvoicingQgdInfo/exportXls', +} + +/** + * 导出api + * @param params + */ +export const getExportUrl = Api.exportXls; + +/** + * 导入api + */ +export const getImportUrl = Api.importExcel; + +/** + * 列表接口 + * @param params + */ +export const list = (params) => defHttp.get({ url: Api.list, params }); + +/** + * 删除单个 + * @param params + * @param handleSuccess + */ +export const deleteOne = (params,handleSuccess) => { + return defHttp.delete({url: Api.deleteOne, params}, {joinParamsToUrl: true}).then(() => { + handleSuccess(); + }); +} + +/** + * 批量删除 + * @param params + * @param handleSuccess + */ +export const batchDelete = (params, handleSuccess) => { + createConfirm({ + iconType: 'warning', + title: '确认删除', + content: '是否删除选中数据', + okText: '确认', + cancelText: '取消', + onOk: () => { + return defHttp.delete({url: Api.deleteBatch, data: params}, {joinParamsToUrl: true}).then(() => { + handleSuccess(); + }); + } + }); +} + +/** + * 保存或者更新 + * @param params + * @param isUpdate + */ +export const saveOrUpdate = (params, isUpdate) => { + let url = isUpdate ? Api.edit : Api.save; + return defHttp.post({ url: url, params }, { isTransformResponse: false }); +} diff --git a/src/views/invoicing/nuInvoicingQgdInfo/NuInvoicingQgdInfo.data.ts b/src/views/invoicing/nuInvoicingQgdInfo/NuInvoicingQgdInfo.data.ts new file mode 100644 index 0000000..07b2cb6 --- /dev/null +++ b/src/views/invoicing/nuInvoicingQgdInfo/NuInvoicingQgdInfo.data.ts @@ -0,0 +1,66 @@ +import {BasicColumn} from '/@/components/Table'; +import {FormSchema} from '/@/components/Table'; +import { rules} from '/@/utils/helper/validator'; +import { render } from '/@/utils/common/renderUtils'; +import { getWeekMonthQuarterYear } from '/@/utils'; +//列表数据 +export const columns: BasicColumn[] = [ + { + title: '请购单编号', + align: "center", + dataIndex: 'mainNo' + }, + { + title: '物料编码', + align: "center", + dataIndex: 'wlMaterialNo' + }, + { + title: '物料名称', + align: "center", + dataIndex: 'wlName' + }, + { + title: '采购单位', + align: "center", + dataIndex: 'wlUnits' + }, + { + title: '规格型号', + align: "center", + dataIndex: 'wlSpecificationModel' + }, + { + title: '上限', + align: "center", + dataIndex: 'wlUpperLimit' + }, + { + title: '下限', + align: "center", + dataIndex: 'wlLowerLimit' + }, + { + title: '供应商名称', + align: "center", + dataIndex: 'suppliersName' + }, + { + title: '请购数量', + align: "center", + dataIndex: 'purchaseQuantity' + }, +]; + +// 高级查询数据 +export const superQuerySchema = { + mainNo: {title: '请购单编号',order: 0,view: 'text', type: 'string',}, + wlMaterialNo: {title: '物料编码',order: 1,view: 'text', type: 'string',}, + wlName: {title: '物料名称',order: 2,view: 'text', type: 'string',}, + wlUnits: {title: '采购单位',order: 3,view: 'text', type: 'string',}, + wlSpecificationModel: {title: '规格型号',order: 4,view: 'text', type: 'string',}, + wlUpperLimit: {title: '上限',order: 5,view: 'text', type: 'string',}, + wlLowerLimit: {title: '下限',order: 6,view: 'text', type: 'string',}, + suppliersName: {title: '供应商名称',order: 7,view: 'text', type: 'string',}, + purchaseQuantity: {title: '请购数量',order: 8,view: 'number', type: 'number',}, +}; diff --git a/src/views/invoicing/nuInvoicingQgdInfo/NuInvoicingQgdInfoList.vue b/src/views/invoicing/nuInvoicingQgdInfo/NuInvoicingQgdInfoList.vue new file mode 100644 index 0000000..aa7d8e5 --- /dev/null +++ b/src/views/invoicing/nuInvoicingQgdInfo/NuInvoicingQgdInfoList.vue @@ -0,0 +1,235 @@ + + + + + diff --git a/src/views/invoicing/nuInvoicingQgdInfo/components/NuInvoicingQgdInfoForm.vue b/src/views/invoicing/nuInvoicingQgdInfo/components/NuInvoicingQgdInfoForm.vue new file mode 100644 index 0000000..d80d859 --- /dev/null +++ b/src/views/invoicing/nuInvoicingQgdInfo/components/NuInvoicingQgdInfoForm.vue @@ -0,0 +1,193 @@ + + + + + diff --git a/src/views/invoicing/nuInvoicingQgdInfo/components/NuInvoicingQgdInfoModal.vue b/src/views/invoicing/nuInvoicingQgdInfo/components/NuInvoicingQgdInfoModal.vue new file mode 100644 index 0000000..cf72eac --- /dev/null +++ b/src/views/invoicing/nuInvoicingQgdInfo/components/NuInvoicingQgdInfoModal.vue @@ -0,0 +1,77 @@ + + + + + + diff --git a/src/views/invoicing/nuInvoicingQgdMain/NuInvoicingQgdMain.api.ts b/src/views/invoicing/nuInvoicingQgdMain/NuInvoicingQgdMain.api.ts new file mode 100644 index 0000000..db4d157 --- /dev/null +++ b/src/views/invoicing/nuInvoicingQgdMain/NuInvoicingQgdMain.api.ts @@ -0,0 +1,72 @@ +import { defHttp } from '/@/utils/http/axios'; +import { useMessage } from "/@/hooks/web/useMessage"; + +const { createConfirm } = useMessage(); + +enum Api { + list = '/nuInvoicingQgdMain/nuInvoicingQgdMain/list', + save='/nuInvoicingQgdMain/nuInvoicingQgdMain/add', + edit='/nuInvoicingQgdMain/nuInvoicingQgdMain/edit', + deleteOne = '/nuInvoicingQgdMain/nuInvoicingQgdMain/delete', + deleteBatch = '/nuInvoicingQgdMain/nuInvoicingQgdMain/deleteBatch', + importExcel = '/nuInvoicingQgdMain/nuInvoicingQgdMain/importExcel', + exportXls = '/nuInvoicingQgdMain/nuInvoicingQgdMain/exportXls', +} + +/** + * 导出api + * @param params + */ +export const getExportUrl = Api.exportXls; + +/** + * 导入api + */ +export const getImportUrl = Api.importExcel; + +/** + * 列表接口 + * @param params + */ +export const list = (params) => defHttp.get({ url: Api.list, params }); + +/** + * 删除单个 + * @param params + * @param handleSuccess + */ +export const deleteOne = (params,handleSuccess) => { + return defHttp.delete({url: Api.deleteOne, params}, {joinParamsToUrl: true}).then(() => { + handleSuccess(); + }); +} + +/** + * 批量删除 + * @param params + * @param handleSuccess + */ +export const batchDelete = (params, handleSuccess) => { + createConfirm({ + iconType: 'warning', + title: '确认删除', + content: '是否删除选中数据', + okText: '确认', + cancelText: '取消', + onOk: () => { + return defHttp.delete({url: Api.deleteBatch, data: params}, {joinParamsToUrl: true}).then(() => { + handleSuccess(); + }); + } + }); +} + +/** + * 保存或者更新 + * @param params + * @param isUpdate + */ +export const saveOrUpdate = (params, isUpdate) => { + let url = isUpdate ? Api.edit : Api.save; + return defHttp.post({ url: url, params }, { isTransformResponse: false }); +} diff --git a/src/views/invoicing/nuInvoicingQgdMain/NuInvoicingQgdMain.data.ts b/src/views/invoicing/nuInvoicingQgdMain/NuInvoicingQgdMain.data.ts new file mode 100644 index 0000000..b54af88 --- /dev/null +++ b/src/views/invoicing/nuInvoicingQgdMain/NuInvoicingQgdMain.data.ts @@ -0,0 +1,24 @@ +import {BasicColumn} from '/@/components/Table'; +import {FormSchema} from '/@/components/Table'; +import { rules} from '/@/utils/helper/validator'; +import { render } from '/@/utils/common/renderUtils'; +import { getWeekMonthQuarterYear } from '/@/utils'; +//列表数据 +export const columns: BasicColumn[] = [ + { + title: '请购单号', + align: "center", + dataIndex: 'qgdNo' + }, + { + title: '请购状态 0未下单 1已下单', + align: "center", + dataIndex: 'status' + }, +]; + +// 高级查询数据 +export const superQuerySchema = { + qgdNo: {title: '请购单号',order: 0,view: 'number', type: 'number',}, + status: {title: '请购状态 0未下单 1已下单',order: 1,view: 'number', type: 'number',}, +}; diff --git a/src/views/invoicing/nuInvoicingQgdMain/NuInvoicingQgdMainList.vue b/src/views/invoicing/nuInvoicingQgdMain/NuInvoicingQgdMainList.vue new file mode 100644 index 0000000..6e46117 --- /dev/null +++ b/src/views/invoicing/nuInvoicingQgdMain/NuInvoicingQgdMainList.vue @@ -0,0 +1,235 @@ + + + + + diff --git a/src/views/invoicing/nuInvoicingQgdMain/components/NuInvoicingQgdMainForm.vue b/src/views/invoicing/nuInvoicingQgdMain/components/NuInvoicingQgdMainForm.vue new file mode 100644 index 0000000..c9d1aec --- /dev/null +++ b/src/views/invoicing/nuInvoicingQgdMain/components/NuInvoicingQgdMainForm.vue @@ -0,0 +1,151 @@ + + + + + diff --git a/src/views/invoicing/nuInvoicingQgdMain/components/NuInvoicingQgdMainModal.vue b/src/views/invoicing/nuInvoicingQgdMain/components/NuInvoicingQgdMainModal.vue new file mode 100644 index 0000000..c3b76e2 --- /dev/null +++ b/src/views/invoicing/nuInvoicingQgdMain/components/NuInvoicingQgdMainModal.vue @@ -0,0 +1,77 @@ + + + + + + diff --git a/src/views/iot/tq/electricity/apilog/ApiLogList.vue b/src/views/iot/tq/electricity/apilog/ApiLogList.vue index 42e8ee6..b68bc35 100644 --- a/src/views/iot/tq/electricity/apilog/ApiLogList.vue +++ b/src/views/iot/tq/electricity/apilog/ApiLogList.vue @@ -8,10 +8,10 @@ - + - + @@ -21,6 +21,7 @@ import { ref, reactive } from 'vue'; import NuIotTqApiRequestLogList from '/@/views/iot/tq/nuIotTqApiRequestLog/NuIotTqApiRequestLogList.vue'; + import NuIotTqApiRequestLogList2 from '/@/views/iot/tq/nuIotTqApiRequestLog/NuIotTqApiRequestLogList2.vue'; const activeKey= ref('3'); const dbsbInfo = ref({}); diff --git a/src/views/iot/tq/electricity/apilog/WaterApiLogList.vue b/src/views/iot/tq/electricity/apilog/WaterApiLogList.vue index d32a6d6..f953516 100644 --- a/src/views/iot/tq/electricity/apilog/WaterApiLogList.vue +++ b/src/views/iot/tq/electricity/apilog/WaterApiLogList.vue @@ -2,16 +2,16 @@

- + - + - + - +
@@ -20,7 +20,8 @@ + + diff --git a/src/views/iot/tq/nuIotTqApiRequestLog/NuIotTqApiRequestLogList3.vue b/src/views/iot/tq/nuIotTqApiRequestLog/NuIotTqApiRequestLogList3.vue new file mode 100644 index 0000000..3bbc3aa --- /dev/null +++ b/src/views/iot/tq/nuIotTqApiRequestLog/NuIotTqApiRequestLogList3.vue @@ -0,0 +1,224 @@ + + + + + diff --git a/src/views/iot/tq/nuIotTqApiRequestLog/components/NuIotTqApiRequestLogForm.vue b/src/views/iot/tq/nuIotTqApiRequestLog/components/NuIotTqApiRequestLogForm.vue index 4fe0075..e3addbc 100644 --- a/src/views/iot/tq/nuIotTqApiRequestLog/components/NuIotTqApiRequestLogForm.vue +++ b/src/views/iot/tq/nuIotTqApiRequestLog/components/NuIotTqApiRequestLogForm.vue @@ -5,8 +5,8 @@ - - + + diff --git a/src/views/iot/tq/water/index.vue b/src/views/iot/tq/water/index.vue index d320a07..ba7fec7 100644 --- a/src/views/iot/tq/water/index.vue +++ b/src/views/iot/tq/water/index.vue @@ -6,8 +6,14 @@ - - + + + + + + + + @@ -19,46 +25,63 @@ - -