From df9694447656f6862ce0f3d7140c5a361c0da5b6 Mon Sep 17 00:00:00 2001
From: wws <18630710203@163.com>
Date: Mon, 4 Dec 2023 16:25:50 +0800
Subject: [PATCH] =?UTF-8?q?PDA=E4=BF=9D=E5=85=BB=E8=AE=BE=E7=BD=AE?=
=?UTF-8?q?=E8=AE=BE=E5=A4=87=E4=BF=9D=E5=85=BB=E8=BF=90=E8=A1=8C=E8=AE=B0?=
=?UTF-8?q?=E5=BD=95?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../mapper/EquOperationRecordMapper.java | 8 +++++
.../service/impl/DevicePDAServiceImpl.java | 36 +++++++++++++++++++
.../device/EquOperationRecordMapper.xml | 23 ++++++++++++
.../mapper/device/EquOrderMapper.xml | 8 ++---
4 files changed, 71 insertions(+), 4 deletions(-)
diff --git a/op-modules/op-device/src/main/java/com/op/device/mapper/EquOperationRecordMapper.java b/op-modules/op-device/src/main/java/com/op/device/mapper/EquOperationRecordMapper.java
index 3a356f44..e7f2d37e 100644
--- a/op-modules/op-device/src/main/java/com/op/device/mapper/EquOperationRecordMapper.java
+++ b/op-modules/op-device/src/main/java/com/op/device/mapper/EquOperationRecordMapper.java
@@ -3,6 +3,7 @@ package com.op.device.mapper;
import java.util.List;
import com.op.device.domain.EquOperationRecord;
+import org.apache.ibatis.annotations.Param;
/**
* 设备运行记录Mapper接口
@@ -71,4 +72,11 @@ public interface EquOperationRecordMapper {
//设备完好率
EquOperationRecord getEquipmentIntactRate(EquOperationRecord equOperationRecord);
+
+ /**
+ * 查询改设备最后一条运行记录
+ * @param equipmentCode
+ * @return
+ */
+ EquOperationRecord selectLastOperationRecordByEquipmentCode(String equipmentCode);
}
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 6d681c52..00b38dca 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
@@ -334,6 +334,8 @@ public class DevicePDAServiceImpl implements IDevicePDAService {
// 更新设备状态为开机
equ.setStatus("1");
equOrderMapper.updateEquipmentStatus(equ);
+ // 更新设备运行记录
+ updateOperationRecord(equOrder.getEquipmentCode(),"on","");
//上传附件
if (StringUtils.isNotEmpty(equOrder.getPicturePath())) {
String[] ids = equOrder.getPicturePath().split(",");
@@ -467,12 +469,19 @@ public class DevicePDAServiceImpl implements IDevicePDAService {
// 创建设备对象用于更新设备状态
Equipment equ = new Equipment();
equ.setEquipmentCode(order.getEquipmentCode());
+ // 运行记录类型
+ String operationType;
// 停机保养
if (pdadto.getShutDown().equals("1")){
// 更改设备状态为停机
equ.setStatus("0");
equOrderMapper.updateEquipmentStatus(equ);
+ operationType = "off";
+ }else {
+ operationType = "on";
}
+ // 更新设备运行记录
+ updateOperationRecord(order.getEquipmentCode(),operationType,"upkeep");
// 设置开始时间
order.setOrderStart(DateUtils.getNowDate());
@@ -824,4 +833,31 @@ public class DevicePDAServiceImpl implements IDevicePDAService {
return equEquipmentMapper.selectEquEquipmentList(equEquipment);
}
+ /**
+ * 更新设备运行记录
+ * @param equipmentCode
+ * @param operationType 开机/停机
+ * @param type 保养/维修
+ */
+ private void updateOperationRecord(String equipmentCode,String operationType,String type) {
+ // 设备最后一条运行记录
+ EquOperationRecord lastRecord = equOperationRecordMapper.selectLastOperationRecordByEquipmentCode(equipmentCode);
+ lastRecord.setEndTime(DateUtils.getNowDate());
+ lastRecord.setUpdateBy(SecurityContextHolder.getUserName());
+ // 更新运行记录
+ equOperationRecordMapper.updateEquOperationRecord(lastRecord);
+ // 创建新的运行记录
+ EquOperationRecord newRecord = new EquOperationRecord();
+ newRecord.setId(IdUtils.fastSimpleUUID());
+ newRecord.setEquipmentCode(equipmentCode);
+ newRecord.setStartTime(DateUtils.getNowDate());
+ newRecord.setType(operationType);
+ newRecord.setMaintenanceType(type);// 维护类型
+ newRecord.setParentId(lastRecord.getId());
+ newRecord.setFactoryCode(lastRecord.getFactoryCode());
+ newRecord.setCreateBy(SecurityContextHolder.getUserName());
+ newRecord.setCreateTime(DateUtils.getNowDate());
+ equOperationRecordMapper.insertEquOperationRecord(newRecord);
+ }
+
}
diff --git a/op-modules/op-device/src/main/resources/mapper/device/EquOperationRecordMapper.xml b/op-modules/op-device/src/main/resources/mapper/device/EquOperationRecordMapper.xml
index ebd25fc1..7e34a4db 100644
--- a/op-modules/op-device/src/main/resources/mapper/device/EquOperationRecordMapper.xml
+++ b/op-modules/op-device/src/main/resources/mapper/device/EquOperationRecordMapper.xml
@@ -178,5 +178,28 @@
FROM base_equipment
WHERE del_flag = '0' AND status = '1'
+
+
\ No newline at end of file
diff --git a/op-modules/op-device/src/main/resources/mapper/device/EquOrderMapper.xml b/op-modules/op-device/src/main/resources/mapper/device/EquOrderMapper.xml
index 0d93ddf6..05011613 100644
--- a/op-modules/op-device/src/main/resources/mapper/device/EquOrderMapper.xml
+++ b/op-modules/op-device/src/main/resources/mapper/device/EquOrderMapper.xml
@@ -359,10 +359,10 @@
- update base_equipment be
- set be.status = #{status}
- where be.equipmentCode = #{equipmentCode}
- and be.del_flag = '0'
+ update base_equipment
+ set status = #{status}
+ where equipment_code = #{equipmentCode}
+ and del_flag = '0'