ruoyi-quartz/src/main/java/com/ruoyi/quartz/task/AlarmTask.java
@@ -1,22 +1,17 @@
package com.ruoyi.quartz.task;
import com.ruoyi.alarm.globalAlarm.service.IGlobalAlarmService;
import com.ruoyi.alarm.stealAlarm.domain.ArdAlarmStealelec;
import com.ruoyi.alarm.stealAlarm.service.IStealElecAlarmService;
import com.ruoyi.common.core.domain.entity.SysUser;
import com.ruoyi.common.utils.LonlatConver;
import com.ruoyi.alarm.global.domain.GuidePriorityQueue;
import com.ruoyi.alarm.global.domain.GuideTask;
import com.ruoyi.alarm.global.service.IGlobalAlarmService;
import com.ruoyi.common.utils.spring.SpringUtils;
import com.ruoyi.common.websocket.util.WebSocketUtils;
import com.ruoyi.device.camera.service.IArdCamerasService;
import com.ruoyi.system.service.ISysUserService;
import com.ruoyi.utils.websocket.util.WebSocketUtils;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Component;
import javax.annotation.Resource;
import java.text.SimpleDateFormat;
import java.util.*;
import java.util.concurrent.PriorityBlockingQueue;
import static com.ruoyi.common.websocket.util.WebSocketUtils.ONLINE_USER_SESSIONS;
import static com.ruoyi.utils.websocket.util.WebSocketUtils.ONLINE_USER_SESSIONS;
/**
 * @ClassName: AlarmTask
@@ -26,7 +21,7 @@
 * @Version: 1.0
 **/
@Component("AlarmTask")
@Slf4j(topic = "AlarmTask")
@Slf4j
public class AlarmTask {
    /**
@@ -38,10 +33,30 @@
     * @修改人和其它信息
     */
    public void globalAlarmCountPush() {
        IGlobalAlarmService globalAlarmService = SpringUtils.getBean(IGlobalAlarmService.class);
        Map<String, Object> stringIntegerMap = globalAlarmService.selectAlarmLogsCount();
        if (ONLINE_USER_SESSIONS.size() > 0) {
        try {
            IGlobalAlarmService globalAlarmService = SpringUtils.getBean(IGlobalAlarmService.class);
            Map<String, Object> stringIntegerMap = globalAlarmService.selectAlarmLogsCount();
            if (ONLINE_USER_SESSIONS.size() > 0) {
                WebSocketUtils.sendMessageAll(stringIntegerMap);
            }
        } catch (Exception ex) {
            log.error("定时推送所有报警的点位数量异常:" + ex.getMessage());
        }
    }
}
    /**
     * 定时清空引导队列
     * 刘苏义
     * 2023/7/1 10:41
     */
    public void clearGuideQueue() {
        try {
            log.info("定时清理引导队列");
            for (PriorityBlockingQueue<GuideTask> guideQueue : GuidePriorityQueue.cameraQueueMap.values()) {
                guideQueue.clear();
            }
        } catch (Exception ex) {
            log.error("定时清空引导队列:" + ex.getMessage());
        }
    }
}