ard-work/src/main/java/com/ruoyi/device/camera/factory/CameraSDK.java
文件名从 ard-work/src/main/java/com/ruoyi/device/camera/strategy/SdkStrategy.java 修改 @@ -1,4 +1,4 @@ package com.ruoyi.device.camera.strategy; package com.ruoyi.device.camera.factory; import com.ruoyi.device.camera.domain.ArdCameras; import com.ruoyi.device.camera.domain.CameraCmd; @@ -11,7 +11,7 @@ * 刘苏义 * 2023/11/7 10:48:52 */ public interface SdkStrategy { public interface CameraSDK { //同步登录 boolean login(ArdCameras cameras); @@ -85,7 +85,6 @@ //手动录像 String record(CameraCmd cmd); //引导目标位置 boolean guideTargetPosition(CameraCmd cmd); @@ -99,8 +98,8 @@ boolean recordStopNotToMinio(CameraCmd cmd); //获取相机通道信息 public List<ArdChannel> getCameraChannelList(ArdCameras camera); List<ArdChannel> getCameraChannelList(ArdCameras camera); //获取GIS信息数据 public Map<String, Object> getGisInfo(CameraCmd cmd); Map<String, Object> getGisInfo(CameraCmd cmd); } ard-work/src/main/java/com/ruoyi/device/camera/factory/CameraSDKFactory.java
对比新文件 @@ -0,0 +1,42 @@ package com.ruoyi.device.camera.factory; import com.ruoyi.utils.sdk.dhsdk.service.impl.DahuaSDK; import com.ruoyi.utils.sdk.hiksdk.service.impl.HikvisionSDK; import org.springframework.stereotype.Component; import javax.annotation.Resource; /** * @Description: SDK策略工厂类 * @ClassName: SdkStrategyFactory * @Author: 刘苏义 * @Date: 2023年11月07日10:53:00 **/ @Component public class CameraSDKFactory { @Resource private HikvisionSDK hikvisionSDK; @Resource private DahuaSDK dahuaSDK; /** * 根据传入的工厂参数创建相应的相机SDK实例 * * @param factory 工厂参数,用于确定要创建的相机SDK类型 * @return 创建的相机SDK实例 * @throws IllegalArgumentException 如果传入的工厂参数不支持 */ public CameraSDK createCameraSDK(String factory) { if (factory.equals("1")) { return hikvisionSDK; } else if (factory.equals("2")) { return dahuaSDK; } else { throw new IllegalArgumentException("Unsupported device: " + factory); } } } ard-work/src/main/java/com/ruoyi/device/camera/service/impl/CameraSdkServiceImpl.java
@@ -7,8 +7,8 @@ import com.ruoyi.device.camera.domain.CameraCmd; import com.ruoyi.device.camera.service.IArdCamerasService; import com.ruoyi.device.camera.service.ICameraSdkService; import com.ruoyi.device.camera.strategy.SdkStrategy; import com.ruoyi.device.camera.strategy.SdkStrategyFactory; import com.ruoyi.device.camera.factory.CameraSDK; import com.ruoyi.device.camera.factory.CameraSDKFactory; import lombok.extern.slf4j.Slf4j; import org.springframework.boot.ApplicationArguments; import org.springframework.boot.ApplicationRunner; @@ -34,7 +34,7 @@ @Resource private RedisCache redisCache; @Resource private SdkStrategyFactory sdkStrategyFactory; private CameraSDKFactory cameraSDKFactory; /** * 启动线程方法,用于执行初始化登录相机的逻辑 @@ -64,9 +64,9 @@ try { if (ardCamera != null) { String factory = ardCamera.getFactory(); SdkStrategy sdkStrategy = sdkStrategyFactory.getSdkStrategy(factory); CameraSDK cameraSDK = cameraSDKFactory.createCameraSDK(factory); //sdkStrategy.login(ardCamera);//同步登录 sdkStrategy.asyncLogin(ardCamera);//异步登录 cameraSDK.asyncLogin(ardCamera);//异步登录 result=true; } } catch (Exception ex) { @@ -84,8 +84,8 @@ ArdCameras ardCamera = redisCache.getCacheObject(CacheConstants.CAMERA_LIST_KEY + cameraId); if (ardCamera != null) { String factory = ardCamera.getFactory(); SdkStrategy sdkStrategy = sdkStrategyFactory.getSdkStrategy(factory); result = sdkStrategy.logout(cameraId); CameraSDK cameraSDK = cameraSDKFactory.createCameraSDK(factory); result = cameraSDK.logout(cameraId); } } catch (Exception ex) { log.error("注销异常:" + ex.getMessage()); @@ -103,8 +103,8 @@ ArdCameras ardCamera = redisCache.getCacheObject(CacheConstants.CAMERA_LIST_KEY + cameraId); if (ardCamera != null) { String factory = ardCamera.getFactory(); SdkStrategy sdkStrategy = sdkStrategyFactory.getSdkStrategy(factory); onLine = sdkStrategy.isOnLine(cmd); CameraSDK cameraSDK = cameraSDKFactory.createCameraSDK(factory); onLine = cameraSDK.isOnLine(cmd); } return onLine; } catch (Exception ex) { @@ -123,8 +123,8 @@ ArdCameras ardCamera = redisCache.getCacheObject(CacheConstants.CAMERA_LIST_KEY + cameraId); if (ardCamera != null) { String factory = ardCamera.getFactory(); SdkStrategy sdkStrategy = sdkStrategyFactory.getSdkStrategy(factory); result = sdkStrategy.pTZControl(cmd); CameraSDK cameraSDK = cameraSDKFactory.createCameraSDK(factory); result = cameraSDK.pTZControl(cmd); } return result; } catch (Exception ex) { @@ -142,8 +142,8 @@ ArdCameras ardCamera = redisCache.getCacheObject(CacheConstants.CAMERA_LIST_KEY + cameraId); if (ardCamera != null) { String factory = ardCamera.getFactory(); SdkStrategy sdkStrategy = sdkStrategyFactory.getSdkStrategy(factory); result = sdkStrategy.setFocusPos(cmd); CameraSDK cameraSDK = cameraSDKFactory.createCameraSDK(factory); result = cameraSDK.setFocusPos(cmd); } } catch (Exception ex) { log.error("设置聚焦值异常:" + ex.getMessage()); @@ -161,8 +161,8 @@ ArdCameras ardCamera = redisCache.getCacheObject(CacheConstants.CAMERA_LIST_KEY + cameraId); if (ardCamera != null) { String factory = ardCamera.getFactory(); SdkStrategy sdkStrategy = sdkStrategyFactory.getSdkStrategy(factory); result = sdkStrategy.getFocusPos(cmd); CameraSDK cameraSDK = cameraSDKFactory.createCameraSDK(factory); result = cameraSDK.getFocusPos(cmd); } } catch (Exception ex) { log.error("获取聚焦值异常:" + ex.getMessage()); @@ -180,8 +180,8 @@ ArdCameras ardCamera = redisCache.getCacheObject(CacheConstants.CAMERA_LIST_KEY + cameraId); if (ardCamera != null) { String factory = ardCamera.getFactory(); SdkStrategy sdkStrategy = sdkStrategyFactory.getSdkStrategy(factory); result = sdkStrategy.setPreset(cmd); CameraSDK cameraSDK = cameraSDKFactory.createCameraSDK(factory); result = cameraSDK.setPreset(cmd); } } catch (Exception ex) { log.error("设置预置位异常:" + ex.getMessage()); @@ -199,8 +199,8 @@ ArdCameras ardCamera = redisCache.getCacheObject(CacheConstants.CAMERA_LIST_KEY + cameraId); if (ardCamera != null) { String factory = ardCamera.getFactory(); SdkStrategy sdkStrategy = sdkStrategyFactory.getSdkStrategy(factory); result = sdkStrategy.gotoPreset(cmd); CameraSDK cameraSDK = cameraSDKFactory.createCameraSDK(factory); result = cameraSDK.gotoPreset(cmd); } } catch (Exception ex) { log.error("调用预置位异常:" + ex.getMessage()); @@ -217,8 +217,8 @@ ArdCameras ardCamera = redisCache.getCacheObject(CacheConstants.CAMERA_LIST_KEY + cameraId); if (ardCamera != null) { String factory = ardCamera.getFactory(); SdkStrategy sdkStrategy = sdkStrategyFactory.getSdkStrategy(factory); map = sdkStrategy.getVideoCompressionCfg(cmd); CameraSDK cameraSDK = cameraSDKFactory.createCameraSDK(factory); map = cameraSDK.getVideoCompressionCfg(cmd); } } catch (Exception ex) { log.error("获取码流压缩参数异常:" + ex.getMessage()); @@ -235,8 +235,8 @@ ArdCameras ardCamera = redisCache.getCacheObject(CacheConstants.CAMERA_LIST_KEY + cameraId); if (ardCamera != null) { String factory = ardCamera.getFactory(); SdkStrategy sdkStrategy = sdkStrategyFactory.getSdkStrategy(factory); result = sdkStrategy.controlDefogcfg(cmd); CameraSDK cameraSDK = cameraSDKFactory.createCameraSDK(factory); result = cameraSDK.controlDefogcfg(cmd); } } catch (Exception ex) { log.error("操控透雾异常:" + ex.getMessage()); @@ -253,8 +253,8 @@ ArdCameras ardCamera = redisCache.getCacheObject(CacheConstants.CAMERA_LIST_KEY + cameraId); if (ardCamera != null) { String factory = ardCamera.getFactory(); SdkStrategy sdkStrategy = sdkStrategyFactory.getSdkStrategy(factory); result = sdkStrategy.controlInfrarecfg(cmd); CameraSDK cameraSDK = cameraSDKFactory.createCameraSDK(factory); result = cameraSDK.controlInfrarecfg(cmd); } } catch (Exception ex) { log.error("操控红外异常:" + ex.getMessage()); @@ -271,8 +271,8 @@ ArdCameras ardCamera = redisCache.getCacheObject(CacheConstants.CAMERA_LIST_KEY + cameraId); if (ardCamera != null) { String factory = ardCamera.getFactory(); SdkStrategy sdkStrategy = sdkStrategyFactory.getSdkStrategy(factory); result = sdkStrategy.controlFocusMode(cmd); CameraSDK cameraSDK = cameraSDKFactory.createCameraSDK(factory); result = cameraSDK.controlFocusMode(cmd); } } catch (Exception ex) { log.error("操控聚焦模式异常:" + ex.getMessage()); @@ -289,8 +289,8 @@ ArdCameras ardCamera = redisCache.getCacheObject(CacheConstants.CAMERA_LIST_KEY + cameraId); if (ardCamera != null) { String factory = ardCamera.getFactory(); SdkStrategy sdkStrategy = sdkStrategyFactory.getSdkStrategy(factory); result = sdkStrategy.getFocusMode(cmd); CameraSDK cameraSDK = cameraSDKFactory.createCameraSDK(factory); result = cameraSDK.getFocusMode(cmd); } } catch (Exception ex) { log.error("获取聚焦模式异常:" + ex.getMessage()); @@ -307,8 +307,8 @@ ArdCameras ardCamera = redisCache.getCacheObject(CacheConstants.CAMERA_LIST_KEY + cameraId); if (ardCamera != null) { String factory = ardCamera.getFactory(); SdkStrategy sdkStrategy = sdkStrategyFactory.getSdkStrategy(factory); result = sdkStrategy.controlPTHeateRpwron(cmd); CameraSDK cameraSDK = cameraSDKFactory.createCameraSDK(factory); result = cameraSDK.controlPTHeateRpwron(cmd); } } catch (Exception ex) { log.error("操控云台加热异常:" + ex.getMessage()); @@ -325,8 +325,8 @@ ArdCameras ardCamera = redisCache.getCacheObject(CacheConstants.CAMERA_LIST_KEY + cameraId); if (ardCamera != null) { String factory = ardCamera.getFactory(); SdkStrategy sdkStrategy = sdkStrategyFactory.getSdkStrategy(factory); result = sdkStrategy.controlCameraDeicing(cmd); CameraSDK cameraSDK = cameraSDKFactory.createCameraSDK(factory); result = cameraSDK.controlCameraDeicing(cmd); } } catch (Exception ex) { log.error("操控云台加热异常:" + ex.getMessage()); @@ -343,8 +343,8 @@ ArdCameras ardCamera = redisCache.getCacheObject(CacheConstants.CAMERA_LIST_KEY + cameraId); if (ardCamera != null) { String factory = ardCamera.getFactory(); SdkStrategy sdkStrategy = sdkStrategyFactory.getSdkStrategy(factory); result = sdkStrategy.getPTZLockInfo(cmd); CameraSDK cameraSDK = cameraSDKFactory.createCameraSDK(factory); result = cameraSDK.getPTZLockInfo(cmd); } } catch (Exception ex) { log.error("获取云台锁定信息异常:" + ex.getMessage()); @@ -370,8 +370,8 @@ if (ardCamera != null) { //获取摄像头工厂 String factory = ardCamera.getFactory(); SdkStrategy sdkStrategy = sdkStrategyFactory.getSdkStrategy(factory); url = sdkStrategy.picCutCate(cmd); CameraSDK cameraSDK = cameraSDKFactory.createCameraSDK(factory); url = cameraSDK.picCutCate(cmd); } } catch (Exception ex) { log.error("抓图异常:" + ex.getMessage()); @@ -388,8 +388,8 @@ ArdCameras ardCamera = redisCache.getCacheObject(CacheConstants.CAMERA_LIST_KEY + cameraId); if (ardCamera != null) { String factory = ardCamera.getFactory(); SdkStrategy sdkStrategy = sdkStrategyFactory.getSdkStrategy(factory); map = sdkStrategy.getPtz(cmd); CameraSDK cameraSDK = cameraSDKFactory.createCameraSDK(factory); map = cameraSDK.getPtz(cmd); } } catch (Exception ex) { log.error("获取ptz异常:" + ex.getMessage()); @@ -406,8 +406,8 @@ ArdCameras ardCamera = redisCache.getCacheObject(CacheConstants.CAMERA_LIST_KEY + cameraId); if (ardCamera != null) { String factory = ardCamera.getFactory(); SdkStrategy sdkStrategy = sdkStrategyFactory.getSdkStrategy(factory); map = sdkStrategy.getPtzScope(cmd); CameraSDK cameraSDK = cameraSDKFactory.createCameraSDK(factory); map = cameraSDK.getPtzScope(cmd); } } catch (Exception ex) { log.error("获取ptz范围异常:" + ex.getMessage()); @@ -425,8 +425,8 @@ ArdCameras ardCamera = redisCache.getCacheObject(CacheConstants.CAMERA_LIST_KEY + cameraId); if (ardCamera != null) { String factory = ardCamera.getFactory(); SdkStrategy sdkStrategy = sdkStrategyFactory.getSdkStrategy(factory); result = sdkStrategy.setPtz(cmd); CameraSDK cameraSDK = cameraSDKFactory.createCameraSDK(factory); result = cameraSDK.setPtz(cmd); } } catch (Exception ex) { log.error("设置ptz异常:" + ex.getMessage()); @@ -444,8 +444,8 @@ ArdCameras ardCamera = redisCache.getCacheObject(CacheConstants.CAMERA_LIST_KEY + cameraId); if (ardCamera != null) { String factory = ardCamera.getFactory(); SdkStrategy sdkStrategy = sdkStrategyFactory.getSdkStrategy(factory); result = sdkStrategy.setZeroPtz(cmd); CameraSDK cameraSDK = cameraSDKFactory.createCameraSDK(factory); result = cameraSDK.setZeroPtz(cmd); } } catch (Exception ex) { log.error("设置零方位角异常:" + ex.getMessage()); @@ -463,8 +463,8 @@ ArdCameras ardCamera = redisCache.getCacheObject(CacheConstants.CAMERA_LIST_KEY + cameraId); if (ardCamera != null) { String factory = ardCamera.getFactory(); SdkStrategy sdkStrategy = sdkStrategyFactory.getSdkStrategy(factory); result = sdkStrategy.guideTargetPosition(cmd); CameraSDK cameraSDK = cameraSDKFactory.createCameraSDK(factory); result = cameraSDK.guideTargetPosition(cmd); } } catch (Exception ex) { log.error("引导指向目标异常:" + ex.getMessage()); @@ -527,8 +527,8 @@ ArdCameras ardCamera = redisCache.getCacheObject(CacheConstants.CAMERA_LIST_KEY + cameraId); if (ardCamera != null) { String factory = ardCamera.getFactory(); SdkStrategy sdkStrategy = sdkStrategyFactory.getSdkStrategy(factory); url = sdkStrategy.record(cmd); CameraSDK cameraSDK = cameraSDKFactory.createCameraSDK(factory); url = cameraSDK.record(cmd); } } catch (Exception ex) { log.error("录像异常:" + ex.getMessage()); @@ -545,8 +545,8 @@ ArdCameras ardCamera = redisCache.getCacheObject(CacheConstants.CAMERA_LIST_KEY + cameraId); if (ardCamera != null) { String factory = ardCamera.getFactory(); SdkStrategy sdkStrategy = sdkStrategyFactory.getSdkStrategy(factory); result = sdkStrategy.recordStart(cmd); CameraSDK cameraSDK = cameraSDKFactory.createCameraSDK(factory); result = cameraSDK.recordStart(cmd); } } catch (Exception ex) { log.error("开始录像异常:" + ex.getMessage()); @@ -563,8 +563,8 @@ ArdCameras ardCamera = redisCache.getCacheObject(CacheConstants.CAMERA_LIST_KEY + cameraId); if (ardCamera != null) { String factory = ardCamera.getFactory(); SdkStrategy sdkStrategy = sdkStrategyFactory.getSdkStrategy(factory); url = sdkStrategy.recordStopToMinio(cmd); CameraSDK cameraSDK = cameraSDKFactory.createCameraSDK(factory); url = cameraSDK.recordStopToMinio(cmd); } } catch (Exception ex) { log.error("停止录像异常:" + ex.getMessage()); @@ -581,8 +581,8 @@ ArdCameras ardCamera = redisCache.getCacheObject(CacheConstants.CAMERA_LIST_KEY + cameraId); if (ardCamera != null) { String factory = ardCamera.getFactory(); SdkStrategy sdkStrategy = sdkStrategyFactory.getSdkStrategy(factory); result = sdkStrategy.recordStopNotToMinio(cmd); CameraSDK cameraSDK = cameraSDKFactory.createCameraSDK(factory); result = cameraSDK.recordStopNotToMinio(cmd); } } catch (Exception ex) { log.error("停止录像异常:" + ex.getMessage()); @@ -599,8 +599,8 @@ ArdCameras ardCamera = redisCache.getCacheObject(CacheConstants.CAMERA_LIST_KEY + cameraId); if (ardCamera != null) { String factory = ardCamera.getFactory(); SdkStrategy sdkStrategy = sdkStrategyFactory.getSdkStrategy(factory); map = sdkStrategy.getGisInfo(cmd); CameraSDK cameraSDK = cameraSDKFactory.createCameraSDK(factory); map = cameraSDK.getGisInfo(cmd); } } catch (Exception ex) { log.error("获取相机架设参数异常:" + ex.getMessage()); ard-work/src/main/java/com/ruoyi/device/camera/strategy/SdkStrategyFactory.java
文件已删除 ard-work/src/main/java/com/ruoyi/device/radar/controller/ArdEquipRadarController.java
@@ -117,8 +117,11 @@ return toAjax(ardEquipRadarService.deleteArdEquipRadarByIds(ids)); } /** * 角度引导信息反馈 */ @ApiOperation(value = "角度引导信息反馈") @PostMapping("/guideInfo") @PostMapping("/guideInfoBack") public AjaxResult guideInfoBack(@RequestBody GuideInfo guideInfo) { return radarClient.guideInfoBack(guideInfo); ard-work/src/main/java/com/ruoyi/inspect/service/impl/InspectionTaskManager.java
@@ -2,11 +2,9 @@ import com.ruoyi.device.camera.domain.CameraCmd; import com.ruoyi.device.camera.service.ICameraSdkService; import com.ruoyi.device.camera.service.impl.CameraSdkServiceImpl; import com.ruoyi.utils.sdk.common.GlobalVariable; import com.ruoyi.inspect.domain.ArdVideoInspectTask; import com.ruoyi.inspect.mapper.ArdVideoInspectTaskMapper; import com.ruoyi.utils.sdk.hiksdk.service.impl.HikSdkStrategy; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Component; ard-work/src/main/java/com/ruoyi/utils/sdk/dhsdk/controller/DhSdkController.java
@@ -8,7 +8,7 @@ import com.ruoyi.common.enums.BusinessType; import com.ruoyi.common.utils.SecurityUtils; import com.ruoyi.device.camera.domain.CameraCmd; import com.ruoyi.utils.sdk.dhsdk.service.impl.DhSdkStrategy; import com.ruoyi.utils.sdk.dhsdk.service.impl.DahuaSDK; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.stereotype.Controller; @@ -36,7 +36,7 @@ public class DhSdkController extends BaseController { @Resource private DhSdkStrategy sdk; private DahuaSDK sdk; @ApiOperation(value = "云台控制", notes = "Code:1-左上 2-上 3-右上 4-左 5-巡航 6-右 7-左下 8-下 9-右下 10-焦距变大 11-焦距变小\n" + ard-work/src/main/java/com/ruoyi/utils/sdk/dhsdk/service/impl/DahuaSDK.java
文件名从 ard-work/src/main/java/com/ruoyi/utils/sdk/dhsdk/service/impl/DhSdkStrategy.java 修改 @@ -2,11 +2,10 @@ import com.ruoyi.alarm.global.domain.GuidePriorityQueue; import com.ruoyi.alarm.global.domain.GuideTask; import com.ruoyi.common.annotation.SdkOperate; import com.ruoyi.common.utils.file.FileUtils; import com.ruoyi.common.utils.file.MimeTypeUtils; import com.ruoyi.common.utils.uuid.IdUtils; import com.ruoyi.device.camera.strategy.SdkStrategy; import com.ruoyi.device.camera.factory.CameraSDK; import com.ruoyi.device.camera.domain.ArdCameras; import com.ruoyi.device.camera.domain.CameraCmd; import com.ruoyi.device.camera.service.IArdCamerasService; @@ -25,7 +24,6 @@ import com.ruoyi.utils.sdk.dhsdk.module.*; import com.sun.jna.Pointer; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.scheduling.annotation.Async; import org.springframework.stereotype.Service; @@ -54,7 +52,7 @@ **/ @Slf4j(topic = "dhSdk") @Service public class DhSdkStrategy implements SdkStrategy { public class DahuaSDK implements CameraSDK { @Resource private IArdCamerasService ardCamerasService; ard-work/src/main/java/com/ruoyi/utils/sdk/hiksdk/controller/HikSdkController.java
@@ -10,7 +10,7 @@ import com.ruoyi.device.camera.service.IArdCamerasService; import com.ruoyi.common.annotation.Anonymous; import com.ruoyi.common.core.domain.AjaxResult; import com.ruoyi.utils.sdk.hiksdk.service.impl.HikSdkStrategy; import com.ruoyi.utils.sdk.hiksdk.service.impl.HikvisionSDK; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.stereotype.Controller; @@ -35,7 +35,7 @@ public class HikSdkController extends BaseController { @Resource private HikSdkStrategy sdk; private HikvisionSDK sdk; @Resource private IArdCamerasService ardCamerasService; ard-work/src/main/java/com/ruoyi/utils/sdk/hiksdk/lib/LoginResultCallBack.java
@@ -11,7 +11,7 @@ import com.ruoyi.utils.sdk.common.GlobalVariable; import com.ruoyi.media.domain.Vtdu; import com.ruoyi.media.service.IVtduService; import com.ruoyi.utils.sdk.hiksdk.service.impl.HikSdkStrategy; import com.ruoyi.utils.sdk.hiksdk.service.impl.HikvisionSDK; import com.sun.jna.Pointer; import lombok.extern.slf4j.Slf4j; import java.util.Comparator; @@ -38,7 +38,7 @@ public int invoke(int lUserID, int dwResult, HCNetSDK.NET_DVR_DEVICEINFO_V30 lpDeviceinfo, Pointer pUser) { IVtduService vtduService = SpringUtils.getBean(IVtduService.class); IArdChannelService ardChannelService = SpringUtils.getBean(IArdChannelService.class); HikSdkStrategy hikClientService = SpringUtils.getBean(HikSdkStrategy.class); HikvisionSDK hikClientService = SpringUtils.getBean(HikvisionSDK.class); IArdCamerasService ardCamerasService = SpringUtils.getBean(IArdCamerasService.class); if (GlobalVariable.loginMap.containsKey(camera.getId())) { GlobalVariable.loginMap.remove(camera.getId()); ard-work/src/main/java/com/ruoyi/utils/sdk/hiksdk/service/impl/HikvisionSDK.java
文件名从 ard-work/src/main/java/com/ruoyi/utils/sdk/hiksdk/service/impl/HikSdkStrategy.java 修改 @@ -2,12 +2,11 @@ import com.ruoyi.alarm.global.domain.GuidePriorityQueue; import com.ruoyi.alarm.global.domain.GuideTask; import com.ruoyi.common.annotation.SdkOperate; import com.ruoyi.common.utils.file.FileUtils; import com.ruoyi.common.utils.file.MimeTypeUtils; import com.ruoyi.common.utils.uuid.IdUtils; import com.ruoyi.device.camera.service.IArdCamerasService; import com.ruoyi.device.camera.strategy.SdkStrategy; import com.ruoyi.device.camera.factory.CameraSDK; import com.ruoyi.device.camera.domain.ArdCameras; import com.ruoyi.device.camera.domain.CameraCmd; import com.ruoyi.device.channel.domain.ArdChannel; @@ -46,7 +45,7 @@ **/ @Service @Slf4j(topic = "hikSdk") public class HikSdkStrategy implements SdkStrategy { public class HikvisionSDK implements CameraSDK { @Resource private IArdCamerasService ardCamerasService; @Resource ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysMenuController.java
@@ -1,7 +1,10 @@ package com.ruoyi.web.controller.system; import java.util.List; import com.ruoyi.common.utils.MessageUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.i18n.LocaleContextHolder; import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.DeleteMapping; @@ -23,13 +26,12 @@ /** * 菜单信息 * * * @author ruoyi */ @RestController @RequestMapping("/system/menu") public class SysMenuController extends BaseController { public class SysMenuController extends BaseController { @Autowired private ISysMenuService menuService; @@ -38,8 +40,7 @@ */ @PreAuthorize("@ss.hasPermi('system:menu:list')") @GetMapping("/list") public AjaxResult list(SysMenu menu) { public AjaxResult list(SysMenu menu) { List<SysMenu> menus = menuService.selectMenuList(menu, getUserId()); return success(menus); } @@ -49,8 +50,7 @@ */ @PreAuthorize("@ss.hasPermi('system:menu:query')") @GetMapping(value = "/{menuId}") public AjaxResult getInfo(@PathVariable Long menuId) { public AjaxResult getInfo(@PathVariable Long menuId) { return success(menuService.selectMenuById(menuId)); } @@ -58,8 +58,7 @@ * 获取菜单下拉树列表 */ @GetMapping("/treeselect") public AjaxResult treeselect(SysMenu menu) { public AjaxResult treeselect(SysMenu menu) { List<SysMenu> menus = menuService.selectMenuList(menu, getUserId()); return success(menuService.buildMenuTreeSelect(menus)); } @@ -68,8 +67,7 @@ * 加载对应角色菜单列表树 */ @GetMapping(value = "/roleMenuTreeselect/{roleId}") public AjaxResult roleMenuTreeselect(@PathVariable("roleId") Long roleId) { public AjaxResult roleMenuTreeselect(@PathVariable("roleId") Long roleId) { List<SysMenu> menus = menuService.selectMenuList(getUserId()); AjaxResult ajax = AjaxResult.success(); ajax.put("checkedKeys", menuService.selectMenuListByRoleId(roleId)); @@ -83,14 +81,10 @@ @PreAuthorize("@ss.hasPermi('system:menu:add')") @Log(title = "菜单管理", businessType = BusinessType.INSERT) @PostMapping public AjaxResult add(@Validated @RequestBody SysMenu menu) { if (UserConstants.NOT_UNIQUE.equals(menuService.checkMenuNameUnique(menu))) { public AjaxResult add(@Validated @RequestBody SysMenu menu) { if (UserConstants.NOT_UNIQUE.equals(menuService.checkMenuNameUnique(menu))) { return error("新增菜单'" + menu.getMenuName() + "'失败,菜单名称已存在"); } else if (UserConstants.YES_FRAME.equals(menu.getIsFrame()) && !StringUtils.ishttp(menu.getPath())) { } else if (UserConstants.YES_FRAME.equals(menu.getIsFrame()) && !StringUtils.ishttp(menu.getPath())) { return error("新增菜单'" + menu.getMenuName() + "'失败,地址必须以http(s)://开头"); } menu.setCreateBy(getUsername()); @@ -103,18 +97,12 @@ @PreAuthorize("@ss.hasPermi('system:menu:edit')") @Log(title = "菜单管理", businessType = BusinessType.UPDATE) @PutMapping public AjaxResult edit(@Validated @RequestBody SysMenu menu) { if (UserConstants.NOT_UNIQUE.equals(menuService.checkMenuNameUnique(menu))) { public AjaxResult edit(@Validated @RequestBody SysMenu menu) { if (UserConstants.NOT_UNIQUE.equals(menuService.checkMenuNameUnique(menu))) { return error("修改菜单'" + menu.getMenuName() + "'失败,菜单名称已存在"); } else if (UserConstants.YES_FRAME.equals(menu.getIsFrame()) && !StringUtils.ishttp(menu.getPath())) { } else if (UserConstants.YES_FRAME.equals(menu.getIsFrame()) && !StringUtils.ishttp(menu.getPath())) { return error("修改菜单'" + menu.getMenuName() + "'失败,地址必须以http(s)://开头"); } else if (menu.getMenuId().equals(menu.getParentId())) { } else if (menu.getMenuId().equals(menu.getParentId())) { return error("修改菜单'" + menu.getMenuName() + "'失败,上级菜单不能选择自己"); } menu.setUpdateBy(getUsername()); @@ -127,14 +115,11 @@ @PreAuthorize("@ss.hasPermi('system:menu:remove')") @Log(title = "菜单管理", businessType = BusinessType.DELETE) @DeleteMapping("/{menuId}") public AjaxResult remove(@PathVariable("menuId") Long menuId) { if (menuService.hasChildByMenuId(menuId)) { public AjaxResult remove(@PathVariable("menuId") Long menuId) { if (menuService.hasChildByMenuId(menuId)) { return warn("存在子菜单,不允许删除"); } if (menuService.checkMenuExistRole(menuId)) { if (menuService.checkMenuExistRole(menuId)) { return warn("菜单已分配,不允许删除"); } return toAjax(menuService.deleteMenuById(menuId)); ruoyi-admin/src/main/resources/i18n/messages_en_US.properties
@@ -38,4 +38,5 @@ ##\u7EDF\u4E00\u8FD4\u56DE operation.failed=Operation failed operation.success=Operation successful operation.success=Operation successful ruoyi-admin/src/main/resources/i18n/messages_zh_CN.properties
@@ -38,4 +38,4 @@ ##\u7EDF\u4E00\u8FD4\u56DE operation.failed=\u64CD\u4F5C\u5931\u8D25 operation.success=\u64CD\u4F5C\u6210\u529F operation.success=\u64CD\u4F5C\u6210\u529F ruoyi-quartz/src/main/java/com/ruoyi/quartz/task/SyncTask.java
@@ -10,8 +10,8 @@ import com.ruoyi.media.service.IVtduService; import com.ruoyi.rongcloud.service.RongCloudService; import com.ruoyi.system.service.ISysUserService; import com.ruoyi.utils.sdk.dhsdk.service.impl.DhSdkStrategy; import com.ruoyi.utils.sdk.hiksdk.service.impl.HikSdkStrategy; import com.ruoyi.utils.sdk.dhsdk.service.impl.DahuaSDK; import com.ruoyi.utils.sdk.hiksdk.service.impl.HikvisionSDK; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Component; import javax.annotation.Resource; @@ -33,9 +33,9 @@ @Resource IArdCamerasService iArdCamerasService; @Resource HikSdkStrategy hikClientService; HikvisionSDK hikClientService; @Resource DhSdkStrategy dhClientService; DahuaSDK dhClientService; @Resource IVtduService vtduService; @Resource