From ac65092e44f047a752838dae744b247f583e26b8 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E7=8E=8B=E5=85=B4=E7=90=B3?= <1911390090@qq.com>
Date: Mon, 28 Apr 2025 16:13:52 +0800
Subject: [PATCH] =?UTF-8?q?=E5=90=88=E6=B5=81=E5=8C=BA=E9=A2=84=E8=AD=A6?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 .../controller/DcDeviceController.java        | 32 +++++++++++++++++++
 1 file changed, 32 insertions(+)

diff --git a/zc-business/src/main/java/com/zc/business/controller/DcDeviceController.java b/zc-business/src/main/java/com/zc/business/controller/DcDeviceController.java
index ee545626..0c11fd5f 100644
--- a/zc-business/src/main/java/com/zc/business/controller/DcDeviceController.java
+++ b/zc-business/src/main/java/com/zc/business/controller/DcDeviceController.java
@@ -1028,6 +1028,38 @@ private VideoController videoController;
 
         return getAjaxResult(deviceId, functionId, props);
 
+    }
+    @ApiOperation("设备功能调用")
+    @PostMapping("/functions2/{deviceId}/{functionId}")
+    public AjaxResult invokedFunction2(
+            @PathVariable String deviceId,
+            @PathVariable String functionId,
+            @RequestBody HashMap<String, Object> props) throws HttpException, IOException {
+        //public AjaxResult invokedFunction(@PathVariable String deviceId,@PathVariable String functionId,@RequestBody HashMap<String, Object> props,int operType) throws HttpException, IOException { todo
+        if (!StringUtils.hasText(deviceId) || !StringUtils.hasText(functionId)) {
+            return AjaxResult.error(UniversalEnum.DEVICE_NOT_CONNECTED.getValue());
+        }
+
+        try {
+
+            OkHttp okHttp = new OkHttp();
+
+            RequestParams requestParams = new RequestParams(props);
+
+
+            Response response // 请求响应
+                    = okHttp
+                    .url(iotAddress + UniversalEnum.DEVICE_FUNCTION_CALL.getValue() + deviceId + UniversalEnum.SLASH.getValue() + functionId) // 请求地址
+                    .data(requestParams)
+                    .post(); // 请求方法
+            if (response.body() != null) {
+                return AjaxResult.success();
+            }
+            return AjaxResult.error();
+        } catch (Exception e) {
+            return AjaxResult.error(UniversalEnum.REQUEST_FAILED.getValue());
+        }
+
     }
 
     public AjaxResult getAjaxResult(String deviceId, String functionId, HashMap<String, Object> props) {