‘liusuyi’
2023-07-04 d70903ea176f6856636ef57dffac73feaae56bac
ard-work/src/main/java/com/ruoyi/device/hiksdk/util/hikSdkUtil/LoginResultCallBack.java
@@ -5,6 +5,7 @@
import com.ruoyi.common.utils.spring.SpringUtils;
import com.ruoyi.device.camera.domain.ArdCameras;
import com.ruoyi.device.camera.mapper.ArdCamerasMapper;
import com.ruoyi.device.camera.service.IArdCamerasService;
import com.ruoyi.device.hiksdk.common.GlobalVariable;
import com.sun.jna.Pointer;
import lombok.extern.slf4j.Slf4j;
@@ -13,6 +14,7 @@
import javax.annotation.Resource;
import java.util.Comparator;
import java.util.PriorityQueue;
import java.util.concurrent.PriorityBlockingQueue;
/**
 * @Description: 异步登录回调
@@ -25,6 +27,7 @@
public class LoginResultCallBack implements HCNetSDK.FLoginResultCallBack {
    private ArdCameras camera;
    public LoginResultCallBack(ArdCameras camera) {
        this.camera = camera;
    }
@@ -41,15 +44,15 @@
            camera.setChannel((int) lpDeviceinfo.byChanNum);
            //创建引导队列
            Comparator<GuideTask> comparator = GuidePriorityQueue.getComparator();
            PriorityQueue<GuideTask> priorityQueue=new PriorityQueue<>(comparator);
            GuidePriorityQueue.cameraQueueMap.put(camera.getId(),priorityQueue);
            PriorityBlockingQueue<GuideTask> priorityQueue = new PriorityBlockingQueue<>(1000,comparator);
            GuidePriorityQueue.cameraQueueMap.put(camera.getId(), priorityQueue);
        } else {
            log.info(camera.getIp() + ":" + camera.getPort() + "登录失败");
            camera.setChannel(0);
            camera.setLoginId(-1);
        }
        ArdCamerasMapper ardCamerasMapper = SpringUtils.getBean(ArdCamerasMapper.class);
        ardCamerasMapper.updateArdCameras(camera);
        IArdCamerasService ardCamerasService = SpringUtils.getBean(IArdCamerasService.class);
        ardCamerasService.updateArdCameras(camera);
        return 1;
    }
}