From 1ca9656140c41165459dfb6f6b7606b3aa6a8747 Mon Sep 17 00:00:00 2001
From: zhangnaisong <2434969829@qq.com>
Date: Wed, 24 Jul 2024 15:05:13 +0800
Subject: [PATCH] 三一车辆查询加入关联后bug修改提交

---
 ard-work/src/main/java/com/ruoyi/device/camera/controller/CameraSdkController.java |   54 +++++++++++++++++++++++++++++++++++++++++++++++-------
 1 files changed, 47 insertions(+), 7 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 a2cefc6..5ca32d2 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
@@ -23,9 +23,11 @@
 import org.springframework.web.bind.annotation.*;
 
 import javax.annotation.Resource;
+import javax.servlet.http.HttpServletResponse;
+import java.io.IOException;
+import java.io.OutputStream;
 import java.util.ArrayList;
 import java.util.List;
-import java.util.Map;
 
 /**
  * @Description: 相机通用SDK接口
@@ -333,6 +335,20 @@
         return toAjaxString(path, "相机抓图");
     }
 
+    @ApiOperation("本地抓图")
+    @PostMapping("/localCapture")
+    @Log(title = "相机抓图", businessType = BusinessType.CONTROL)
+    @ApiOperationSupport(includeParameters = {"cmd.cameraId", "cmd.chanNo"})
+    public @ResponseBody
+    void localCapture(@RequestBody CameraCmd cmd, HttpServletResponse response) throws IOException {
+        cmd.setOperator(SecurityUtils.getUserId());
+        response.setContentType("image/jpeg");
+        AjaxResult result = cameraSdkService.localCapture(cmd);
+        OutputStream outputStream = response.getOutputStream();
+        byte[] data = (byte[]) result.get("data");
+        outputStream.write(data);
+    }
+
     @ApiOperation("获取相机架设参数")
     @PostMapping("/getGisInfo")
     @Log(title = "获取相机架设参数", businessType = BusinessType.CONTROL)
@@ -343,10 +359,10 @@
         return cameraSdkService.getGisInfo(cmd);
     }
 
-    @ApiOperation("录像")
+    //@ApiOperation("录像")
     @PostMapping("/record")
     @Log(title = "手动录像开始", businessType = BusinessType.CONTROL)
-    @ApiOperationSupport(includeParameters = {"cmd.cameraId", "cmd.chanNo", "cmd.enable"})
+    //@ApiOperationSupport(includeParameters = {"cmd.cameraId", "cmd.chanNo", "cmd.enable"})
     public @ResponseBody
     AjaxResult record(@RequestBody CameraCmd cmd) {
         cmd.setOperator(SecurityUtils.getUserId());
@@ -354,10 +370,10 @@
         return AjaxResult.success(url);
     }
 
-    @ApiOperation("手动录像开始")
+    //@ApiOperation("手动录像开始")
     @PostMapping("/recordStart")
     @Log(title = "手动录像开始", businessType = BusinessType.CONTROL)
-    @ApiOperationSupport(includeParameters = {"cmd.cameraId", "cmd.chanNo"})
+    //@ApiOperationSupport(includeParameters = {"cmd.cameraId", "cmd.chanNo"})
     public @ResponseBody
     AjaxResult recordStart(@RequestBody CameraCmd cmd) {
         cmd.setOperator(SecurityUtils.getUserId());
@@ -365,14 +381,38 @@
         return toAjax(b);
     }
 
-    @ApiOperation("手动录像停止")
+    //@ApiOperation("手动录像停止")
     @PostMapping("/recordStop")
     @Log(title = "手动录像停止", businessType = BusinessType.CONTROL)
-    @ApiOperationSupport(includeParameters = {"cmd.cameraId", "cmd.recordBucketName", "cmd.recordObjectName"})
+    //@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);
     }
+
+    @ApiOperation("本地录像开始")
+    @PostMapping("/localRecordStart")
+    @Log(title = "本地录像开始", businessType = BusinessType.CONTROL)
+    @ApiOperationSupport(includeParameters = {"cmd.cameraId", "cmd.chanNo"})
+    public @ResponseBody
+    AjaxResult localRecordStart(@RequestBody CameraCmd cmd) {
+        cmd.setOperator(SecurityUtils.getUserId());
+        return cameraSdkService.localRecordStart(cmd);
+    }
+
+    @ApiOperation("本地录像停止")
+    @PostMapping("/localRecordStop")
+    @Log(title = "本地录像停止", businessType = BusinessType.CONTROL)
+    @ApiOperationSupport(includeParameters = {"cmd.cameraId", "cmd.chanNo", "cmd.recordId"})
+    public @ResponseBody
+    void localRecordStop(@RequestBody CameraCmd cmd, HttpServletResponse response) throws IOException {
+        cmd.setOperator(SecurityUtils.getUserId());
+        response.setContentType("video/mp4");
+        AjaxResult result = cameraSdkService.localRecordStop(cmd);
+        byte[] recordBytes = (byte[]) result.get("data");
+        OutputStream outputStream = response.getOutputStream();
+        outputStream.write(recordBytes);
+    }
 }

--
Gitblit v1.9.3