From 6a00d85f81a2f1a3a5f13ae6cacb683313ff8395 Mon Sep 17 00:00:00 2001 From: wangh <123456> Date: Fri, 14 Oct 2022 14:06:06 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=20=E9=93=9D=E5=86=85?= =?UTF-8?q?=E8=83=86=E8=AE=BE=E5=A4=87=E7=9C=8B=E6=9D=BF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/AdsorptionTankController.java | 94 +++++++++--------- .../controller/AluminumTtankController.java | 43 ++++---- .../resources/static/js/aluminumTank/index.js | 3 +- .../controller/AdsorptionTankController.class | Bin 4588 -> 3689 bytes .../controller/AluminumLinerkController.class | Bin 6536 -> 6536 bytes .../controller/AluminumTtankController.class | Bin 4188 -> 4166 bytes .../controller/FoamBoxController.class | Bin 6128 -> 6198 bytes .../controller/TankShellController.class | Bin 3591 -> 3549 bytes .../MesProduction/MesTeamStatistics.class | Bin 3876 -> 3788 bytes .../AluminumDeviceDataInformationMapper.class | Bin 479 -> 952 bytes .../mapper/AluminumLossStatisticsMapper.class | Bin 458 -> 919 bytes .../mapper/AluminumOeeStatisticsMapper.class | Bin 455 -> 911 bytes .../AluminumThisMonthEnergyMapper.class | Bin 461 -> 925 bytes .../AluminumYesterdayEnergyMapper.class | Bin 461 -> 922 bytes .../mapper/FoamBoxLineRunStatusMapper.class | Bin 451 -> 908 bytes .../FoamBoxMachineRunStatusMapper.class | Bin 460 -> 972 bytes .../FoamBoxMouldTemperatureMapper.class | Bin 460 -> 997 bytes .../FoamBoxParamTemperatureMapper.class | Bin 460 -> 997 bytes .../MesHourProdutionStatisticsMapper.class | Bin 1159 -> 1925 bytes ...esMaterialProductionStatisticsMapper.class | Bin 1426 -> 1805 bytes .../MesMaterialStoreStatisticsMapper.class | Bin 1040 -> 2137 bytes .../mapper/MesTeamStatisticsMapper.class | Bin 1244 -> 1640 bytes ...TankShellDeviceDataInformationMapper.class | Bin 483 -> 1115 bytes .../TankShellDevicePrameterValueMapper.class | Bin 1110 -> 941 bytes .../TankShellEnergyConsumptionMapper.class | Bin 471 -> 1102 bytes .../TankShellLossStatisticsMapper.class | Bin 462 -> 921 bytes .../mapper/TankShellOeeStatisticsMapper.class | Bin 459 -> 915 bytes .../TankShellThisMonthEnergyMapper.class | Bin 465 -> 931 bytes .../service/IMesProductionDataService.class | Bin 1457 -> 1922 bytes .../impl/AluminumDeviceInfoServiceImpl.class | Bin 4614 -> 5292 bytes .../impl/FoamBoxDeviceInfoServiceImpl$1.class | Bin 1042 -> 1042 bytes .../impl/FoamBoxDeviceInfoServiceImpl$2.class | Bin 1042 -> 1042 bytes .../impl/FoamBoxDeviceInfoServiceImpl.class | Bin 10182 -> 10710 bytes .../impl/MesProductionDataServiceImpl.class | Bin 8371 -> 10214 bytes .../impl/TankShellDeviceInfoServiceImpl.class | Bin 8937 -> 9385 bytes .../classes/static/js/aluminumLiner/index.js | 3 - .../classes/static/js/aluminumTank/index.js | 4 +- .../static/js/common/echarts.common.js | 25 +++-- .../classes/static/js/common/scrollTable.js | 1 - .../classes/static/js/common/synthetic.js | 1 - 40 files changed, 84 insertions(+), 90 deletions(-) diff --git a/productionboard/src/main/java/com/productionboard/controller/AdsorptionTankController.java b/productionboard/src/main/java/com/productionboard/controller/AdsorptionTankController.java index 5911402..5ac2cc8 100644 --- a/productionboard/src/main/java/com/productionboard/controller/AdsorptionTankController.java +++ b/productionboard/src/main/java/com/productionboard/controller/AdsorptionTankController.java @@ -53,7 +53,7 @@ public class AdsorptionTankController { mesTeamStatistics.setClassName("白班"); int planAmount = Integer.parseInt(mesTeamStatistics.getPlanAmount() == null ? "0" : mesTeamStatistics.getPlanAmount()); int actualAmount= Integer.parseInt(mesTeamStatistics.getActualAmount() == null ? "0" : mesTeamStatistics.getActualAmount()); - mesTeamStatistics.setDifferenceAmount((planAmount - actualAmount)+""); + mesTeamStatistics.setDifferenceAmount(Math.abs(planAmount - actualAmount)+""); return JSONArray.toJSONString(mesTeamStatistics); } return JSONArray.toJSONString(new MesTeamStatistics()); @@ -109,51 +109,51 @@ public class AdsorptionTankController { * @date 2022/4/20 10:15 * @return java.lang.String */ - @GetMapping("/getStatisticalOutputByModel") - @ResponseBody - public String getStatisticalOutputByModel() { - String info = - "{\n" - + "\t\"datas\":[\n" - + " {\"ranking\": 1,\"station\":\"SC227\",\"value\": 199999},\n" - + " {\"ranking\": 2,\"station\":\"SC228\",\"value\": 104970},\n" - + " {\"ranking\": 3,\"station\":\"SC229\",\"value\": 29034},\n" - + " {\"ranking\": 4,\"station\":\"SC223\",\"value\": 23489},\n" - + " {\"ranking\": 5,\"station\":\"SC224\",\"value\": 18203}\n" - + " ],\n" - + "\t\"plan\":[290000, 290000, 290000, 290000, 290000, 290000]\n" - + "}"; - return info; - } - - /** - * 库存 统计 - * - * @author WenJY - * @date 2022/4/20 10:16 - * @return java.lang.String - */ - @GetMapping("/getInventoryStatistics") - @ResponseBody - public String getInventoryStatistics() { - String info = - "{\n" - + "\t\"datas\":[\n" - + " {\n" - + " \"name\": \"SC528\",\n" - + " \"value\": 175.17\n" - + " },\n" - + " {\n" - + " \"name\": \"SC529\",\n" - + " \"value\": 148.35\n" - + " },\n" - + " {\n" - + " \"name\": \"SC327\",\n" - + " \"value\": 95.36\n" - + " }\n" - + " ]\n" - + "}"; - return info; - } +// @GetMapping("/getStatisticalOutputByModel") +// @ResponseBody +// public String getStatisticalOutputByModel() { +// String info = +// "{\n" +// + "\t\"datas\":[\n" +// + " {\"ranking\": 1,\"station\":\"SC227\",\"value\": 199999},\n" +// + " {\"ranking\": 2,\"station\":\"SC228\",\"value\": 104970},\n" +// + " {\"ranking\": 3,\"station\":\"SC229\",\"value\": 29034},\n" +// + " {\"ranking\": 4,\"station\":\"SC223\",\"value\": 23489},\n" +// + " {\"ranking\": 5,\"station\":\"SC224\",\"value\": 18203}\n" +// + " ],\n" +// + "\t\"plan\":[290000, 290000, 290000, 290000, 290000, 290000]\n" +// + "}"; +// return info; +// } +// +// /** +// * 库存 统计 +// * +// * @author WenJY +// * @date 2022/4/20 10:16 +// * @return java.lang.String +// */ +// @GetMapping("/getInventoryStatistics") +// @ResponseBody +// public String getInventoryStatistics() { +// String info = +// "{\n" +// + "\t\"datas\":[\n" +// + " {\n" +// + " \"name\": \"SC528\",\n" +// + " \"value\": 175.17\n" +// + " },\n" +// + " {\n" +// + " \"name\": \"SC529\",\n" +// + " \"value\": 148.35\n" +// + " },\n" +// + " {\n" +// + " \"name\": \"SC327\",\n" +// + " \"value\": 95.36\n" +// + " }\n" +// + " ]\n" +// + "}"; +// return info; +// } } diff --git a/productionboard/src/main/java/com/productionboard/controller/AluminumTtankController.java b/productionboard/src/main/java/com/productionboard/controller/AluminumTtankController.java index 8878111..4b86b03 100644 --- a/productionboard/src/main/java/com/productionboard/controller/AluminumTtankController.java +++ b/productionboard/src/main/java/com/productionboard/controller/AluminumTtankController.java @@ -17,6 +17,7 @@ import java.util.List; /** * 铝内胆可视化看板 + * * @author WenJY * @date 2022年04月20日 14:40 */ @@ -30,22 +31,22 @@ public class AluminumTtankController { private String prefix = "aluminumTank/index"; @GetMapping() - public String index() - { + public String index() { return prefix; } /** * 班组统计 + * + * @return java.lang.String * @author WenJY * @date 2022-06-09 16:38 - * @return java.lang.String */ @GetMapping("/getTeamStatisticsJson") @ResponseBody - public String getTeamStatisticsJson(){ + public String getTeamStatisticsJson() { List mesTeamStatisticsList = iMesProductionDataService.getMesTeamStatisticsList("1006"); - if(mesTeamStatisticsList.size()>0){ + if (mesTeamStatisticsList.size() > 0) { return JSONArray.toJSONString(mesTeamStatisticsList.get(0)); } return JSONArray.toJSONString(new MesTeamStatistics()); @@ -53,16 +54,17 @@ public class AluminumTtankController { /** * 通过工位号获取MES小时产量 + * + * @return java.lang.String * @author WenJY * @date 2022-06-09 16:54 - * @return java.lang.String */ @GetMapping("/getHourProdutionJson") @ResponseBody - public String getHourProdutionStatisticsJson(){ + public String getHourProdutionStatisticsJson() { List mesHourProdutionStatisticsList = iMesProductionDataService.getMesHourProdutionStatisticsList("1006"); - if(mesHourProdutionStatisticsList.size()>0){ + if (mesHourProdutionStatisticsList.size() > 0) { return JSONArray.toJSONString(mesHourProdutionStatisticsList); } return JSONArray.toJSONString(new ArrayList()); @@ -70,13 +72,14 @@ public class AluminumTtankController { /** * 通过工位号获取MES物料产量 + * + * @return java.lang.String * @author WenJY * @date 2022-06-09 17:06 - * @return java.lang.String */ @GetMapping("/getMaterialProdutionJson") @ResponseBody - public String getMaterialProdutionStatisticsJson(){ + public String getMaterialProdutionStatisticsJson() { List mesMaterialProductionStatisticsList = iMesProductionDataService.getMesMaterialProductionStatisticsList("1006"); @@ -86,34 +89,28 @@ public class AluminumTtankController { /** * 获取MES物料库存 - * @author WenJY - * @date 2022-06-09 17:18 + * * @return java.lang.String * L001 内胆库存 * U001 箱壳库存 + * @author WenJY + * @date 2022-06-09 17:18 */ @GetMapping("/getMaterialStoreJson") @ResponseBody - public String getMesMaterialStoreStatisticsJson(){ - List list=new ArrayList(2); - list.add("L001"); - list.add("U001"); + public String getMesMaterialStoreStatisticsJson() { List mesMaterialStoreStatisticsList - =new ArrayList<>(); - mesMaterialStoreStatisticsList.addAll( iMesProductionDataService.getMesMaterialStoreStatisticsList("1006")); -// mesMaterialStoreStatisticsList.addAll( iMesProductionDataService.getMesMaterialStoreStatisticsList("U001")); -// = iMesProductionDataService.getMesMaterialStoreStatisticsListByList(list); + = iMesProductionDataService.getMesMaterialStoreStatisticsList("1006"); return JSONArray.toJSONString(mesMaterialStoreStatisticsList); } - /** * 根据型号统计产量 * + * @return java.lang.String * @author WenJY * @date 2022/4/20 10:15 - * @return java.lang.String */ @GetMapping("/getStatisticalOutputByModel") @ResponseBody @@ -135,9 +132,9 @@ public class AluminumTtankController { /** * 库存 统计 * + * @return java.lang.String * @author WenJY * @date 2022/4/20 10:16 - * @return java.lang.String */ @GetMapping("/getInventoryStatistics") @ResponseBody diff --git a/productionboard/src/main/resources/static/js/aluminumTank/index.js b/productionboard/src/main/resources/static/js/aluminumTank/index.js index f2dffd7..b4e6179 100644 --- a/productionboard/src/main/resources/static/js/aluminumTank/index.js +++ b/productionboard/src/main/resources/static/js/aluminumTank/index.js @@ -1,7 +1,8 @@ $(()=>{ //班组统计 $.getJSON('/aluminumTank/getTeamStatisticsJson', function (result) { - storageStatistics(result.className, result.planAmount, result.actualAmount, result.differenceAmount,) + console.log(result.planAmount+' 数据'+ result.actualAmount, result.differenceAmount) + storageStatistics('白班', result.planAmount, result.actualAmount, result.differenceAmount,) }); //按型号统计产量 diff --git a/productionboard/target/classes/com/productionboard/controller/AdsorptionTankController.class b/productionboard/target/classes/com/productionboard/controller/AdsorptionTankController.class index 6c73e621e5879de1aea2bd0fa5b3cf8f9ab96195..5140929bd78ce54452a72f68a1576b3de4adcc83 100644 GIT binary patch delta 1216 zcmZ{jSx-|@6otRj>6UVWS`m~~MR7osNpJw1QL!p2PKY>N1sRm06mh1`GotAeFFqPy zOdx0ljs5^%eDFsY6aRpT8uw{SH6ppmK6|gb&t7ZooBJ*AYasIR*V_+3IZu4dqRz|i zG-k5LguPz&rL&*~lmrJTI!}vp|t)H-$U9 z&UCkRhW6T_Q^jqersfNpJmzU;ldEu*mXwrQbZgGhW6`BKk2GB5lA?y-wc+o6`?TD!Yd;k1v3MQeU=QE+&*-mD@s zW$)mSM_izoBb7(axp7qNC2LuNpbMp{kX}(ldchl1f#2~O=TN*kU!qT5LI9TxS|piH zv{JxgsT4~nlnyhdSSp1L?t)i12L*9pCKz&r?9Xj?^7fdtB6+XmesYqUD{OATdS#Hy z?;geDVEf`xEX6bI=!uM){1N;yrus8uOpB2fBfEad2-64Ok=F2r877tcF7l(FGV&rJ zu^6T*uAp2d=dytuah^a{N>(9A4(^|n zSyWn7Ra>n3!6aqQ@3If$%`Xf^s0gbYQDN4wRzStNF{3m}gIVvCF{3%gXi~j1zP-f$ zYlJx%*PoTRkW%Po{XYr~vO#E43Ib9j6jUb_Y)mOQ8htuBI}+bkf-ggMf&4%o>V>mm z0?tk2I5)BRZ_X5DO_Fj;igKLkKx6{f&7$Ds1PX%V6a?A&Uj^IZ3WP#@IjBwTWrx%| L<2v2u>+Jds9{!p* literal 4588 zcmb_fTXP#l8a*T1k*rMOL|}(NE{6AO=R$=8H{&gb-jPwavuxjF=fY zm?YeGVK1=D?P;sF_I01Oimd`eprCl8ia)|{pb98XYow7z8iA=GRrO4N{awy?y8G*% zZ-4syD*zdM7{_5O$M94q4&kzFo{r(lPCSFFJMk=@lg;x{=rLsD=tNF7`4~hTD_E7C z7osrY*n?%+T#I2%J`1v0m&0Zp7K-w1Svq}DHnwb>7~B|2QEWtUUBP~1PB;s;l`rL7 z!!pn4uD&Sj4I?KMjLqh(b*<}ti9YtHL7%wSE z%wE$sbgiJ9tJE{TO(iPiHzbUZki}IIUO5%p~UI#(ONJ#y6p+MD4ZhKt~hPwHyQE}9X@WA?DDpe zOQCUY4w0x93Laz2cf>*q*C!+$-7?#Ng120f6wm3d;G!?I#C<<;2b9V+p_ZKo{+T-h z|4aVM8SIxC1hgc@UKU5>Pz~cEi-oAc^K>NnRr3ag--G-Xu50866g)`x5w;IgFI*_O z#gcn^bB+b7z(Qr1E0%%-GVj(}Jsh1eH@KNuAbmBKtbNihbR@pWMVb?54O#ULwyInM zvXm<558Vw8SB$V+?q4lX>%xn8STVaOUMvZxuAp^kdZ31?IEn{ZHG@*ETufCwfIq0{ z#SzjpG&ndE#mg#g;3oIEid%R^#jAKt!DQG$wY|E>bK|>zefizH|5Ncg-ca!;46yhO zM)7AAZ{jT#f02THjpxnjl2OPDTg6}THwBQ-zpHo~11jFZ8&Uj2#Xs?`iuZ6+#rv}P z05=t-a3kKC%=3_Sl9N~By_MgMq|L*G^*%Y-JCsT~-dUNPOfF6j5052N$#N-^gA?+1 zD-~)v+-NyoZ#kHm7#nP1nQpY4sIwfN7))nc7-kv`)Afew%y=uTBaMccI>Vvy;lcE+ za*kJ1DiKOZ9H=c{P4Z!4Khd`}9fvlP2#VX22);!*RMp$W$Uu73AF2>1(;o}l7TdVY@JO$%_Y2u; zBF9sHcUj~g@&O(14yIrvEa0zR7!};Z62`h7yped-`hh<0xT(MERqj_l7M^?Uj`1?9 z9It-7x3tk6kHWs0`iq#C2US%^xYGsQappPk3Kl{Gge9`Qg2D*97=NMeF15GD=8Wlz zRbeZL6?NMY>`I^^DKd>Nx|s^xz;^IjD9k($i(qaZ|CO3V01t(EYzk7-kGWQL3hyF2 zXN;8<)_pT4s#m{5k`KLLWc94hTe{<3<0Vu(zj$GO%C>dhwp7=Wy{ea^^#Cf&*H4D0 zN2HY#J#b^Goo?O|IO?sA>cLw3T4_}L(1*pdiWK4nFTMOL^Y# z8DpQP65BrZCaB9AkDbRqg>pO*`2=nMFDoBo8|NT!0PS>koNub9ihiWn<5XaP8q$r% zo^;c3{A09z#Fq%90~s5PRx|FX7*~;L99J+{b)+0-unx*@&{2D$<2H6gFx!6{Q3e0O zv;A$i5sTn!bk3y`@h$9JPHjQ`2C>Ah{~{{iKf~@*e0J5zx+oiMPkn(smp{ecgWc`< zEhG|mZQ<@MbZ?<&IrSO#ee?x7Ied?NW%%|o{G$ATb$l@V3tHV6Z8VwZMhzqSLM6mPNQi^YA>L+)fB(i1Pn1JMaFMtpSoCN668ldQl(*!T Feg+bvuh{?q diff --git a/productionboard/target/classes/com/productionboard/controller/AluminumLinerkController.class b/productionboard/target/classes/com/productionboard/controller/AluminumLinerkController.class index 92648610868954354c489e308e32ba05dee21bc7..93b5e6ac71730df47921e6ff7f175a8b5be4b94d 100644 GIT binary patch delta 14 VcmeA$?l9g^%*|-JxrAGU4*(?81TO#p delta 14 VcmeA$?l9g^%*|-HxrAGU4*(>*1S
rMs{CWf61qD&0oIy)FRHvnar8I*yf6a(Aj ze|+M$Sqv&bo&rPkjKej$Y9H$!@vksDb8RAWHB-50>#CEG(^rGBDXn=pN$a! D0Q(SP delta 142 zcmX@6a7SUoTt3cy49q~tz~D1^8K0)G;7$e+CWf61qD&0oI$B#8ScHTpU*MCBmSbQC zs!3wtWJqQZVn|_-W=LgFW=Ll+WyoM~XUJku0m>>s%wbSvPy_Nf8Jrnx8FUyJf$B6F Z?0_sL23?@I7?6g@*+b+uJMgnH0sz;S6KMbd diff --git a/productionboard/target/classes/com/productionboard/controller/FoamBoxController.class b/productionboard/target/classes/com/productionboard/controller/FoamBoxController.class index df193fd53c2ba925630ba3152b104f5bea74a50e..33f4f1706827825d11c61e9eeb7b8941ab873f0f 100644 GIT binary patch delta 1016 zcmZ{i%TE(g6vn^lbe!q5lrof-hn=FWXjJ>6BA!c6)jdweZ-X;w=Ued)x>{5NA7|9ih=Oxgq;cMg30&Y|QpH7Fk};*C3P}qt>Wf{I2Y`Qi?R7Z0ZtS%5hbj)d7}%MWi(K=nxcblfCI7c0%iDuU>(Z7-}?E2JRp| z8PsM_N96UvEE-IRHFGvop3P28fPU2B2>dw8erf|cPg`G}rcydE0xJ?MQ9a+3g7PLQuP^;U;yFrt+j^p_dY%Ffof zg$9z{&$2aIdZ9RqZ*Ag@oVbim%TND^9Dj^jJb{j9B|yGaAYT!v3R)3Jr;By01V|L1 wvu;!w@F^8mSA{qrnA!@bOBp0Dj5g`SURKd_jQ4gk8 ztv~9IrZ2U4P!N?Oh_t4z#z0lPdGP4Pi{RCR|3JmrG=>E1VduS>oq6v&pEr8qcU=DR z=lvpp?f6)hV?$P4M#+j%Trtd;jH|dN;<^k63KopxhKQRoR1_rKGS=IMnUHY@cP$9x zo)z~oX_&HMrX(=q#EOV%85#6G}s=>x18>?Y8hsUtTOf}efyu+HgIvfLU;WV~XZpJpU9tdO)!HHh@aTr_B zhXm5Z2Z$_RgCus4M;D?8aqQ$MIf8?<<*7uY;$E1j6tID7M*1kShawJ`>?sjPmY}hD zC8a5KsHDNAxOI4<^y%>GSWCiv(Hhn^Ev*|mw5~)w z&_-Q~E%Vl>*Nq*#0}$!-Noui75T^(tBfb^v#WeO~W>*{dYzut00iL6RP?LMI!Kj^k zl6`V}IUi9Du_d=ssx+r0xRTzWp|?Yu(&+ptJ?}G`i|6!|vu$#MEjhua949^RzcCPS zqGJp=KP!8VhBno(nMXR>yvNjdKRYo77O)C$h`Y`tZ$bD>v9IihH_l#qff$?3=9k=422uHc-R?}H;c2MVwyacMUKTMv$$ll9@jD^&S?zHK*+$L zGx;u$Jd+UX_K6JY3`q=1Kw$-lB!e=83XsPMq^%jW7#M-_tPD0l788RuP+Sa1 XL*#5ha+8yIy;y63I{PMXff$?3=9k=3`HBcc-R>WH;c2MVq#REJdZ_I-zT%U#HkWQGBPM>_+%xP zCF+-!WafY+tToXEHZyZAW73?;zzl>84BERHcq3W2GYI%-3kmLI5Mp8o*A^0nFtoNX zuxL-d%%f(Xz@WyE$e;vNuK>}-pv<5GIVPH^NV78(vNIHc_{AV2NeL;1$qN6aimK=$NhmKBqOSRjyF||H)W2Q(7#J8#7;3l}q!kj3@&UL#8HIliCp?Y&VYYe9p6GIHpVN49M401r4 On}Lxb4u}4E-7D z!Vl1oaPLQmw^3ZXI1F>_gjv6$@4^SVP!~NEOc;BZ;u}EuJuX!jp>;~?HVw~M#u8GLX{*77&qIV-pGShJJR^j`f7Bh3%Yl99?ONEI(7$P`#cwlCv?Fj*VezikA+ATQ#=*ZLxL&MbnGY~8tW;JG@26H+#0AXIEehDaHLFWK<)I@ViO0BQ_>RYf_`j$$c Ismsd%-%5dN)&Kwi delta 79 zcmdnNexF(X)W2Q(7#J8#7$abr^QfGi7BWE~Js<{@eRlDNPos6x!8ED~y$UJIA CoouuK delta 79 zcmbQveu`QC)W2Q(7#J8#7e@IeHM@;7BY z=j`M042uXwum~mko`qmjm?lg?8D=QX0m3Yyatf%SN;yCUiI|^|n)HQVeGL|J-(v17 IQF#gA8-K`cBLDyZ delta 79 zcmeBYKh7+F>ff$?3=9k=47}_NT3NAIrA4We4>9hZ_{wJTT&79# d3=GT+EI_qP46F=nV49tQ14y$m0Cg}h000a+4$}Yt diff --git a/productionboard/target/classes/com/productionboard/mapper/AluminumThisMonthEnergyMapper.class b/productionboard/target/classes/com/productionboard/mapper/AluminumThisMonthEnergyMapper.class index 415d8952d9b578ddf3f03966fd56baca16333d4a..0db638d493c225f0d15023e24ff2852831fad0d5 100644 GIT binary patch delta 409 zcma)2Jxc>Y5S=l(oYAQ9D-sYq6d|#>#x4QTPB=jf*jSuvvR*da?!xX~Kt%EvJgof} zRu7Hz4Yie-@cw-0AL?Bd|2~g-G>IkX2M;5-cm8GL?kK%JGDoPWy+;oJhk+Sl2N4~Wf5q3GmWuleWG zC6*D&;1MeHIuF68FiV($D$G$_1cZ4)?E=uk0_6ZTBw}ewTGE$(^>tV-d@F^oLgiI} EZ$6`IjQ{`u delta 79 zcmbQsewJDO)W2Q(7#J8#7pg#W|1Y>5_5wo$D-3979*JaN3RzC?uaHiBx&wkA>zG zA&q_2-n}i8+;yA|!p>Q)j7-G2)RLWlfe)2R4H=oL>94&si(DE~@KD88trT^O?bqV- z=@P35Rj?Q}KAnYNbD3q#Kpp0|E&{?lqj3SKVS#&q1~RcUB{l0SzxpODm%f$KSL5eZ FfNw2Y6ntxPp3$iB8><|OlGtox7eN#egcHPojm5diyojJYq3Z84~wqV4POOr#<~iz!JRsR9`? zsI+CI$S*~<4ZZ*P<>68OzBg)PjNP%hGZ1lx4E9ZdcspJ%)rn_CCq}Q~nXU*$(9y#n zruadcslXHk0)@AY&ATGUebZ|)*r0M&CU_x@B=K+D1En-cq*mk3zD^@9>Nld>M=m>r z8!rABypXl>`cwY#c*V*L%HYsU(q$b6F0Cn=38=s{?KxmDLsPv3W?+`y098i7{1`OE TFa7Xquu$k03*97rF9Cc3yQg^L delta 79 zcmeBSKg=wD>ff$?3=9k=47}_NT3NAIrA4We4>RtV_|j(bY^I6w d3=GT+EI_qP46F=nV49tQ14y$m0Cg}h000R-4#ofg diff --git a/productionboard/target/classes/com/productionboard/mapper/FoamBoxMachineRunStatusMapper.class b/productionboard/target/classes/com/productionboard/mapper/FoamBoxMachineRunStatusMapper.class index 7e1ca4af3038d8c67eb0aa929087355580531d72..95ea417c61b0231ff1ae0845aee253de0caeddb5 100644 GIT binary patch delta 465 zcmbVI%SyvQ6ur|&()z4#cMTSyEkZYfi?|V6v{*q5bmJmSn`xYqOdvBULMi=*{EI6W z{Q&7N_#wIwZ$=Te=Cj!T134<@!nYgWP@;Iy>T#)T0+m~)9wYCL#x!J##VA(f!sQ-; zQoGadUS4;)Z31P7`vSdUMqv6sv(&pv-_GX_3)nDoE>38Wpxlkrh}E=4aTHpL4gzM? zEjgqfbw?2m2ho!&bx=1NjFIe$dTpwQoSoFBdP*E}*034`j&LiAhpf*fN1@+b7eYj+ z!Hq~@#N+g%YUnpRtuE5{=MgCoC_oX*z-5W Y0+kGunv?%wY{9l>?r5fgA9ex000-rLPyhe` delta 80 zcmX@Zeui28)W2Q(7#J8#7A*sF%cn+U~x895{MuMY%GpVZgQ^N?ZWL|6hg=&$i0h| zMIJzW1xp`73vqI45G#w1nfYet`)2kz`)X}IeLRi<;1D(}ShHZ=f(nBzA5C&!8EFPb zwbl*q^G3j>-)KsMK1R+js%;`6eW(6K#YO~;me9swP(DL*t-Ny{@emD0B$gM_6&{14 zhken-CZ(me@Fh2KgbW6My!QTSmUySh%kij<0d^q(a;9PJnjJ z)?My#x2JgMcGR64syOi6wCPH`t?dlbEr$m?gP%2rb-T`B`y!S`gm@{mAf@SHCsHcI zjU|+%8+ViUY9Z}8Np+mOJt&rAkb^v-KtEl|fJLD=NeLO4fmwA*k;zfisg2ma02@;4P2GUp@Yi@I{-0jKkUYZc{2y*XY zWswIEU%}Fc&_bMCG>DbO?96^U^L^j!OZv^&e*SzK1Hch%8L(l%rU4}aJ08>VLusT4 z99ykB+NU+23a{1_nt4pxzo533TzGbM3PqaxwH8;}CQ!U!`ZjbgsiXnZOd?s93x~S| z^7TfidDdvw2^8Ag6I4f%5g7c@+W)6m?4HN3C!;p=S$CqG?NdKOzLrW5^T6!MFfcW} z@tJ9vs!Lt!OwV3O14pyqp2@_7Bdp3GaXCD!41R15t7etJ?o}i-4_JpQj!d(~PK5|H z)dmj*?zk6!lyk|O9hb-P`(sEl1Tv7t$l*^HQea@pPfCmw%)vb7B_ObXv3Lzc;cXeQ dQVN0M1XMUPEAx>49$kUegkmkB$YIMmz!$4qd{qDd delta 80 zcmaFLeui28)W2Q(7#J8#75cc1_lNb232+jC3Xg7b_Nwj2Bq}WlF0?kQd~Zn#U&<;48j_o6aB52 zqkz=BTf!z9%GH^9@tG;LnhKf-#jGI3hLgWDnhG0XS2598pD|~mwaUbGUXy<^8c(iZ zJj|jDwaOc;+klZlRm0OKE3qt5KPNFST|c;_C^IkJS`#8vT9TQg4^n8&$iPxkS&+)e zkb_0}#JSOo9+Q7D8VMO1z+IxFTn*B(*_3H5BPS~h&;SNj2Ik2+ENYy*Kpr2ASI-aR z2`~r(<=KD%!^+6O4x~7Mn2AA%feT3UF)%W412IoD17k6RFoOtCjE4~@APN#JW?%;z zAV$0a;;06cK~0cgkc2vclL_nuDY!GFu{c8pY>GG&k~0uYDF$Y!4`dnSz&?=&8^Hzi LlLC;h$iM&qU|Luh delta 156 zcmZqWZ|4*~^>5cc1_lNb1}Sz1adrj?b_U7GiHs_f-!N)V3{Ypxnfw9Bv0?I>c%@c49-~$@K!^ptMzz@Vc#SH8~X#uFTnyDbBJOeWW b2T%_agAju-m=ff$?3=9k=49e^b3hWGu>gOcprRxWm6lLb6TWdmuN=q_x z^nEgmORO0gSV}4jQW+Tvu_&LoFoDr#vOlAmkf8zGHXY?^kdDnv%zGFaStsvjX`jr> zs>vukS)WyuQDia;s}`duh#e%xAkM(dzy|aPCldoZkdgpm4j^V?kYwNj(tHez4BSA> f6V1R_%pe6+43U*)kO8Zb1*_r$s+R-uo5U@4>ff$?3=9k=407xY((DW}>g!vFvP diff --git a/productionboard/target/classes/com/productionboard/mapper/MesMaterialStoreStatisticsMapper.class b/productionboard/target/classes/com/productionboard/mapper/MesMaterialStoreStatisticsMapper.class index 4a95c83d3b4c2a8e3e36ef46dfe078cd43c3bc70..d2fe20128cecc05090514aa731edd98a99f27006 100644 GIT binary patch delta 338 zcmbQhaZ^C})W2Q(7#J8#7?ju<{`<%Ga;!dT@*z;dEk<;1{p m;#lP*Kyr+dlkYG~OG+_F18rqukYV5g(p*56ERdFCU;qFjnmR=Q delta 81 zcmca9Fo8qt)W2Q(7#J8#7$n#kMA;d{*crqb85AZjU{csD>LDw!Ar7zDwz5Ca#G<^qZc18ETk1^~lM3_kz> diff --git a/productionboard/target/classes/com/productionboard/mapper/MesTeamStatisticsMapper.class b/productionboard/target/classes/com/productionboard/mapper/MesTeamStatisticsMapper.class index 1262924fc7fa9a8731c6b1c239b802e4eb2c5c67..77f7d44e9dd65c601d5f1b162e379a98ba679023 100644 GIT binary patch delta 228 zcmcb^`GQC6)W2Q(7#J8#7?ju<r`? z#mLIa!pOifxt2w1vMS3|79d9i#7Pll-~-ys!^ptMzz@Vc#SH8~IWY!t24)5}pbRS` x13Qr70AeNv2?j18%?DJ+4N@D;z*x*62~-G?m12+vtC9h$;sUCd1@h$>7yukaBklkI delta 93 zcmaFCbB9yx)W2Q(7#J8#7-ZNPB-t6H*cqf58RRGLW|ZG(x|DIU5z~atZOlE4tjsKo q3@npxv1(0rWSy$Sz|6n_)WyUg!XOH!#TdANG#5}r97szrFaQAgPY>+? diff --git a/productionboard/target/classes/com/productionboard/mapper/TankShellDeviceDataInformationMapper.class b/productionboard/target/classes/com/productionboard/mapper/TankShellDeviceDataInformationMapper.class index bb45aaeeec12e7e1af4682312c76bb594f70c7ac..66bb26a27ac3c4ea26ce914ec1bd35ea3b48ebc7 100644 GIT binary patch literal 1115 zcmb_bO>fjN5FNMOOi0AxD&wL0PYF6pOJrq`u$`|dA>(8 zmCzn~+}DT37U-4HPQcb+e1tQUIqFRAYfl;3(Xh=`UgdJEoF55TKOjFf=_|BYkSEJm zdrC(t6|gc5{*CR36s=CqS|c0f)jr=)JMH^aQ*4t8CW2_J=r))b*fMhpj` zOEAUAvz(Eu^^DR+&`8sV!Gn`ViI2l@$f}MthO#;)!eE(V+;S}+|J*Kp0Z2X z??|!X7kPgA#rK!-Q7uAaON^#asi|af+^ALNm6M6FBnvD{vhq1PI%q!sw~wn6Q`v-G zsGNNmb_Stie9Pc*J-Y%fGr2v?dOrQ#;GOn0Pd$DIXRoDIO#rJ?$bXQnFF?Qo$09%3 zg(U$?(BtUyt|uViWx4(VE3nGzH9mNSW9=OX2UmFyuvQ~nuagb}23VgTVB;bH^Joj+ QfSXO>TTS6UPx# delta 79 zcmcc3@t9fu)W2Q(7#J8#7h@otPOcYEP>FBT#`fQ@+# z!OG6U2e7j8am39TtSp9MzM0?bxARqfaUMRt-`)Wnpy^=4!KQ;Pf$cuW9GW8@%aD5+ zC2TkwP@Jw`QD)t;@0mr7QjS^~Duz48* ji#F;P5E@Ii2I|5JD^pS1`MKGA1FHqMR&W*DUI%^v5653Z delta 563 zcmZ8eO-{l<6n@2oA}T7nay7daL!b~hhL~8|Su_+v3N$3fG!q!41lpt>&>aVGVcd8K z6IbqBcmNLIag0M-Bw>=twDZ3A{k-`Qe=@z*@7Ff~T)~+LCnB7RkQd;hL#K4Wbh>Z{ zv>lKcWi+tKbWTG7@^ZnPkOe8vnL90;Zpdl^?04J;kFa?_1-O@A-`Z%iKx79@UHo2{vMyr7y$26cQ&gr;Abc3XRL+dL_ zMMA_IqW?C>(AUK(cf=}Lv{_R+Vrb&K9*Surs}@h^EF-tvEb=|xQra@DgLAH(QDkE) z+hiQFi8Uin^0rWjL+%R3dPyK`pGO1dB;D=!3!f|DS*WET&0jnPB4qfP1O9q^XYW7= U;Q;oM>LDCOs9c0fbHp*gA6K80Qvd(} diff --git a/productionboard/target/classes/com/productionboard/mapper/TankShellEnergyConsumptionMapper.class b/productionboard/target/classes/com/productionboard/mapper/TankShellEnergyConsumptionMapper.class index 8614d3fe533b5a56ab0ce94376d180b6f609a21e..880735459a4bc905ddf2df2f0b118449952c7a05 100644 GIT binary patch literal 1102 zcmb_b+m6#P5FIbuhFum|?(7370(I5$fM0kk7jc!4x&l#zgm|bX$&h+U?8tVCBE%o? zMLh5Ud=z4mEbUfB>LT%AIWzH`IX-9n^Vjzu0B{fX0=OE$wE(UQxS5iFi~7@eN?GBoi+F|o@FDZsdsA{< zPVbacQAUroHXe`ewm&j9l~`arC8;7#JBf<}a!eV;_2oJ<%t~hez%`lhPWaK9JoLzj zVLx;+COGjdt^O3Xgt=;&?zdyszlsiPEgEMcG`UJlDf6lkt;k9zV`E9?SQKRC6LfUY zeEv@>x5uWmF}+Y3ThW`(!HVx~=ezaT3RvfHdzj@M{%z)t?z65JkN@J4v`PtJMRNHM zQgsCg*x+@FU+KoCfKBM|>T=W(5b$=o{sCLC&HFh%c!t-`2M`X1BpM2{IEQoOd>7rFLxE7f!J^_n zs3;IM1;4x+5uzQvZ!!ml#G_%IP$VWm*gN8|A!?z=;(g4Sp3?E$5bW2rO?7SAA zPnV=hpbCzKYhULO@NAj4n1dQD*t!e^7A@)*Kr}4b9-vMvu`(mI)mMJ?4OlIGYo*V% H<8^><3QcQ+ delta 79 zcmbQqevVoG)W2Q(7#J8#7OhKYwz4=G7PNfZit zY#%%oQJy6nuX3>yl4mK)tGL%}YBUC8*4AriP6gOE)4Dvti zIzcaq{ru`6|LBamB&j!^;0(FUY>PczFy4-LnI^Gk_=O~|>FFNt^U!d09qIu|8ODh+ zgOEZ+x6Q4)Vwd}t*J9W_$&?W>oeC|i_iyEWr4qx9NYwc5AW0*i-#j>MwNgmh`NnJh z`E<_83}rYL75h4e!L?!1Vggl6**FV^X^Yw!n8u9Fff}>K+?do>U;5S8F<T5FB~ delta 79 zcmZ3?evw)J)W2Q(7#J8#7ff$?3=9k=3`*<_3hWGu8wIi%8C55~Qj`j*EJ$T!Fw^kKN-Rs%&q>Tn z*AFf!%FIi*o~W-X%~ArEuEip~nV*q^kx^@M4Wk;=kR~juCi61}OzvgknEa3NC}YfI zK1RRIlFYXmSvgr48JH*Qvx-gTXH}HrVPIll1-g%uiGdAB@d7bB5Hm6G0hRHCl&J^+ zS%M5W6$$~Rg+U4fMSv_(1{SD^tc*yei2ff$?3=9k=46^JD((DW}8wIi%Cnqz_nY@vC4JS)UWkD(R zYgleGva+)&y^ ggCI~!h(VZv5y}?<@AruyXx)= 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 nxUMtyj5TBLD4~u;LS0X&8#tW!(G2Iih diff --git a/productionboard/target/classes/com/productionboard/service/impl/FoamBoxDeviceInfoServiceImpl$1.class b/productionboard/target/classes/com/productionboard/service/impl/FoamBoxDeviceInfoServiceImpl$1.class index f4b2ef5239e7813b08186fa48ed4faf835296839..5ecce211da74cda49c00f755b2b58dd977e6a414 100644 GIT binary patch delta 29 lcmbQlF^OZtWM;u5415g77(^M4GsrWXWKd%`J$VUp9sqtF2!Q|q delta 29 lcmbQlF^OZtWM;vw415gR8AKU&Fvv6PVo+n)GkFPf9sqhy2sQu! diff --git a/productionboard/target/classes/com/productionboard/service/impl/FoamBoxDeviceInfoServiceImpl$2.class b/productionboard/target/classes/com/productionboard/service/impl/FoamBoxDeviceInfoServiceImpl$2.class index 859f21385f38a280d83a6e046244df83d005f3ba..30b5495444504de98ceb1096f64421d72f7df91e 100644 GIT binary patch delta 29 lcmbQlF^OZtWM;vO415fi8AKVbFvv4pV^CwbF?k7d9sq%A2*LmW delta 29 lcmbQlF^OZtWM;vG415fS8AKV5Fvv3;V^Cu_F?k7d9sqq>2yy@b diff --git a/productionboard/target/classes/com/productionboard/service/impl/FoamBoxDeviceInfoServiceImpl.class b/productionboard/target/classes/com/productionboard/service/impl/FoamBoxDeviceInfoServiceImpl.class index 6a4e4e55676c195649843c646d8720c0f5922184..4dc9519cc72f02934df8fad02036988b40272a28 100644 GIT binary patch literal 10710 zcmd^Fd7M<$mHy7F<-MwUbTMbb@u~Gs;k zt?%7)?>+b2bI&>VEU);%#}7RWV7jD(NMN6ihYdUugogbAY{H{D9#ieVsMq5`{41Ua z;rsYE9Zv=k!oDE<_<@0^RQt4n9~$_IfoIgzvj%>o7X3JcpWvq)& zih^EMuh-P;b@h6~z%>T0HE^AQ>kZtX!cNzGOA;T2nk%mNc8LrC+T}BGbrgYlM zE=nbGIV&d^zB!XvTQlv^j%=o_vo)X0q+2qH zY+JP5o{cW;cVVL-LR$G`yR|NvOSYt}1?hB#lu3eH&T7tNw?uOt*<^al=4_(fIxmym z7HzQ->0ESkqBWn%?u;gS7ep6y<}>FdvsN3)9_4boBGJ0F62q|pFkE?U5%JXtGPTxf zrwAyFtW}W4K!{gfTSRq)kezi`p4ON|H5TDi^?#XjVWO4CPFx@7A1)i~Il`D7~EoXq99i+*0#y?t|SNwg#~ z?a8)GXS9813vW=aBh{IUwq~*xU+K1_eW#-5c3QkNYt(zavz(NS#Y@&TEn3pFnAfqN zd!u+bqEs0>I|>R}Q^wq!ikh)_&+|J=byDb+IF-hE1y_d06|o&sCA^ zAo|YMZFCm4Ju8ok$8=moXU?$3P(*F7u<~0oZMKiF@>Z6@A3|F#_ZfoVjs-iCxdqv5 zVy7UG%w=rw_#${3;f_qIcf0^|e5@_vL@L>mXi3na=JMy{GU@2@_^OqwTF$Xrm609k z+C%x)6bfI!GsD9qp70DFxng!L`NDZfYgAV zW>BMV;1x`!spn*dpq`?4&L&cH7HQiTDmB}_R9$>}tpcjk4Y}xUuRwjJbzYzL%2}uO zf=btpn(53qFzygzx8p*wGgSBTFK{Qy0^9$|b+5$3$W)@er7bazH?3S?<9MZ()O~8V zR!*jI;^`Fj4#C3DPl}QIF#JxXhU1yeY^$|2sRHTPrA`u7F%%xBG%cvB7~XR-UtD>o?}1V^A|?oQ$War0 zzDzcyUdEd;MUE59t(4jhIGC9d6)I!?rzKJzIZPgbr^|PPMq)eG5vp)mh|h z0q29`j#rkt)RdEC+2^J;%|r_Ax-^-xTv^k}(oE}Ln91aGd8S=Xc+XY)WkrolV6(CY z-KMOP)w--P!(A`m_=qWI3B8K{rAsb; z<&qovxkm$5Pl@v=#H|^J(|A*VE{}1{mB)Gd6 zjENQ5_{8Fu$u=X6%VbFctdi~V#Vi)Ka&wDbJK)~N)y z>bn7L&cE6Hb}-J>XWwK+aqFbol*>@cE=1ufXmuv#juBFBN7b`w=Ex&U73`eB4Gi3W zO0gNa2RwA+K71peaj*o7DkpIRc0-L#%1>y?v|vs#7p?>yG27yB#i+gr6!X?A>VaIN zvMjZN5tO@h8i7BT&svFg!H5#wIiu>k1}7VX(ju)vY!XV_o3~V5F{T84b7$KAk{4ag z4{FI)NAXUuwvSgrPMJh9#Y9msyVxWu5OHO3C=Kd$L|>G1$-6?#s0!Gh&o}{pR0*Ty zn53h(IwmZbTFlKMm=*M*L_)I<(K_8!nF3O`Vl^u@9&jZa)^NGb7Eb}` z=oTE^7oU>p?U`*>wAn6Mm`^0!52ECqj23#js4}uSliAkUA$YoYJC}fyiY!Z{+fr6; zoP*g|#FcxTqLGq?Ygrc*qYr%2+4AsfixuQjUX)0s;z_z8U1;Lt4-rVE^U#$a9uH&r ztvvxj3x7w@R82y7Gk=!wv)#g0Q^mm{W6Yxu8DrXa$QWxMn+D4qcP_*>%O{sZ-rj@- z6}#sVZ9cq&fbgW zq^2DpPJlx#HU53@ubA`zbUwy|2<$;n!^*t~ZP*Pn=A9h#X$}5}uN#BzB#j0>YLBUW zB7BbLGcn=|S9PQMS{&hN@OPnx{TjRP_cr)z{c4@USL@WDTBlBOY{VNL91eG5$oeh} zvO7anCmfEEz+{_(9v&L=k+WKtyNGWOcR|cQWei!Ef2VhEwq_*6|mhQ_+Ld zWhl;&@z^M{ahA-(*|G>0cT31Jw8$E?%6hhE(p;5Abnus?$8ik)iYCXOpb&N-IoX8_ zuBydf<8L@i>u@bcK^NjnJc(a6;%{*gbvcY{E+)?&jFE--JA9d^yBbgN1Yd%WJl}!8 z=d2(9z+J}>%fY|27yqlocd#xa*5$-H8H0Oxe17e`LdQSqxKhVeI=)7j)>3T_HxDB4 z5o*}~Ge&bxKE%=5N6^>~o*h`I_xycaDjs}Qs&Sc&!sRjxS4b-_ z?`61B_VBvC$nn>BJ>SLG$S1CL94@!S`;^F4Y*mGi(9ml z@C~g6yR-{%t9A{(sojs;v}ZW}GjwUc!MC)R@onu*+@XDdJ3WHCZ6CKELnMq}*q+VA z0rGJTxz_Qz)ZP+vusTU&ZnA6- znp7IOJjRo`vnN-W4SE_vwV?o)Fl0 zzGvmFd~PQ^nopF^iF{T?28CDJGHLKMFs4prf0f-o)~ots*q`gj(5Lz}?5}oY=x?a1 zty0vVXQ6uVH{H^17zHZTQRc>*A-CLej;k7fO_gDqAo6= zuKPsPNG1Ma=9CEYj`bS-uLGW@VSU6~io0PC>|tNU;fq4j_3^20@<+V}!lzGBai72$ zD*3aajjG&H5Yu{Pp^orghLGVs*@vgQ5?`fCeeeGI&pzXqk+8+E#`w?E!evTgP0KYlCBBH$`n)Z=+Js$Df zA@DA8cR9Jcje#XdE{54bJH+2^u0a>WxcZ&zZac_@_>aV%#kYtT;4fqMl54f1QW#TX zcd%^GpaR;R#PeXV_8#scdd%3%xv(Ena_3nRP@Ba7o?*9P8sI%++)RrnQ zzKo$gXhzTph*SfM3+I1TV)RxS;|^kM4>rQ=56@l3nE5eIa#vPYSDT|I@$VpNhxFhC z1o~Y~PE>6Y(CpfT7q%v-KH@lzmqA@)y~0YK$@VGXGrMutUF>Og-Kah~058}Ib}IWI zcGFKe1X=9tu2IDJS*RkhvnvpL{;h7KM!C zlAu}CxSL2YlYzv}pyL{v0OOJwV-k(VC5gt2OE5UZiAgkx6HK)8-S=KqS5+6-YJM~S zO#gWAZs(qR?m6dv=iFC3{{G>I0L&HV`S2+mP|>a7pbrYZQ-)9Ckcz{yJmSZ{;XxG- z`A~)fK6vr4hDT)iT@C-P;XgDyDu=$O;W0`7eLsGH2mLr5Ka{V>RXpLtF#JfxlRgCT zlzjbI#nV1KgJ)Gd=ffBrkQ0C6$4~K~hM#G8Uc(C-z9NTyuHr=>rs5Y;u>X{`m*neZ z`FcgZUe$1eh8s29q~T@_x2X7~4|AlXb8u9{YqI>6d>vEqx(^HGM*qu)dK{Nh|60Wx zJ}kj;DZzjH@f%z8Hv?46AN=?u{^Y|u_#avOvx*Y|2>e0CUwml7Up2g^;e8D~nt&z* z`-DQh2$v?@n(%1CO9cp3zBD;lrr{eJzNz63P530CUlY122B>17D#``)rbNO>u82od zDI+B?VzU|TSZ?lUjwOt^nB_E3j4 z8frZ0#Cm}sd8K0=#>QAG)*3gKB@!k%lLePt&}=5Rgi@W!SYpfOWVFM$*i3E@wHnbx zDzrJ;mNt_+L($xX(6UV0yf~IL+R1jbBkh`K+tyM7hx;LL>A88#*F`DR2BU*2pfZw1 zRvZ0cUV3gG^EGBB-u@Apm!3=J6{%Q9XWVFrrj153*%3_(jB4H%y(k(=8#~gWNYN-~ zco)SIvGfuFSJkwQ0`3)NyCG06yq*Xvfn^ zDm!H)FN(DpA-QJOM;Z*-)s)z5M(oih4pItzi;>PboxqeTTj+Q+u_Y8qOaG{!*0)PQ z#P~Gvp@fxr1S@y68J*J0$lDcbr;LHTQHLWppEOdLIF&T`yi&tMOC1S$Rw``jOga`1 zHOEqEuA*L?bk53ROB=0Gvm@4SWcW(>OcdimaD zPba6~NnBelJhadXJ3F(MSYIU3qLL;tcofq+3yqO&6`cF}B^2a}kF${vFF^5ev}D-u zvG-My?Eu1C+jgF3%aJ80;;@QK3Av0sj21NU8Y8{cY`2cFkv5W4{$M(3@v#>0?O3)W zmRgofMt2I7#ZsnKot0Og&3dO9&-G{P>>qEbI2w<&Mq8uAyi|Hy%1ne-N6uV(X6rVi zO?uXF#~+H9rbPa@vBgNVJB$A>+pAcfzmvU6uw~e`wO@>T0#i#MMN>(r(AsV6X{R-^ zRa!tzFzyf#7*k^j+Bs&js>TVR$!MGik+48ent5Y1o-yQUCtPJo?WW%$w_90z6$?vy z`J{Di!xFRDF{zJxTVS1!d-5dy9Zo?}wD~_d;H6|36_0kbwnr!NY!xeP5)aYJst*lh z#cb-Qol9l!5Lo{4SuvcRLf%?hIAUg!ZAN2E#?0}Jc4kyE>dlmv7N{zj1EuJGhM6Y5 zhnzrJuOk7IY1+x7IbC?ws&Gd~IF%x?sL&Bd2a&AUrF68SO%;Q55fFm~>Sb#85yO=( zhKNdPw^kQJ#V}TAGOc0d#-_G z09?mb#8fd^z%y$ik)P#kyY#XhGvm6LBBp)>k&AIs7gb`KE~>?JUDQb7XUNw~`3lKx z4C~#7o&PM)#NzEnQWv$-YLMk@UCim-vX$OgvBd_q(@JTz-&x+IS<)%z>SCU#W6JpP zc+J+a4ck>QUl$9+Li+e}(@dw*%%SYCohtW=aD^DgqP_xm>tc~utcoSNI87{7#WGzi z7b|qpAXW+twDgio5NfKF8Mw|(e?TQU{Sm+mOWix9hE67=zaaG$I zO>MPrJiPw!9^o}E%tYf1%mvarshEr-ig6+Dt@&GX2JJv@1@0_)-!4uqrOm?K7h_TO z*6B{gKFy%wVx*Mv6=XTilDxQa)DAcH1zuoCRmpUyqKJ?_THHl%9V5jpiEd8Lsi#eu ztlEfDba5-82b+$X?}r|W0WPZtS7(L_D6oOUwy(nTx1Q6{KyH178JFI)fnO$gH_WQY z@(p=;ri9+j&INjsW9{C-e6G12spQ&}GO0(WM)k?sIy3I{u_ggPUK10{LPr&v&}QU- zGS{Dx?_|y@eHZSf*V3j_@r1*yi6N1Hy>9(zB!YyK3Ij;@w-v1 z%{Hwa3N3pUu#-lQ#hH2uEX+502`0{N`|_aWM)pP&hrOdFQ{E!IY178AF$IDaQ<9I` zW;>}sZN4;pC`)Kws^lytTe(BtM2C}pzmB&ZZg4FN-h)z^R&wLl6@FQ$YAQgKi2c=t z7|HJy>1a%TuX9D)$woqq!^XN2NektjycJuc$p~T8NVFMDy;Tv>#RjoS$9;^$_*dL5 zFrhaUi6t&Fw;Q2m>k`1&9d*9@QFaQNZK(Re%(BhaXVQDt%;g_PP4;rP^a7|*ZD zpW-*;3*h1BYi9YZxAW7om!-i{kqLL7J|?Jr`j}ny>Ems};l-N>M?2YC3O8#&p!y(0 z^${p70oOse55RMuwcdq%%TMXxw{cRl45s(cEGC1fygdqyTo*9S0 zE6>+ZL)MjEyR{c1Ygn)J9>P!sk6>6ghDUaJMOV+OT^Mc=s(VpRn!rH2|E-|M;WH=b zaaq$ILsgBMZ9IZtH%3Hiw1SS25z1Agl1YumR~JTvy{&tnZ3)2ceID%MTH`ooQ(c*(x++KYIZ}O|R4Y-@!;PvczM$fZDy~*>jf!hor~S+I5&8*~ zy@%oK74Kq#@>eJ<2Q4gHuHsAY!OgcgLDgMHRvtkqrQcki^pOwBReRdk%E$6cy>9g)$pY>FFq|eTD=CR26?Bp4}F00FW z)?>%fHOJFo-73#giz_f8(&7$GjI?+HlOio%*212ez+`!nrfibVEuC7dc50jw_U6^q zytfZl~b zQFkP$6_ZXcO*%aiEGs6hDNR}v3HpjjXOt$L5!vPEd754mm>Kj+P1OWKLDjC*1~t1f zD_CY%W(R$;(uFrF$}J7rg=!a?U6k2{t*wgky|`W~>Iml0W9GUl{TFm&UZAcU^SiOY z(v&kqeH9K-GtQ8wc!-)f*(~n-B(toYnjdPXHq5|*m&2BWZX<+mM+JjLoM9qEVBbM7 zxPph|TGqOF-0$UqKg`4P7!UcgJm4?$h`+(({SGb{9$X>D;xl43J}WZVCBBX;#S`p* z2A>lz;`8D)d_nw%r}a;`TD*^I6oG3M4PR2qah)<0*DIrOgE9#>Dl>7D(uA9pcHE*| zhFg{0__A_<{YP+{@+fvIPvWb}&#*^%1-C25@pTKXx(Q1s@PY+Wemo`?;08+O#j}K* z8(CBFvKWV(Skv%^7=oKwE5kd2KLfMoQ>L;;TtBzxQo3jDxs>q<^*BsiFr1`$g=M#6;j8#_#`U z?x>vEwxgDJ;q5`F*m}}F(jJrhr82yWn|e@Fnn__a+k@NbO3cPQLAuXCy3f%gSV(LN zGYPZGusd7vWYaS5^suVbX%ZRjv~0c;sbrQVa}F8ds)K58gwte%W4@Bj%Ct&NMz}^k zGBV1)Y*sew2@g+2$op=r-gl1Kf!mg%+;0#nTIW7=u?BL z6W897wdI1avjRAT2L7)TtUQE9nXH{2rr^%#suH7Rt~y_(FQ{3p_KG_KbzwillFx}= zP2E@>)|I*eL56Step~iWT;f{0kIx-!j^iWsu$0fbpdL8G+H;+&Za^1m*>1MlQ{1vW zj_oy8d#FdYE7)FZ>&RO-pmKm@|3g0V&&6jnAIePV0KVqndf-e3k3s?0xoDa7c1#KT zyRbV;de#S$npx7w2a+~qNjH2TX|R-hVgHOEbAq!K?1pYtH!5ImQb@b$5Ug%b$?jb~ z(e?fYC;y^hwZJ(uWK3qIMdn{t?OZ48(U>LEr^@c7_UsJ#Rvswuma5@yrg`_!ckg5V z`Tzm<0MFY)1nY+hy5GeiOR!P0P^CnQpF&C zIaJCymD&BRocRi8{R<^1!!By?e3rJH`*U*cr?j?AcjjcelcV;k`*W-A&#k&Yx9VLC z!Sy76skZ*=1(H*R+07B_AkhLdocklTxK z2ktDvUHFcWyM^2%WI)I+>9V^7d$3o?J|W)~a<7p4V~F%UcZ!Ri{J)5ue|?#uxT=_IZ~D0znx%7zisY zY7K^ZJmLP3FVM3-Wct0EgP{$cPOljVd)Av>kzi`Ah| z&hg8-y_bu3I#PY)+jiS4R*7`h*n>~+aC3IdPA#B zB2J;aHP~hLtubj%-p82ENUx6&T$*(qVQ)xu=JEOa`vltw5Hy<+v%`AY!iN;>upVzD z1OBb_9ffH%t>>DXOb^x32cL;cck zl^NKO>TU`nGsmq=UH6uLd+qIMeH*hX!Arl5Y)M^yrlU73;R=Qmwp|;D4Xs=k-f`it z6sgS{=?!+TFvYd$O;q==4qs2ej6_2;OXm=@^S&jUY*}Xzcel)RxZfKdq=UlR_ob^r zhSf^j@PV&C*K9{!K6^1Wd)hg&4PGm zM8CiFklsHyOytywwN5*NCcHcmg)M|kBtmlaQaIy%!6et%8Y}%-G?lK`gVRgiDQ6B% zITjKw$s%8VBz(XU$9&yhSz1C&`1&9n-mk9@GVK4z*K^G_J=Jts6w$QBQpc2--4f|2 z9aW47&OV*ZT$@9&QqU?%I?bTp*By*{{9AN5>F!>jk*-J9=`Uf}vn6M7bNo85n7R&3R zACiKSrq&ucBa64EMj5~dZ$bHu9^YO)smVHSkmpws~@J#@9*VBl<=qcBPb1MO|g zLLpN}D%O(*{*Hez7}d?4TW8>1{L{K#U^VqtvsgEEa}Bhj&A@3m-GzS{_&5IJ!T|&C zDHuu#aR@08;#7qOR$!$|6&cFK8|4-;a+QN%6%#~z(wATQL~Smp^D@%YOT0o#%bKKC-l$~hx)Zo zf0wUUsH|y;g+jfpjP+pHn3rv3xxddSOk}KGmUClSoh+q2Tb5uvDbGlB)O=m&#QD0= z!KKX0C2}1RI4Z8Bc-E$dwA=N^!&UkhtU`6@wu_x70W2qyT zpxRE$7kOeW;~9uaI*sr;1V^$38jo<7wD>d_uAY;~ylmttoeP$q{97 zoKQxV*4=N0!d|9_w6tbVB6&}Cj{$xK9v2VJdJ$HaSc$-u*Jc$mkrUJVyCXr1#VIJw zvAwK0lah0DFsi=-SJX5oL&IWox}x>Lkl&=-i?hsodQ#l9GjtLwwmL4K6Q2@{2D&ks zKixF5#5L*6Nh*>8qtQibSRK#}FYgrAqXz}@vbu{aDP%ip z9~|p;p`dM6yQAJ&I{@d+>m+d)hFJv36EiW8E(KTo) zsCVu}V{N%h-_Cc+ZEbD2Ti;GAl-mil<-_!CMUmW&s4Xwnw?(dcXNB`74u@?*csO}Z z;aSh~B%WvS49&b7B|MGY7`_Lk4z%sWiWJ@m&1+2IjnurF6keI;jkbAvP_7vTv+v+E zPKYY&F`RTB+*H9G{Eh8?avs1UJdMS84h?vNKh3>~CHN1PQs>K5DVkInj@QbXL`74* zG1bdeFMKqCTb1BkY@qu4IJOwb;`qr4kW&TY0GeG0y3nsmd6Y~Y#p7L!#6~_YR9f{R zUOEuw+Yy@7sZF}oGAUlqFsarm=M!^Urkl_AWqvuEV(rQ#-Z{2O=WCPFhL%aEX_L~1 zmPsqLNohmNq(wBTWy2nhB?onY@jU17T*|Y9>K?_@*n`n=JH;3knla1np$%NAd1F#| zV>0YC2PHB#?X(Klar<-=-RxGn)jsYZ@1y%Xfiv+WJ?B-f|20~qi@mjd@VaduUd8N# zmk~|1kLGNO*=G!jQ|wbRVdO|!XH=$jHtWDqN*kTW^Gtel7+ZMt5jvN4LjFKpKz9XB zjajUH)=^GJePNX|=7tmajN38oWMx%O+fxea3o8o6O{ePTBs|J&9nIc@!wS&869u&i zBv*>F6Mt@EubEcwfS-EWs5LQDJKCvnO`ICj1m(g7e8<7JR%o3RXuN35YR)FgFPJTZ z^8mOl)tEKP-z7t^I?SQ5dI2vjyl&-cE{unuZ85y=|3AR1pEAl}Lf>(B8U4oCLx_}bS z_LvKdMd<;wCMDL=k{ZdZ*@O2E;^E_TJ}XdP&DKfD$M3^*R!cQ)v&(198oe28iLVT|R!35n=dq#bXI&dhij1!e_+3S5p)QqZwHWf2yftsEu2 zJ{9lv>3Fa0>=i2sF5}=7fQ{wpcg=WrDtN%8p*hOxW`_Qu3& zr6_Yn9G&y)2pj5j9t-c4X)(H0!08UJjz+czX8-g40rjFM3TN4z@oJle{nK@ z@c@n@pS^dZ!OE+P<*KO4xetvr=p0LKhq*#MgOLiw@Id(phEprU9; zMd6O%XdJg;H%{o-jS~mZvUcZt8Uf&9+cQ{zXSr>7j_P`zx$y<&{ude4 zUcx;D`fj|URl0=1BY+dgKb`J+9*)KrcvZxAFJ|!jqK4Yun8Mxs&o;pZ{}l_@Qx$gQ zSV>)4&#sL>`x1GQkJqE<04BL`okshY-(wYB=)zax3>SliB6*K9Wjt{30c+1w@;rZ+ WHI@aruW{DvIjaL-k8hQ}0sI$Hb}UN( delta 2926 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 LC;o+h { dataType: 'JSON', success: function (res) { let Res = {} - console.log(res) Res.data=res.map(val => { return [val.spe,val.oq,val.aq,val.cha,val.round,] }) Res.header = ['型号', '计划数', '完成数', '差异数', '执行进度'] - console.log(Res) dynamicTable({ el: '#productionPlan', rowNum: 5, @@ -62,7 +60,6 @@ $(() => { }); }, error: function (e) { - console.log(e) } }); tableAnimation('#productionPlan') diff --git a/productionboard/target/classes/static/js/aluminumTank/index.js b/productionboard/target/classes/static/js/aluminumTank/index.js index 133dc3b..b4e6179 100644 --- a/productionboard/target/classes/static/js/aluminumTank/index.js +++ b/productionboard/target/classes/static/js/aluminumTank/index.js @@ -1,7 +1,8 @@ $(()=>{ //班组统计 $.getJSON('/aluminumTank/getTeamStatisticsJson', function (result) { - storageStatistics(result.className, result.planAmount, result.actualAmount, result.differenceAmount,) + console.log(result.planAmount+' 数据'+ result.actualAmount, result.differenceAmount) + storageStatistics('白班', result.planAmount, result.actualAmount, result.differenceAmount,) }); //按型号统计产量 @@ -16,6 +17,7 @@ $(()=>{ //库存统计 $.getJSON('/aluminumTank/getMaterialStoreJson', function (result) { + console.log(result) multipleThreeDimensionalCylindrical(result,document.getElementById("inventoryStatistics")); }); }) diff --git a/productionboard/target/classes/static/js/common/echarts.common.js b/productionboard/target/classes/static/js/common/echarts.common.js index b67df25..80ab7ca 100644 --- a/productionboard/target/classes/static/js/common/echarts.common.js +++ b/productionboard/target/classes/static/js/common/echarts.common.js @@ -55,7 +55,6 @@ const horizontalBarChart = (res, ids) => { let values = []; - function dataFormat(data) { let arr = []; data.forEach(function (item, i) { @@ -174,10 +173,9 @@ const horizontalBarChart = (res, ids) => { fontSize: 12, color: "#A8A6AB", textBorderWidth: 2, - position:'insideTopLeft', + position: 'insideTopLeft', padding: [-20, 0, 0, 0], - formatter:function (params) { - console.log(dataFormat(xValue)[params[`dataIndex`]]) + formatter: function (params) { return dataFormat(xValue)[params[`dataIndex`]].value } }, @@ -566,7 +564,6 @@ const threeDimensionalCylindrical = (res, ids) => { //多个折线面积图 const multipleBrokenLineAreaDiagram = (res, ids) => { let mycharts = echarts.init(ids); - console.log(res); let option = { tooltip: { @@ -1172,15 +1169,15 @@ const bluePolygonHistogram = (res, ids) => { //多个立体柱状图 const multipleThreeDimensionalCylindrical = (res, ids) => { let mycharts = echarts.init(ids); - const xValue = res.map(val => val.materialName) - const lineStoreAmount = res.map(val => val.lineStoreAmount) - const hullStoreAmount = res.map(val => val.hullStoreAmount) + const xValue = res.map(val => val.materialName?.split(',')[0] || ' ') + const lineStoreAmount = res.map(val => val.lineStoreAmount) || [] + const hullStoreAmount = res.map(val => val.hullStoreAmount || '0') let lineColor = "#406A92"; let labelColor = "#fff"; let fontSize = "12"; let lineWidth = 1; let isDataZoom = xValue.length > 3 - let stepSize = 20 + let stepSize = 1 / (xValue.length / 3) * 100 // hullStoreAmount.forEach((val, index) => { // if (val == 0) { // hullStoreAmount[index] = 0 @@ -1228,6 +1225,7 @@ const multipleThreeDimensionalCylindrical = (res, ids) => { lineHeight: 20, }, axisLabel: { + interval:0, color: labelColor, fontSize: fontSize, margin: 30, @@ -1519,7 +1517,7 @@ const multipleThreeDimensionalCylindrical = (res, ids) => { }; if (isDataZoom) { option.dataZoom.push({ - show:false, + show: false, type: 'slider', start: 0, end: stepSize, @@ -1710,8 +1708,9 @@ const inventory = (res, ids) => { let barBottomColor = [ "rgba(2,195,241,0.1)", ]; - const xAxisData = res.map(val => val.materialName) + const xAxisData = res.map(val => val.materialName?.split(',')[0] ) const seriesData1 = res.map(val => val.lineStoreAmount) + console.log(xAxisData,seriesData1) // Res.forEach((item) => { // xAxisData.push(item.name); // seriesData1.push(item.value); @@ -2378,8 +2377,8 @@ const energyConsumption = (res, ids) => { return value + ' °C'; } }, - lineStyle:{ - color:'#45b685' + lineStyle: { + color: '#45b685' }, data: yAxisDataTwo, }, diff --git a/productionboard/target/classes/static/js/common/scrollTable.js b/productionboard/target/classes/static/js/common/scrollTable.js index 9520df9..2f47b3a 100644 --- a/productionboard/target/classes/static/js/common/scrollTable.js +++ b/productionboard/target/classes/static/js/common/scrollTable.js @@ -213,7 +213,6 @@ let dynamicTable = resource => { } else { for (let i = 0; i < colWidth.length; i++) { let emptyUnitColWidth = emptyUnit(colWidth[i]); - console.log(emptyUnitColWidth) $(`${ele}>.table>.thead>.tr>.th:nth-child(${i+1})`).width(`${emptyUnitColWidth}%`); $(`${ele}>.table>.tbody>.tr>.td:nth-child(${i+1})`).width(`${emptyUnitColWidth}%`); } diff --git a/productionboard/target/classes/static/js/common/synthetic.js b/productionboard/target/classes/static/js/common/synthetic.js index 4947541..ef92502 100644 --- a/productionboard/target/classes/static/js/common/synthetic.js +++ b/productionboard/target/classes/static/js/common/synthetic.js @@ -13,7 +13,6 @@ const dataInformationFunction = (statusArray) => { $("#dataInformation").append(info); } const synthetic = (statusArray,param={a:0,b:0}) => { - console.log(statusArray); let info = `
${statusArray[0] || 0}