From 81dd45819944baa8032d942e2e28c5c859c0cc81 Mon Sep 17 00:00:00 2001 From: ‘liusuyi’ <1951119284@qq.com> Date: 星期四, 15 六月 2023 10:37:46 +0800 Subject: [PATCH] 优化巡检 --- ard-work/src/main/java/com/ruoyi/constant/sdkPriority.java | 1 ard-work/src/main/java/com/ruoyi/alarm/globalAlarm/service/impl/GlobalAlarmServiceImpl.java | 4 + ard-work/src/main/java/com/ruoyi/device/camera/domain/CameraCmd.java | 2 ard-work/src/main/java/com/ruoyi/device/hiksdk/service/impl/HikClientServiceImpl.java | 6 +- ruoyi-admin/src/main/resources/logback.xml | 2 ard-work/src/main/java/com/ruoyi/inspect/service/impl/ArdVideoInspectTaskServiceImpl.java | 66 ++++++++++++++++++++++++++++---- ruoyi-generator/src/main/resources/generator.yml | 2 7 files changed, 67 insertions(+), 16 deletions(-) diff --git a/ard-work/src/main/java/com/ruoyi/alarm/globalAlarm/service/impl/GlobalAlarmServiceImpl.java b/ard-work/src/main/java/com/ruoyi/alarm/globalAlarm/service/impl/GlobalAlarmServiceImpl.java index ffdf968..0405f7a 100644 --- a/ard-work/src/main/java/com/ruoyi/alarm/globalAlarm/service/impl/GlobalAlarmServiceImpl.java +++ b/ard-work/src/main/java/com/ruoyi/alarm/globalAlarm/service/impl/GlobalAlarmServiceImpl.java @@ -194,12 +194,14 @@ String minDistanceCameraId = ArdTool.getKeyByMinValue(distanceMap); //寮曞鍏夌數 CameraCmd cmd = new CameraCmd(); - cmd.setOperator("sys_tube_leak"); cmd.setCameraId(minDistanceCameraId); cmd.setChannelNum(1); cmd.setTargetPosition(new double[]{ardAlarmTube.getLongitude(), ardAlarmTube.getLatitude()}); + cmd.setOperator("sys_tube_leak"); + cmd.setExpired(30); boolean guideRes = hikClientService.setTargetPosition(cmd); if(guideRes) { + hikClientService.controlLock(cmd); cmd.setEnable(true); cmd.setRecordBucketName("record"); String time = new SimpleDateFormat("yyyyMMdd").format(new Date()); diff --git a/ard-work/src/main/java/com/ruoyi/constant/sdkPriority.java b/ard-work/src/main/java/com/ruoyi/constant/sdkPriority.java index dec4799..62a9617 100644 --- a/ard-work/src/main/java/com/ruoyi/constant/sdkPriority.java +++ b/ard-work/src/main/java/com/ruoyi/constant/sdkPriority.java @@ -15,5 +15,6 @@ static { priorityMap.put("sys_radar_fire",999); priorityMap.put("sys_tube_leak",998); + priorityMap.put("sys_patrol_inspect",1); } } diff --git a/ard-work/src/main/java/com/ruoyi/device/camera/domain/CameraCmd.java b/ard-work/src/main/java/com/ruoyi/device/camera/domain/CameraCmd.java index 227c222..7f8f0ec 100644 --- a/ard-work/src/main/java/com/ruoyi/device/camera/domain/CameraCmd.java +++ b/ard-work/src/main/java/com/ruoyi/device/camera/domain/CameraCmd.java @@ -33,7 +33,7 @@ /*褰撳墠鎿嶄綔鑰�*/ String operator; - /*杩囨湡闂撮殧锛堝垎閽燂級*/ + /*杩囨湡闂撮殧锛堢锛�*/ Integer expired; /*褰曞儚瀛樺偍姹犲悕绉�*/ diff --git a/ard-work/src/main/java/com/ruoyi/device/hiksdk/service/impl/HikClientServiceImpl.java b/ard-work/src/main/java/com/ruoyi/device/hiksdk/service/impl/HikClientServiceImpl.java index cfbcf96..46511ca 100644 --- a/ard-work/src/main/java/com/ruoyi/device/hiksdk/service/impl/HikClientServiceImpl.java +++ b/ard-work/src/main/java/com/ruoyi/device/hiksdk/service/impl/HikClientServiceImpl.java @@ -713,7 +713,7 @@ ardCameras.setOperatorId(operator); //璁剧疆褰撳墠杩囨湡鏃堕棿 Date now = new Date(); - now.setTime(now.getTime() + expired * 1000 * 60); + now.setTime(now.getTime() + expired * 1000); ardCameras.setOperatorExpired(now); ardCamerasMapper.updateArdCameras(ardCameras); } else { @@ -722,7 +722,7 @@ if (currentOperator.equals(operator)) { //璁剧疆褰撳墠杩囨湡鏃堕棿 Date now = new Date(); - now.setTime(now.getTime() + expired * 1000 * 60); + now.setTime(now.getTime() + expired * 1000); ardCameras.setOperatorExpired(now); ardCamerasMapper.updateArdCameras(ardCameras); } else { @@ -749,7 +749,7 @@ //鍒ゆ柇浼樺厛绾� if (operatorLevel > currentLevel) { Date now = new Date(); - now.setTime(now.getTime() + expired * 60 * 1000); + now.setTime(now.getTime() + expired * 60); ardCameras.setOperatorExpired(now);//璁剧疆褰撳墠杩囨湡鏃堕棿 ardCameras.setOperatorId(operator);//璁剧疆褰撳墠鐢ㄦ埛 ardCamerasMapper.updateArdCameras(ardCameras); 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 73f0659..df4af33 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 @@ -34,7 +34,7 @@ * @date 2023-05-30 */ @Service -@Slf4j +@Slf4j(topic = "PatrolInspectionTask") public class ArdVideoInspectTaskServiceImpl implements IArdVideoInspectTaskService { @Resource private ArdVideoInspectTaskMapper ardVideoInspectTaskMapper; @@ -229,6 +229,9 @@ //寮�濮嬩笅涓�姝ラ videoInspectTask.setCurrentStepId(nextStepId); startRunStep(videoInspectTask); + }else{ + //鏈繃鏈熷皾璇曞紩瀵硷紝寮曞澶辫触娓呯┖褰撳墠姝ラ寮�濮嬫椂闂达紝鏍囪涓柇 + tryGuide(videoInspectTask); } } } @@ -337,7 +340,7 @@ //寮�濮嬩笅涓�姝ラ videoInspectTask.setCurrentStepId(nextStepId); startRunStep(videoInspectTask); - } + }else{tryGuide(videoInspectTask);} } } } else { @@ -414,7 +417,7 @@ log.info("褰撳墠寮�濮嬪贰妫�姝ラid涓虹┖"); return; } - log.info("姝ラ锛�" + currentStepId + "寮�濮�"); + log.debug("宸℃姝ラ锛�" + currentStepId + "灏濊瘯寮�濮�"); String cameraId = ardVideoInspectTask.getCameraId(); Integer channel = ardVideoInspectTask.getChannel(); Optional<ArdVideoInspectTaskStep> objectOptional = ardVideoInspectTask.getArdVideoInspectTaskStepList().stream() @@ -446,16 +449,13 @@ cmd.setChannelNum(channel); cmd.setTargetPosition(targetPositon); cmd.setOperator("sys_patrol_inspect"); - cmd.setExpired(step.getRecordingTime()); + cmd.setExpired(step.getRecordingTime()*60); boolean setTargetPosition = hikClientService.setTargetPosition(cmd); if (setTargetPosition) { /*鎺у埗鐩告満宸℃鎴愬姛锛屽紑濮嬪綍鍍�*/ cmd.setEnable(true);//鍚姩褰曞儚 hikClientService.recordToMinio(cmd); } else { - cmd.setEnable(false);//鍋滄褰曞儚 - cmd.setUploadMinio(true); - hikClientService.recordToMinio(cmd); /*鎺у埗澶辫触,褰撳墠姝ラ鍚姩鏃堕棿缃畁ull*/ ardVideoInspectTask.setCurrentStepStartTime(""); ardVideoInspectTaskMapper.updateArdVideoInspectTaskWithCurrentSetpInfo(ardVideoInspectTask); @@ -466,12 +466,60 @@ log.error("宸℃寮�濮嬪紓甯革細" + ex.getMessage()); } } - + //灏濊瘯鎺у埗寮曞 + private void tryGuide(ArdVideoInspectTask ardVideoInspectTask) { + try { + String currentStepId = ardVideoInspectTask.getCurrentStepId(); + if (StringUtils.isNull(currentStepId)) { + log.info("褰撳墠寮�濮嬪贰妫�姝ラid涓虹┖"); + return; + } + log.debug("宸℃姝e父锛屽皾璇曞紩瀵硷細" + currentStepId); + String cameraId = ardVideoInspectTask.getCameraId(); + Integer channel = ardVideoInspectTask.getChannel(); + Optional<ArdVideoInspectTaskStep> objectOptional = ardVideoInspectTask.getArdVideoInspectTaskStepList().stream() + .filter(obj -> obj.getId().equals(currentStepId)) + .findFirst(); + if (objectOptional.isPresent()) { + ArdVideoInspectTaskStep step = objectOptional.get(); + String wellId = step.getWellId(); + if (!StringUtils.isNull(wellId)) { + /*鑾峰彇浜曞潗鏍�*/ + ArdAlarmpointsWell ardAlarmpointsWell = ardAlarmpointsWellMapper.selectArdAlarmpointsWellById(wellId); + double[] targetPositon = new double[3]; + targetPositon[0] = ardAlarmpointsWell.getLongitude(); + targetPositon[1] = ardAlarmpointsWell.getLatitude(); + targetPositon[2] = ardAlarmpointsWell.getAltitude(); + /*鑾峰彇鐩告満鍧愭爣*/ + ArdCameras cameras = ardCamerasMapper.selectArdCamerasById(cameraId); + double[] cameraPositon = new double[3]; + cameraPositon[0] = cameras.getLongitude(); + cameraPositon[1] = cameras.getLatitude(); + cameraPositon[2] = cameras.getAltitude(); + /*鎺у埗鐩告満宸℃*/ + CameraCmd cmd = new CameraCmd(); + cmd.setCameraId(cameraId); + cmd.setChannelNum(channel); + cmd.setTargetPosition(targetPositon); + cmd.setOperator("sys_patrol_inspect"); + cmd.setExpired(step.getRecordingTime()*60); + boolean setTargetPosition = hikClientService.setTargetPosition(cmd); + if (!setTargetPosition) { + /*鎺у埗澶辫触,褰撳墠姝ラ鍚姩鏃堕棿缃畁ull*/ + ardVideoInspectTask.setCurrentStepStartTime(""); + ardVideoInspectTaskMapper.updateArdVideoInspectTaskWithCurrentSetpInfo(ardVideoInspectTask); + } + } + } + } catch (Exception ex) { + log.error("宸℃灏濊瘯寮曞寮傚父锛�" + ex.getMessage()); + } + } //姝ラ鍋滄 private void stopRunStep(ArdVideoInspectTask ardVideoInspectTask) { try { String currentStepId = ardVideoInspectTask.getCurrentStepId(); - log.info("姝ラ锛�" + currentStepId + "鍋滄"); + log.debug("宸℃姝ラ锛�" + currentStepId + "鍋滄"); if (StringUtils.isNull(currentStepId)) { log.info("褰撳墠鍋滄宸℃姝ラid涓虹┖"); return; diff --git a/ruoyi-admin/src/main/resources/logback.xml b/ruoyi-admin/src/main/resources/logback.xml index 86ca1cd..7018a83 100644 --- a/ruoyi-admin/src/main/resources/logback.xml +++ b/ruoyi-admin/src/main/resources/logback.xml @@ -200,7 +200,7 @@ <appender-ref ref="websocket"/> </logger> <!--鍏夌數宸℃鏃ュ織鎵撳嵃绛夌骇--> - <logger name="PatrolInspectionTask" level="INFO"> + <logger name="PatrolInspectionTask" level="DEBUG"> <appender-ref ref="PatrolInspectionTask"/> </logger> <!--mqtt鏃ュ織鎵撳嵃绛夌骇--> diff --git a/ruoyi-generator/src/main/resources/generator.yml b/ruoyi-generator/src/main/resources/generator.yml index 5bd3dd6..acf8ce6 100644 --- a/ruoyi-generator/src/main/resources/generator.yml +++ b/ruoyi-generator/src/main/resources/generator.yml @@ -1,7 +1,7 @@ # 浠g爜鐢熸垚 gen: # 浣滆�� - author: ruoyi + author: ard # 榛樿鐢熸垚鍖呰矾寰� system 闇�鏀规垚鑷繁鐨勬ā鍧楀悕绉� 濡� system monitor tool packageName: com.ruoyi.system # 鑷姩鍘婚櫎琛ㄥ墠缂�锛岄粯璁ゆ槸false -- Gitblit v1.9.3