From 845956ecf4749c2d6c278bdc9638efb934a63419 Mon Sep 17 00:00:00 2001
From: zhangjian <zhangjianrock@163.com>
Date: 星期六, 03 六月 2023 11:44:49 +0800
Subject: [PATCH] 视频巡检任务 单独更新

---
 ard-work/src/main/java/com/ruoyi/inspect/service/impl/ArdVideoInspectTaskServiceImpl.java |   51 ++++++++++++++++++++++++++++++++++++++++++++-------
 1 files changed, 44 insertions(+), 7 deletions(-)

diff --git a/ard-work/src/main/java/com/ruoyi/inspect/service/impl/ArdVideoInspectTaskServiceImpl.java b/ard-work/src/main/java/com/ruoyi/inspect/service/impl/ArdVideoInspectTaskServiceImpl.java
index c35cc97..aecf1ad 100644
--- a/ard-work/src/main/java/com/ruoyi/inspect/service/impl/ArdVideoInspectTaskServiceImpl.java
+++ b/ard-work/src/main/java/com/ruoyi/inspect/service/impl/ArdVideoInspectTaskServiceImpl.java
@@ -2,7 +2,6 @@
 
 import java.text.SimpleDateFormat;
 import java.util.*;
-
 import com.ruoyi.alarmpoints.well.domain.ArdAlarmpointsWell;
 import com.ruoyi.alarmpoints.well.mapper.ArdAlarmpointsWellMapper;
 import com.ruoyi.common.utils.DateUtils;
@@ -13,6 +12,7 @@
 import com.ruoyi.device.hiksdk.service.IHikClientService;
 import com.ruoyi.inspect.domain.ArdVideoInspectRecord;
 import com.ruoyi.inspect.mapper.ArdVideoInspectRecordMapper;
+import com.ruoyi.inspect.mapper.ArdVideoInspectTaskStepMapper;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.stereotype.Service;
 import com.ruoyi.common.utils.StringUtils;
@@ -37,6 +37,8 @@
 public class ArdVideoInspectTaskServiceImpl implements IArdVideoInspectTaskService {
     @Resource
     private ArdVideoInspectTaskMapper ardVideoInspectTaskMapper;
+    @Resource
+    private ArdVideoInspectTaskStepMapper ardVideoInspectTaskStepMapper;
     @Resource
     private ArdAlarmpointsWellMapper ardAlarmpointsWellMapper;
     @Resource
@@ -108,7 +110,7 @@
     public int updateArdVideoInspectTask(ArdVideoInspectTask ardVideoInspectTask) {
         ardVideoInspectTask.setUpdateBy(SecurityUtils.getUsername());
         ardVideoInspectTask.setUpdateTime(DateUtils.getNowDate());
-        ardVideoInspectTaskMapper.deleteArdVideoInspectTaskStepByTaskId(ardVideoInspectTask.getId());
+        //  ardVideoInspectTaskMapper.deleteArdVideoInspectTaskStepByTaskId(ardVideoInspectTask.getId());
         insertArdVideoInspectTaskStep(ardVideoInspectTask);
         return ardVideoInspectTaskMapper.updateArdVideoInspectTask(ardVideoInspectTask);
     }
@@ -169,11 +171,13 @@
         if (StringUtils.isNotNull(ardVideoInspectTaskStepList)) {
             List<ArdVideoInspectTaskStep> list = new ArrayList<ArdVideoInspectTaskStep>();
             for (ArdVideoInspectTaskStep ardVideoInspectTaskStep : ardVideoInspectTaskStepList) {
-                ardVideoInspectTaskStep.setTaskId(id);
-                list.add(ardVideoInspectTaskStep);
-            }
-            if (list.size() > 0) {
-                ardVideoInspectTaskMapper.batchArdVideoInspectTaskStep(list);
+                if (ardVideoInspectTaskStep.getId() == null) {
+                    //鏂扮殑姝ラ,娣诲姞
+                    ardVideoInspectTaskStepMapper.insertArdVideoInspectTaskStep(ardVideoInspectTaskStep);
+                } else {
+                    //宸叉湁姝ラ,鏇存柊
+                    ardVideoInspectTaskStepMapper.updateArdVideoInspectTaskStep(ardVideoInspectTaskStep);
+                }
             }
         }
     }
@@ -566,4 +570,37 @@
         }
         return "";
     }
+
+    public List getTaskUsedCameraPeriods(String cameraId) {
+        return ardVideoInspectTaskMapper.getTaskUsedCameraPeriods(cameraId);
+    }
+
+    public List getCameraIdleTimeList(String cameraId) {
+        LinkedList<String> timeList = new LinkedList();
+        List<Map> usedPeriods = this.getTaskUsedCameraPeriods(cameraId);
+        for (Map p :
+                usedPeriods) {
+            timeList.add((String) p.get("start_time"));
+            timeList.add((String) p.get("end_time"));
+        }
+        //鍒ゆ柇绗竴涓捣濮嬬偣
+        if (timeList.getFirst().equals("00:00:00")) {
+            timeList.removeFirst();
+        } else {
+            timeList.addFirst("00:00:00");
+        }
+        //鍒ゆ柇鏈�鍚庝竴涓粨鏉熸椂闂�
+        if (timeList.getLast().equals("23:59:59")) {
+            timeList.removeLast();
+        } else {
+            timeList.addLast("23:59:59");
+        }
+        //浜嬩欢娈典负绌�,鍒欏叏澶╀綔涓轰竴涓椂闂存
+        if (timeList.size() == 0) {
+            timeList.add("00:00:00");
+            timeList.add("23:59:59");
+        }
+
+        return timeList;
+    }
 }

--
Gitblit v1.9.3