From a38cb5bb3898f8996321df8f8d537ea18f4af71f Mon Sep 17 00:00:00 2001 From: ‘liusuyi’ <1951119284@qq.com> Date: 星期五, 30 六月 2023 10:19:11 +0800 Subject: [PATCH] 优化 --- ard-work/src/main/java/com/ruoyi/alarm/globalAlarm/service/impl/GlobalAlarmServiceImpl.java | 68 ++++++++++++++-------------------- 1 files changed, 28 insertions(+), 40 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 1a0e990..b90f567 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 @@ -344,7 +344,7 @@ log.debug("tube鍏ュ簱鎴愬姛锛�" + ardAlarmTube); String nearbyCamera = getNearbyCamera(new double[]{ardAlarmTube.getLongitude(), ardAlarmTube.getLatitude()}); if (StringUtils.isNotEmpty(nearbyCamera)) { - messagesEnqueued(nearbyCamera, ardAlarmTube.getId(), "sys_tube_leak", ardAlarmTube.getAlarmTime(), 1); + messagesEnqueued(nearbyCamera, ardAlarmTube.getId(), "sys_tube_leak", ardAlarmTube.getAlarmTime(), 1,1); } } //endregion @@ -357,26 +357,6 @@ int aac = ardAlarmCameraMapper.insertArdAlarmCamera(ardAlarmCamera); if (aac > 0) { log.debug("camera鍏ュ簱鎴愬姛锛�" + ardAlarmCamera); - String nearbyCamera = getNearbyCamera(new double[]{ardAlarmCamera.getLongitude(), ardAlarmCamera.getLatitude()}); - if (StringUtils.isNotEmpty(nearbyCamera)) { - messagesEnqueued(nearbyCamera, ardAlarmCamera.getId(), "sys_camera", ardAlarmCamera.getAlarmTime(), 1); - } - //寮曞褰曞儚 -// CameraCmd cmd = new CameraCmd(); -// cmd.setRecordBucketName("record"); -// cmd.setRecordObjectName("camera"); -// cmd.setOperator("sys_camera"); -// cmd.setExpired(30); -// cmd.setTargetPosition(new double[]{ardAlarmCamera.getLongitude(), ardAlarmCamera.getLatitude()}); -// boolean res = guideCamera(cmd); -// if (res) { -// String url = alarmToRecord(cmd); -// if (StringUtils.isNotEmpty(url)) { -// //鏇存柊褰曞儚 -// ardAlarmCamera.setRecordUrl(url); -// ardAlarmCameraMapper.updateArdAlarmCamera(ardAlarmCamera); -// } -// } } //endregion break; @@ -410,41 +390,36 @@ String cameraIdWithTower = ardAlarmRadarMapper.getCameraByRadar(radarAlarmData.getRadarId()); if (StringUtils.isNotNull(cameraIdWithTower) && StringUtils.isNotEmpty(cameraIdWithTower)) { //鍏ラ槦鍒楀緟寮曞 - messagesEnqueued(cameraIdWithTower, uuid, alarmType, ardAlarmRadar.getAlarmTime(), 1); + messagesEnqueued(cameraIdWithTower, uuid, alarmType, ardAlarmRadar.getAlarmTime(), 1,1); } } else { //5鍒嗛挓鍐呮湁寮曞 ardAlarmRadar.setGuideFlag(0); int count = ardAlarmRadarMapper.getArdAlarmRadarWithNotGuide(ardAlarmRadar, AlarmRadar.getCreateTime()); + //鏈紩瀵艰秴杩�3娆★紝鐩存帴鍏ュ簱鍏ラ槦 if (count >= 3) { - //鏈紩瀵艰秴杩�3娆★紝鐩存帴鍏ュ簱鍏ラ槦 - //5鍒嗛挓鍐呮湭寮曞鐩存帴鍏ュ簱 ardAlarmRadar.setGuideFlag(1); ardAlarmRadarMapper.insertArdAlarmRadar(ardAlarmRadar); - //鍏ラ槦鍒楀緟寮曞 + //鑾峰彇闆疯揪鎵�鍦ㄥ涓婄殑澶у厜鐢� String cameraIdWithTower = ardAlarmRadarMapper.getCameraByRadar(radarAlarmData.getRadarId()); if (StringUtils.isNotNull(cameraIdWithTower) && StringUtils.isNotEmpty(cameraIdWithTower)) { //濡傛灉闆疯揪濉斾笂鏈夊厜鐢� - messagesEnqueued(cameraIdWithTower, uuid, alarmType, ardAlarmRadar.getAlarmTime(), count); + messagesEnqueued(cameraIdWithTower, uuid, alarmType, ardAlarmRadar.getAlarmTime(), count,1); + } + //鑾峰彇鎶ヨ鐐瑰叧鑱旂殑澶у厜鐢� + ArdAlarmpointsWell ardAlarmpointsWell = ardAlarmpointsWellMapper.selectArdAlarmpointsWellByWellId(ardAlarmRadar.getName()); + if(StringUtils.isNotNull(ardAlarmpointsWell) && StringUtils.isNotEmpty(ardAlarmpointsWell.getCameraId())) + { + String cameraId = ardAlarmpointsWell.getCameraId(); + //濡傛灉鎶ヨ鐐瑰叧鑱斾簡鍏夌數 + messagesEnqueued(cameraId, uuid, alarmType, ardAlarmRadar.getAlarmTime(), count,1); } } else { //鏈紩瀵兼湭瓒呰繃3娆★紝鐩存帴鍏ュ簱 ardAlarmRadarMapper.insertArdAlarmRadar(ardAlarmRadar); } - } - - - //鑾峰彇鍏磋叮鐐瑰叧鑱旂殑澶у厜鐢� -// ArdAlarmpointsWell well=new ArdAlarmpointsWell(); -// well.setWellId(ardAlarmRadar.getName()); -// List<ArdAlarmpointsWell> ardAlarmpointsWells = ardAlarmpointsWellMapper.selectArdAlarmpointsWellList(well); -// if(ardAlarmpointsWells!=null&&ardAlarmpointsWells.size()>0) -// { -// String cameraIdWithWell = ardAlarmpointsWells.get(0).getCameraId(); -// } - } //endregion break; @@ -459,16 +434,29 @@ /** * 娑堟伅鍏ラ槦 */ - private void messagesEnqueued (String cameraId, String alarmId, String alarmType, Date alarmTime, Integer num) { + private void messagesEnqueued(String cameraId, String alarmId, String alarmType, Date alarmTime, Integer num, Integer recordSn) { + GuideTask guideTask = new GuideTask(); + /*閰嶇疆鐩告満ID*/ guideTask.setCameraId(cameraId); + /*鏍规嵁閰嶇疆鏃堕棿閰嶇疆閫氶亾*/ + String dayNightTime = redisCache.getCacheObject("sys_config:dayNightTime"); + Integer channel = ArdTool.getChannelBydayNightTime(dayNightTime); + guideTask.setChanNum(channel); + /*閰嶇疆鎶ヨID*/ guideTask.setAlarmId(alarmId); + /*閰嶇疆鎶ヨ鏃堕棿*/ SimpleDateFormat fmt = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); guideTask.setAlarmTime(fmt.format(alarmTime)); + /*閰嶇疆鎶ヨ浼樺厛绾�*/ Integer priority = CamPriority.priorityMap.get(alarmType); guideTask.setPriority(priority); + /*閰嶇疆鎶ヨ娆℃暟*/ guideTask.setNum(num); - queueManager.addTaskToQueue(cameraId,guideTask); + /*閰嶇疆褰曞儚瀛樺偍浣嶇疆*/ + guideTask.setRecordSn(recordSn); + /*娑堟伅鍏ラ槦*/ + queueManager.addTaskToQueue(cameraId, guideTask); // PriorityBlockingQueue<GuideTask> priorityBlockingQueue = GuidePriorityQueue.cameraQueueMap.get(guideTask.getCameraId()); // priorityBlockingQueue.add(guideTask); } -- Gitblit v1.9.3