From 0a93967d8028733169ef9bcad7207026d4dea74e Mon Sep 17 00:00:00 2001 From: ‘liusuyi’ <1951119284@qq.com> Date: 星期一, 11 三月 2024 16:07:57 +0800 Subject: [PATCH] 增加雷达报警引导优先ptz引导 修改海康红外开关接口命令值 优化坐标数组改为实体类 --- ard-work/src/main/java/com/ruoyi/device/camera/controller/CameraSdkController.java | 740 +++++++++++++++++++++++++++++--------------------------- 1 files changed, 382 insertions(+), 358 deletions(-) diff --git a/ard-work/src/main/java/com/ruoyi/device/camera/controller/CameraSdkController.java b/ard-work/src/main/java/com/ruoyi/device/camera/controller/CameraSdkController.java index 7bb9070..147b230 100644 --- a/ard-work/src/main/java/com/ruoyi/device/camera/controller/CameraSdkController.java +++ b/ard-work/src/main/java/com/ruoyi/device/camera/controller/CameraSdkController.java @@ -1,358 +1,382 @@ -package com.ruoyi.device.camera.controller; - -import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport; -import com.ruoyi.common.annotation.Anonymous; -import com.ruoyi.common.annotation.Log; -import com.ruoyi.common.core.controller.BaseController; -import com.ruoyi.common.core.domain.AjaxResult; -import com.ruoyi.common.enums.BusinessType; -import com.ruoyi.common.utils.SecurityUtils; -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.camera.service.ICameraSdkService; -import com.ruoyi.device.dhsdk.service.IDhClientService; -import com.ruoyi.device.hiksdk.service.IHikClientService; -import io.swagger.annotations.Api; -import io.swagger.annotations.ApiOperation; -import org.springframework.stereotype.Controller; -import org.springframework.web.bind.annotation.*; - -import javax.annotation.PostConstruct; -import javax.annotation.Resource; -import java.util.List; -import java.util.Map; - -import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport; -import com.ruoyi.common.annotation.Log; -import com.ruoyi.common.core.controller.BaseController; -import com.ruoyi.common.enums.BusinessType; -import com.ruoyi.common.utils.SecurityUtils; -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.common.annotation.Anonymous; -import com.ruoyi.common.core.domain.AjaxResult; -import io.swagger.annotations.Api; -import io.swagger.annotations.ApiOperation; -import org.springframework.stereotype.Controller; -import org.springframework.web.bind.annotation.*; - -import javax.annotation.PostConstruct; -import javax.annotation.Resource; -import java.util.List; -import java.util.Map; - -/** - * @Description: - * @ClassName: CameraSdkController - * @Author: 鍒樿嫃涔� - * @Date: 2023骞�10鏈�14鏃�17:02:56 - **/ - -@Api(tags = "鐩告満閫氱敤SDK鎺ュ彛") -@Controller -@RequestMapping("/cameraSdk") -@Anonymous -public class CameraSdkController extends BaseController { - - @Resource - private ICameraSdkService cameraSdkService; - @Resource - private IArdCamerasService ardCamerasService; - - /** - * @鎻忚堪 鍒濆鍔犺浇SDK搴撴枃浠� - * @杩斿洖鍊� void - * @鍒涘缓浜� 鍒樿嫃涔� - * @鍒涘缓鏃堕棿 2023/1/17 16:13 - * @淇敼浜哄拰鍏跺畠淇℃伅 if (Platform.isLinux()) - */ - @PostConstruct - public void initSDK() { - cameraSdkService.initSDK(); - } - - @RequestMapping("/preview") - private String preview() { - return "preview"; - } - - @RequestMapping("/index") - private String index() { - return "test"; - } - - @GetMapping("/list") - public @ResponseBody - AjaxResult list(ArdCameras ardCamera) { - List<ArdCameras> list = ardCamerasService.selectArdCamerasListNoDataScope(ardCamera); - return AjaxResult.success("鐩告満鍒楄〃锛�", list); - } - - @ApiOperation("鑾峰彇鐮佹祦鍘嬬缉鍙傛暟") - @PostMapping("/getVideoCompressionCfg") - @ApiOperationSupport(includeParameters = {"cmd.cameraId", "cmd.chanNo"}) - @Log(title = "鑾峰彇鐮佹祦鍘嬬缉鍙傛暟", businessType = BusinessType.CONTROL) - public @ResponseBody - AjaxResult getVideoCompressionCfg(@RequestBody CameraCmd cmd) { - return AjaxResult.success(cameraSdkService.getVideoCompressionCfg(cmd)); - } - - @ApiOperation("鍦ㄧ嚎鐘舵��") - @PostMapping("/state") - @ApiOperationSupport(includeParameters = {"cmd.cameraId"}) - @Log(title = "鍦ㄧ嚎鐘舵��", businessType = BusinessType.CONTROL) - public @ResponseBody - AjaxResult getOnlineState(@RequestBody CameraCmd cmd) { - cmd.setOperator(SecurityUtils.getUserId()); - boolean onLine = cameraSdkService.isOnLine(cmd); - return AjaxResult.success(onLine); - } - - @ApiOperation(value = "浜戝彴鎺у埗", notes = "Code:1-宸︿笂 2-涓� 3-鍙充笂 4-宸� 5-宸¤埅 6-鍙� 7-宸︿笅 8-涓� 9-鍙充笅 10-鐒﹁窛鍙樺ぇ 11-鐒﹁窛鍙樺皬\n" + - "12-鐒︾偣鍓嶈皟 13-鐒︾偣鍚庤皟 14-鍏夊湀鎵╁ぇ 15-鍏夊湀缂╁皬 16-闆ㄥ埛寮�鍚�") - @PostMapping("/PTZControlWithSpeed") - @ApiOperationSupport(includeParameters = {"cmd.cameraId", "cmd.chanNo", "cmd.speed", "cmd.enable", "cmd.code"}) - @Log(title = "浜戝彴鎺у埗", businessType = BusinessType.CONTROL) - public @ResponseBody - AjaxResult PTZControlWithSpeed(@RequestBody CameraCmd cmd) { - cmd.setOperator(SecurityUtils.getUserId()); - return toAjax(cameraSdkService.pTZControl(cmd)); - } - - @ApiOperation("璋冪敤棰勭疆鐐�") - @PostMapping("/gotoPreset") - @ApiOperationSupport(includeParameters = {"cmd.cameraId", "cmd.chanNo", "cmd.presetIndex"}) - @Log(title = "璋冪敤棰勭疆鐐�", businessType = BusinessType.CONTROL) - public @ResponseBody - AjaxResult gotoPreset(@RequestBody CameraCmd cmd) { - cmd.setOperator(SecurityUtils.getUserId()); - return toAjax(cameraSdkService.gotoPreset(cmd)); - } - - @ApiOperation("璁剧疆棰勭疆鐐�") - @PostMapping("/setPreset") - @ApiOperationSupport(includeParameters = {"cmd.cameraId", "cmd.chanNo", "cmd.presetIndex"}) - @Log(title = "璁剧疆棰勭疆鐐�", businessType = BusinessType.CONTROL) - public @ResponseBody - AjaxResult setPreset(@RequestBody CameraCmd cmd) { - cmd.setOperator(SecurityUtils.getUserId()); - return toAjax(cameraSdkService.setPreset(cmd)); - } - - @ApiOperation("鑾峰彇鑱氱劍鍊�") - @PostMapping("/getFocusPos") - @ApiOperationSupport(includeParameters = {"cmd.cameraId", "cmd.chanNo"}) - @Log(title = "鑾峰彇鑱氱劍鍊�", businessType = BusinessType.CONTROL) - public @ResponseBody - AjaxResult getFocusPos(@RequestBody CameraCmd cmd) { - cmd.setOperator(SecurityUtils.getUserId()); - Map<String, Object> Map = cameraSdkService.getFocusPos(cmd); - return AjaxResult.success("鑾峰彇鑱氱劍鍊�", Map); - } - - @ApiOperation("璁剧疆鑱氱劍鍊�") - @PostMapping("/setFocusPos") - @ApiOperationSupport(includeParameters = {"cmd.cameraId", "cmd.chanNo", "cmd.dwFocusPos"}) - @Log(title = "璁剧疆鑱氱劍鍊�", businessType = BusinessType.CONTROL) - public @ResponseBody - AjaxResult setFocusPos(@RequestBody CameraCmd cmd) { - cmd.setOperator(SecurityUtils.getUserId()); - return toAjax(cameraSdkService.setFocusPos(cmd)); - } - - @ApiOperation("鑾峰彇PTZ") - @PostMapping("/getPTZ") - @ApiOperationSupport(includeParameters = {"cmd.cameraId", "cmd.chanNo"}) - @Log(title = "鑾峰彇PTZ", businessType = BusinessType.CONTROL) - public @ResponseBody - AjaxResult getPTZ(@RequestBody CameraCmd cmd) { - cmd.setOperator(SecurityUtils.getUserId()); - Map<String, Object> ptzMap = cameraSdkService.getPtz(cmd); - return AjaxResult.success("鑾峰彇ptz", ptzMap); - } - - @ApiOperation("鑾峰彇PTZ鑼冨洿") - @PostMapping("/getPTZScope") - @Log(title = "鑾峰彇PTZ鑼冨洿", businessType = BusinessType.CONTROL) - @ApiOperationSupport(includeParameters = {"cmd.cameraId", "cmd.chanNo"}) - public @ResponseBody - AjaxResult getPTZScope(@RequestBody CameraCmd cmd) { - cmd.setOperator(SecurityUtils.getUserId()); - Map<String, Object> ptzMap = cameraSdkService.getPtzScope(cmd); - return AjaxResult.success("鑾峰彇ptz鑼冨洿", ptzMap); - } - - @ApiOperation("璁剧疆PTZ") - @PostMapping("/setPTZ") - @Log(title = "璁剧疆PTZ", businessType = BusinessType.CONTROL) - @ApiOperationSupport(includeParameters = {"cmd.cameraId", "cmd.chanNo", "cmd.ptzMap"}) - public @ResponseBody - AjaxResult setPTZ(@RequestBody CameraCmd cmd) { - cmd.setOperator(SecurityUtils.getUserId()); - return toAjax(cameraSdkService.setPtz(cmd)); - } - - @ApiOperation("鎸囧悜鐩爣") - @PostMapping("/setTargetPosition") - @Log(title = "鎸囧悜鐩爣", businessType = BusinessType.CONTROL) - @ApiOperationSupport(includeParameters = {"cmd.cameraId", "cmd.chanNo", "cmd.targetPosition"}) - public @ResponseBody - AjaxResult setTargetPosition(@RequestBody CameraCmd cmd) { - cmd.setOperator(SecurityUtils.getUserId()); - return toAjax(cameraSdkService.guideTargetPosition(cmd)); - } - - - @ApiOperation("璁剧疆闆舵柟浣嶈") - @PostMapping("/setZeroPTZ") - @Log(title = "璁剧疆闆舵柟浣嶈", businessType = BusinessType.CONTROL) - @ApiOperationSupport(includeParameters = {"cmd.cameraId", "cmd.cmd.chanNo"}) - public @ResponseBody - AjaxResult setZeroPTZ(@RequestBody CameraCmd cmd) { - cmd.setOperator(SecurityUtils.getUserId()); - return toAjax(cameraSdkService.setZeroPtz(cmd)); - } - - @ApiOperation("璁剧疆閿佸畾") - @PostMapping("/setPTZLock") - @ApiOperationSupport(includeParameters = {"cmd.cameraId", "cmd.expired"}) - @Log(title = "璁剧疆閿佸畾", businessType = BusinessType.CONTROL) - public @ResponseBody - AjaxResult setPTZLock(@RequestBody CameraCmd cmd) { - cmd.setOperator(SecurityUtils.getUserId()); - return AjaxResult.success(cameraSdkService.controlLock(cmd)); - } - - @ApiOperation("璁剧疆瑙i攣") - @PostMapping("/setPTZUnLock") - @ApiOperationSupport(includeParameters = {"cmd.cameraId"}) - @Log(title = "璁剧疆瑙i攣", businessType = BusinessType.CONTROL) - public @ResponseBody - AjaxResult setPTZUnLock(@RequestBody CameraCmd cmd) { - cmd.setOperator(SecurityUtils.getUserId()); - return AjaxResult.success(cameraSdkService.controlUnLock(cmd)); - } - - @ApiOperation("鑾峰彇浜戝彴閿佸畾淇℃伅") - @PostMapping("/getPTZLockInfo") - @ApiOperationSupport(includeParameters = {"cmd.cameraId", "cmd.chanNo"}) - @Log(title = "鑾峰彇浜戝彴閿佸畾淇℃伅", businessType = BusinessType.CONTROL) - public @ResponseBody - AjaxResult getPTZLockInfo(@RequestBody CameraCmd cmd) { - cmd.setOperator(SecurityUtils.getUserId()); - int byWorkMode = cameraSdkService.getPTZLockInfo(cmd); - if (byWorkMode == 0) { - return AjaxResult.success("浜戝彴閿佸畾鐘舵�侊細瑙i攣"); - } else if (byWorkMode == 1) { - return AjaxResult.success("浜戝彴閿佸畾鐘舵�侊細閿佸畾"); - } else { - return AjaxResult.error("浜戝彴閿佸畾鐘舵�侊細澶辫触"); - } - } - - @ApiOperation("閫忛浘寮�鍏�") - @PostMapping("/defogcfg") - @Log(title = "閫忛浘寮�鍏�", businessType = BusinessType.CONTROL) - @ApiOperationSupport(includeParameters = {"cmd.cameraId", "cmd.chanNo", "cmd.enable"}) - public @ResponseBody - AjaxResult defogcfg(@RequestBody CameraCmd cmd) { - cmd.setOperator(SecurityUtils.getUserId()); - return toAjax(cameraSdkService.controlDefogcfg(cmd)); - } - - @ApiOperation("绾㈠寮�鍏�") - @PostMapping("/infrarecfg") - @Log(title = "绾㈠寮�鍏�", businessType = BusinessType.CONTROL) - @ApiOperationSupport(includeParameters = {"cmd.cameraId", "cmd.chanNo", "cmd.enable"}) - public @ResponseBody - AjaxResult infrarecfg(@RequestBody CameraCmd cmd) { - cmd.setOperator(SecurityUtils.getUserId()); - return toAjax(cameraSdkService.controlInfrarecfg(cmd)); - } - - @ApiOperation(value = "鎵嬪姩/鑷姩鑱氱劍", notes = "true鎵嬪姩flase鑷姩") - @PostMapping("/focusMode") - @Log(title = "鎵嬪姩/鑷姩鑱氱劍", businessType = BusinessType.CONTROL) - @ApiOperationSupport(includeParameters = {"cmd.cameraId", "cmd.chanNo", "cmd.enable"}) - public @ResponseBody - AjaxResult enableFocusMode(@RequestBody CameraCmd cmd) { - cmd.setOperator(SecurityUtils.getUserId()); - return toAjax(cameraSdkService.controlFocusMode(cmd)); - } - - @ApiOperation(value = "鑾峰彇鑱氱劍妯″紡", notes = "1鎵嬪姩2鑷姩") - @PostMapping("/getFocusMode") - public @ResponseBody - AjaxResult getFocusMode(@RequestBody CameraCmd cmd) { - cmd.setOperator(SecurityUtils.getUserId()); - String focusMode = cameraSdkService.getFocusMode(cmd); - return AjaxResult.success(focusMode); - } - - @ApiOperation("浜戝彴鍔犵儹") - @PostMapping("/heateRpwron") - @Log(title = "浜戝彴鍔犵儹", businessType = BusinessType.CONTROL) - @ApiOperationSupport(includeParameters = {"cmd.cameraId", "cmd.chanNo", "cmd.enable"}) - public @ResponseBody - AjaxResult heateRpwron(@RequestBody CameraCmd cmd) { - cmd.setOperator(SecurityUtils.getUserId()); - return toAjax(cameraSdkService.controlPTHeateRpwron(cmd)); - } - - - @ApiOperation("闀滃ご鍔犵儹") - @PostMapping("/cameraDeicing") - @Log(title = "闀滃ご鍔犵儹", businessType = BusinessType.CONTROL) - @ApiOperationSupport(includeParameters = {"cmd.cameraId", "cmd.chanNo", "cmd.enable"}) - public @ResponseBody - AjaxResult cameraDeicing(@RequestBody CameraCmd cmd) { - cmd.setOperator(SecurityUtils.getUserId()); - return toAjax(cameraSdkService.controlCameraDeicing(cmd)); - } - - @ApiOperation("鐩告満鎶撳浘") - @PostMapping("/picCutCate") - @Log(title = "鐩告満鎶撳浘", businessType = BusinessType.CONTROL) - @ApiOperationSupport(includeParameters = {"cmd.cameraId", "cmd.chanNo"}) - public @ResponseBody - AjaxResult picCutCate(@RequestBody CameraCmd cmd) { - cmd.setOperator(SecurityUtils.getUserId()); - String path = cameraSdkService.picCutCate(cmd); - return toAjaxString(path, "鐩告満鎶撳浘"); - } - - @ApiOperation("鑾峰彇鐩告満鏋惰鍙傛暟") - @PostMapping("/getGisInfo") - @Log(title = "鑾峰彇鐩告満鏋惰鍙傛暟", businessType = BusinessType.CONTROL) - @ApiOperationSupport(includeParameters = {"cmd.cameraId", "cmd.chanNo", "cmd.enable"}) - public @ResponseBody - AjaxResult getGisInfo(@RequestBody CameraCmd cmd) { - cmd.setOperator(SecurityUtils.getUserId()); - return AjaxResult.success(cameraSdkService.getGisInfo(cmd)); - } - - @ApiOperation("鎵嬪姩褰曞儚寮�濮�") - @PostMapping("/recordStart") - @Log(title = "鎵嬪姩褰曞儚寮�濮�", businessType = BusinessType.CONTROL) - @ApiOperationSupport(includeParameters = {"cmd.cameraId", "cmd.chanNo"}) - public @ResponseBody - AjaxResult recordStart(@RequestBody CameraCmd cmd) { - cmd.setOperator(SecurityUtils.getUserId()); - boolean b = cameraSdkService.recordStart(cmd); - return toAjax(b); - } - @ApiOperation("鎵嬪姩褰曞儚鍋滄") - @PostMapping("/recordStop") - @Log(title = "鎵嬪姩褰曞儚鍋滄", businessType = BusinessType.CONTROL) - @ApiOperationSupport(includeParameters = {"cmd.cameraId", "cmd.recordBucketName", "cmd.recordObjectName"}) - public @ResponseBody - AjaxResult recordStop(@RequestBody CameraCmd cmd) { - cmd.setOperator(SecurityUtils.getUserId()); - String url = cameraSdkService.recordStopToMinio(cmd); - return AjaxResult.success(url); - } -} +package com.ruoyi.device.camera.controller; + +import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport; +import com.ruoyi.common.annotation.Anonymous; +import com.ruoyi.common.annotation.Log; +import com.ruoyi.common.core.controller.BaseController; +import com.ruoyi.common.core.domain.AjaxResult; +import com.ruoyi.common.enums.BusinessType; +import com.ruoyi.common.utils.SecurityUtils; +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.camera.service.ICameraSdkService; + +import com.ruoyi.device.noguidezone.domain.ArdCameraNoGuideZone; +import com.ruoyi.device.noguidezone.service.IArdCameraNoGuideZoneService; +import com.ruoyi.utils.gis.GisUtil; +import com.ruoyi.utils.gis.Point; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Controller; +import org.springframework.web.bind.annotation.*; + +import javax.annotation.Resource; +import java.util.ArrayList; +import java.util.List; +import java.util.Map; + +/** + * @Description: 鐩告満閫氱敤SDK鎺ュ彛 + * @ClassName: CameraSdkController + * @Author: 鍒樿嫃涔� + * @Date: 2023骞�10鏈�14鏃�17:02:56 + **/ + +@Api(tags = "鐩告満閫氱敤SDK鎺ュ彛") +@Controller +@RequestMapping("/cameraSdk") +@Anonymous +public class CameraSdkController extends BaseController { + + @Resource + private ICameraSdkService cameraSdkService; + @Resource + private IArdCamerasService ardCamerasService; + + @Autowired + private IArdCameraNoGuideZoneService ardCameraNoGuideZoneService; + + + @RequestMapping("/preview") + private String preview() { + return "preview"; + } + + @RequestMapping("/index") + private String index() { + return "test"; + } + + @GetMapping("/list") + public @ResponseBody + AjaxResult list(ArdCameras ardCamera) { + List<ArdCameras> list = ardCamerasService.selectArdCamerasListNoDataScope(ardCamera); + return AjaxResult.success("鐩告満鍒楄〃锛�", list); + } + + @ApiOperation("鑾峰彇鐮佹祦鍘嬬缉鍙傛暟") + @PostMapping("/getVideoCompressionCfg") + @ApiOperationSupport(includeParameters = {"cmd.cameraId", "cmd.chanNo"}) + @Log(title = "鑾峰彇鐮佹祦鍘嬬缉鍙傛暟", businessType = BusinessType.CONTROL) + public @ResponseBody + AjaxResult getVideoCompressionCfg(@RequestBody CameraCmd cmd) { + return AjaxResult.success(cameraSdkService.getVideoCompressionCfg(cmd)); + } + + @ApiOperation("鍦ㄧ嚎鐘舵��") + @PostMapping("/state") + @ApiOperationSupport(includeParameters = {"cmd.cameraId"}) + @Log(title = "鍦ㄧ嚎鐘舵��", businessType = BusinessType.CONTROL) + public @ResponseBody + AjaxResult getOnlineState(@RequestBody CameraCmd cmd) { + cmd.setOperator(SecurityUtils.getUserId()); + boolean onLine = cameraSdkService.isOnLine(cmd); + return AjaxResult.success(onLine); + } + + @ApiOperation(value = "浜戝彴鎺у埗", notes = "Code:1-宸︿笂 2-涓� 3-鍙充笂 4-宸� 5-宸¤埅 6-鍙� 7-宸︿笅 8-涓� 9-鍙充笅 10-鐒﹁窛鍙樺ぇ 11-鐒﹁窛鍙樺皬\n" + + "12-鐒︾偣鍓嶈皟 13-鐒︾偣鍚庤皟 14-鍏夊湀鎵╁ぇ 15-鍏夊湀缂╁皬 16-闆ㄥ埛寮�鍚�") + @PostMapping("/PTZControlWithSpeed") + @ApiOperationSupport(includeParameters = {"cmd.cameraId", "cmd.chanNo", "cmd.speed", "cmd.enable", "cmd.code"}) + @Log(title = "浜戝彴鎺у埗", businessType = BusinessType.CONTROL) + public @ResponseBody + AjaxResult PTZControlWithSpeed(@RequestBody CameraCmd cmd) { + cmd.setOperator(SecurityUtils.getUserId()); + return cameraSdkService.pTZControl(cmd); + } + + @ApiOperation("璋冪敤棰勭疆鐐�") + @PostMapping("/gotoPreset") + @ApiOperationSupport(includeParameters = {"cmd.cameraId", "cmd.chanNo", "cmd.presetIndex"}) + @Log(title = "璋冪敤棰勭疆鐐�", businessType = BusinessType.CONTROL) + public @ResponseBody + AjaxResult gotoPreset(@RequestBody CameraCmd cmd) { + cmd.setOperator(SecurityUtils.getUserId()); + return toAjax(cameraSdkService.gotoPreset(cmd)); + } + + @ApiOperation("璁剧疆棰勭疆鐐�") + @PostMapping("/setPreset") + @ApiOperationSupport(includeParameters = {"cmd.cameraId", "cmd.chanNo", "cmd.presetIndex"}) + @Log(title = "璁剧疆棰勭疆鐐�", businessType = BusinessType.CONTROL) + public @ResponseBody + AjaxResult setPreset(@RequestBody CameraCmd cmd) { + cmd.setOperator(SecurityUtils.getUserId()); + return toAjax(cameraSdkService.setPreset(cmd)); + } + + @ApiOperation("鑾峰彇鑱氱劍鍊�") + @PostMapping("/getFocusPos") + @ApiOperationSupport(includeParameters = {"cmd.cameraId", "cmd.chanNo"}) + @Log(title = "鑾峰彇鑱氱劍鍊�", businessType = BusinessType.CONTROL) + public @ResponseBody + AjaxResult getFocusPos(@RequestBody CameraCmd cmd) { + cmd.setOperator(SecurityUtils.getUserId()); + int focus = cameraSdkService.getFocusPos(cmd); + return AjaxResult.success("鑾峰彇鑱氱劍鍊�", focus); + } + + @ApiOperation("璁剧疆鑱氱劍鍊�") + @PostMapping("/setFocusPos") + @ApiOperationSupport(includeParameters = {"cmd.cameraId", "cmd.chanNo", "cmd.dwFocusPos"}) + @Log(title = "璁剧疆鑱氱劍鍊�", businessType = BusinessType.CONTROL) + public @ResponseBody + AjaxResult setFocusPos(@RequestBody CameraCmd cmd) { + cmd.setOperator(SecurityUtils.getUserId()); + return toAjax(cameraSdkService.setFocusPos(cmd)); + } + + @ApiOperation("鑾峰彇PTZ") + @PostMapping("/getPTZ") + @ApiOperationSupport(includeParameters = {"cmd.cameraId", "cmd.chanNo"}) + @Log(title = "鑾峰彇PTZ", businessType = BusinessType.CONTROL) + public @ResponseBody + AjaxResult getPTZ(@RequestBody CameraCmd cmd) { + cmd.setOperator(SecurityUtils.getUserId()); + Map<String, Object> ptzMap = cameraSdkService.getPtz(cmd); + return AjaxResult.success("鑾峰彇ptz", ptzMap); + } + + @ApiOperation("鑾峰彇PTZ鑼冨洿") + @PostMapping("/getPTZScope") + @Log(title = "鑾峰彇PTZ鑼冨洿", businessType = BusinessType.CONTROL) + @ApiOperationSupport(includeParameters = {"cmd.cameraId", "cmd.chanNo"}) + public @ResponseBody + AjaxResult getPTZScope(@RequestBody CameraCmd cmd) { + cmd.setOperator(SecurityUtils.getUserId()); + Map<String, Object> ptzMap = cameraSdkService.getPtzScope(cmd); + return AjaxResult.success("鑾峰彇ptz鑼冨洿", ptzMap); + } + + @ApiOperation("璁剧疆PTZ") + @PostMapping("/setPTZ") + @Log(title = "璁剧疆PTZ", businessType = BusinessType.CONTROL) + @ApiOperationSupport(includeParameters = {"cmd.cameraId", "cmd.chanNo", "cmd.ptzMap"}) + public @ResponseBody + AjaxResult setPTZ(@RequestBody CameraCmd cmd) { + cmd.setOperator(SecurityUtils.getUserId()); + return cameraSdkService.setPtz(cmd); + } + + @ApiOperation("鎸囧悜鐩爣") + @PostMapping("/setTargetPosition") + @Log(title = "鎸囧悜鐩爣", businessType = BusinessType.CONTROL) + @ApiOperationSupport(includeParameters = {"cmd.cameraId", "cmd.chanNo", "cmd.targetPosition"}) + public @ResponseBody + AjaxResult setTargetPosition(@RequestBody CameraCmd cmd) { + cmd.setOperator(SecurityUtils.getUserId()); + //鎷︽埅鎵嬪姩寮曞 + ArdCameraNoGuideZone ardCameraNoGuideZone = new ArdCameraNoGuideZone(); + ardCameraNoGuideZone.setCameraId(cmd.getCameraId()); + ardCameraNoGuideZone.setEnabled("1"); + //鑾峰彇褰撳墠鐩告満鐨勭寮曞彲瑙嗗煙鍒楄〃 + List<ArdCameraNoGuideZone> ardCameraNoGuideZones = ardCameraNoGuideZoneService.selectArdCameraNoGuideZoneList(ardCameraNoGuideZone); + if (ardCameraNoGuideZones.size() > 0) { + //鑾峰彇鍒板綋鍓嶇浉鏈虹殑鍧愭爣闆嗗悎 + for(ArdCameraNoGuideZone zone:ardCameraNoGuideZones) { + String[] parts = zone.getPoi().split(","); + List<Point> pointList = new ArrayList<>(); + for (int i = 0; i < parts.length; i += 3) { + Point point = new Point(); + point.setLongitude(Double.valueOf(parts[i])); + point.setLatitude(Double.valueOf(parts[i + 1])); + pointList.add(point); + } + double lon = cmd.getTargetPosition().getLongitude(); + double lat = cmd.getTargetPosition().getLatitude(); + Point targetPoint = new Point(lon, lat); + //鍒ゆ柇寮曞鐩爣鏄惁鍦ㄥ潗鏍囬泦鍚堢粍鎴愮殑澶氳竟褰㈠唴 + boolean inPolygon = GisUtil.isInPolygon(targetPoint, pointList); + if(inPolygon) + { + return AjaxResult.error("寮曞鍧愭爣浣嶄簬绂佸紩鍙鍩熷唴"); + } + } + } + return toAjax(cameraSdkService.guideTargetPosition(cmd)); + } + + @ApiOperation("鎸囧悜鐩爣浜�") + @PostMapping("/setTargetWell") + @Log(title = "鎸囧悜鐩爣浜�", businessType = BusinessType.CONTROL) + @ApiOperationSupport(includeParameters = {"cmd.wellId"}) + public @ResponseBody + AjaxResult setTargetWell(@RequestBody CameraCmd cmd) { + cmd.setOperator(SecurityUtils.getUserId()); + return cameraSdkService.guideTargetWell(cmd); + } + + @ApiOperation("璁剧疆闆舵柟浣嶈") + @PostMapping("/setZeroPTZ") + @Log(title = "璁剧疆闆舵柟浣嶈", businessType = BusinessType.CONTROL) + @ApiOperationSupport(includeParameters = {"cmd.cameraId", "cmd.chanNo"}) + public @ResponseBody + AjaxResult setZeroPTZ(@RequestBody CameraCmd cmd) { + cmd.setOperator(SecurityUtils.getUserId()); + return toAjax(cameraSdkService.setZeroPtz(cmd)); + } + + @ApiOperation("璁剧疆閿佸畾") + @PostMapping("/setPTZLock") + @ApiOperationSupport(includeParameters = {"cmd.cameraId", "cmd.expired"}) + @Log(title = "璁剧疆閿佸畾", businessType = BusinessType.CONTROL) + public @ResponseBody + AjaxResult setPTZLock(@RequestBody CameraCmd cmd) { + cmd.setOperator(SecurityUtils.getUserId()); + return AjaxResult.success(cameraSdkService.controlLock(cmd)); + } + + @ApiOperation("璁剧疆瑙i攣") + @PostMapping("/setPTZUnLock") + @ApiOperationSupport(includeParameters = {"cmd.cameraId"}) + @Log(title = "璁剧疆瑙i攣", businessType = BusinessType.CONTROL) + public @ResponseBody + AjaxResult setPTZUnLock(@RequestBody CameraCmd cmd) { + cmd.setOperator(SecurityUtils.getUserId()); + return AjaxResult.success(cameraSdkService.controlUnLock(cmd)); + } + + @ApiOperation("鑾峰彇浜戝彴閿佸畾淇℃伅") + @PostMapping("/getPTZLockInfo") + @ApiOperationSupport(includeParameters = {"cmd.cameraId", "cmd.chanNo"}) + @Log(title = "鑾峰彇浜戝彴閿佸畾淇℃伅", businessType = BusinessType.CONTROL) + public @ResponseBody + AjaxResult getPTZLockInfo(@RequestBody CameraCmd cmd) { + cmd.setOperator(SecurityUtils.getUserId()); + int byWorkMode = cameraSdkService.getPTZLockInfo(cmd); + if (byWorkMode == 0) { + return AjaxResult.success("浜戝彴閿佸畾鐘舵�侊細瑙i攣"); + } else if (byWorkMode == 1) { + return AjaxResult.success("浜戝彴閿佸畾鐘舵�侊細閿佸畾"); + } else { + return AjaxResult.error("浜戝彴閿佸畾鐘舵�侊細澶辫触"); + } + } + + @ApiOperation("閫忛浘寮�鍏�") + @PostMapping("/defogcfg") + @Log(title = "閫忛浘寮�鍏�", businessType = BusinessType.CONTROL) + @ApiOperationSupport(includeParameters = {"cmd.cameraId", "cmd.chanNo", "cmd.enable"}) + public @ResponseBody + AjaxResult defogcfg(@RequestBody CameraCmd cmd) { + cmd.setOperator(SecurityUtils.getUserId()); + return toAjax(cameraSdkService.controlDefogcfg(cmd)); + } + + @ApiOperation("绾㈠寮�鍏�") + @PostMapping("/infrarecfg") + @Log(title = "绾㈠寮�鍏�", businessType = BusinessType.CONTROL) + @ApiOperationSupport(includeParameters = {"cmd.cameraId", "cmd.chanNo", "cmd.enable"}) + public @ResponseBody + AjaxResult infrarecfg(@RequestBody CameraCmd cmd) { + cmd.setOperator(SecurityUtils.getUserId()); + return toAjax(cameraSdkService.controlInfrarecfg(cmd)); + } + + @ApiOperation(value = "鎵嬪姩/鑷姩鑱氱劍", notes = "true鎵嬪姩flase鑷姩") + @PostMapping("/focusMode") + @Log(title = "鎵嬪姩/鑷姩鑱氱劍", businessType = BusinessType.CONTROL) + @ApiOperationSupport(includeParameters = {"cmd.cameraId", "cmd.chanNo", "cmd.enable"}) + public @ResponseBody + AjaxResult enableFocusMode(@RequestBody CameraCmd cmd) { + cmd.setOperator(SecurityUtils.getUserId()); + return toAjax(cameraSdkService.controlFocusMode(cmd)); + } + + @ApiOperation(value = "鑾峰彇鑱氱劍妯″紡", notes = "1鎵嬪姩2鑷姩") + @PostMapping("/getFocusMode") + @ApiOperationSupport(includeParameters = {"cmd.cameraId", "cmd.chanNo"}) + public @ResponseBody + AjaxResult getFocusMode(@RequestBody CameraCmd cmd) { + cmd.setOperator(SecurityUtils.getUserId()); + String focusMode = cameraSdkService.getFocusMode(cmd); + return AjaxResult.success(focusMode); + } + + @ApiOperation("浜戝彴鍔犵儹") + @PostMapping("/heateRpwron") + @Log(title = "浜戝彴鍔犵儹", businessType = BusinessType.CONTROL) + @ApiOperationSupport(includeParameters = {"cmd.cameraId", "cmd.chanNo", "cmd.enable"}) + public @ResponseBody + AjaxResult heateRpwron(@RequestBody CameraCmd cmd) { + cmd.setOperator(SecurityUtils.getUserId()); + return toAjax(cameraSdkService.controlPTHeateRpwron(cmd)); + } + + + @ApiOperation("闀滃ご鍔犵儹") + @PostMapping("/cameraDeicing") + @Log(title = "闀滃ご鍔犵儹", businessType = BusinessType.CONTROL) + @ApiOperationSupport(includeParameters = {"cmd.cameraId", "cmd.chanNo", "cmd.enable"}) + public @ResponseBody + AjaxResult cameraDeicing(@RequestBody CameraCmd cmd) { + cmd.setOperator(SecurityUtils.getUserId()); + return toAjax(cameraSdkService.controlCameraDeicing(cmd)); + } + + @ApiOperation("鐩告満鎶撳浘") + @PostMapping("/picCutCate") + @Log(title = "鐩告満鎶撳浘", businessType = BusinessType.CONTROL) + @ApiOperationSupport(includeParameters = {"cmd.cameraId", "cmd.chanNo"}) + public @ResponseBody + AjaxResult picCutCate(@RequestBody CameraCmd cmd) { + cmd.setOperator(SecurityUtils.getUserId()); + String path = cameraSdkService.picCutCate(cmd); + return toAjaxString(path, "鐩告満鎶撳浘"); + } + + @ApiOperation("鑾峰彇鐩告満鏋惰鍙傛暟") + @PostMapping("/getGisInfo") + @Log(title = "鑾峰彇鐩告満鏋惰鍙傛暟", businessType = BusinessType.CONTROL) + @ApiOperationSupport(includeParameters = {"cmd.cameraId", "cmd.chanNo"}) + public @ResponseBody + AjaxResult getGisInfo(@RequestBody CameraCmd cmd) { + cmd.setOperator(SecurityUtils.getUserId()); + return AjaxResult.success(cameraSdkService.getGisInfo(cmd)); + } + + @ApiOperation("褰曞儚") + @PostMapping("/record") + @Log(title = "鎵嬪姩褰曞儚寮�濮�", businessType = BusinessType.CONTROL) + @ApiOperationSupport(includeParameters = {"cmd.cameraId", "cmd.chanNo", "cmd.enable"}) + public @ResponseBody + AjaxResult record(@RequestBody CameraCmd cmd) { + cmd.setOperator(SecurityUtils.getUserId()); + String url = cameraSdkService.record(cmd); + return AjaxResult.success(url); + } + + @ApiOperation("鎵嬪姩褰曞儚寮�濮�") + @PostMapping("/recordStart") + @Log(title = "鎵嬪姩褰曞儚寮�濮�", businessType = BusinessType.CONTROL) + @ApiOperationSupport(includeParameters = {"cmd.cameraId", "cmd.chanNo"}) + public @ResponseBody + AjaxResult recordStart(@RequestBody CameraCmd cmd) { + cmd.setOperator(SecurityUtils.getUserId()); + boolean b = cameraSdkService.recordStart(cmd); + return toAjax(b); + } + + @ApiOperation("鎵嬪姩褰曞儚鍋滄") + @PostMapping("/recordStop") + @Log(title = "鎵嬪姩褰曞儚鍋滄", businessType = BusinessType.CONTROL) + @ApiOperationSupport(includeParameters = {"cmd.cameraId", "cmd.recordBucketName", "cmd.recordObjectName"}) + public @ResponseBody + AjaxResult recordStop(@RequestBody CameraCmd cmd) { + cmd.setOperator(SecurityUtils.getUserId()); + String url = cameraSdkService.recordStopToMinio(cmd); + return AjaxResult.success(url); + } +} -- Gitblit v1.9.3