From 7ba83e087d6ffe4d563718b4b2f2c591a7840d33 Mon Sep 17 00:00:00 2001 From: wenjy Date: Tue, 7 Jun 2022 13:50:20 +0800 Subject: [PATCH] =?UTF-8?q?change=20-=20=E9=93=9D=E5=86=85=E8=83=86?= =?UTF-8?q?=E6=95=B0=E6=8D=AE=E4=BF=A1=E6=81=AF=E3=80=81LOSS=E7=BB=9F?= =?UTF-8?q?=E8=AE=A1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...ven__cn_easyproject_orai18n_12_1_0_2_0.xml | 13 +++++ deviceboard/deviceboard.iml | 1 + .../deviceboard/DeviceBoardApplication.class | Bin 846 -> 846 bytes .../controller/TestController.class | Bin 735 -> 731 bytes pom.xml | 7 +++ productionboard/productionboard.iml | 1 + .../controller/AluminumLinerkController.java | 52 ++++++++++++++++- .../AluminumDeviceDataInformation.java | 54 ++++++++++++++++++ .../AluminumEnergyProduction.java | 19 ++++++ .../AluminumLossStatistics.java | 27 +++++++++ .../AluminumDeviceDataInformationMapper.java | 13 +++++ .../mapper/AluminumLossStatisticsMapper.java | 13 +++++ .../service/IAluminumDeviceInfoService.java | 28 +++++++++ .../impl/AluminumDeviceInfoServiceImpl.java | 48 ++++++++++++++++ .../src/main/resources/application.yml | 4 +- .../static/css/aluminumLiner/style.css | 2 +- .../static/js/aluminumLiner/index.js | 25 +++++--- .../static/js/common/echarts.common.js | 7 +-- .../resources/static/js/common/synthetic.js | 7 +-- .../templates/aluminumLiner/index.html | 2 + .../target/classes/application.yml | 4 +- .../ProductionBoardApplication.class | Bin 772 -> 772 bytes .../common/CodeGenerator$1.class | Bin 565 -> 565 bytes .../common/CodeGenerator$2.class | Bin 1353 -> 1315 bytes .../common/CodeGenerator.class | Bin 6488 -> 6434 bytes .../config/MybatisPlusConfig.class | Bin 979 -> 979 bytes .../controller/AdsorptionTankController.class | Bin 1799 -> 1787 bytes .../controller/AluminumLinerkController.class | Bin 1797 -> 4449 bytes .../controller/AluminumTtankController.class | Bin 1792 -> 1780 bytes .../controller/FoamBoxController.class | Bin 1764 -> 1752 bytes .../controller/PreassembleController.class | Bin 1784 -> 1772 bytes .../controller/StorageController.class | Bin 1688 -> 1680 bytes .../controller/TankShellController.class | Bin 1774 -> 1762 bytes .../TankShellDeviceController.class | Bin 789 -> 785 bytes .../entity/BasicScadaDeviceinfo.class | Bin 1221 -> 7116 bytes .../mapper/BasicScadaDeviceinfoMapper.class | Bin 356 -> 356 bytes .../service/BasicScadaDeviceinfoService.class | Bin 367 -> 367 bytes .../BasicScadaDeviceinfoServiceImpl.class | Bin 820 -> 820 bytes .../static/css/aluminumLiner/style.css | 2 +- .../classes/static/js/aluminumLiner/index.js | 25 +++++--- .../static/js/common/echarts.common.js | 7 +-- .../classes/static/js/common/synthetic.js | 7 +-- .../templates/aluminumLiner/index.html | 2 + visualboard.iml | 1 + 44 files changed, 332 insertions(+), 39 deletions(-) create mode 100644 .idea/libraries/Maven__cn_easyproject_orai18n_12_1_0_2_0.xml create mode 100644 productionboard/src/main/java/com/productionboard/entity/AluminumDevice/AluminumDeviceDataInformation.java create mode 100644 productionboard/src/main/java/com/productionboard/entity/AluminumDevice/AluminumEnergyProduction.java create mode 100644 productionboard/src/main/java/com/productionboard/entity/AluminumDevice/AluminumLossStatistics.java create mode 100644 productionboard/src/main/java/com/productionboard/mapper/AluminumDeviceDataInformationMapper.java create mode 100644 productionboard/src/main/java/com/productionboard/mapper/AluminumLossStatisticsMapper.java create mode 100644 productionboard/src/main/java/com/productionboard/service/IAluminumDeviceInfoService.java create mode 100644 productionboard/src/main/java/com/productionboard/service/impl/AluminumDeviceInfoServiceImpl.java diff --git a/.idea/libraries/Maven__cn_easyproject_orai18n_12_1_0_2_0.xml b/.idea/libraries/Maven__cn_easyproject_orai18n_12_1_0_2_0.xml new file mode 100644 index 0000000..c803520 --- /dev/null +++ b/.idea/libraries/Maven__cn_easyproject_orai18n_12_1_0_2_0.xml @@ -0,0 +1,13 @@ + + + + + + + + + + + + + \ No newline at end of file diff --git a/deviceboard/deviceboard.iml b/deviceboard/deviceboard.iml index bce0c28..26545fe 100644 --- a/deviceboard/deviceboard.iml +++ b/deviceboard/deviceboard.iml @@ -112,5 +112,6 @@ + \ No newline at end of file diff --git a/deviceboard/target/classes/com/deviceboard/DeviceBoardApplication.class b/deviceboard/target/classes/com/deviceboard/DeviceBoardApplication.class index 96d2a479484ada8483b0c41008b62ea0244c8bc9..04fc076ca7bd5a1a60bb77b6ca027d115ab14a8f 100644 GIT binary patch delta 261 zcmX@dc8<;9)W2Q(7#J8#805JaSQy0F86>zEBpIaG8KfB**laTMGE3|j8JIOR!x$M@ zobyvsC+1Xc?qcL)WaVLCWni1gt1T(R!ywBb$H*X%l~|UjpOcuEuJ50em6}{K@vZJ; zdB$uu21N!Y2A0Y5nB?mjHv;WqV&DLhYz&M*l81p4OoG^~3|tJ{K$;UM$_rG*4rH4F zX^telDO40|OsW6+e<096%9%ptt}KvoZoXAnOFdq!5F!5RkzKG*1MG LMWY!QlNrPSkpv#Y delta 262 zcmX@dc8-nr)W2Q(7#J8#806U*m?rOG)HY#ZWDv+oEKAhSNz6;v_fN`7O)g<%V6(~0 z%Pg^DWMJ0N3}a+qan4Uk(n3H6AJ9A* NAeN10U`%F^0{}9s9)th@ diff --git a/deviceboard/target/classes/com/deviceboard/controller/TestController.class b/deviceboard/target/classes/com/deviceboard/controller/TestController.class index 899066d8566efd72b05f7d84add77c8eeba718f7..c23c3fa49c1e4ac1f517f9addc17a52c2f551344 100644 GIT binary patch delta 291 zcmYj~Pfo&M6vTgD@v~4$g(Ch#OxQLi-LT;lEZE_yng&xFHZ*QM1LtrfiH3xQ2k;6m zyoqtXhJ~AXGw;pJ`?244^!2;{1SZ@BST37fwK!tvbL}(Q%qH8{!VE*2vUB(e8F zV_Tcr!azsps3Ia13l)-8n@H1eLRSt~lS(bz(I)RS-b6h4&`Y=M|4Z9Lx_7w7wYOj6 SDQ+7pJJ38+_WTaB=Hd@SWFA2P delta 297 zcmYL>PfEj37{q_?wXbQ@B-W_)Zv}S}3fXk)30#P{bQL8iF?7@5)-#9~v7iVpJb(vq zB;?Ljr4`9Y&fPMNh({Vu8Fsh3CBCm`2O@4M&mDkPVWOf|V zVHgq6?-Lu6rkLMd+?I8nH|3%kU|5TA^p@w9dEiLCBecP`p_G-@Sa%?I;ynzrH^MB9 zUP+d|G}2A{G^Q&R60@!>(ol6$HuMdfYzZ-z?#XTIx7b`-y;EHFLh`J{(h}PaTK<#V XAIY-gTf3f>s=p_{ul~U$X2E0yY||dU diff --git a/pom.xml b/pom.xml index 3f88ab8..9160f6d 100644 --- a/pom.xml +++ b/pom.xml @@ -88,6 +88,13 @@ 1.2.47 + + + cn.easyproject + orai18n + 12.1.0.2.0 + + diff --git a/productionboard/productionboard.iml b/productionboard/productionboard.iml index bce0c28..26545fe 100644 --- a/productionboard/productionboard.iml +++ b/productionboard/productionboard.iml @@ -112,5 +112,6 @@ + \ No newline at end of file diff --git a/productionboard/src/main/java/com/productionboard/controller/AluminumLinerkController.java b/productionboard/src/main/java/com/productionboard/controller/AluminumLinerkController.java index b97b526..4c6345d 100644 --- a/productionboard/src/main/java/com/productionboard/controller/AluminumLinerkController.java +++ b/productionboard/src/main/java/com/productionboard/controller/AluminumLinerkController.java @@ -1,12 +1,21 @@ package com.productionboard.controller; +import com.alibaba.fastjson.JSONArray; +import com.alibaba.fastjson.JSONObject; +import com.productionboard.entity.AluminumDevice.AluminumDeviceDataInformation; +import com.productionboard.entity.AluminumDevice.AluminumLossStatistics; +import com.productionboard.service.IAluminumDeviceInfoService; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.ResponseBody; +import java.util.ArrayList; +import java.util.List; + /** - * 吸附内胆看板 + * 铝内胆设备看板 * @author WenJY * @date 2022年04月20日 10:42 */ @@ -16,12 +25,53 @@ public class AluminumLinerkController { private String prefix = "aluminumLiner/index"; + @Autowired + private IAluminumDeviceInfoService aluminumDeviceInfoService; + @GetMapping() public String index() { return prefix; } + /** + * 数据信息 + * @author WenJY + * @date 2022-06-07 10:38 + * @return java.lang.String + */ + @GetMapping("/getDataInformation") + @ResponseBody + public String getDataInformation(){ + List dataInformationList = aluminumDeviceInfoService.getDataInformationList(); + String s = JSONArray.toJSONString(dataInformationList); + return s; + } + + /** + * 能耗产量统计 + * @author WenJY + * @date 2022-06-07 10:39 + * @return java.lang.String + */ + @GetMapping("/getLossStatistics") + @ResponseBody + public String lossStatistics(){ + List lossStatisticsList = aluminumDeviceInfoService.getLossStatisticsList(); + + List jsonObjectList = new ArrayList<>(); + if(lossStatisticsList.size() > 0){ + lossStatisticsList.forEach(x->{ + JSONObject jsonObject = new JSONObject(); + jsonObject.put("name",x.getXValue()); + jsonObject.put("value",x.getYValue()); + jsonObjectList.add(jsonObject); + }); + } + String s = JSONArray.toJSONString(jsonObjectList); + return s; + } + /** * 根据型号统计产量 * diff --git a/productionboard/src/main/java/com/productionboard/entity/AluminumDevice/AluminumDeviceDataInformation.java b/productionboard/src/main/java/com/productionboard/entity/AluminumDevice/AluminumDeviceDataInformation.java new file mode 100644 index 0000000..dd6f536 --- /dev/null +++ b/productionboard/src/main/java/com/productionboard/entity/AluminumDevice/AluminumDeviceDataInformation.java @@ -0,0 +1,54 @@ +package com.productionboard.entity.AluminumDevice; + +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +import java.io.Serializable; +import java.util.Date; + +/** + * 铝内胆设备数据信息 + * @author WenJY + * @date 2022年06月06日 16:06 + */ +@Data +@EqualsAndHashCode(callSuper = false) +@Accessors(chain = true) +@TableName("SCADA_LCB_DEVICEINFO_1") +public class AluminumDeviceDataInformation implements Serializable { + + /** 设备编号 */ + @TableField("DEVICEID") + private String deviceId; + + /** 设备状态 */ + @TableField("DEVICESTATUS") + private String deviceStatus; + + /** 设备节拍 */ + @TableField("DEVICETAKT") + private String deviceTakt; + + /** 开机时间 */ + @TableField("OPENTIME") + private String openTime; + + /** 运行时间 */ + @TableField("RUNTIME") + private String runTime; + + /** 设备功率 */ + @TableField("DEVICEPOWER") + private String devicePower; + + /** 设备能耗 */ + @TableField("DEVICEENERGY") + private String deviceEnergy; + + /** 采集时间 */ + @TableField("COLLECTTIME") + private Date collectTime; +} diff --git a/productionboard/src/main/java/com/productionboard/entity/AluminumDevice/AluminumEnergyProduction.java b/productionboard/src/main/java/com/productionboard/entity/AluminumDevice/AluminumEnergyProduction.java new file mode 100644 index 0000000..5e61a0c --- /dev/null +++ b/productionboard/src/main/java/com/productionboard/entity/AluminumDevice/AluminumEnergyProduction.java @@ -0,0 +1,19 @@ +package com.productionboard.entity.AluminumDevice; + +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +import java.io.Serializable; + +/** + * @author WenJY + * @date 2022年06月07日 10:51 + */ +@Data +@EqualsAndHashCode(callSuper = false) +@Accessors(chain = true) +@TableName("SCADA_LCB_DEVICEINFO_1") +public class AluminumEnergyProduction implements Serializable { +} diff --git a/productionboard/src/main/java/com/productionboard/entity/AluminumDevice/AluminumLossStatistics.java b/productionboard/src/main/java/com/productionboard/entity/AluminumDevice/AluminumLossStatistics.java new file mode 100644 index 0000000..b8656f9 --- /dev/null +++ b/productionboard/src/main/java/com/productionboard/entity/AluminumDevice/AluminumLossStatistics.java @@ -0,0 +1,27 @@ +package com.productionboard.entity.AluminumDevice; + +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +import java.io.Serializable; + +/** + * Loss统计 + * @author WenJY + * @date 2022年06月07日 10:55 + */ +@Data +@EqualsAndHashCode(callSuper = false) +@Accessors(chain = true) +@TableName("SCADA_LCB_DEVICEINFO_3") +public class AluminumLossStatistics implements Serializable { + + @TableField("NAME") + public String xValue; + + @TableField("VALUE") + public String yValue; +} diff --git a/productionboard/src/main/java/com/productionboard/mapper/AluminumDeviceDataInformationMapper.java b/productionboard/src/main/java/com/productionboard/mapper/AluminumDeviceDataInformationMapper.java new file mode 100644 index 0000000..8da6212 --- /dev/null +++ b/productionboard/src/main/java/com/productionboard/mapper/AluminumDeviceDataInformationMapper.java @@ -0,0 +1,13 @@ +package com.productionboard.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.productionboard.entity.AluminumDevice.AluminumDeviceDataInformation; +import org.apache.ibatis.annotations.Mapper; + +/** + * @author WenJY + * @date 2022年06月06日 16:24 + */ +@Mapper +public interface AluminumDeviceDataInformationMapper extends BaseMapper { +} diff --git a/productionboard/src/main/java/com/productionboard/mapper/AluminumLossStatisticsMapper.java b/productionboard/src/main/java/com/productionboard/mapper/AluminumLossStatisticsMapper.java new file mode 100644 index 0000000..701d2b5 --- /dev/null +++ b/productionboard/src/main/java/com/productionboard/mapper/AluminumLossStatisticsMapper.java @@ -0,0 +1,13 @@ +package com.productionboard.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.productionboard.entity.AluminumDevice.AluminumLossStatistics; +import org.apache.ibatis.annotations.Mapper; + +/** + * @author WenJY + * @date 2022年06月07日 11:00 + */ +@Mapper +public interface AluminumLossStatisticsMapper extends BaseMapper { +} diff --git a/productionboard/src/main/java/com/productionboard/service/IAluminumDeviceInfoService.java b/productionboard/src/main/java/com/productionboard/service/IAluminumDeviceInfoService.java new file mode 100644 index 0000000..3d81865 --- /dev/null +++ b/productionboard/src/main/java/com/productionboard/service/IAluminumDeviceInfoService.java @@ -0,0 +1,28 @@ +package com.productionboard.service; + +import com.productionboard.entity.AluminumDevice.AluminumDeviceDataInformation; +import com.productionboard.entity.AluminumDevice.AluminumLossStatistics; + +import java.util.List; + +/** + * @author WenJY + * @date 2022年06月06日 16:23 + */ +public interface IAluminumDeviceInfoService { + /** + * 获取数据信息 + * @author WenJY + * @date 2022-06-06 16:24 + * @return java.util.List + */ + public List getDataInformationList(); + + /** + * 获取Loss统计数据 + * @author WenJY + * @date 2022-06-07 11:00 + * @return java.util.List + */ + public List getLossStatisticsList(); +} diff --git a/productionboard/src/main/java/com/productionboard/service/impl/AluminumDeviceInfoServiceImpl.java b/productionboard/src/main/java/com/productionboard/service/impl/AluminumDeviceInfoServiceImpl.java new file mode 100644 index 0000000..e867f85 --- /dev/null +++ b/productionboard/src/main/java/com/productionboard/service/impl/AluminumDeviceInfoServiceImpl.java @@ -0,0 +1,48 @@ +package com.productionboard.service.impl; + +import com.productionboard.entity.AluminumDevice.AluminumDeviceDataInformation; +import com.productionboard.entity.AluminumDevice.AluminumLossStatistics; +import com.productionboard.mapper.AluminumDeviceDataInformationMapper; +import com.productionboard.mapper.AluminumLossStatisticsMapper; +import com.productionboard.service.IAluminumDeviceInfoService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + * @author WenJY + * @date 2022年06月06日 16:18 + */ +@Service +public class AluminumDeviceInfoServiceImpl implements IAluminumDeviceInfoService +{ + @Autowired + private AluminumDeviceDataInformationMapper dataInformationMapper; + + @Autowired + private AluminumLossStatisticsMapper aluminumLossStatisticsMapper; + + /** + * 获取数据信息 + * @author WenJY + * @date 2022-06-07 11:01 + * @return java.util.List + */ + @Override + public List getDataInformationList() { + + return dataInformationMapper.selectList(null); + } + + /** + * 获取Loss统计数据 + * @author WenJY + * @date 2022-06-07 11:01 + * @return java.util.List + */ + @Override + public List getLossStatisticsList() { + return aluminumLossStatisticsMapper.selectList(null); + } +} diff --git a/productionboard/src/main/resources/application.yml b/productionboard/src/main/resources/application.yml index 6f73b0b..e050040 100644 --- a/productionboard/src/main/resources/application.yml +++ b/productionboard/src/main/resources/application.yml @@ -2,8 +2,8 @@ spring: datasource: driver-class-name: oracle.jdbc.driver.OracleDriver - url: jdbc:oracle:thin:@10.100.71.101:1521/orcl - username: aucma + url: jdbc:oracle:thin:@10.100.71.119:1521:ORCL + username: system password: aucma # url: jdbc:oracle:thin:@124.70.0.226:1521/scada # username: aucma diff --git a/productionboard/src/main/resources/static/css/aluminumLiner/style.css b/productionboard/src/main/resources/static/css/aluminumLiner/style.css index b7637dc..0cf9a12 100644 --- a/productionboard/src/main/resources/static/css/aluminumLiner/style.css +++ b/productionboard/src/main/resources/static/css/aluminumLiner/style.css @@ -9,7 +9,7 @@ body { .dataInformation{ - border: 1px solid red; + border: 0px solid red; position: absolute; width: 24%; height: 22%; diff --git a/productionboard/src/main/resources/static/js/aluminumLiner/index.js b/productionboard/src/main/resources/static/js/aluminumLiner/index.js index 75e11eb..a0cb7d3 100644 --- a/productionboard/src/main/resources/static/js/aluminumLiner/index.js +++ b/productionboard/src/main/resources/static/js/aluminumLiner/index.js @@ -1,8 +1,23 @@ $(() => { - const statusArray = [0, 0, 0, 0, 0]; + //数据信息 + $.getJSON('/aluminumLiner/getDataInformation', function (result) { + const statusArray = [1,0,0,0,0]; + if(result.length > 0) { + statusArray[0] = result[0].deviceStatus == "正常" ? 0 : 1; + statusArray[1] = result[0].devicePower; + statusArray[2] = result[0].deviceEnergy; + } + dataInformationFunction(statusArray); + }); + + //loss/aluminumLiner/getLossStatistics + $.getJSON('/aluminumLiner/getLossStatistics', function (result) { + loss(result, document.getElementById("loss")); + }); + const syntheticDate = [0, 0, 0, 0, 0]; - dataInformationFunction(statusArray); + synthetic(syntheticDate) //设备OEE统计 @@ -13,6 +28,7 @@ $(() => { inventory(result, document.getElementById("inventory")); }); + //生产计划 $.ajax({ url: '/storage/getProductionPlan', @@ -48,11 +64,6 @@ $(() => { } }); - //loss - $.getJSON('/tankShell/getInventoryStatistics', function (result) { - loss(result, document.getElementById("loss")); - }); - //设备故障排名 diff --git a/productionboard/src/main/resources/static/js/common/echarts.common.js b/productionboard/src/main/resources/static/js/common/echarts.common.js index e4c39cb..39b81be 100644 --- a/productionboard/src/main/resources/static/js/common/echarts.common.js +++ b/productionboard/src/main/resources/static/js/common/echarts.common.js @@ -2025,7 +2025,7 @@ const loss = (res, ids) => { ]; let Res = { - datas: [ + datas:res.length > 0 ? res : [ { name: '>30分钟', value: 2 @@ -2038,7 +2038,7 @@ const loss = (res, ids) => { name: '0-3分钟', value: 9 }, - ] + ], } Res.datas.forEach((item) => { @@ -2091,9 +2091,6 @@ const loss = (res, ids) => { } }, yAxis: { - interval: 4, - min: 0, - max: 12, splitLine: { show: true, }, diff --git a/productionboard/src/main/resources/static/js/common/synthetic.js b/productionboard/src/main/resources/static/js/common/synthetic.js index 89cc680..e176fe9 100644 --- a/productionboard/src/main/resources/static/js/common/synthetic.js +++ b/productionboard/src/main/resources/static/js/common/synthetic.js @@ -3,12 +3,11 @@ const dataInformationFunction = (statusArray) => { let info = ` - + - - - + +
${statusArray[0] == 0 ? `运行正常` : `运行异常`}389kW${statusArray[1]}
4563kW·h2${statusArray[2]}kW·h${statusArray[3]}
`; diff --git a/productionboard/src/main/resources/templates/aluminumLiner/index.html b/productionboard/src/main/resources/templates/aluminumLiner/index.html index 01cbd92..dd1ab54 100644 --- a/productionboard/src/main/resources/templates/aluminumLiner/index.html +++ b/productionboard/src/main/resources/templates/aluminumLiner/index.html @@ -15,6 +15,8 @@
+ +
diff --git a/productionboard/target/classes/application.yml b/productionboard/target/classes/application.yml index 6f73b0b..e050040 100644 --- a/productionboard/target/classes/application.yml +++ b/productionboard/target/classes/application.yml @@ -2,8 +2,8 @@ spring: datasource: driver-class-name: oracle.jdbc.driver.OracleDriver - url: jdbc:oracle:thin:@10.100.71.101:1521/orcl - username: aucma + url: jdbc:oracle:thin:@10.100.71.119:1521:ORCL + username: system password: aucma # url: jdbc:oracle:thin:@124.70.0.226:1521/scada # username: aucma diff --git a/productionboard/target/classes/com/productionboard/ProductionBoardApplication.class b/productionboard/target/classes/com/productionboard/ProductionBoardApplication.class index 16287161cab344aafa4a91081619a14b0c858ffc..55869ba847442c51725b2936a4b01c564967b70d 100644 GIT binary patch delta 236 zcmZo+Yhg1u^>5cc1_lNb23al!76wsv1~D!MaRv!?21!N+Hk-`6%o00B24)S-Fh&Lz z=lqn^i6xDbXEE+!3sl7pWSaqLkQ|2)lhzIf=5U05E}#qp o13yre0FoIT417Q_2A~+wJVqb~WSt5cc1_lNb23d9nrpZN&#wIL`3<6n+Wr_MZiFxVz{z+M>$t8>oY&MyB znI(3N49psuVT=qc&iN^+Tnx+%oIDJy3~Un(8acQa1Q~?c8H6V9W7K8kVGv;uo&1_H zd*a4DYz&GFKz);AnB?m@HUceUV&DRjY(PN<1|9}(FbQI_0(rbZnv;Q#fgh-f9mqBV z(jYkwAx5no3(lC2v7#IMR CBOZAG diff --git a/productionboard/target/classes/com/productionboard/common/CodeGenerator$1.class b/productionboard/target/classes/com/productionboard/common/CodeGenerator$1.class index 1a06db55e877ff5c2eae3de1fd347fa74db741dd..9be2d0f8e9306bdeff27c8166457f57a56c9d862 100644 GIT binary patch delta 261 zcmdnWvXw>q)W2Q(7#J8#7$mqDm>GoF8HCvxL>L*^Y%=pQOY9gKm^C!R7#Ucc^HWkM zPBP%(@yyFhEppCDEG|x+xW9l~l!rl#L7azyg@JV2lz=GZk96&Y?L;(XQ12>Sz2;{>wYlHbf tF?5aoNE#V|8r4BMnHhM2BohN413!>vVGv*tWZ(j_xPWGY9L2!E0RT=|8q)v( delta 270 zcmZ8by$Zr$47{|TR%`wLoy4)$K?l)ATsnz^o4a5KrB<-+K11 za=9dz^R3JRUNbMzKNDJ z%iPfv8PP(5E ztJ!v9-nrU%ZuvwJ^xFR%smbFD@((JCY*JBJM$86LH+s?O4iZtMURK8iLP@+) zOG6VAxTIr}VDAS9f!_|IJ^yh(Zbf?*F5?P8KM2}`aC4V1U*0&uY(Co$oBhV(siR|B z!$b)M1Ji^_KZ%=uCul`}946gC+zb6XKI8QXP!f4 zgtDw_GAwZz;l@WMD3H$=)5*43dxs6%J~f8-e+&<|QRgw`7#ZSb4$QifYTU SqT N!g~THNIp2BZ zOHM7ie^K%2R~|hM;8ND4A&NZ;KH$Lz@gWTkd|1J)8eG_;;v*7oQ*pb*k4lR>G>qb7 z(o9J5aSflqoeJ(!akq-S8Uom-;2sUtGUmM+YGs&DYUKGT757Q`(<=6BMPlxk(g78p zk$6zLd{)8dG&D(<2PA%8#TO)gQN@E24@q)ZS{_j_rlD0@J|yv|iiagWA`ic$z}B!> z9*!%R&~TYd=9q?Mc+`s$9@9{K9LJ^U6AHepp$mH?c~WYgQt%ZG-Pq&7SMfE;eO;1o zNb*fdzNO-64R6B<70+ns#kZyMq$J-_@Ld(pO7?p))b|zqK*O~%cr|_~$&VELSiva< zA77JBo7Re?k;|F6(caq8^zE}4oQZ6nL0>m)Y&RlFBRv%9&s&M~P$wPb6In6l?5y_n z=Z)BnJw|qeF_<)Ia5OIQs&nzfqxvI``5Xh-#1Je;DC85#NPo3A*9vMG-T%6v0kmDElCEauWv3(rB!gCzI#%~ln&+!6IbG(Q%9B1*Ig5PqS z!|z1IdBtqX^>zOj4;?tO|L~c8x0GY-lJ}fuSRf4dY?0A@B3p5JFN0dhnO1u|VR8H( z27^D6vtp5ykw`~m${c^dOAM|ZW_oyp<2+vCco~1BJm=*4O>281W^(*VYX6MCh?DLv zQKjTu9Dl_Hab9U^lKd0@VpvMaw1^{Bz6A`GSt}DS#PW$u zdN5;HagKlEBHa_qq}p>aBTnA0;3CJX3=A!!fq9PRh2maqMu?&6jplY+mNBv}k)x?e zo5tovR5xP^b8zNl6$*24=4J|KD)TTbE8pMl^ZPi{n3proe6MK_Rr_Zs%+FaR3vd=> zI%idqRI?h+YFUjqQ`y|bu|+nGwQ^R+>NyLsX`D@GH4K6OUl|5RYBOguq{Styfnj-h z5>EviHO?B@OwMLu)2J`J;(vVC4-T6#D(1h#jpXuXiozw*3^kLhnaD)eq_c%QZKr9Z zI>jb7oin(NY}QQ28QR3cK=tUkpt`(}NXAX8Q#3f5#9Bv#$U15@1|>^NolmC47^|N~ z;x;4KYwo0Lo%80?@>ZnF!a__8N5SgzR${JO)EblR=IAV8$CHQ-(ARW z%UI&1>#88F6Dg+lq}NE9Vy%0ZxI?+Vl|FHFveHUyH!XQU(MZ0Ib}{|B)JLDi9T_Vw zvg*xZgJ;WB{651n(|Pf{XO{?gTjU*Yj9*S(Z1gsWo4iZJgm()~(@k+#Y#n0QHcvdM zHj8sr0dco`v1|{WY)mB?dS!dWm=YH4zDjYWuPB24ZV~lw6vzCx>a?0NL?&5Cr72bV z^o!xjs5ns>QfaYs*<>P5iPVaf6k{;3S)2$oO%+~#5c({0YhtIE7A%UFgSQo_yXH+%}MUPgL-h9AGD^1S?(YKQnA!LNEmT|C$h;iV0qVBS?4(}kIPa5C`Y$nMgw~(x) z^I25TACM`*F>n;laa61;!8I@rcTZ~x#WJTWHq;jS*F8jRXhfq&;cYFmJZ!_a7eNAl zZ`%Ya_rldSRzhH4Dv%z0&0U{#A4k;_bf>eN=UmDMXoMFtQAI^Apznwd%%(@U8LNw! zgC5Mqddx2u(n86uCWk@9$eq$goH&qkoQg83%qj}H6+=|swz8gG#Cin@1;ea07;@QILgk=LErEMISA47)&(U3bt zTmY2HZ_3$QL&$k8-v*;3@olf8ys^8&Whw0Ged?7&W%(SAIL5xk2Q`yd{` zyU9+$VcduJ;Jr|BitKMfktTbd*8F|sr{Vo{k6iu3OUh<9liAb`r0K+gTgr4dHWKP2 NFC(PP=%+^+{{#FuI*kAT delta 2419 zcmZWqdwdkt75?sSc4v0>W_Po@5Y`}&kRas2N=TQOQ%X)Oxc3AzIIWm~mk`qUQtu-MY7r7!zb+jD2(=dZucANSmQ z?sv{T=R4=#xvTw|_Q>O}KYSd(GS;NP!>~|nR~Ifdh>J-r z*2*yxwG5t2j$uZ(i_PSdYjTB>-EUi_G1{Raf`oK>ftc3n{0e3>)QW_HuVfO*4tC#2o@+WSrjtAFERU=0e7KoR$OJgb)QqX4~xn1g;Ia<&vnt~0Q z3~Mn*5*LdrgL8r!+ObT*QihmV7mTguxJ3F?3RWg(XLB;D6&!EErKHmrz7so6zJ6Ie%naj&|?$^j4fGH+~HYDUau8H z{-u<~00Ig&Ff6CDo5iDkzCnX7X?r_^S}K~>;^B;?QSR^H*n}`caI0zeS^0u#**i51 zVT%Iee>$KN07n|bl>3;GEtzYtXT6*PL3LxTvFCphOmtzgAq~B zH?^q9GWfQexe+>1M~)+p5vpp@v^z`owmikB<3RFp<+2O6aC}UHf&{vjIL*07@4_cI zZauH>Gm6FSd23jP^hu6S;nU*f>YFH}+Za~3#X0M(Zq%?>hV>bSaKXwCm(q47pWBi* zq}^V8j^hsO7lqJJQpF^3kj{@TE~brPiefMB=J-7JS9t3)EHg)~H-Im2d=dAEQ=tj! ziZ2OUZKK=|%0s>)Ce_*X3htvGf8&;RT9&c1J5wa%L$Y^{kV$K(UBh8KC@skFYz2PO;zj4XG^0w zDlOeDx%WKBuW?#D71dqnZ#aI7(+o2SdW~5mc+R%+*{o^x+dH$=4!;vlps`K^!;2gt zgjKxEz*^-6I?M4#{7I~gwYx$5h2yVyMHFJ2-R0jo{y_(wj5V~W_!qr|qttfOc$MQd zyi)0B_geQ^=JlB!lCJ-7^2~%MKJHhTm(e>SX+0KKM5i_@tTB&dZGibXQY zhiT%0Mx)#YY7wN7R{$idX%&zp5K0<9PmZccX3B^R9zk>pv%1Tu8=S)Ug*~lu7M(MN zdCd;yM=zqm!6F*J35~<#{qquw@d~Nra(KYDWu0C&jWyN+1YfjK< zUN^!86bUewBAiEWTs_**fEAcePjVwYu;Wd58y27&i`*2ND`ArEYBCDadl;fUx*b@L z9`sT=UF2>p?RwGYBG_x_RuEC>SF(;2K1Q}O`D@T$N#3)Yk|%mtPZP@%`>lFw^acl`daKt#fflxdF};QO*r}JXOH!ArN>oMP>)?Gl z$qzXAkd%8I+3OZa^$U&0r?-N9#dl6N||i}uHT4h|6DAOXId@<;DY zDPn&yG8JuEO4)f_P4hzU8q!NoKYVRJG?N_L<%s7+nr?S;7#KKg&2)mp`SPfNU zCR@RxZtd3LRTg7$s`dn)WHZ=Is?j9wWwmS;we$hp!xDs3=>6NzE?{*~=@lul+3Z59 v>{)DLbJ$#HY#yB>oBq%xF07tll^$T6c08=X9p|$~l2JPUAW8Yj$m#np(+f36 diff --git a/productionboard/target/classes/com/productionboard/config/MybatisPlusConfig.class b/productionboard/target/classes/com/productionboard/config/MybatisPlusConfig.class index 09ad92a050d3b04a3c8b8677c9fcf11db05d2152..1bed637205172258e52833ad7634b46f652a2cea 100644 GIT binary patch delta 305 zcmXYsyGjE=6o$W<&F;i?qpQ*NUf6jlw$M^6l2))2#6ngLk{}T@*yas{B`=~?KtZf+ z^Bz8di2rOHnDd{@f4*TRZsHEUe&0TTL$+c<)*S0G*6W62(-0kX``y8@A=ueHGt}Dm zH=Xj~)3nO(=TTyR!h{Gn8k%<5$cKisS3DK@UD3bIPp^8N>jB%;1op=w9!{~YDwi5* zxHrbUR^u7PsA{If%9E*qS!F11Feiv#Zb_{)e#f4V2~PH3R9#v;!hZmoGA>n^Y-;_- i)KxW@7cP~{Ker&YELO2ubu$9(!m@5A$I1ofk<~xxq9L0A delta 312 zcmXYrJ5K^Z6otPgg`GmNg~V7GLbNb3Bz7joYE@z&1`CL-4S!&>e*`NM zNQ{+*Ex*Lp!f60H!}r7epO_~UK*9iCmLd-sqb_LqA>Ba8q5 diff --git a/productionboard/target/classes/com/productionboard/controller/AdsorptionTankController.class b/productionboard/target/classes/com/productionboard/controller/AdsorptionTankController.class index 1cd24e5f5fd745bf6ac80ab3e5896c2b272f2e1f..ed2c5a8bc0d8914cf746cfbcca9099ddfbc71444 100644 GIT binary patch delta 526 zcmZ{fO)mps6ot>7cg9RVRn?R#)z()k(M^*^#6M`_2Z%%oqLGRa+b*pqv$vL5Ac(MF zDe*7tY^^ooyq%^bbo1VG?%aExJE!r_Sn>7i@d-c$^I_P?J1B%OfTDwG2QxNiZOnP= z74NxinS0Hh1OGubl)&{bmFr)qjQ?VuTTz4&@y^l|4nj9s<4~mS=M2|>Q}0ssKB_H2 zqESDom-p+<-SX;YV|(iud4g=R1%}?EGN~EGH%hm}zOY70_mEQ3xP!W;H4x()W(5Yh zGK4r)G#F(kK_~1cIiX|9bmRk8=@#mWB1jnMY`DL+t?u?PXY|(;t6-#;v_hw;R?@63 z`~(H36rr%#33G#?ZkVETTl_tN&ed0?sMBkZBaC9K!^r%@u>LZZ$*A>X^g)bkM1j;S QNd_i*S4`69dY4Rn15_F^-T(jq delta 548 zcmZ{gOG^S_7=_O_7q8=JQ)y*4(=He|iv$ zY;GS`%SVk?I-d(cMp%O%fdC=`V^*nNyEtpuHD||iPE6Y=m9K&jh-y&bYwdot_r!r5 zz)YtroeNd5ol33!B-S`u=%f`P+Hc~vi4<34rVxX5gF$k9)%A4_#(E>m?MJ`^RVg j51-Vq&jwNJ^eO)G8Mbk=07(fM@87sDTI67<|ElFLui-Uh diff --git a/productionboard/target/classes/com/productionboard/controller/AluminumLinerkController.class b/productionboard/target/classes/com/productionboard/controller/AluminumLinerkController.class index ea5463e15e31f1d1d0ae39307966bae6e0cda30e..4710204f3dc68bb0db5b85413feaae358c3601df 100644 GIT binary patch literal 4449 zcmb_gi&h)g72TJYV3+_AF?rU;Dk&Hg1|wm>IF123F^RBKW8*lk+gwQl9y6LzW=1%~ zb+8P)$m0(h zUcfuODD>fZtgBzw`f(laYWO~GsL@6WH#PL)oqpWHW|~4jP@{Xj_+c-8l)?uZ1{HwR zP((>h%Dphu#8l_DQrJ%6zCcgaGqEU8`75t#aAi zwMyoiv*m7>o*D`)6iRNzsCsU>RthZFDZ0`t8-BEHtSz^bRIoQ{PGD8cP0P26wz=#$ zZXgwguV7to+wiN(f-O&0%!jVGV-!v4_{Nqj1+KSe$XLKwt_AKx%QMS_?YUq%R&Y_E zbK=aVK-a2Urk#TY%Q3IjDn-+~DXC4l>XxLvDLqTg>x*5%eT(WB6TK?APT;w=ZFeanYI|XbWzc< z%jhB9!$y(^=Z?+B4b!hOG|UyZyhqpp+x7ho6)%2ZmFQl&c_E@=;DPTt*NYF#QV=cN z{6F|wXwn=ynM;I~wpElx$$<3(Wr*?i#`SBFHKEiqw7;~&I}U>{1&dxNmYNj^yv()O zRcT+Z1=U)xvbWB_wi)0SLqgycCE5Pe2zS?O|TT%|VVSZRM{f0a+VDLGG$v8|sI!ccd#?0Irey$}YWjt}9Hkrmes z{J@jdh#G&e2mTNOeriM5)$tG?>Da@^LfDVAzKlvme&+mLZM6RLDC0?IhuJH0e)McM z<43tYb3U`NIy*a`$!5aDpf(rP&*N;OazU-L->;&J>K`8_E_K_$#lo`DgHAK zhH)FK?!gOvf-a8IjP6a|N5vtlpTb!HD zor|~X#3}brsfOc-*UXHloKNAAjvr%O$76h=<5M;I34SUtpVY7%qqOr$9P~y}7H1hc zctcTvIhTa~pW7jpXQttn`WYdn_xp&(f_}0s3E@)~&;wUho2Z8q_+C9@hmBpm1SPg7 zCul}^@bR^=lQ=V~3DpqjW`<*ximc${s$d^ju21wxe5~W|jo{$lQCIQM1#@0?j72 zk)e7w9Tm=Y*HFKi2<*;2m@Jpu(EWZ2KiBaK{6@zcxFnD{h)~Pfb$3jo5Y}*}a9MAg z1^QXx_Gc;ljwBaccc)fm(5yLZXIE|M`z9;k-y7|(<3+{bs&vY>>5oN%OASsPcC$(F zCTn5i@#AksDvy?JjOaS@sfk?C*>J={ z3pNTI_waj?-xR+r&-{Iwvqhd2{Ps^iftXBp{285Ja@v6me{1}LkX;1(E=PKF6k~Xm zGrnJp^MryiI8!j)lYc_z7aT+YN+$?)AlzLS-nVFi`vPZTAd9n3u02bjuBYf0C`|nY zJ?mKo+8J6k5FVJObq4=*oC(24BcVFDMkgmRMW{gc#ZPP{%CKSBV|IGI};om zclp-{vCeW$U^X`A3HQ6WHXWIhqB-B7_s$datxr9LCh$iLPG!GFKkyVfbo2Qn3h<{={g$4eX;M`)}x%07euMsC4pB-NsJN zmdI!le;4X1UQbXla9Bl!Dn9uyRa{gmhBTE}Xow2E8c|fljDLecUd+&XHvR0>S4e+_ z;oI5ta~z&f!^!MZjCA1kL3EGMCt#WXqhbZaSmoom%!t0y5KrUb9q`Fhv!{6S zGF4yUYF`KPLqk{|QrG<^7dm*g`(bsJ^EHY@q4hR?&AG<;FY#OaitqC_=PDrIqxE<2 HKJNY-UecDI delta 634 zcmZ{gKTq3G6vfYVY{!^1F@ZV_|HFTR)O0|g3R;PFMMBEJ!eqd$jDih{L1Ky++Jy+^o+T>l#Tkaxb{eY*xQkC`kq!J<0W z`qY_>yIJT0XU9AAY7H-ZUt8PU@wejBz0r!f9E3sqT9BEUT^HzYqix?t2HiPiVOe;h zUYM@k1wkPP1E#9WNq@P15XQl-zaBJ$&4#}chEeRrK@>LC4|%B^eb_b*y~cqr7_6xt zeMlD6PnmVZD zP+@`$cN1ty3|2a8M&#MW?iJ_4ySw@ocD0zhLjIDi28U-peOlm?9@r@G1afUTis)r0 z=)+U0UDhVM67K|CV@+%eM)eEwpEzj~6Ah?-AQ>Ifvks|9b&1OI2Be984E(09aHg>~ zii4|j572hZ34R)9;O8maO@*yL^bFhKG@)SRKR%=X@TolZSte?UKC6HEJhn-)00SB( P(tnd|G|9nKXRGOZJNZn` diff --git a/productionboard/target/classes/com/productionboard/controller/AluminumTtankController.class b/productionboard/target/classes/com/productionboard/controller/AluminumTtankController.class index 2bdbd273ca0858fc7546d69d0953e399b6341108..dcb27784ba54b1484f08bd3fe0771ca3c8351a1f 100644 GIT binary patch delta 527 zcmZ{fO-lk{6ot<_AI+%aN0XU-n%Wlz%_1Qp`UgUrcC~0K3r#1YjCS@50-4{?z9U zvGw$!YZdR{*l&v+|4Lo3T;_#oI4mSTGT~ODiYBe^tL) z@s*}PqUxTzPR;cWosHdUdG8Eak_^HH6gf|&Q8SaTMYqbnV2ujIxuU6YScYkTDJ&`G8)yhk8R1Bn)&mQopwK?)DI8$c^~e^)Dbg72Fvk92=zke&WR&_b`XI(7 UB1h^3NeU)=S4`1odY4Rp15;r%eE%1$3)YtCs9qbSdMuc p3XK2bGx3K{y4Pows1^DYe);s;xVr#J30d!N+!sx;G2MC9%ok`!Hvj+t diff --git a/productionboard/target/classes/com/productionboard/controller/FoamBoxController.class b/productionboard/target/classes/com/productionboard/controller/FoamBoxController.class index 7d1850e719cd266a7b7cdda4e559e66e1fa73269..02d576c68aab4459c8197493b2fc1c65dc2a48f3 100644 GIT binary patch delta 522 zcmZ{fOHRUI6ot><2QAPFBBJ6G@D)sKj7*Gi;+Vvl6DL*$0#O>HF-#0=Ae}jO0iqHU z2QI)BxB$1{R6T!7&_tR1_ng~%&v*N7zuAS?&*v8aC9K9^AZH>UMFa&Cizb!~EE`zq z?3X&-4_&J_tDb)=4*hF&)4$hlvKC^93)of9J=^tKPQ7_jX<0B4eK3@B;rG<9PGX}i zkZibDu5;=(YtG(LqjG$S93cj|0*aic(x@57*P`2EU$DlDPY}hF(u3NiRbcatu>uLM zjADe!3P;&V(g}7`oRBdN9r=J>e1v*O5hg@}jm)oYy}v!i8TmEMDlk4s+M$zFJ*Ab` zeuBbN3Q(~ggk{2^ewa#^Y4i64WUjm_O+9e{ae+xp1&r)J4E---n~d@>#t_7`MC3`G QAxXjP;EFl=`N1U%-_3S16951J delta 541 zcmZ{gy-osA5QWd|56jOkAS$T%hoBftToUQjLTeHW3kwsIRlz_MVl;-1+LF-l7!oul z7CwMa-~$-nz}9$nQ7}Q9xifRmd}r=`wcf1g%jeTGfC5$xD1vj38Gc!#<90Zu%|HBW3$DzA+*0{hF57Wyzar{p0N2tS6R+`8wwWw@mc)CCpGG` eMbsvJiobkDZQNaeq=Jn1H|~p;*;pC8D*FXQ7cv?E diff --git a/productionboard/target/classes/com/productionboard/controller/PreassembleController.class b/productionboard/target/classes/com/productionboard/controller/PreassembleController.class index 9583ddfef00812256f24b45837807008cdd6951c..2b4b644164efcf021bc8b99f2bdfc09d2041bc0a 100644 GIT binary patch delta 526 zcmZ{fyG{Z@7=_R5g$CU(+Nft(f+k8c|9@uw|9ofOV{ftI>*sS9KpD#s7|5F_gb_l~#Jq_G1B(Wh+B@a; z(}%9rnujNTN9_66>YCrxZgLhPhzcZ6&t1p!+~aD)wQJ1-_sW8a@LgIt6aI_()sC;X z1QK=U(y<#(^T^(=*4_OJXpd0JE(ycev|(j!DEr942rrBo2(8DRzD zTuEYtofVAoCPBqeNO3~i*i_^Ldg&f&hfUxR>TP6yZR`E*G-u>%hE-s6;Iu_0sd`GQ zto#@SQHoHp+B3@rLwz%qD%;}s1f;J_m0>@&3*liL6FtV{KMegZW0Q=^FvbwXltdIr RohC`a%pgUMdUlXx?i(>OG-3b% delta 545 zcmZ{gyG{a85QhKR3)khgDyVov@DfPeLOQjuC$Xe3FwXG^bDYgRX-F#v3*@k`k@KpHT%-G>UQJE z+Nso>{flA7P!o6d2i?pW2vfpZmvAZ9>^uU-D=lx0s1V77a! zoQbYg8;2*Io~*OA*iC67omaVOA;S@sD+m;Kj+w@s7K}kwTkH$ZaQ+dYylM0hy=SQ) z&KUJZV;o5!gcu`W^yM%y#!4`b396IKeXLSEU982N*cSBs1EP2A^ogzpR1Zn|fHXNE znN+8!oZ5vnF^%*$b(=kfxo*ys3PWgr%^a_?TzJicCp}^7hpw`m^EMRB|KqdphfikI fXOpN6`jme8jM})n0BHp|?{C}}EwQmYc-6`mpR+Vk diff --git a/productionboard/target/classes/com/productionboard/controller/StorageController.class b/productionboard/target/classes/com/productionboard/controller/StorageController.class index 19b524937bb982a33cbdfb3766926ffddbd07edb..6e63d3b620a123c7af0f7e0e5a28717a84caea47 100644 GIT binary patch delta 411 zcmYk1zfQtn6vfZiKeUuqY7taW0d=ZFW5VK~FQADVi&ND~Af_ZjjGM1u!=UjgBx+0? zd;k-7AHmTlFrKd^)#cuEZqNPQuXoOk(|Z4TeFM2{Lo zm#+2Wv*F}cbSEF$eceV8mVh%F4==)A6!hcM=*orx^YL4JDoJ_!TEHEImtk-o#=YS1 zco3b8(I&aTV*-lIQmNELv6kp|I2Y_C{{_PLlxL_@S_L+%#SWCA!G%L*XHm>?CXp`Y znUI)(j`soGe}eizkr4{%M)lveKHK(~kzXt90t-25mrh>QJ?&uY50pKn!PoDnuv!+H k!Bo2H9)C|jay{A#b?pdZghecIreHa(^*qs_U&&LezbDfwWdHyG delta 422 zcmYL@Pfo%>7{%XA8CpvJU{z2-1vN3Li!Na6!nnl54Les=D}fkDgcx^RLDGfBQ)twf zxbOg;z$17H<7=z1nR)MrH^1`WoskiOs6Rc-Mo9xd-t5*eec$*m3#hrd;(CyYy>(o2C`vjXri}Fp3!BR091-aKeu%Qjrg6g*(V=HbFwD?MVG{YaRCh zXZ+VBtH5A4X^G0GY6*2^?k6Z%B@c=Dc9SOFh!YHBq|HeE h!_fXRmdRM_#pr<;^$}T8(uxblJ<;7{@*9RlHf;a^ delta 563 zcmZ{gPcH*e6vfY->Gc0URnyWIRkUg`Ar&jZUP5AFVKpdPO+{2=A?asmW^3UikP?Z7 z4`3lagO!!7oj9FRP0HrId(S)XckX+yf%ib*>GRqX+$v&4Ba(F!?4tT(xAAWe|Up#(~s#>&B(v0Odu zmZ%GNU;ZB6e8hi;;0;>^VXi^@YLr)WcoD?_HGjvB2nN{+)giid)=qXY?rp5Wn%D-k z{4IjlR64}A2N>xgXH=qCj diff --git a/productionboard/target/classes/com/productionboard/controller/TankShellDeviceController.class b/productionboard/target/classes/com/productionboard/controller/TankShellDeviceController.class index 60b92d429518495b89aaf3e4d2e2dc64608fd480..0128a92f82134ed96c62ab53b0e61331b99e1c59 100644 GIT binary patch delta 293 zcmYjKISRs16r3MTqA_l9Un1D1Nn;}(!op5Lh#K62jbiH&B!%}-Py`VV;Gx9%!NO+# z%$wz(v{19(pT`S82Q33CY6;Ynh@+vSslyJ(oy+qmY!eA21#&xYvmPw`AaG~?emV6` zXwbuS??7+m?L9Z}HgmT>S^3i)+T2k&EuhF4nL^GXqCwS-G>~%c5RRqX5W7U76w#mw zWH^z9NoKOdDAK&i$t-eA$QhSvC{5M5B6cQGm;=9*$HHG*{k8Ky*NU=*2#b(ci`^36 LGP{)##1_>rt??eY delta 299 zcmYL>%}&Bl6okKfp)HhBuqysy;RGP^ETceA32p%dZZZ>CS?k#qT)#tpU#rL45-x=p!}^Uz8^2-75b zC*C-ys~fv&Oq~v)+>WwHMd2ju>Kpdh*F;a+mpjm}W;1DVW4!c@_*IFeTC5n<+%9?l WOO``N9l5PU{IUFr_|r?w1N}eW$R9rd diff --git a/productionboard/target/classes/com/productionboard/entity/BasicScadaDeviceinfo.class b/productionboard/target/classes/com/productionboard/entity/BasicScadaDeviceinfo.class index 6b151b5949a7e8eac4c685ac53254c5ae491e13f..5c0ff56b2a6430783873791910c7101065e25371 100644 GIT binary patch literal 7116 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 G+WQAs)+_t~ diff --git a/productionboard/target/classes/com/productionboard/mapper/BasicScadaDeviceinfoMapper.class b/productionboard/target/classes/com/productionboard/mapper/BasicScadaDeviceinfoMapper.class index fec48c6509fc01718d0158817337a9687942066f..416ca7e71dd07659e38c30c0499bb32723117c75 100644 GIT binary patch delta 89 zcmaFD^n^+H)W2Q(7#J8#7`WLPIM^9D*%`Pd?r)tq!EhqKnJ^=RKvrT|qJB#kYQ(FVPp`Tn*Y{7#N=+_dXJBJw m(4T0kKXHcPMA2piAdiuO8Hibdni&|F7}&ui2LmUV<^ljcN)a&t diff --git a/productionboard/target/classes/com/productionboard/service/BasicScadaDeviceinfoService.class b/productionboard/target/classes/com/productionboard/service/BasicScadaDeviceinfoService.class index f5c014b6365405c3c3fb57efb5adf6d8b96e0bb2..27cb1e5a5057418635b98c869e415146a5df7108 100644 GIT binary patch delta 89 zcmaFQ^qxuh)W2Q(7#J8#7`WLPIM^9D*%`Pd9_ySq&1fROg)k$7KvrT|qJBTn*Y{7#N=+_dXJDHw l$!Iolj?qNXb_F&@21W*EAZ7(>Wnf@pUN44hz^3jiXh5fT6Z diff --git a/productionboard/target/classes/com/productionboard/service/impl/BasicScadaDeviceinfoServiceImpl.class b/productionboard/target/classes/com/productionboard/service/impl/BasicScadaDeviceinfoServiceImpl.class index 2ec720757deafcb356d13dda321765b1df22849a..da7596ff841bc52b40c3b039d47dfac78ba935d7 100644 GIT binary patch delta 176 zcmdnOwuMdN)W2Q(7#J8#7{s_3m>GoF8HCvxMA#WbC!Q0V_^x#FbjJ6SlNn7Ww=uc0 z@-VP6uubH3o)~P$%*bFqQ9x#L29tCqgCYYHP%9$?3(y=!AOxxclI%d9KA6wIz^b*K zfpH^HfQf+vNP?sp7=#!&fg}%@&C0;VzzyUv1Nk6TybOF`nx8=cNQ2Z1GB5xD#!wXQ delta 193 zcmW-ZJr06E5QV?pg+&n*e{1d3LK`bFHpDA<0xf8?(SsmI@B}0zCKi?!Ud9_32Qr!O z&6|0d(v~*-{GKmh#mGbFkxs0KqlmL2HXb(5^m?qYoAi`kwhA+y?G;XPJ{)}vtpJZk zwz%duwaV__{H=B=6C^0@%3~!Z5n)r@vi9K4ANYkVG=b2{8hV7npq^dYbi^4Vp{6U> LO8X2%tNalDmbVw1 diff --git a/productionboard/target/classes/static/css/aluminumLiner/style.css b/productionboard/target/classes/static/css/aluminumLiner/style.css index b7637dc..0cf9a12 100644 --- a/productionboard/target/classes/static/css/aluminumLiner/style.css +++ b/productionboard/target/classes/static/css/aluminumLiner/style.css @@ -9,7 +9,7 @@ body { .dataInformation{ - border: 1px solid red; + border: 0px solid red; position: absolute; width: 24%; height: 22%; diff --git a/productionboard/target/classes/static/js/aluminumLiner/index.js b/productionboard/target/classes/static/js/aluminumLiner/index.js index 75e11eb..a0cb7d3 100644 --- a/productionboard/target/classes/static/js/aluminumLiner/index.js +++ b/productionboard/target/classes/static/js/aluminumLiner/index.js @@ -1,8 +1,23 @@ $(() => { - const statusArray = [0, 0, 0, 0, 0]; + //数据信息 + $.getJSON('/aluminumLiner/getDataInformation', function (result) { + const statusArray = [1,0,0,0,0]; + if(result.length > 0) { + statusArray[0] = result[0].deviceStatus == "正常" ? 0 : 1; + statusArray[1] = result[0].devicePower; + statusArray[2] = result[0].deviceEnergy; + } + dataInformationFunction(statusArray); + }); + + //loss/aluminumLiner/getLossStatistics + $.getJSON('/aluminumLiner/getLossStatistics', function (result) { + loss(result, document.getElementById("loss")); + }); + const syntheticDate = [0, 0, 0, 0, 0]; - dataInformationFunction(statusArray); + synthetic(syntheticDate) //设备OEE统计 @@ -13,6 +28,7 @@ $(() => { inventory(result, document.getElementById("inventory")); }); + //生产计划 $.ajax({ url: '/storage/getProductionPlan', @@ -48,11 +64,6 @@ $(() => { } }); - //loss - $.getJSON('/tankShell/getInventoryStatistics', function (result) { - loss(result, document.getElementById("loss")); - }); - //设备故障排名 diff --git a/productionboard/target/classes/static/js/common/echarts.common.js b/productionboard/target/classes/static/js/common/echarts.common.js index e4c39cb..39b81be 100644 --- a/productionboard/target/classes/static/js/common/echarts.common.js +++ b/productionboard/target/classes/static/js/common/echarts.common.js @@ -2025,7 +2025,7 @@ const loss = (res, ids) => { ]; let Res = { - datas: [ + datas:res.length > 0 ? res : [ { name: '>30分钟', value: 2 @@ -2038,7 +2038,7 @@ const loss = (res, ids) => { name: '0-3分钟', value: 9 }, - ] + ], } Res.datas.forEach((item) => { @@ -2091,9 +2091,6 @@ const loss = (res, ids) => { } }, yAxis: { - interval: 4, - min: 0, - max: 12, splitLine: { show: true, }, diff --git a/productionboard/target/classes/static/js/common/synthetic.js b/productionboard/target/classes/static/js/common/synthetic.js index 89cc680..e176fe9 100644 --- a/productionboard/target/classes/static/js/common/synthetic.js +++ b/productionboard/target/classes/static/js/common/synthetic.js @@ -3,12 +3,11 @@ const dataInformationFunction = (statusArray) => { let info = ` - + - - - + +
${statusArray[0] == 0 ? `运行正常` : `运行异常`}389kW${statusArray[1]}
4563kW·h2${statusArray[2]}kW·h${statusArray[3]}
`; diff --git a/productionboard/target/classes/templates/aluminumLiner/index.html b/productionboard/target/classes/templates/aluminumLiner/index.html index 01cbd92..dd1ab54 100644 --- a/productionboard/target/classes/templates/aluminumLiner/index.html +++ b/productionboard/target/classes/templates/aluminumLiner/index.html @@ -15,6 +15,8 @@
+ +
diff --git a/visualboard.iml b/visualboard.iml index 30ff52e..5c67872 100644 --- a/visualboard.iml +++ b/visualboard.iml @@ -112,5 +112,6 @@ + \ No newline at end of file