aijinhui
2023-10-24 8a8a13eb80498e9b905b47b8dc4d52cd8fdb8497
ruoyi-quartz/src/main/java/com/ruoyi/quartz/task/PushTask.java
@@ -1,7 +1,5 @@
package com.ruoyi.quartz.task;
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.constant.CacheConstants;
import com.ruoyi.common.core.domain.entity.SysUser;
@@ -11,20 +9,20 @@
import com.ruoyi.common.utils.spring.SpringUtils;
import com.ruoyi.device.camera.domain.ArdCameras;
import com.ruoyi.device.camera.domain.CameraCmd;
import com.ruoyi.device.camera.service.ICameraSdkService;
import com.ruoyi.device.hiksdk.common.GlobalVariable;
import com.ruoyi.device.hiksdk.service.IHikClientService;
import com.ruoyi.utils.websocket.util.WebSocketUtils;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Component;
import javax.annotation.Resource;
import java.util.*;
import java.util.concurrent.PriorityBlockingQueue;
import static com.ruoyi.utils.websocket.util.WebSocketUtils.ONLINE_USER_SESSIONS;
/**
 * @ClassName: AlarmTask
 * @Description:
 * @Description: 推送任务
 * @Author: Administrator
 * @Date: 2023年03月06日 11:13
 * @Version: 1.0
@@ -33,6 +31,12 @@
@Slf4j
public class PushTask {
    @Resource
    RedisCache redisCache;
    @Resource
    ICameraSdkService cameraSdkService;
    @Resource
    IGlobalAlarmService globalAlarmService;
    /**
     * @描述 定时推送所有报警的点位数量
     * @参数 []
@@ -43,7 +47,6 @@
     */
    public void globalAlarmCountPush() {
        try {
            IGlobalAlarmService globalAlarmService = SpringUtils.getBean(IGlobalAlarmService.class);
            Map<String, Object> stringIntegerMap = globalAlarmService.selectAlarmLogsCount();
            if (ONLINE_USER_SESSIONS.size() > 0) {
                WebSocketUtils.sendMessageAll(stringIntegerMap);
@@ -64,8 +67,6 @@
     */
    public void ptzPush() {
        try {
            RedisCache redisCache = SpringUtils.getBean(RedisCache.class);
            IHikClientService hikClientService = SpringUtils.getBean(IHikClientService.class);
            List<Map<String, Object>> list = new ArrayList<>();
            List<Object> Objects = redisCache.getListKey(CacheConstants.CAMERA_LIST_KEY);
            if (Objects.size() > 0) {
@@ -75,7 +76,6 @@
                    {
                        continue;
                    }
                    //推送大光电
                    if(!"1".equals(camera.getGdtype()))
                    {
                        continue;
@@ -85,12 +85,12 @@
                    cmd.setChanNo(1);
                    cmd.setOperator(camera.getOperatorId());
                    //推送在线的相机
                    boolean onLine = hikClientService.isOnLine(cmd);
                    boolean onLine = cameraSdkService.isOnLine(cmd);
                    if(!onLine)
                    {
                        continue;
                    }
                    Map<String, Object> ptz = hikClientService.getGisInfo(cmd);
                    Map<String, Object> ptz = cameraSdkService.getGisInfo(cmd);
                    if (StringUtils.isNull(ptz)) {
                        continue;
                    }