| | |
| | | package com.ruoyi.quartz.task; |
| | | |
| | | import com.ruoyi.alarm.globalAlarm.domain.GuidePriorityQueue; |
| | | import com.ruoyi.alarm.globalAlarm.domain.GuideTask; |
| | | 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 |
| | |
| | | * @修改人和其它信息 |
| | | */ |
| | | 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() { |
| | | log.info("定时清理引导队列"); |
| | | for(PriorityBlockingQueue<GuideTask> guideQueue:GuidePriorityQueue.cameraQueueMap.values()) |
| | | { |
| | | guideQueue.clear(); |
| | | try { |
| | | log.info("定时清理引导队列"); |
| | | for (PriorityBlockingQueue<GuideTask> guideQueue : GuidePriorityQueue.cameraQueueMap.values()) { |
| | | guideQueue.clear(); |
| | | } |
| | | } catch (Exception ex) { |
| | | log.error("定时清空引导队列:" + ex.getMessage()); |
| | | } |
| | | } |
| | | } |