From f069ce1cc814e57c36b3c8d48d10af215350081b Mon Sep 17 00:00:00 2001 From: ‘liusuyi’ <1951119284@qq.com> Date: 星期三, 14 六月 2023 09:40:16 +0800 Subject: [PATCH] 修改盗电报警数据从mqtt接收 修改管线泄漏sql错误 --- ard-work/src/main/java/com/ruoyi/inspect/service/impl/InspectionTaskManager.java | 63 ++++++++++++++++++++++++------- 1 files changed, 48 insertions(+), 15 deletions(-) diff --git a/ard-work/src/main/java/com/ruoyi/inspect/service/impl/InspectionTaskManager.java b/ard-work/src/main/java/com/ruoyi/inspect/service/impl/InspectionTaskManager.java index 377500d..f427cfd 100644 --- a/ard-work/src/main/java/com/ruoyi/inspect/service/impl/InspectionTaskManager.java +++ b/ard-work/src/main/java/com/ruoyi/inspect/service/impl/InspectionTaskManager.java @@ -1,5 +1,6 @@ package com.ruoyi.inspect.service.impl; +import com.ruoyi.constant.Global; import com.ruoyi.device.camera.domain.CameraCmd; import com.ruoyi.device.hiksdk.common.GlobalVariable; import com.ruoyi.device.hiksdk.service.IHikClientService; @@ -12,10 +13,11 @@ import javax.annotation.Resource; import java.util.HashMap; +import java.util.List; import java.util.Map; /** - * @Description: + * @Description: 宸℃浠诲姟绠$悊 * @ClassName: InspectionTaskManager * @Author: 鍒樿嫃涔� * @Date: 2023骞�06鏈�01鏃�10:40 @@ -31,7 +33,7 @@ @Resource private IHikClientService hikClientService; - public static Map<String, InspectionTask> taskMap; + public static Map<String, InspectionTask> taskMap;//宸插惎鍔ㄤ换鍔ap public InspectionTaskManager() { taskMap = new HashMap<>(); @@ -41,41 +43,72 @@ return taskMap; } + /*鍚姩浠诲姟*/ public void startInspectionTask(String taskId) { + if(taskMap.containsKey(taskId)) + { + log.info("鎵嬪姩宸℃浠诲姟宸插惎鍔細" + taskId); + return; + } +// /*姣忔鍚姩浠诲姟娓呯┖浠诲姟褰撳墠姝ラ淇℃伅*/ ArdVideoInspectTask ardVideoInspectTask = ardVideoInspectTaskMapper.selectArdVideoInspectTaskById(taskId); - ardVideoInspectTask.setCurrentStepId(""); - ardVideoInspectTask.setCurrentStepStartTime(""); - ardVideoInspectTaskMapper.updateArdVideoInspectTask(ardVideoInspectTask); +// ardVideoInspectTask.setCurrentStepId(""); +// ardVideoInspectTask.setCurrentStepStartTime(""); +// ardVideoInspectTaskMapper.updateArdVideoInspectTask(ardVideoInspectTask); + String cameraId = ardVideoInspectTask.getCameraId(); + /*灏嗗綋鍓嶇浉鏈虹殑鎵�鏈変换鍔″綋鍓嶆椂闂寸疆绌�*/ + ardVideoInspectTask=new ArdVideoInspectTask(); + ardVideoInspectTask.setCameraId(cameraId); + List<ArdVideoInspectTask> ardVideoInspectTasks = ardVideoInspectTaskMapper.selectArdVideoInspectTaskList(ardVideoInspectTask); + if(ardVideoInspectTasks.size()>0) { + for (ArdVideoInspectTask VideoInspectTask : ardVideoInspectTasks) { + VideoInspectTask.setCurrentStepStartTime(""); + ardVideoInspectTaskMapper.updateArdVideoInspectTaskWithCurrentSetpInfo(VideoInspectTask); + /*娓呮浠诲姟褰曞儚璁板綍*/ + if(Global.task_record.contains(VideoInspectTask.getId())) + { + Global.task_record.remove(VideoInspectTask.getId()); + } + } + } + /*寮�鍚换鍔�*/ InspectionTask task = new InspectionTask(taskId); task.start(); taskMap.put(taskId, task); - log.info("宸℃浠诲姟宸插惎鍔細" + taskId); + log.info("鎵嬪姩宸℃浠诲姟鍚姩锛�" + taskId); } - + /*鍋滄浠诲姟*/ public void stopInspectionTask(String taskId) { - ArdVideoInspectTask ardVideoInspectTask = ardVideoInspectTaskMapper.selectArdVideoInspectTaskById(taskId); - ardVideoInspectTask.setCurrentStepId(""); - ardVideoInspectTask.setCurrentStepStartTime(""); - ardVideoInspectTaskMapper.updateArdVideoInspectTask(ardVideoInspectTask); - Integer userId = GlobalVariable.loginMap.get(ardVideoInspectTask.getCameraId());//鑾峰彇褰撳墠鐩告満鐨勭櫥褰旾D + ArdVideoInspectTask ardVideoInspectTask = ardVideoInspectTaskMapper.selectArdVideoInspectTaskById(taskId); + /*灏嗗叧鑱旂殑鐩告満褰曞儚鍏抽棴*/ + String cameraId = ardVideoInspectTask.getCameraId(); + Integer userId = GlobalVariable.loginMap.get(cameraId);//鑾峰彇褰撳墠鐩告満鐨勭櫥褰旾D if( GlobalVariable.user_real_Map.containsKey(userId)) { //褰撳墠鐩告満姝e湪褰曞儚锛屽垯鍋滄褰曞儚 CameraCmd cmd = new CameraCmd(); cmd.setCameraId(ardVideoInspectTask.getCameraId()); cmd.setChannelNum(ardVideoInspectTask.getChannel()); cmd.setEnable(false);//鍋滄褰曞儚 + cmd.setUploadMinio(false); hikClientService.recordToMinio(cmd); + GlobalVariable.user_real_Map.remove(userId); } + + /*鍋滄浠诲姟*/ InspectionTask task = taskMap.get(taskId); if (task != null) { task.stop(); taskMap.remove(taskId); - log.info("宸℃浠诲姟宸插仠姝細" + taskId); - + Global.task_record.remove(taskId); + log.info("鎵嬪姩宸℃浠诲姟宸插仠姝細" + taskId); + /*灏嗕换鍔℃楠や俊鎭竻绌�*/ + ardVideoInspectTask.setCurrentStepId(""); + ardVideoInspectTask.setCurrentStepStartTime(""); + ardVideoInspectTaskMapper.updateArdVideoInspectTaskWithCurrentSetpInfo(ardVideoInspectTask); } else { - log.info("鎵句笉鍒版寚瀹氱殑宸℃浠诲姟锛�" + taskId); + log.info("鎵句笉鍒版寚瀹氱殑鎵嬪姩宸℃浠诲姟锛�" + taskId); } } } -- Gitblit v1.9.3