From 31e340e8e2eb5d7761a1ae8baa4a0a5e774dba59 Mon Sep 17 00:00:00 2001
From: 648540858 <648540858@qq.com>
Date: 星期三, 03 十一月 2021 14:58:48 +0800
Subject: [PATCH] 修改云台控制接口使其更加直观

---
 src/main/java/com/genersoft/iot/vmp/vmanager/gb28181/ptz/PtzController.java |   47 ++++++++++++++++++++++++++++++++++++++++++-----
 1 files changed, 42 insertions(+), 5 deletions(-)

diff --git a/src/main/java/com/genersoft/iot/vmp/vmanager/gb28181/ptz/PtzController.java b/src/main/java/com/genersoft/iot/vmp/vmanager/gb28181/ptz/PtzController.java
index 26a0d2c..255329b 100644
--- a/src/main/java/com/genersoft/iot/vmp/vmanager/gb28181/ptz/PtzController.java
+++ b/src/main/java/com/genersoft/iot/vmp/vmanager/gb28181/ptz/PtzController.java
@@ -44,7 +44,7 @@
 	 * 浜戝彴鎺у埗
 	 * @param deviceId 璁惧id
 	 * @param channelId 閫氶亾id
-	 * @param cmdCode		鎸囦护鐮�
+	 * @param command	鎺у埗鎸囦护
 	 * @param horizonSpeed	姘村钩绉诲姩閫熷害
 	 * @param verticalSpeed	鍨傜洿绉诲姩閫熷害
 	 * @param zoomSpeed	    缂╂斁閫熷害
@@ -54,19 +54,56 @@
 	@ApiImplicitParams({
 			@ApiImplicitParam(name = "deviceId", value = "璁惧ID", dataTypeClass = String.class),
 			@ApiImplicitParam(name = "channelId", value = "閫氶亾ID", dataTypeClass = String.class),
-			@ApiImplicitParam(name = "cmdCode", value = "鎸囦护鐮�", dataTypeClass = Integer.class),
+			@ApiImplicitParam(name = "command", value = "鎺у埗鎸囦护,鍏佽鍊�: left, right, up, down, upleft, upright, downleft, downright, zoomin, zoomout, stop", dataTypeClass = Integer.class),
 			@ApiImplicitParam(name = "horizonSpeed", value = "姘村钩閫熷害", dataTypeClass = Integer.class),
 			@ApiImplicitParam(name = "verticalSpeed", value = "鍨傜洿閫熷害", dataTypeClass = Integer.class),
 			@ApiImplicitParam(name = "zoomSpeed", value = "缂╂斁閫熷害", dataTypeClass = Integer.class),
 	})
 	@PostMapping("/control/{deviceId}/{channelId}")
-	public ResponseEntity<String> ptz(@PathVariable String deviceId,@PathVariable String channelId,int cmdCode, int horizonSpeed, int verticalSpeed, int zoomSpeed){
+	public ResponseEntity<String> ptz(@PathVariable String deviceId,@PathVariable String channelId, String command, int horizonSpeed, int verticalSpeed, int zoomSpeed){
 
 		if (logger.isDebugEnabled()) {
-			logger.debug(String.format("璁惧浜戝彴鎺у埗 API璋冪敤锛宒eviceId锛�%s 锛宑hannelId锛�%s 锛宑mdCode锛�%d 锛宧orizonSpeed锛�%d 锛寁erticalSpeed锛�%d 锛寊oomSpeed锛�%d",deviceId, channelId, cmdCode, horizonSpeed, verticalSpeed, zoomSpeed));
+			logger.debug(String.format("璁惧浜戝彴鎺у埗 API璋冪敤锛宒eviceId锛�%s 锛宑hannelId锛�%s 锛宑ommand锛�%s 锛宧orizonSpeed锛�%d 锛寁erticalSpeed锛�%d 锛寊oomSpeed锛�%d",deviceId, channelId, command, horizonSpeed, verticalSpeed, zoomSpeed));
 		}
 		Device device = storager.queryVideoDevice(deviceId);
-
+		int cmdCode = 0;
+		switch (command){
+			case "left":
+				cmdCode = 2;
+				break;
+			case "right":
+				cmdCode = 1;
+				break;
+			case "up":
+				cmdCode = 8;
+				break;
+			case "down":
+				cmdCode = 4;
+				break;
+			case "upleft":
+				cmdCode = 10;
+				break;
+			case "upright":
+				cmdCode = 9;
+				break;
+			case "downleft":
+				cmdCode = 6;
+				break;
+			case "downright":
+				cmdCode = 5;
+				break;
+			case "zoomin":
+				cmdCode = 16;
+				break;
+			case "zoomout":
+				cmdCode = 32;
+				break;
+			case "stop":
+				cmdCode = 0;
+				break;
+			default:
+				break;
+		}
 		cmder.frontEndCmd(device, channelId, cmdCode, horizonSpeed, verticalSpeed, zoomSpeed);
 		return new ResponseEntity<String>("success",HttpStatus.OK);
 	}

--
Gitblit v1.8.0