Administrator
2023-08-05 0ee44e75029923734744628a8b059fa41ff3ef55
ard-work/src/main/java/com/ruoyi/alarm/global/service/impl/GlobalAlarmServiceImpl.java
@@ -544,14 +544,12 @@
                        //判断当前报警点5分钟内是否已引导
                        ardAlarmRadar.setGuideFlag(1);
                        ArdAlarmRadar AlarmRadar = ardAlarmRadarMapper.getArdAlarmRadarWithGuide(ardAlarmRadar);
                        // 结束时间
                        long etime = System.currentTimeMillis();
                        // 计算执行时间
                        log.info("查询API执行时长:"+(etime-stime)+"毫秒");
                       // ArdAlarmRadar AlarmRadar = ardAlarmRadarMapper.getArdAlarmRadarWithGuide(ardAlarmRadar);
                        ArdAlarmRadar AlarmRadar = redisCache.getCacheObject("global_alarm:guideNew");//从redis中取出最新引导的报警数据
                        if (StringUtils.isNull(AlarmRadar)) {
                            //5分钟内未引导直接入库
                            ardAlarmRadarMapper.insertArdAlarmRadar(ardAlarmRadar);
                            redisCache.setCacheObject("global_alarm:guideNew",ardAlarmRadar);//引导数据写入redis
                            //获取雷达所在塔上的大光电
                            String cameraIdWithTower = ardAlarmRadarMapper.getCameraByRadar(radarAlarmData.getRadarId());
                            if (StringUtils.isNotNull(cameraIdWithTower) && StringUtils.isNotEmpty(cameraIdWithTower)) {
@@ -563,7 +561,7 @@
                            ArdAlarmpointsWell ardAlarmpointsWell = ardAlarmpointsWellMapper.selectArdAlarmpointsWellByWellId(alarmpointName);
                            if (StringUtils.isNotNull(ardAlarmpointsWell) && StringUtils.isNotEmpty(ardAlarmpointsWell.getCameraId())) {
                                String cameraId = ardAlarmpointsWell.getCameraId();
                                if (cameraIdWithTower.equals(cameraId)) {
                                if (cameraId.equals(cameraIdWithTower)) {
                                    return;
                                }
                                log.info("获取到报警点关联的光电:" + cameraId);
@@ -578,6 +576,7 @@
                            if (count >= 3) {
                                ardAlarmRadar.setGuideFlag(1);
                                ardAlarmRadarMapper.insertArdAlarmRadar(ardAlarmRadar);
                                redisCache.setCacheObject("global_alarm:guideNew",ardAlarmRadar);//引导数据写入redis
                                //获取雷达所在塔上的大光电
                                String cameraIdWithTower = ardAlarmRadarMapper.getCameraByRadar(radarAlarmData.getRadarId());
                                if (StringUtils.isNotNull(cameraIdWithTower) && StringUtils.isNotEmpty(cameraIdWithTower)) {
@@ -601,6 +600,10 @@
                                ardAlarmRadarMapper.insertArdAlarmRadar(ardAlarmRadar);
                            }
                        }
                        // 结束时间
                        long etime = System.currentTimeMillis();
                        // 计算执行时间
                        log.info("查询API执行时长:"+(etime-stime)+"毫秒");
                    }
                    //endregion
@@ -736,8 +739,10 @@
    private Boolean IsEnableGuide(String cameraId) {
        boolean enabled = false;
        ArdCameras ardCameras = redisCache.getCacheObject(CacheConstants.CAMERA_LIST_KEY + cameraId);
        if (ardCameras.getCamAlarmGuideEnable().equals(1)) {
            enabled = true;
        if(ardCameras!=null) {
            if (ardCameras.getCamAlarmGuideEnable().equals(1)) {
                enabled = true;
            }
        }
        return enabled;
    }