From 69962e25b95593a0138f7be2b49dd51fa76ab8d7 Mon Sep 17 00:00:00 2001 From: ‘liusuyi’ <1951119284@qq.com> Date: 星期六, 14 十月 2023 17:13:58 +0800 Subject: [PATCH] 增加大华sdk初始化环境 增加大华设备登录 增加大华ptz获取和云台控制接口 增加相机通用SDK接口 --- ard-work/src/main/java/com/ruoyi/device/camera/controller/ArdCamerasController.java | 58 +++++++++++++++++++++++++++++++++++++++++----------------- 1 files changed, 41 insertions(+), 17 deletions(-) diff --git a/ard-work/src/main/java/com/ruoyi/device/camera/controller/ArdCamerasController.java b/ard-work/src/main/java/com/ruoyi/device/camera/controller/ArdCamerasController.java index e0efc82..2ffda2a 100644 --- a/ard-work/src/main/java/com/ruoyi/device/camera/controller/ArdCamerasController.java +++ b/ard-work/src/main/java/com/ruoyi/device/camera/controller/ArdCamerasController.java @@ -7,12 +7,16 @@ import com.ruoyi.device.camera.domain.ArdCameras; import com.ruoyi.device.camera.domain.CameraCmd; import com.ruoyi.device.camera.service.IArdCamerasService; +import com.ruoyi.device.dhsdk.service.IDhClientService; +import com.ruoyi.device.hiksdk.service.IHikClientService; import com.ruoyi.device.hiksdk.service.impl.HikClientServiceImpl; import com.ruoyi.common.utils.poi.ExcelUtil; import com.ruoyi.inspect.service.IArdVideoInspectTaskService; +import com.ruoyi.media.service.IVtduService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PostMapping; @@ -27,6 +31,7 @@ import com.ruoyi.common.core.domain.AjaxResult; import com.ruoyi.common.enums.BusinessType; import com.ruoyi.common.core.page.TableDataInfo; + import java.util.*; /** @@ -41,7 +46,9 @@ @Api(tags = "鐩告満绠$悊鎺ュ彛") public class ArdCamerasController extends BaseController { @Resource - private HikClientServiceImpl sdk; + private IHikClientService hikSdk; + @Resource + private IDhClientService dhSdk; @Resource private IArdCamerasService ardCamerasService; @Resource @@ -90,11 +97,21 @@ @Log(title = "鐩告満璁惧", businessType = BusinessType.INSERT) @PostMapping public AjaxResult add(@RequestBody ArdCameras camera) { - //娉ㄩ攢 - sdk.loginOut(camera.getId()); - //鐧诲綍 - sdk.login(camera); - return toAjax(ardCamerasService.insertArdCameras(camera)); + int i = ardCamerasService.insertArdCameras(camera); + if (i > 0) { + if (camera.getFactory().equals("1")) { + //娉ㄩ攢 + hikSdk.logout(camera.getId()); + //寮傛鐧诲綍 + hikSdk.asyncLogin(camera); + } + else if(camera.getFactory().equals("2")) + { + dhSdk.logout(camera.getId()); + dhSdk.login(camera); + } + } + return toAjax(i); } /** @@ -107,9 +124,15 @@ public AjaxResult edit(@RequestBody ArdCameras camera) { int i = ardCamerasService.updateArdCameras(camera); if (i > 0) { - ArdCameras cameras = ardCamerasService.selectArdCamerasById(camera.getId()); - sdk.loginOut(cameras.getId()); - sdk.login(cameras); + camera= ardCamerasService.selectArdCamerasById(camera.getId()); + if(camera.getFactory().equals("1")) { + hikSdk.logout(camera.getId()); + hikSdk.asyncLogin(camera); + } + else if(camera.getFactory().equals("2")) { + dhSdk.logout(camera.getId()); + dhSdk.login(camera); + } } return toAjax(i); } @@ -123,7 +146,8 @@ @DeleteMapping("/{ids}") public AjaxResult remove(@PathVariable String[] ids) { for (String id : ids) { - sdk.loginOut(id); + hikSdk.logout(id); + dhSdk.logout(id); } return toAjax(ardCamerasService.deleteArdCamerasByIds(ids)); } @@ -137,32 +161,32 @@ Map option = new HashMap(); option.put("value", item.getId()); option.put("label", item.getName()); - option.put("channel", item.getChannel()); + option.put("channel", item.getChanNo()); List timeList = ardVideoInspectTaskService.getCameraIdleTimeList(item.getId()); option.put("idleTimeList", timeList);//绌洪棽鏃堕棿娈� options.add(option); } return options; } + @GetMapping("/getDeptAndCamera") @ApiOperation("鑾峰彇閮ㄩ棬鍜岀浉鏈�") - public AjaxResult getDeptAndCamera() - { + public AjaxResult getDeptAndCamera() { Map deptAndCamera = ardCamerasService.getChildDeptAndCamera(true); return AjaxResult.success(deptAndCamera); } + @GetMapping("/getDeptAndCameraWithCheckBox") @ApiOperation("鑾峰彇閮ㄩ棬鍜岀浉鏈�(寮�鍚閫夋)") - public AjaxResult getDeptAndCameraWithCheckBox() - { + public AjaxResult getDeptAndCameraWithCheckBox() { Map deptAndCamera = ardCamerasService.getChildDeptAndCamera(false); return AjaxResult.success(deptAndCamera); } + @PostMapping("/getNearCamerasBycoordinate") @ApiOperation("鑾峰彇闄勮繎鐨勭浉鏈�") @ApiOperationSupport(includeParameters = {"targetPosition"}) - public AjaxResult getNearCamerasBycoordinate(@RequestBody CameraCmd cmd) - { + public AjaxResult getNearCamerasBycoordinate(@RequestBody CameraCmd cmd) { TreeMap nearCamerasBycoordinate = ardCamerasService.getNearCamerasBycoordinate(cmd); return AjaxResult.success(nearCamerasBycoordinate); } -- Gitblit v1.9.3