From a47b8ead753670a172b65303fd830e33e8e4d625 Mon Sep 17 00:00:00 2001 From: wws <18630710203@163.com> Date: Mon, 20 Nov 2023 11:03:17 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=9D=E5=85=BB=E7=94=A8=E6=97=B6+PDA?= =?UTF-8?q?=E5=BC=80=E5=A7=8B=E4=BF=9D=E5=85=BB=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/DevicePDAController.java | 10 ++++++ .../java/com/op/device/domain/dto/PDADTO.java | 20 +++++++++++ .../op/device/service/IDevicePDAService.java | 7 ++++ .../service/impl/DevicePDAServiceImpl.java | 33 +++++++++++++++++-- .../service/impl/EquOrderServiceImpl.java | 14 +++++--- 5 files changed, 76 insertions(+), 8 deletions(-) diff --git a/op-modules/op-device/src/main/java/com/op/device/controller/DevicePDAController.java b/op-modules/op-device/src/main/java/com/op/device/controller/DevicePDAController.java index b9734629..2caac166 100644 --- a/op-modules/op-device/src/main/java/com/op/device/controller/DevicePDAController.java +++ b/op-modules/op-device/src/main/java/com/op/device/controller/DevicePDAController.java @@ -136,4 +136,14 @@ public class DevicePDAController { public AjaxResult updateMaintenanceRecords(@RequestBody EquRepairWorkOrder equRepairWorkOrder) { return devicePDAService.updateMaintenanceRecords(equRepairWorkOrder); } + + /** + * 开始保养任务 + * @param pdadto + * @return + */ + @GetMapping("/startMaintenanceTask") + public AjaxResult startMaintenanceTask(PDADTO pdadto) { + return devicePDAService.startMaintenanceTask(pdadto); + } } diff --git a/op-modules/op-device/src/main/java/com/op/device/domain/dto/PDADTO.java b/op-modules/op-device/src/main/java/com/op/device/domain/dto/PDADTO.java index 591d88a6..9f07ce35 100644 --- a/op-modules/op-device/src/main/java/com/op/device/domain/dto/PDADTO.java +++ b/op-modules/op-device/src/main/java/com/op/device/domain/dto/PDADTO.java @@ -5,6 +5,26 @@ public class PDADTO { private String userId; private String planType; + private String orderCode; + + private String shutDown; + + public String getOrderCode() { + return orderCode; + } + + public void setOrderCode(String orderCode) { + this.orderCode = orderCode; + } + + public String getShutDown() { + return shutDown; + } + + public void setShutDown(String shutDown) { + this.shutDown = shutDown; + } + public String getUserId() { return userId; } diff --git a/op-modules/op-device/src/main/java/com/op/device/service/IDevicePDAService.java b/op-modules/op-device/src/main/java/com/op/device/service/IDevicePDAService.java index 4542997e..e4548a25 100644 --- a/op-modules/op-device/src/main/java/com/op/device/service/IDevicePDAService.java +++ b/op-modules/op-device/src/main/java/com/op/device/service/IDevicePDAService.java @@ -93,4 +93,11 @@ public interface IDevicePDAService { //待处理 AjaxResult getMaintenancePendRecords(EquRepairWorkOrder equRepairWorkOrder); + + /** + * 开始保养任务 + * @param pdadto + * @return + */ + AjaxResult startMaintenanceTask(PDADTO pdadto); } diff --git a/op-modules/op-device/src/main/java/com/op/device/service/impl/DevicePDAServiceImpl.java b/op-modules/op-device/src/main/java/com/op/device/service/impl/DevicePDAServiceImpl.java index 62a56eae..e6bc1f49 100644 --- a/op-modules/op-device/src/main/java/com/op/device/service/impl/DevicePDAServiceImpl.java +++ b/op-modules/op-device/src/main/java/com/op/device/service/impl/DevicePDAServiceImpl.java @@ -286,6 +286,12 @@ public class DevicePDAServiceImpl implements IDevicePDAService { } } + // 保养逻辑 + if (equOrder.getPlanType().equals("maintenance")) { + // 设置结束时间 + equOrder.setOrderEnd(DateUtils.getNowDate()); + } + // 更新工单信息 equOrderMapper.updateEquOrder(equOrder); return success(); @@ -314,9 +320,9 @@ public class DevicePDAServiceImpl implements IDevicePDAService { equRepairOrder.setOrderRepairmanCode(SecurityUtils.getUsername()); equRepairOrder.setOrderTime(DateUtils.getNowDate()); equRepairOrder.setOrderStatus("待审核"); - HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest(); - String key = "#header.poolName"; - equRepairOrder.setFactoryCode(request.getHeader(key.substring(8)).replace("ds_","")); + HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest(); + String key = "#header.poolName"; + equRepairOrder.setFactoryCode(request.getHeader(key.substring(8)).replace("ds_","")); equRepairOrderMapper.insertEquRepairOrder(equRepairOrder); //新增文件 @@ -378,6 +384,27 @@ public class DevicePDAServiceImpl implements IDevicePDAService { } } + /** + * 开始保养任务 + * @param pdadto + * @return + */ + @Override + public AjaxResult startMaintenanceTask(PDADTO pdadto) { + EquOrder order = equOrderMapper.selectEquOrderByOrderCode(pdadto.getOrderCode()); + // 改为进行中 + order.setOrderStatus("3"); + // 设置是否停机保养 + order.setShutDown(pdadto.getShutDown()); + // 设置开始时间 + order.setOrderStart(DateUtils.getNowDate()); + // 更新数据表 + order.setUpdateBy(SecurityContextHolder.getUserName()); + order.setUpdateTime(DateUtils.getNowDate()); + equOrderMapper.updateEquOrder(order); + return success(); + } + /** * 获取待维修记录(除了待维修) * diff --git a/op-modules/op-device/src/main/java/com/op/device/service/impl/EquOrderServiceImpl.java b/op-modules/op-device/src/main/java/com/op/device/service/impl/EquOrderServiceImpl.java index e7c5ca87..f7f47d42 100644 --- a/op-modules/op-device/src/main/java/com/op/device/service/impl/EquOrderServiceImpl.java +++ b/op-modules/op-device/src/main/java/com/op/device/service/impl/EquOrderServiceImpl.java @@ -226,18 +226,13 @@ public class EquOrderServiceImpl implements IEquOrderService { int up = standard.getActualValue().compareTo(standard.getDetailUpLimit()); int down = standard.getActualValue().compareTo(standard.getDetailDownLimit()); standard.setDetailReach("1"); - standard.setErrorFlag("0"); if (!(up != 1 && down != -1)) { hasError = true; - standard.setErrorFlag("1"); standard.setDetailReach("0"); } } else { - // TODO 未达标 - standard.setErrorFlag("0"); if (standard.getDetailReach().equals("0")) { hasError = true; - standard.setErrorFlag("1"); } } @@ -310,6 +305,15 @@ public class EquOrderServiceImpl implements IEquOrderService { } } + // 保养逻辑 + if (equOrder.getPlanType().equals("maintenance")) { + // 用时 + if (equOrder.getOrderStart() != null) { + long diffSeconds = (equOrder.getOrderEnd().getTime() - equOrder.getOrderStart().getTime()) / 60000; + equOrder.setOrderCostTime(String.valueOf(diffSeconds)); + } + } + // 更新工单信息 equOrderMapper.updateEquOrder(equOrder); return success();