瀏覽代碼

绑定设备修改到后端处理逻辑

Memory_LG 6 月之前
父節點
當前提交
32f24725bd

+ 5 - 1
src/main/java/com/sooka/sponest/lawenforcement/record/domain/bo/LawenforcementBindDeviceBO.java

@@ -2,6 +2,8 @@ package com.sooka.sponest.lawenforcement.record.domain.bo;
 
 import lombok.*;
 
+import java.util.Date;
+
 @Setter
 @Getter
 @AllArgsConstructor
@@ -14,9 +16,11 @@ public class LawenforcementBindDeviceBO {
     private String deviceName;
     private String userId;
     private String recordStatus;
+    private Date stopTime;
 
-    public LawenforcementBindDeviceBO(String recordId, String personCode) {
+    public LawenforcementBindDeviceBO(String recordId, String personCode, Date stopTime) {
         this.recordId = recordId;
         this.personCode = personCode;
+        this.stopTime = stopTime;
     }
 }

+ 13 - 6
src/main/java/com/sooka/sponest/lawenforcement/record/service/impl/LawenforcementRecordServiceImpl.java

@@ -179,17 +179,24 @@ public class LawenforcementRecordServiceImpl extends BaseServiceImpl implements
 
         //将设备与人员绑定
         int i = recordMapper.bindDeviceToPerson(record);
-
-        //更换绑定设备:结束上一次的工单
-        LawenforcementBindDeviceBO lawenforcementBindDeviceBO = new LawenforcementBindDeviceBO(record.getRecordId(), record.getPersonCode());
-        recordMapper.stopRecord(lawenforcementBindDeviceBO);
-
+        Date date = new Date();
+
+        if("lawenforcement_type_1".equals(record.getRecordStatus())){
+            record.setRecordStatus("lawenforcement_type_6");
+        }else if("lawenforcement_type_3".equals(record.getRecordStatus())){
+            record.setRecordStatus("lawenforcement_type_4");
+        }else{
+            //更换绑定设备:结束上一次的工单
+            LawenforcementBindDeviceBO lawenforcementBindDeviceBO = new LawenforcementBindDeviceBO(record.getRecordId(), record.getPersonCode(), date);
+            recordMapper.stopRecord(lawenforcementBindDeviceBO);
+        }
 
         //将工单执行记录,写入到日志表中:数据id、任务id、执法人编号、设备编号、开始时间、子任务状态
-        LawenforcementRecordLog lawenforcementRecordLog = new LawenforcementRecordLog(IdUtils.fastSimpleUUID(), record.getPersonCode(), record.getRecordId(), record.getDeviceId(), record.getDeviceName(), new Date(), null, "0");
+        LawenforcementRecordLog lawenforcementRecordLog = new LawenforcementRecordLog(IdUtils.fastSimpleUUID(), record.getPersonCode(), record.getRecordId(), record.getDeviceId(), record.getDeviceName(), date, null, "0");
         recordMapper.addRecordLog(lawenforcementRecordLog);
         //修改工单状态为执法中
         recordMapper.startRecord(record);
+
         //绑定设备后关闭定时任务
         deviceService.cancelTask(lawenforcementRecordLog.getDeviceId());
         deviceService.setOpenedDevice(lawenforcementRecordLog.getDeviceId());

+ 1 - 1
src/main/resources/mapper/lawenforcement/LawenforcementRecordMapper.xml

@@ -783,7 +783,7 @@
     </select>
 
     <update id="stopRecord" parameterType="LawenforcementBindDeviceBO">
-        update lawenforcement_record_log set end_time = NOW(), record_state = '1'
+        update lawenforcement_record_log set end_time = #{stopTime}, record_state = '1'
         <where>
             and end_time is null
             <if test="recordId != null and recordId != ''">