From 4fe14e673e6aeea4c21f19a7ecccecb2d1058ff9 Mon Sep 17 00:00:00 2001 From: liuxy Date: Fri, 22 Jul 2022 15:43:11 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BB=A3=E7=A0=81=E6=9B=B4=E6=96=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../sb/run/service/dto/DownloadWordDto.java | 2 +- .../stat/rest/DevicefaultcaeController.java | 8 ++++ .../stat/service/DevicefaultcaeService.java | 3 ++ .../impl/DevicefaultcaeServiceImpl.java | 48 ++++++++++++------- .../wms/sb/stat/wql/EM_DEVICEFAULTCAE01.wql | 24 ++++++++-- mes/qd/src/api/wms/sb/devicefaultcae.js | 9 +++- .../wms/sb/stat/devicefaultcae/index.vue | 45 +++++++++++------ .../src/views/wms/sb/stat/task/bigScreen.vue | 2 +- .../wms/sb/stat/taskscreen/taskScreen.vue | 2 +- 9 files changed, 103 insertions(+), 40 deletions(-) diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/sb/run/service/dto/DownloadWordDto.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/sb/run/service/dto/DownloadWordDto.java index 613b2918..e0cb7105 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/sb/run/service/dto/DownloadWordDto.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/sb/run/service/dto/DownloadWordDto.java @@ -44,7 +44,7 @@ public class DownloadWordDto implements Serializable { @WordProperty("投产日期") private String beginuse_date; - + @WordProperty("存放地点") private String setting_place; diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/sb/stat/rest/DevicefaultcaeController.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/sb/stat/rest/DevicefaultcaeController.java index cf0ac2f2..3bf432dc 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/sb/stat/rest/DevicefaultcaeController.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/sb/stat/rest/DevicefaultcaeController.java @@ -57,6 +57,14 @@ public class DevicefaultcaeController { return new ResponseEntity<>(HttpStatus.CREATED); } + @PostMapping("/getFaultList") + @Log("获取故障下拉框") + @ApiOperation("获取故障下拉框") + //@PreAuthorize("@el.check('devicesparepartivt:add')") + public ResponseEntity getFaultList() { + return new ResponseEntity<>(devicefaultcaeService.getFaultList(),HttpStatus.CREATED); + } + @PutMapping @Log("修改设备故障分析") @ApiOperation("修改设备故障分析") diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/sb/stat/service/DevicefaultcaeService.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/sb/stat/service/DevicefaultcaeService.java index 4530d167..7c2efab7 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/sb/stat/service/DevicefaultcaeService.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/sb/stat/service/DevicefaultcaeService.java @@ -1,6 +1,7 @@ package org.nl.wms.sb.stat.service; +import com.alibaba.fastjson.JSONArray; import org.nl.wms.sb.stat.service.dto.DevicesparepartivtDto; import org.springframework.data.domain.Pageable; @@ -82,4 +83,6 @@ public interface DevicefaultcaeService { */ Map dtlQuery(Map whereJson, Pageable page); + JSONArray getFaultList(); + } diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/sb/stat/service/impl/DevicefaultcaeServiceImpl.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/sb/stat/service/impl/DevicefaultcaeServiceImpl.java index cd4ccf7c..34878738 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/sb/stat/service/impl/DevicefaultcaeServiceImpl.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/sb/stat/service/impl/DevicefaultcaeServiceImpl.java @@ -47,17 +47,21 @@ public class DevicefaultcaeServiceImpl implements DevicefaultcaeService { String material_type_id = MapUtil.getStr(whereJson, "material_type_id"); String class_idStr = (String) whereJson.get("class_idStr"); String device_gz = MapUtil.getStr(whereJson, "device_gz"); - String class_idStr2 = (String) whereJson.get("class_idStr2"); String device_code = MapUtil.getStr(whereJson, "device_code"); String dept_id = MapUtil.getStr(whereJson, "dept_id"); String begin_time = MapUtil.getStr(whereJson, "begin_time"); String end_time = MapUtil.getStr(whereJson, "end_time"); + if (ObjectUtil.isEmpty(begin_time)) { + throw new BadRequestException("请选择日期"); + } + HashMap map = new HashMap<>(); map.put("flag", "1"); map.put("begin_time", begin_time); map.put("end_time", end_time); + map.put("device_gz", device_gz); if (ObjectUtil.isNotEmpty(device_code)) map.put("device_code", "%"+device_code+"%"); if (ObjectUtil.isNotEmpty(dept_id)) map.put("dept_id", "%"+dept_id+"%"); //处理设备当前节点的所有子节点 @@ -69,44 +73,50 @@ public class DevicefaultcaeServiceImpl implements DevicefaultcaeService { String classIds = classstandardService.getAllChildIdStr(class_idStr); map.put("classIds", classIds); } - //处理故障当前节点的所有子节点 - if (!StrUtil.isEmpty(device_gz)) { - map.put("device_gz", device_gz); - String classIds2 = classstandardService.getChildIdStr(device_gz); - map.put("classIds2", classIds2); - } else if (ObjectUtil.isNotEmpty(class_idStr2)) { - String classIds2 = classstandardService.getAllChildIdStr(class_idStr2); - map.put("classIds2", classIds2); - } JSONObject json = WQL.getWO("EM_DEVICEFAULTCAE01").addParamMap(map).pageQuery(WqlUtil.getHttpContext(page), "re.devicerecord_id DESC"); // 处理平均故障间隔时间 && 平均故障修复时间 -/* WQLObject tab = WQLObject.getWQLObject("EM_BI_DeviceRepairRequest"); + WQLObject tab = WQLObject.getWQLObject("EM_BI_DeviceRepairRequest"); JSONArray content = json.getJSONArray("content"); for (int i = 0; i < content.size(); i++) { JSONObject jsonObject = content.getJSONObject(i); String devicerecord_id = jsonObject.getString("devicerecord_id"); JSONArray arr = tab.query("devicerecord_id = '" + devicerecord_id + "' and is_delete = '0'").getResultJSONArray(0); + // 计算平均故障修复时间 String nunm = jsonObject.getString("nunm"); String create_time_all = "0"; String finish_time_all = "0"; for (int j = 0; j < arr.size(); j++) { JSONObject jsonObject1 = arr.getJSONObject(j); // 去掉时间中的特殊字符 - String create_time = jsonObject1.getString("create_time").replaceAll("[[\\s-:punct:]]",""); + String create_time = jsonObject1.getString("create_time").substring(0,10).replaceAll("[[\\s-:punct:]]",""); String finish_time = "0"; if (ObjectUtil.isNotEmpty(jsonObject1.getString("finish_time"))) { - finish_time = jsonObject1.getString("finish_time").replaceAll("[[\\s-:punct:]]",""); + finish_time = jsonObject1.getString("finish_time").substring(0,10).replaceAll("[[\\s-:punct:]]",""); } // 相加 create_time_all = String.valueOf(NumberUtil.add(create_time_all,create_time)); finish_time_all = String.valueOf(NumberUtil.add(finish_time_all,finish_time)); } - BigDecimal avgRep_time = NumberUtil.div(String.valueOf(NumberUtil.sub(finish_time_all, create_time_all)), nunm); - jsonObject.put("avgRep_time",String.valueOf(avgRep_time)); + BigDecimal mul = NumberUtil.mul(NumberUtil.sub(finish_time_all, create_time_all), 24); + BigDecimal div = NumberUtil.div(mul.toString(), nunm); + + if (div.intValue() < 0) { + jsonObject.put("avgRep_time","0"); + } else { + jsonObject.put("avgRep_time",String.valueOf(div)); + } + + // 计算平均故障间隔时间 + String re_end_time = end_time.substring(0, 10).replaceAll("[[\\s-:punct:]]", ""); + String re_begin_time = begin_time.substring(0, 10).replaceAll("[[\\s-:punct:]]", ""); + + BigDecimal add = NumberUtil.add(NumberUtil.sub(re_end_time, re_begin_time).toString(), "1"); + BigDecimal avgVal_time = NumberUtil.div(NumberUtil.mul(add, 24).toString(), nunm); + jsonObject.put("avgVal_time",avgVal_time.toString()); } - json.put("content",content);*/ + json.put("content",content); return json; } @@ -243,4 +253,10 @@ public class DevicefaultcaeServiceImpl implements DevicefaultcaeService { return json; } + @Override + public JSONArray getFaultList() { + JSONArray resultJSONArray = WQL.getWO("EM_DEVICEFAULTCAE01").addParam("flag", "3").process().getResultJSONArray(0); + return resultJSONArray; + } + } diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/sb/stat/wql/EM_DEVICEFAULTCAE01.wql b/mes/hd/nladmin-system/src/main/java/org/nl/wms/sb/stat/wql/EM_DEVICEFAULTCAE01.wql index c6d3c789..e1e2cc4b 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/sb/stat/wql/EM_DEVICEFAULTCAE01.wql +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/sb/stat/wql/EM_DEVICEFAULTCAE01.wql @@ -21,6 +21,7 @@ 输入.begin_time TYPEAS s_string 输入.end_time TYPEAS s_string 输入.devicerecord_id TYPEAS s_string + 输入.device_gz TYPEAS s_string [临时表] @@ -57,8 +58,8 @@ FROM EM_BI_DeviceRepairRequest re LEFT JOIN EM_BI_EquipmentFile file ON file.devicerecord_id = re.devicerecord_id + LEFT JOIN EM_BI_DeviceFaultClass fclass ON fclass.device_faultclass_id = re.device_faultclass_id LEFT JOIN md_pb_classstandard class ON file.material_type_id = class.class_id - LEFT JOIN md_pb_classstandard class2 ON re.device_faultclass_id = class2.class_id LEFT JOIN sys_dept dept ON file.use_deptid = dept.dept_id WHERE re.is_delete = '0' @@ -66,8 +67,8 @@ class.class_id in 输入.classIds ENDOPTION - OPTION 输入.classIds2 <> "" - class2.class_id in 输入.classIds2 + OPTION 输入.device_gz <> "" + fclass.device_faultclass_id = 输入.device_gz ENDOPTION OPTION 输入.device_code <> "" @@ -99,7 +100,7 @@ SELECT re.*, dept.name, - class.class_name, + fclass.device_faultclass_name AS class_name, pari.real_start_date, pari.real_end_date, pari.outsourceaskfor_optid, @@ -110,7 +111,7 @@ FROM EM_BI_DeviceRepairRequest re LEFT JOIN EM_BI_EquipmentFile file ON file.devicerecord_id = re.devicerecord_id - LEFT JOIN md_pb_classstandard class ON re.device_faultclass_id = class.class_id + LEFT JOIN EM_BI_DeviceFaultClass fclass ON fclass.device_faultclass_id = re.device_faultclass_id LEFT JOIN sys_dept dept ON file.use_deptid = dept.dept_id LEFT JOIN EM_BI_DeviceRepairMst pari ON pari.source_bill_id = re.request_id WHERE @@ -131,4 +132,17 @@ ENDSELECT ENDPAGEQUERY + ENDIF + + IF 输入.flag = "3" + QUERY + SELECT + * + FROM + EM_BI_DeviceFaultClass + WHERE + is_delete = '0' + + ENDSELECT + ENDQUERY ENDIF \ No newline at end of file diff --git a/mes/qd/src/api/wms/sb/devicefaultcae.js b/mes/qd/src/api/wms/sb/devicefaultcae.js index c2e93407..3657d05e 100644 --- a/mes/qd/src/api/wms/sb/devicefaultcae.js +++ b/mes/qd/src/api/wms/sb/devicefaultcae.js @@ -24,4 +24,11 @@ export function edit(data) { }) } -export default { add, edit, del } +export function getFaultList() { + return request({ + url: 'api/devicefaultcae/getFaultList', + method: 'post' + }) +} + +export default { add, edit, del, getFaultList } diff --git a/mes/qd/src/views/wms/sb/stat/devicefaultcae/index.vue b/mes/qd/src/views/wms/sb/stat/devicefaultcae/index.vue index 7becd3bd..1adc7567 100644 --- a/mes/qd/src/views/wms/sb/stat/devicefaultcae/index.vue +++ b/mes/qd/src/views/wms/sb/stat/devicefaultcae/index.vue @@ -22,13 +22,20 @@ - + class="filter-item" + @change="hand" + > + + @@ -69,8 +76,8 @@ - - + + @@ -96,6 +103,7 @@ import DateRangePicker from '@/components/DateRangePicker' import DtlDialog from '@/views/wms/sb/stat/devicefaultcae/DtlDialog' const defaultForm = { } +const start = new Date() export default { name: 'Devicefaultcae', components: { pagination, crudOperation, rrOperation, udOperation, Treeselect, DateRangePicker, DtlDialog }, @@ -113,6 +121,9 @@ export default { del: false, download: false, reset: true + }, + query: { + createTime: [start.daysAgo(30), new Date()] } }) }, @@ -124,6 +135,7 @@ export default { class_idStr2: null, materOpt_code: '23', materOpt_code2: '24', + FaultList: [], openParam: null, dtlDialog: false, permission: { @@ -140,14 +152,17 @@ export default { this.crud.toQuery() this.queryClassId() }) - const param2 = { - 'materOpt_code': this.materOpt_code2 - } - crudMaterialbase.getMaterOptType(param2).then(res => { - this.class_idStr2 = res.class_idStr - this.crud.query.class_idStr2 = this.class_idStr2 - this.crud.toQuery() - this.queryClassId2() + // const param2 = { + // 'materOpt_code': this.materOpt_code2 + // } + // crudMaterialbase.getMaterOptType(param2).then(res => { + // this.class_idStr2 = res.class_idStr + // this.crud.query.class_idStr2 = this.class_idStr2 + // this.crud.toQuery() + // this.queryClassId2() + // }) + crudDevicefaultcae.getFaultList().then(res => { + this.FaultList = res }) }, methods: { diff --git a/mes/qd/src/views/wms/sb/stat/task/bigScreen.vue b/mes/qd/src/views/wms/sb/stat/task/bigScreen.vue index 67c63cb5..ed8a3a0a 100644 --- a/mes/qd/src/views/wms/sb/stat/task/bigScreen.vue +++ b/mes/qd/src/views/wms/sb/stat/task/bigScreen.vue @@ -27,7 +27,7 @@ export default { mixins: [crud], data() { return { - path: 'ws://localhost:8010/webSocket/20', + path: 'ws://192.168.81.252:8086//webSocket/20', currentDate: new Date(), getTime: '', getDate: '', diff --git a/mes/qd/src/views/wms/sb/stat/taskscreen/taskScreen.vue b/mes/qd/src/views/wms/sb/stat/taskscreen/taskScreen.vue index 57e85550..b45f2601 100644 --- a/mes/qd/src/views/wms/sb/stat/taskscreen/taskScreen.vue +++ b/mes/qd/src/views/wms/sb/stat/taskscreen/taskScreen.vue @@ -36,7 +36,7 @@ export default { name: 'Test', data() { return { - path: 'ws://localhost:8010/webSocket/21', + path: 'ws://192.168.81.252:8086//webSocket/21', table: [ { 'fault_time': '暂无数据', 'create_time': '暂无数据', 'name': '暂无数据', 'device_name': '暂无数据', 'class_name': '暂无数据' } ],