From 08251256bc149b7b3a4bceaa53300ced13eab33e Mon Sep 17 00:00:00 2001 From: weiyachao <13526234727@126.com> Date: Mon, 18 Sep 2023 18:57:17 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B6=82=E9=B8=A6=E6=8E=A5=E5=8F=A3=E5=AE=9A?= =?UTF-8?q?=E4=B9=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitignore | 1 + iot-modules/iot-box-user-api/.gitignore | 3 +- .../controller/device/DeviceController.java | 10 ---- .../controller/tuya/TuyaDeviceController.java | 20 ++++++++ .../controller/{ => user}/UserController.java | 2 +- .../iot/user/api/service/DeviceConnector.java | 18 ------- .../user/api/service/TuyaDeviceConnector.java | 48 +++++++++++++++++++ 7 files changed, 72 insertions(+), 30 deletions(-) create mode 100644 iot-modules/iot-box-user-api/src/main/java/com/qiuguo/iot/user/api/controller/tuya/TuyaDeviceController.java rename iot-modules/iot-box-user-api/src/main/java/com/qiuguo/iot/user/api/controller/{ => user}/UserController.java (99%) delete mode 100644 iot-modules/iot-box-user-api/src/main/java/com/qiuguo/iot/user/api/service/DeviceConnector.java create mode 100644 iot-modules/iot-box-user-api/src/main/java/com/qiuguo/iot/user/api/service/TuyaDeviceConnector.java diff --git a/.gitignore b/.gitignore index 7dc39e4..9a481a6 100644 --- a/.gitignore +++ b/.gitignore @@ -32,3 +32,4 @@ build/ ### VS Code ### .vscode/ /logs/ + diff --git a/iot-modules/iot-box-user-api/.gitignore b/iot-modules/iot-box-user-api/.gitignore index 5ff6309..702ebff 100644 --- a/iot-modules/iot-box-user-api/.gitignore +++ b/iot-modules/iot-box-user-api/.gitignore @@ -35,4 +35,5 @@ build/ .vscode/ ### Mac OS ### -.DS_Store \ No newline at end of file +.DS_Store +/logs/ diff --git a/iot-modules/iot-box-user-api/src/main/java/com/qiuguo/iot/user/api/controller/device/DeviceController.java b/iot-modules/iot-box-user-api/src/main/java/com/qiuguo/iot/user/api/controller/device/DeviceController.java index 44ff94b..c740ba6 100644 --- a/iot-modules/iot-box-user-api/src/main/java/com/qiuguo/iot/user/api/controller/device/DeviceController.java +++ b/iot-modules/iot-box-user-api/src/main/java/com/qiuguo/iot/user/api/controller/device/DeviceController.java @@ -9,7 +9,6 @@ import com.qiuguo.iot.data.resp.device.DeviceInfoResp; import com.qiuguo.iot.data.service.device.DeviceBatchService; import com.qiuguo.iot.data.service.device.DeviceInfoService; import com.qiuguo.iot.user.api.resp.device.DeviceInitResp; -import com.qiuguo.iot.user.api.service.DeviceConnector; import lombok.extern.slf4j.Slf4j; import org.hswebframework.web.exception.BusinessException; import org.springframework.beans.factory.annotation.Value; @@ -37,15 +36,6 @@ public class DeviceController { @Resource private DeviceBatchService deviceBatchService; - @Resource - private DeviceConnector deviceConnector; - - @GetMapping("/getByid") - public Mono getByid() { - Object byid = deviceConnector.getByid("6c4a153095be2b7f8baofp"); - System.out.println("byid = " + byid); - return Mono.empty(); - } private static Long timeOut = 120000l;//2分钟 // @GetMapping("/init") diff --git a/iot-modules/iot-box-user-api/src/main/java/com/qiuguo/iot/user/api/controller/tuya/TuyaDeviceController.java b/iot-modules/iot-box-user-api/src/main/java/com/qiuguo/iot/user/api/controller/tuya/TuyaDeviceController.java new file mode 100644 index 0000000..8bead82 --- /dev/null +++ b/iot-modules/iot-box-user-api/src/main/java/com/qiuguo/iot/user/api/controller/tuya/TuyaDeviceController.java @@ -0,0 +1,20 @@ +package com.qiuguo.iot.user.api.controller.tuya; + +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +/** + * XXX + * + * @author weiyachao + * @since 2023/9/18 17:52 + */ + +@RestController +@RequestMapping("/tuya") +public class TuyaDeviceController { + + + + +} diff --git a/iot-modules/iot-box-user-api/src/main/java/com/qiuguo/iot/user/api/controller/UserController.java b/iot-modules/iot-box-user-api/src/main/java/com/qiuguo/iot/user/api/controller/user/UserController.java similarity index 99% rename from iot-modules/iot-box-user-api/src/main/java/com/qiuguo/iot/user/api/controller/UserController.java rename to iot-modules/iot-box-user-api/src/main/java/com/qiuguo/iot/user/api/controller/user/UserController.java index 82cc2ab..1d31b5e 100644 --- a/iot-modules/iot-box-user-api/src/main/java/com/qiuguo/iot/user/api/controller/UserController.java +++ b/iot-modules/iot-box-user-api/src/main/java/com/qiuguo/iot/user/api/controller/user/UserController.java @@ -1,4 +1,4 @@ -package com.qiuguo.iot.user.api.controller; +package com.qiuguo.iot.user.api.controller.user; import com.alibaba.fastjson.JSONObject; import java.util.Objects; diff --git a/iot-modules/iot-box-user-api/src/main/java/com/qiuguo/iot/user/api/service/DeviceConnector.java b/iot-modules/iot-box-user-api/src/main/java/com/qiuguo/iot/user/api/service/DeviceConnector.java deleted file mode 100644 index 58100dd..0000000 --- a/iot-modules/iot-box-user-api/src/main/java/com/qiuguo/iot/user/api/service/DeviceConnector.java +++ /dev/null @@ -1,18 +0,0 @@ -package com.qiuguo.iot.user.api.service; - -import com.tuya.connector.api.annotations.GET; -import com.tuya.connector.api.annotations.Path; - -/** - * XXX - * - * @author weiyachao - * @since 2023/9/18 16:41 - */ -public interface DeviceConnector { - - @GET("/v2.0/cloud/thing/{device_id}") - Object getByid(@Path("device_id") String deviceId); - - -} diff --git a/iot-modules/iot-box-user-api/src/main/java/com/qiuguo/iot/user/api/service/TuyaDeviceConnector.java b/iot-modules/iot-box-user-api/src/main/java/com/qiuguo/iot/user/api/service/TuyaDeviceConnector.java new file mode 100644 index 0000000..095c259 --- /dev/null +++ b/iot-modules/iot-box-user-api/src/main/java/com/qiuguo/iot/user/api/service/TuyaDeviceConnector.java @@ -0,0 +1,48 @@ +package com.qiuguo.iot.user.api.service; + +import com.alibaba.fastjson.JSONObject; +import com.tuya.connector.api.annotations.Body; +import com.tuya.connector.api.annotations.DELETE; +import com.tuya.connector.api.annotations.GET; +import com.tuya.connector.api.annotations.POST; +import com.tuya.connector.api.annotations.PUT; +import com.tuya.connector.api.annotations.Path; +import java.util.Map; + +/** + * XXX + * + * @author weiyachao + * @since 2023/9/18 16:41 + */ +public interface TuyaDeviceConnector { + + // 查询设备信息,多个id使用,隔开 + @GET("/v2.0/cloud/thing/{device_id}") + JSONObject getByid(@Path("device_id") String deviceId); + + // 查询空间下设备列表 + @GET("/v2.0/cloud/thing/space/device") + JSONObject getDevicesBySpaceIds(String spaces); + + // 控制设备动作 + @POST("/v2.0/cloud/thing/{device_id}/shadow/actions") + JSONObject controlDevice(@Path("device_id") String deviceId, @Body JSONObject commands); + + // 创建空间 + @POST("/v2.0/cloud/space/creation") + JSONObject creatSpace(@Body JSONObject jsonObject); + + // 删除空间 + @DELETE("/v2.0/cloud/space/{space_id}") + JSONObject deleteSpace(@Path("space_id") String spaceId); + + // 查询空间 + @GET("/v2.0/cloud/space/{space_id}") + JSONObject getSpaceInfo(@Path("space_id") String spaceId); + + // 修改空间信息 + @PUT("/v2.0/cloud/space/{space_id}") + JSONObject updateSpace(@Path("space_id") String spaceId, @Body JSONObject JSONObject); + +}