‘liusuyi’
2024-03-09 bfebb3257d57c7b1906a09ac3b76af1bc9e62d25
ard-work/src/main/java/com/ruoyi/utils/sdk/dhsdk/service/impl/DahuaSDK.java
@@ -3,6 +3,8 @@
import com.ruoyi.alarm.global.domain.GuidePriorityQueue;
import com.ruoyi.alarm.global.domain.GuideTask;
import com.ruoyi.alarm.global.service.impl.QueueHandler;
import com.ruoyi.common.annotation.SdkOperate;
import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.common.utils.file.FileUtils;
import com.ruoyi.common.utils.file.MimeTypeUtils;
import com.ruoyi.common.utils.spring.SpringUtils;
@@ -18,6 +20,7 @@
import com.ruoyi.utils.gis.GisUtil;
import com.ruoyi.utils.minio.MinioUtil;
import com.ruoyi.utils.sdk.common.GlobalVariable;
import com.ruoyi.utils.sdk.dhsdk.common.ErrorCode;
import com.ruoyi.utils.sdk.dhsdk.lib.NetSDKLib;
import com.ruoyi.utils.sdk.dhsdk.lib.enumeration.EM_NEW_CONFIG;
import com.ruoyi.utils.sdk.dhsdk.lib.enumeration.NET_EM_CFG_OPERATE_TYPE;
@@ -315,14 +318,15 @@
     * 2023/10/17 8:28:13
     */
    @Override
    public boolean pTZControl(CameraCmd cmd) {
    @SdkOperate
    public AjaxResult pTZControl(CameraCmd cmd) {
        String cameraId = cmd.getCameraId();
        boolean enable = cmd.isEnable();
        Integer chanNo = cmd.getChanNo();
        Integer speed = cmd.getSpeed();
        Integer code = cmd.getCode();
        if (!GlobalVariable.loginMap.containsKey(cameraId)) {
            return false;
            return AjaxResult.error("设备未登录");
        }
        NetSDKLib.LLong loginId = (NetSDKLib.LLong) GlobalVariable.loginMap.get(cameraId);
        int dwStop;
@@ -389,8 +393,9 @@
        boolean bool = PtzControlModule.ptzControl(loginId, chanNo - 1, dwPTZCommand, speed, speed, 0, dwStop);
        if (!bool) {
            log.error("控制失败,请稍后重试" + getErrorCodePrint());
            return AjaxResult.error(ErrorCode.getErrorCode(LoginModule.netsdk.CLIENT_GetLastError()));
        }
        return bool;
        return AjaxResult.success();
    }
    /**
@@ -427,8 +432,8 @@
    }
    @Override
    public boolean setPtz1(CameraCmd cmd) {
        return false;
    public AjaxResult setPtz1(CameraCmd cmd) {
        return setPtz(cmd) ;
    }
    /**
@@ -440,12 +445,13 @@
     * @修改人和其它信息 注意俯仰角度负值需要加上360得到的正值进行设置
     */
    @Override
    public boolean setPtz(CameraCmd cmd) {
    @SdkOperate
    public AjaxResult setPtz(CameraCmd cmd) {
        String cameraId = cmd.getCameraId();
        Integer chanNo = cmd.getChanNo();
        Map<String, Double> ptz = cmd.getPtzMap();
        if (!GlobalVariable.loginMap.containsKey(cameraId)) {
            return false;
            return AjaxResult.error("设备未登录");
        }
        LLong loginId = (LLong) GlobalVariable.loginMap.get(cameraId);
        try {
@@ -457,11 +463,12 @@
            boolean bool = netsdk.CLIENT_DHPTZControlEx(loginId, chanNo - 1, NetSDKLib.NET_EXTPTZ_ControlType.NET_EXTPTZ_EXACTGOTO, p, t, z, 0);
            if (!bool) {
                log.error("控制失败,请稍后重试" + getErrorCodePrint());
                return AjaxResult.error(ErrorCode.getErrorCode(LoginModule.netsdk.CLIENT_GetLastError()));
            }
            return bool;
            return AjaxResult.success();
        } catch (Exception ex) {
            log.error(ex.getMessage());
            return false;
            return AjaxResult.error(ex.getMessage());
        }
    }
@@ -474,6 +481,7 @@
     * @修改人和其它信息 注意俯仰角度负值需要加上360得到的正值进行设置
     */
    @Override
    @SdkOperate
    public boolean setZeroPtz(CameraCmd cmd) {
        String cameraId = cmd.getCameraId();
        Integer chanNo = cmd.getChanNo();
@@ -517,6 +525,11 @@
    }
    @Override
    public Map<String, Object> getPtz1(CameraCmd cmd) {
        return null;
    }
    /**
     * @描述 短时录像
     * @参数 [userId, channelNum, enable]