| | |
| | | import com.ruoyi.utils.gis.Point;
|
| | | import com.ruoyi.utils.sdk.common.GlobalVariable;
|
| | | import com.ruoyi.utils.tools.ArdTool;
|
| | | import com.sun.scenario.effect.impl.sw.sse.SSEBlend_SRC_OUTPeer;
|
| | | import lombok.extern.slf4j.Slf4j;
|
| | | import org.springframework.boot.ApplicationArguments;
|
| | | import org.springframework.boot.ApplicationRunner;
|
| | | import org.springframework.stereotype.Service;
|
| | |
|
| | | import javax.annotation.Resource;
|
| | | import java.util.*;
|
| | |
|
| | |
| | | */
|
| | | @Override
|
| | | public void run(ApplicationArguments args) {
|
| | |
|
| | | try {
|
| | | // 从ardCamerasService中获取ArdCameras列表
|
| | | List<ArdCameras> ardCameras = ardCamerasService.selectArdCamerasListNoDataScope(new ArdCameras());
|
| | | for (ArdCameras camera : ardCameras) {
|
| | | login(camera);
|
| | | asyncLogin(camera);
|
| | | }
|
| | | } catch (Exception ex) {
|
| | | // 初始化登录相机异常,记录错误日志
|
| | | log.error("初始化登录相机异常:" + ex.getMessage());
|
| | | }
|
| | | }
|
| | |
|
| | |
|
| | | //登录
|
| | | //同步登录
|
| | | @Override
|
| | | public Boolean login(ArdCameras ardCamera) {
|
| | | boolean result = false;
|
| | | public AjaxResult login(ArdCameras ardCamera) {
|
| | | try {
|
| | | if (ardCamera != null) {
|
| | | String factory = ardCamera.getFactory();
|
| | | CameraSDK cameraSDK = cameraSDKFactory.createCameraSDK(factory);
|
| | | //sdkStrategy.login(ardCamera);//同步登录
|
| | | cameraSDK.asyncLogin(ardCamera);//异步登录
|
| | | result = true;
|
| | | if (ardCamera == null) {
|
| | | return AjaxResult.warn("设备不存在");
|
| | | }
|
| | | String factory = ardCamera.getFactory();
|
| | | CameraSDK cameraSDK = cameraSDKFactory.createCameraSDK(factory);
|
| | | return cameraSDK.login(ardCamera);//同步登录
|
| | | } catch (Exception ex) {
|
| | | log.error("登录异常:" + ex.getMessage());
|
| | | return false;
|
| | | return AjaxResult.error("登录异常:" + ex.getMessage());
|
| | | }
|
| | | return result;
|
| | | }
|
| | |
|
| | | @Override
|
| | | public AjaxResult asyncLogin(ArdCameras ardCamera) {
|
| | | try {
|
| | | if (ardCamera == null) {
|
| | | return AjaxResult.warn("设备不存在");
|
| | | }
|
| | | String factory = ardCamera.getFactory();
|
| | | CameraSDK cameraSDK = cameraSDKFactory.createCameraSDK(factory);
|
| | | return cameraSDK.asyncLogin(ardCamera);//异步登录
|
| | | } catch (Exception ex) {
|
| | | log.error("登录异常:" + ex.getMessage());
|
| | | return AjaxResult.error("登录异常:" + ex.getMessage());
|
| | | }
|
| | | }
|
| | |
|
| | | //注销
|
| | |
| | | public AjaxResult pTZControl(CameraCmd cmd) {
|
| | | String cameraId = cmd.getCameraId();
|
| | | ArdCameras ardCamera = redisCache.getCacheObject(CacheConstants.CAMERA_LIST_KEY + cameraId);
|
| | | if (ardCamera != null) {
|
| | | String factory = ardCamera.getFactory();
|
| | | CameraSDK cameraSDK = cameraSDKFactory.createCameraSDK(factory);
|
| | | return cameraSDK.pTZControl(cmd);
|
| | | } else {
|
| | | return AjaxResult.error("摄像头不存在");
|
| | | if (ardCamera == null) {
|
| | | AjaxResult.warn("设备不存在");
|
| | | }
|
| | | String factory = ardCamera.getFactory();
|
| | | CameraSDK cameraSDK = cameraSDKFactory.createCameraSDK(factory);
|
| | | return cameraSDK.pTZControl(cmd);
|
| | | }
|
| | |
|
| | | //设置聚焦值
|
| | |
| | | try {
|
| | | String cameraId = cmd.getCameraId();
|
| | | ArdCameras ardCamera = redisCache.getCacheObject(CacheConstants.CAMERA_LIST_KEY + cameraId);
|
| | | if (ardCamera != null) {
|
| | | String factory = ardCamera.getFactory();
|
| | | CameraSDK cameraSDK = cameraSDKFactory.createCameraSDK(factory);
|
| | | return cameraSDK.setFocusPos(cmd);
|
| | | } else {
|
| | | return AjaxResult.error("摄像头不存在");
|
| | | if (ardCamera == null) {
|
| | | return AjaxResult.warn("设备不存在");
|
| | | }
|
| | | String factory = ardCamera.getFactory();
|
| | | CameraSDK cameraSDK = cameraSDKFactory.createCameraSDK(factory);
|
| | | return cameraSDK.setFocusPos(cmd);
|
| | | } catch (Exception ex) {
|
| | | log.error("设置聚焦值异常:" + ex.getMessage());
|
| | | return AjaxResult.error("设置聚焦值异常:" + ex.getMessage());
|
| | |
| | | try {
|
| | | String cameraId = cmd.getCameraId();
|
| | | ArdCameras ardCamera = redisCache.getCacheObject(CacheConstants.CAMERA_LIST_KEY + cameraId);
|
| | | if (ardCamera != null) {
|
| | | String factory = ardCamera.getFactory();
|
| | | CameraSDK cameraSDK = cameraSDKFactory.createCameraSDK(factory);
|
| | | return cameraSDK.getFocusPos(cmd);
|
| | | } else {
|
| | | return AjaxResult.error("摄像头不存在");
|
| | | if (ardCamera == null) {
|
| | | return AjaxResult.warn("设备不存在");
|
| | | }
|
| | | String factory = ardCamera.getFactory();
|
| | | CameraSDK cameraSDK = cameraSDKFactory.createCameraSDK(factory);
|
| | | return cameraSDK.getFocusPos(cmd);
|
| | | } catch (Exception ex) {
|
| | | log.error("获取聚焦值异常:" + ex.getMessage());
|
| | | return AjaxResult.error("获取聚焦值异常:" + ex.getMessage());
|
| | |
| | | try {
|
| | | String cameraId = cmd.getCameraId();
|
| | | ArdCameras ardCamera = redisCache.getCacheObject(CacheConstants.CAMERA_LIST_KEY + cameraId);
|
| | | if (ardCamera != null) {
|
| | | String factory = ardCamera.getFactory();
|
| | | CameraSDK cameraSDK = cameraSDKFactory.createCameraSDK(factory);
|
| | | return cameraSDK.setPreset(cmd);
|
| | | } else {
|
| | | return AjaxResult.error("摄像头不存在");
|
| | | if (ardCamera == null) {
|
| | | return AjaxResult.warn("设备不存在");
|
| | | }
|
| | | String factory = ardCamera.getFactory();
|
| | | CameraSDK cameraSDK = cameraSDKFactory.createCameraSDK(factory);
|
| | | return cameraSDK.setPreset(cmd);
|
| | | } catch (Exception ex) {
|
| | | log.error("设置预置位异常:" + ex.getMessage());
|
| | | return AjaxResult.error("设置预置位异常" + ex.getMessage());
|
| | |
| | | try {
|
| | | String cameraId = cmd.getCameraId();
|
| | | ArdCameras ardCamera = redisCache.getCacheObject(CacheConstants.CAMERA_LIST_KEY + cameraId);
|
| | | if (ardCamera != null) {
|
| | | String factory = ardCamera.getFactory();
|
| | | CameraSDK cameraSDK = cameraSDKFactory.createCameraSDK(factory);
|
| | | return cameraSDK.gotoPreset(cmd);
|
| | | } else {
|
| | | return AjaxResult.error("摄像头不存在");
|
| | | if (ardCamera == null) {
|
| | | return AjaxResult.warn("设备不存在");
|
| | | }
|
| | | String factory = ardCamera.getFactory();
|
| | | CameraSDK cameraSDK = cameraSDKFactory.createCameraSDK(factory);
|
| | | return cameraSDK.gotoPreset(cmd);
|
| | | } catch (Exception ex) {
|
| | | log.error("调用预置位异常:" + ex.getMessage());
|
| | | return AjaxResult.error("调用预置位异常" + ex.getMessage());
|
| | |
| | | try {
|
| | | String cameraId = cmd.getCameraId();
|
| | | ArdCameras ardCamera = redisCache.getCacheObject(CacheConstants.CAMERA_LIST_KEY + cameraId);
|
| | | if (ardCamera != null) {
|
| | | String factory = ardCamera.getFactory();
|
| | | CameraSDK cameraSDK = cameraSDKFactory.createCameraSDK(factory);
|
| | | map = cameraSDK.getVideoCompressionCfg(cmd);
|
| | | if (ardCamera == null) {
|
| | | return new HashMap<>();
|
| | | }
|
| | | String factory = ardCamera.getFactory();
|
| | | CameraSDK cameraSDK = cameraSDKFactory.createCameraSDK(factory);
|
| | | map = cameraSDK.getVideoCompressionCfg(cmd);
|
| | | } catch (Exception ex) {
|
| | | log.error("获取码流压缩参数异常:" + ex.getMessage());
|
| | | }
|
| | |
| | | try {
|
| | | String cameraId = cmd.getCameraId();
|
| | | ArdCameras ardCamera = redisCache.getCacheObject(CacheConstants.CAMERA_LIST_KEY + cameraId);
|
| | | if (ardCamera != null) {
|
| | | String factory = ardCamera.getFactory();
|
| | | CameraSDK cameraSDK = cameraSDKFactory.createCameraSDK(factory);
|
| | | return cameraSDK.controlDefogcfg(cmd);
|
| | | } else {
|
| | | return AjaxResult.error("摄像头不存在");
|
| | | if (ardCamera == null) {
|
| | | return AjaxResult.warn("设备不存在");
|
| | | }
|
| | | String factory = ardCamera.getFactory();
|
| | | CameraSDK cameraSDK = cameraSDKFactory.createCameraSDK(factory);
|
| | | return cameraSDK.controlDefogcfg(cmd);
|
| | | } catch (Exception ex) {
|
| | | log.error("操控透雾异常:" + ex.getMessage());
|
| | | return AjaxResult.error("操控透雾异常" + ex.getMessage());
|
| | |
| | | try {
|
| | | String cameraId = cmd.getCameraId();
|
| | | ArdCameras ardCamera = redisCache.getCacheObject(CacheConstants.CAMERA_LIST_KEY + cameraId);
|
| | | if (ardCamera != null) {
|
| | | String factory = ardCamera.getFactory();
|
| | | CameraSDK cameraSDK = cameraSDKFactory.createCameraSDK(factory);
|
| | | return cameraSDK.controlInfrarecfg(cmd);
|
| | | } else {
|
| | | return AjaxResult.error("摄像头不存在");
|
| | | if (ardCamera == null) {
|
| | | return AjaxResult.warn("设备不存在");
|
| | | }
|
| | | String factory = ardCamera.getFactory();
|
| | | CameraSDK cameraSDK = cameraSDKFactory.createCameraSDK(factory);
|
| | | return cameraSDK.controlInfrarecfg(cmd);
|
| | | } catch (Exception ex) {
|
| | | log.error("操控红外异常:" + ex.getMessage());
|
| | | return AjaxResult.error("操控红外异常:" + ex.getMessage());
|
| | |
| | | try {
|
| | | String cameraId = cmd.getCameraId();
|
| | | ArdCameras ardCamera = redisCache.getCacheObject(CacheConstants.CAMERA_LIST_KEY + cameraId);
|
| | | if (ardCamera != null) {
|
| | | String factory = ardCamera.getFactory();
|
| | | CameraSDK cameraSDK = cameraSDKFactory.createCameraSDK(factory);
|
| | | return cameraSDK.controlFocusMode(cmd);
|
| | | } else {
|
| | | return AjaxResult.error("摄像头不存在");
|
| | | if (ardCamera == null) {
|
| | | return AjaxResult.warn("设备不存在");
|
| | | }
|
| | | String factory = ardCamera.getFactory();
|
| | | CameraSDK cameraSDK = cameraSDKFactory.createCameraSDK(factory);
|
| | | return cameraSDK.controlFocusMode(cmd);
|
| | | } catch (Exception ex) {
|
| | | log.error("操控聚焦模式异常:" + ex.getMessage());
|
| | | return AjaxResult.error("操控聚焦模式异常:" + ex.getMessage());
|
| | |
| | | try {
|
| | | String cameraId = cmd.getCameraId();
|
| | | ArdCameras ardCamera = redisCache.getCacheObject(CacheConstants.CAMERA_LIST_KEY + cameraId);
|
| | | if (ardCamera != null) {
|
| | | String factory = ardCamera.getFactory();
|
| | | CameraSDK cameraSDK = cameraSDKFactory.createCameraSDK(factory);
|
| | | return cameraSDK.getFocusMode(cmd);
|
| | | } else {
|
| | | return AjaxResult.error("摄像头不存在");
|
| | | if (ardCamera == null) {
|
| | | return AjaxResult.warn("设备不存在");
|
| | | }
|
| | | String factory = ardCamera.getFactory();
|
| | | CameraSDK cameraSDK = cameraSDKFactory.createCameraSDK(factory);
|
| | | return cameraSDK.getFocusMode(cmd);
|
| | | } catch (Exception ex) {
|
| | | log.error("获取聚焦模式异常:" + ex.getMessage());
|
| | | return AjaxResult.error("获取聚焦模式异常:" + ex.getMessage());
|
| | |
| | | //云台加热
|
| | | @Override
|
| | | public AjaxResult controlPTHeateRpwron(CameraCmd cmd) {
|
| | |
|
| | | try {
|
| | | String cameraId = cmd.getCameraId();
|
| | | ArdCameras ardCamera = redisCache.getCacheObject(CacheConstants.CAMERA_LIST_KEY + cameraId);
|
| | | if (ardCamera != null) {
|
| | | String factory = ardCamera.getFactory();
|
| | | CameraSDK cameraSDK = cameraSDKFactory.createCameraSDK(factory);
|
| | | return cameraSDK.controlPTHeateRpwron(cmd);
|
| | | } else {
|
| | | return AjaxResult.error("摄像头不存在");
|
| | | if (ardCamera == null) {
|
| | | return AjaxResult.warn("设备不存在");
|
| | | }
|
| | | String factory = ardCamera.getFactory();
|
| | | CameraSDK cameraSDK = cameraSDKFactory.createCameraSDK(factory);
|
| | | return cameraSDK.controlPTHeateRpwron(cmd);
|
| | | } catch (Exception ex) {
|
| | | log.error("操控云台加热异常:" + ex.getMessage());
|
| | | return AjaxResult.error("操控云台加热异常:" + ex.getMessage());
|
| | | }
|
| | |
|
| | | }
|
| | |
|
| | | //镜头加热
|
| | | @Override
|
| | | public AjaxResult controlCameraDeicing(CameraCmd cmd) {
|
| | |
|
| | | try {
|
| | | String cameraId = cmd.getCameraId();
|
| | | ArdCameras ardCamera = redisCache.getCacheObject(CacheConstants.CAMERA_LIST_KEY + cameraId);
|
| | | if (ardCamera != null) {
|
| | | String factory = ardCamera.getFactory();
|
| | | CameraSDK cameraSDK = cameraSDKFactory.createCameraSDK(factory);
|
| | | return cameraSDK.controlCameraDeicing(cmd);
|
| | | } else {
|
| | | return AjaxResult.error("摄像头不存在");
|
| | | if (ardCamera == null) {
|
| | | return AjaxResult.warn("设备不存在");
|
| | | }
|
| | | String factory = ardCamera.getFactory();
|
| | | CameraSDK cameraSDK = cameraSDKFactory.createCameraSDK(factory);
|
| | | return cameraSDK.controlCameraDeicing(cmd);
|
| | | } catch (Exception ex) {
|
| | | log.error("操控云台加热异常:" + ex.getMessage());
|
| | | return AjaxResult.error("操控云台加热异常:" + ex.getMessage());
|
| | |
| | | try {
|
| | | String cameraId = cmd.getCameraId();
|
| | | ArdCameras ardCamera = redisCache.getCacheObject(CacheConstants.CAMERA_LIST_KEY + cameraId);
|
| | | if (ardCamera != null) {
|
| | | String factory = ardCamera.getFactory();
|
| | | CameraSDK cameraSDK = cameraSDKFactory.createCameraSDK(factory);
|
| | | return cameraSDK.getPTZLockInfo(cmd);
|
| | | } else {
|
| | | return AjaxResult.error("摄像头不存在");
|
| | | if (ardCamera == null) {
|
| | | return AjaxResult.warn("设备不存在");
|
| | | }
|
| | | String factory = ardCamera.getFactory();
|
| | | CameraSDK cameraSDK = cameraSDKFactory.createCameraSDK(factory);
|
| | | return cameraSDK.getPTZLockInfo(cmd);
|
| | | } catch (Exception ex) {
|
| | | log.error("获取云台锁定信息异常:" + ex.getMessage());
|
| | | return AjaxResult.error("获取云台锁定信息异常:" + ex.getMessage());
|
| | | }
|
| | | }
|
| | |
|
| | | //本地抓图
|
| | | @Override
|
| | | public String captureJPEGPicture(CameraCmd cmd) {
|
| | | return null;
|
| | | public AjaxResult localCapture(CameraCmd cmd) {
|
| | | try {
|
| | | String cameraId = cmd.getCameraId();
|
| | | ArdCameras ardCamera = redisCache.getCacheObject(CacheConstants.CAMERA_LIST_KEY + cameraId);
|
| | | if (ardCamera == null) {
|
| | | return AjaxResult.warn("设备不存在");
|
| | | }
|
| | | String factory = ardCamera.getFactory();
|
| | | CameraSDK cameraSDK = cameraSDKFactory.createCameraSDK(factory);
|
| | | return cameraSDK.localCapture(cmd);
|
| | | } catch (Exception ex) {
|
| | | log.error("手动抓图异常:" + ex.getMessage());
|
| | | return AjaxResult.error("手动抓图异常:" + ex.getMessage());
|
| | | }
|
| | | }
|
| | |
|
| | | //抓图
|
| | |
| | | try {
|
| | | String cameraId = cmd.getCameraId();
|
| | | ArdCameras ardCamera = redisCache.getCacheObject(CacheConstants.CAMERA_LIST_KEY + cameraId);
|
| | | if (ardCamera != null) {
|
| | | String factory = ardCamera.getFactory();
|
| | | CameraSDK cameraSDK = cameraSDKFactory.createCameraSDK(factory);
|
| | | String gdtype = ardCamera.getGdtype();
|
| | | if (gdtype.equals("1")) {
|
| | | return cameraSDK.getPtzHigh(cmd);
|
| | | } else {
|
| | | return cameraSDK.getPtz(cmd);
|
| | | }
|
| | | if (ardCamera == null) {
|
| | | return AjaxResult.warn("设备不存在");
|
| | | }
|
| | | String factory = ardCamera.getFactory();
|
| | | CameraSDK cameraSDK = cameraSDKFactory.createCameraSDK(factory);
|
| | | String gdtype = ardCamera.getGdtype();
|
| | | if (gdtype.equals("1")) {
|
| | | return cameraSDK.getPtzHigh(cmd);
|
| | | } else {
|
| | | return AjaxResult.error("摄像头不存在");
|
| | | return cameraSDK.getPtz(cmd);
|
| | | }
|
| | | } catch (Exception ex) {
|
| | | log.error("获取ptz异常:" + ex.getMessage());
|
| | |
| | | try {
|
| | | String cameraId = cmd.getCameraId();
|
| | | ArdCameras ardCamera = redisCache.getCacheObject(CacheConstants.CAMERA_LIST_KEY + cameraId);
|
| | | if (ardCamera != null) {
|
| | | String factory = ardCamera.getFactory();
|
| | | CameraSDK cameraSDK = cameraSDKFactory.createCameraSDK(factory);
|
| | | return cameraSDK.getPtzScope(cmd);
|
| | | } else {
|
| | | return AjaxResult.error("摄像头不存在");
|
| | | if (ardCamera == null) {
|
| | | return AjaxResult.warn("设备不存在");
|
| | | }
|
| | | String factory = ardCamera.getFactory();
|
| | | CameraSDK cameraSDK = cameraSDKFactory.createCameraSDK(factory);
|
| | | return cameraSDK.getPtzScope(cmd);
|
| | | } catch (Exception ex) {
|
| | | log.error("获取ptz范围异常:" + ex.getMessage());
|
| | | return AjaxResult.error("获取ptz范围异常:" + ex.getMessage());
|
| | |
| | | String cameraId = cmd.getCameraId();
|
| | | ArdCameras ardCamera = redisCache.getCacheObject(CacheConstants.CAMERA_LIST_KEY + cameraId);
|
| | | if (ardCamera == null) {
|
| | | return AjaxResult.error("摄像头不存在");
|
| | | return AjaxResult.warn("设备不存在");
|
| | | }
|
| | | CameraSDK cameraSDK = cameraSDKFactory.createCameraSDK(ardCamera.getFactory());
|
| | | String gdtype = ardCamera.getGdtype();
|
| | |
| | | } else {
|
| | | return cameraSDK.setPtz(cmd);
|
| | | }
|
| | |
|
| | | } catch (Exception ex) {
|
| | | log.error("设置ptz异常:" + ex.getMessage());
|
| | | return AjaxResult.error("设置ptz异常:" + ex.getMessage());
|
| | | return AjaxResult.error("设置ptz异常:" + ex.getMessage());
|
| | | }
|
| | | }
|
| | |
|
| | |
| | | try {
|
| | | String cameraId = cmd.getCameraId();
|
| | | ArdCameras ardCamera = redisCache.getCacheObject(CacheConstants.CAMERA_LIST_KEY + cameraId);
|
| | | if (ardCamera != null) {
|
| | | String factory = ardCamera.getFactory();
|
| | | CameraSDK cameraSDK = cameraSDKFactory.createCameraSDK(factory);
|
| | | return cameraSDK.setZeroPtz(cmd);
|
| | | } else {
|
| | | return AjaxResult.error("摄像头不存在");
|
| | | if (ardCamera == null) {
|
| | | return AjaxResult.warn("设备不存在");
|
| | | }
|
| | | String factory = ardCamera.getFactory();
|
| | | CameraSDK cameraSDK = cameraSDKFactory.createCameraSDK(factory);
|
| | | return cameraSDK.setZeroPtz(cmd);
|
| | | } catch (Exception ex) {
|
| | | log.error("设置零方位角异常:" + ex.getMessage());
|
| | | return AjaxResult.error("设置零方位角异常:" + ex.getMessage());
|
| | |
| | | try {
|
| | | String cameraId = cmd.getCameraId();
|
| | | ArdCameras ardCamera = redisCache.getCacheObject(CacheConstants.CAMERA_LIST_KEY + cameraId);
|
| | | if (ardCamera != null) {
|
| | | String factory = ardCamera.getFactory();
|
| | | CameraSDK cameraSDK = cameraSDKFactory.createCameraSDK(factory);
|
| | | return cameraSDK.guideTargetPosition(cmd);
|
| | | } else {
|
| | | return AjaxResult.error("摄像头不存在");
|
| | | if (ardCamera == null) {
|
| | | return AjaxResult.warn("设备不存在");
|
| | | }
|
| | | String factory = ardCamera.getFactory();
|
| | | CameraSDK cameraSDK = cameraSDKFactory.createCameraSDK(factory);
|
| | | return cameraSDK.guideTargetPosition(cmd);
|
| | | } catch (Exception ex) {
|
| | | log.error("引导指向目标异常:" + ex.getMessage());
|
| | | return AjaxResult.error("引导指向目标异常:" + ex.getMessage());
|
| | |
| | | //获取井
|
| | | ArdAlarmpointsWell well = ardAlarmpointsWellService.selectArdAlarmpointsWellById(cmd.getWellId());
|
| | | if (well == null) {
|
| | | return AjaxResult.error("井不存在");
|
| | | return AjaxResult.warn("井不存在");
|
| | | }
|
| | | GuidePoint guidePoint = new GuidePoint().setLongitude(well.getLongitude()).setLatitude(well.getLatitude());
|
| | | cmd.setTargetPosition(new double[]{guidePoint.getLongitude(), guidePoint.getLatitude()});
|
| | |
| | | String cameraId = getCameraByNear(new double[]{well.getLongitude(), well.getLatitude()});
|
| | | cmd.setCameraId(cameraId);
|
| | | if ("".equals(cameraId)) {
|
| | | return AjaxResult.error("未找到引导相机");
|
| | | return AjaxResult.warn("未找到引导相机");
|
| | | }
|
| | | //判断禁引区
|
| | | if (isInPolygon(cameraId, new Double[]{well.getLongitude(), well.getLatitude()})) {
|
| | | return AjaxResult.error("井位置属于相机禁止引导区域");
|
| | | return AjaxResult.warn("井位置属于相机禁止引导区域");
|
| | | }
|
| | | //按井坐标开始引导
|
| | | if (!guideTargetPosition(cmd).get("code").equals(200)) {
|
| | | return AjaxResult.error("井坐标引导失败", "cameraId:" + cameraId);
|
| | | return AjaxResult.warn("井坐标引导失败", "cameraId:" + cameraId);
|
| | | }
|
| | | return AjaxResult.success("井坐标引导成功", "cameraId:" + cameraId);
|
| | |
|
| | |
| | | public AjaxResult controlLock(CameraCmd cmd) {
|
| | | String cameraId = cmd.getCameraId();//申请锁的相机
|
| | | ArdCameras ardCameras = ardCamerasService.selectArdCamerasById(cameraId);
|
| | | if(ardCameras==null)
|
| | | {
|
| | | return AjaxResult.error("设备未登录");
|
| | | if (ardCameras == null) {
|
| | | return AjaxResult.warn("设备不存在");
|
| | | }
|
| | | Date now = new Date();
|
| | | now.setTime(now.getTime() + cmd.getExpired() * 1000);
|
| | |
| | | String cameraId = cmd.getCameraId();//申请解锁的相机
|
| | | String operator = cmd.getOperator();//申请者
|
| | | ArdCameras ardCameras = ardCamerasService.selectArdCamerasById(cameraId);
|
| | | if(ardCameras==null)
|
| | | {
|
| | | return AjaxResult.error("设备未登录");
|
| | | if (ardCameras == null) {
|
| | | return AjaxResult.warn("设备不存在");
|
| | | }
|
| | | if (ardCameras.getOperatorId().equals(operator)) {
|
| | | //如果解锁相机的当前用户是申请者,则清空该相机的过期时间
|
| | |
| | | try {
|
| | | String cameraId = cmd.getCameraId();
|
| | | ArdCameras ardCamera = redisCache.getCacheObject(CacheConstants.CAMERA_LIST_KEY + cameraId);
|
| | | if (ardCamera != null) {
|
| | | String factory = ardCamera.getFactory();
|
| | | CameraSDK cameraSDK = cameraSDKFactory.createCameraSDK(factory);
|
| | | return cameraSDK.getGisInfo(cmd);
|
| | | } else {
|
| | | return AjaxResult.error("相机不存在");
|
| | | if (ardCamera == null) {
|
| | | return AjaxResult.warn("设备不存在");
|
| | | }
|
| | | String factory = ardCamera.getFactory();
|
| | | CameraSDK cameraSDK = cameraSDKFactory.createCameraSDK(factory);
|
| | | return cameraSDK.getGisInfo(cmd);
|
| | | } catch (Exception ex) {
|
| | | log.error("获取相机架设参数异常:" + ex.getMessage());
|
| | | return AjaxResult.error("获取相机架设参数异常:" + ex.getMessage());
|
| | | }
|
| | | }
|
| | |
|
| | | //本地录像开始
|
| | | @Override
|
| | | public AjaxResult localRecordStart(CameraCmd cmd) {
|
| | | try {
|
| | | String cameraId = cmd.getCameraId();
|
| | | ArdCameras ardCamera = redisCache.getCacheObject(CacheConstants.CAMERA_LIST_KEY + cameraId);
|
| | | if (ardCamera == null) {
|
| | | return AjaxResult.warn("设备不存在");
|
| | | }
|
| | | String factory = ardCamera.getFactory();
|
| | | CameraSDK cameraSDK = cameraSDKFactory.createCameraSDK(factory);
|
| | | return cameraSDK.localRecordStart(cmd);
|
| | | } catch (Exception ex) {
|
| | | log.error("本地录像开始异常:" + ex.getMessage());
|
| | | return AjaxResult.error("本地录像开始异常:" + ex.getMessage());
|
| | | }
|
| | | }
|
| | |
|
| | | //本地录像停止
|
| | | @Override
|
| | | public AjaxResult localRecordStop(CameraCmd cmd) {
|
| | | try {
|
| | | String cameraId = cmd.getCameraId();
|
| | | ArdCameras ardCamera = redisCache.getCacheObject(CacheConstants.CAMERA_LIST_KEY + cameraId);
|
| | | if (ardCamera == null) {
|
| | | return AjaxResult.warn("设备不存在");
|
| | | }
|
| | | String factory = ardCamera.getFactory();
|
| | | CameraSDK cameraSDK = cameraSDKFactory.createCameraSDK(factory);
|
| | | return cameraSDK.localRecordStop(cmd);
|
| | | } catch (Exception ex) {
|
| | | log.error("本地录像停止异常:" + ex.getMessage());
|
| | | return AjaxResult.error("本地录像停止异常:" + ex.getMessage());
|
| | | }
|
| | | }
|
| | | }
|