regan 2 жил өмнө
parent
commit
fd799f331f

+ 1 - 1
iot-common/iot-common-core/src/main/java/cc/iotkit/common/constant/Constants.java

@@ -225,7 +225,7 @@ public interface Constants {
         /**
          * 设备-属性获取
          */
-        String INVOKE_SERVICE_PROPERTY_GET = "/{deviceId}/service/property/get";
+        String INVOKE_SERVICE_PROPERTY_GET = "/service/property/get";
 
         /**
          * OTA升级

+ 1 - 0
iot-components/iot-component-server/src/main/java/cc/iotkit/comps/ApiTool.java

@@ -34,6 +34,7 @@ import java.util.concurrent.atomic.AtomicReference;
  * 平台API调用工具类
  */
 @Slf4j
+@Deprecated
 public class ApiTool {
 
     private final Vertx vertx;

+ 10 - 35
iot-module/iot-manager/src/main/java/cc/iotkit/manager/controller/DeviceController.java

@@ -63,50 +63,26 @@ public class DeviceController {
 
 
     @ApiOperation(value = "服务调用", notes = "服务调用", httpMethod = "POST")
-    @ApiImplicitParams({
-            @ApiImplicitParam(name = "deviceId", value = "设备ID", dataTypeClass = String.class),
-            @ApiImplicitParam(name = "service", value = "服务", dataTypeClass = String.class),
-            @ApiImplicitParam(name = "args", value = "参数", dataTypeClass = Map.class),
-    })
-    @PostMapping(Constants.API_DEVICE.INVOKE_SERVICE)
-    public InvokeResult invokeService(@PathVariable("deviceId") String deviceId,
-                                      @PathVariable("service") String service,
-                                      @RequestBody Map<String, Object> args) {
-        if (StringUtils.isBlank(deviceId) || StringUtils.isBlank(service)) {
-            throw new BizException(ErrCode.PARAMS_EXCEPTION);
-        }
-        return new InvokeResult(deviceService.invokeService(deviceId, service, args));
+    @PostMapping("/service/invoke")
+    public InvokeResult invokeService(@RequestBody @Validated Request<ServiceInvokeBo> request) {
+        return new InvokeResult(deviceService.invokeService(request.getData().getDeviceId(), request.getData().getService(), request.getData().getArgs()));
     }
 
     @ApiOperation(value = "属性获取", notes = "属性获取", httpMethod = "POST")
-    @ApiImplicitParams({
-            @ApiImplicitParam(name = "deviceId", value = "设备ID", dataTypeClass = String.class),
-            @ApiImplicitParam(name = "propertyNames", value = "属性列表", dataTypeClass = ArrayList.class)
-    })
-    @PostMapping(Constants.API_DEVICE.INVOKE_SERVICE_PROPERTY_GET)
-    public InvokeResult invokeServicePropertySet(@PathVariable("deviceId") String deviceId,
-                                                 @RequestBody List<String> propertyNames) {
-        if (StringUtils.isBlank(deviceId)) {
-            throw new BizException(ErrCode.PARAMS_EXCEPTION);
-        }
-        return new InvokeResult(deviceService.getProperty(deviceId, propertyNames, true));
+    @PostMapping("/service/property/get")
+    public InvokeResult invokeServicePropertySet(@RequestBody @Validated  Request<GetDeviceServicePorpertyBo> request) {
+        return new InvokeResult(deviceService.getProperty(request.getData().getDeviceId(), request.getData().getPropertyNames(), true));
     }
 
     @ApiOperation(value = "属性设置", notes = "属性设置", httpMethod = "POST")
-    @ApiImplicitParams({
-            @ApiImplicitParam(name = "deviceId", value = "设备ID", dataTypeClass = String.class),
-            @ApiImplicitParam(name = "args", value = "参数", dataTypeClass = Map.class)
-    })
-    @PostMapping(Constants.API_DEVICE.SET_PROPERTIES)
-    public InvokeResult setProperty(@PathVariable("deviceId") String deviceId,
-                                    @RequestBody Map<String, Object> args) {
-        return new InvokeResult(deviceService.setProperty(deviceId, args));
+    @PostMapping("/service/property/set")
+    public InvokeResult setProperty(@RequestBody @Validated Request<SetDeviceServicePorpertyBo> request) {
+        return new InvokeResult(deviceService.setProperty(request.getData().getDeviceId(), request.getData().getArgs()));
     }
 
     @ApiOperation(value = "设备列表", notes = "设备列表", httpMethod = "POST")
     @PostMapping("/list")
     public Paging<DeviceInfo> getDevices(@Validated @RequestBody PageRequest<DeviceQueryBo> pageRequest) {
-
         return deviceServiceImpl.getDevices(pageRequest);
     }
 
@@ -121,7 +97,6 @@ public class DeviceController {
     @PostMapping("/children/list")
     public List<DeviceInfoVo> getChildren(@Validated @RequestBody PageRequest<String> request) {
         String deviceId = request.getData();
-
         return deviceServiceImpl.selectChildrenPageList(deviceId);
     }
 
@@ -240,7 +215,7 @@ public class DeviceController {
      * 删除分组
      */
     @ApiOperation(value = "删除分组")
-    @DeleteMapping("/group/delete")
+    @PostMapping("/group/delete")
     public boolean deleteGroup(@Validated @RequestBody Request<String> request) {
         String id = request.getData();
         return deviceServiceImpl.deleteGroup(id);

+ 1 - 1
iot-module/iot-manager/src/main/java/cc/iotkit/manager/controller/SpaceController.java

@@ -111,7 +111,7 @@ public class SpaceController {
                 .build());
     }
 
-    @DeleteMapping("/delSpace/{id}")
+    @PostMapping("/delSpace/{id}")
     public void delSpace(@PathVariable("id") String id) {
         checkExistAndOwner(id);
         spaceData.deleteById(id);

+ 26 - 0
iot-module/iot-manager/src/main/java/cc/iotkit/manager/dto/bo/device/GetDeviceServicePorpertyBo.java

@@ -0,0 +1,26 @@
+package cc.iotkit.manager.dto.bo.device;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import jakarta.validation.constraints.NotBlank;
+import lombok.Data;
+
+import java.util.List;
+
+/**
+ * @author: regan
+ * @description:
+ * @date:created in 2023/6/17 12:17
+ * @modificed by:
+ */
+@ApiModel(value = "GetDeviceServicePorpertyBo")
+@Data
+public class GetDeviceServicePorpertyBo {
+    @ApiModelProperty(value="设备id",required = true)
+    @NotBlank
+    private String deviceId;
+
+    @ApiModelProperty(value="属性列表")
+    private List<String> propertyNames;
+
+}

+ 28 - 0
iot-module/iot-manager/src/main/java/cc/iotkit/manager/dto/bo/device/ServiceInvokeBo.java

@@ -0,0 +1,28 @@
+package cc.iotkit.manager.dto.bo.device;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import jakarta.validation.constraints.NotBlank;
+import lombok.Data;
+
+import java.util.Map;
+
+/**
+ * @author: regan
+ * @description:
+ * @date:created in 2023/6/17 12:17
+ * @modificed by:
+ */
+@ApiModel(value = "ServiceInvokeBo")
+@Data
+public class ServiceInvokeBo {
+    @ApiModelProperty(value="设备id",required = true)
+    @NotBlank
+    private String deviceId;
+    @ApiModelProperty(value="服务",required = true)
+    @NotBlank
+    private String service;
+    @ApiModelProperty(value="参数")
+    private Map<String, Object> args;
+
+}

+ 25 - 0
iot-module/iot-manager/src/main/java/cc/iotkit/manager/dto/bo/device/SetDeviceServicePorpertyBo.java

@@ -0,0 +1,25 @@
+package cc.iotkit.manager.dto.bo.device;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import jakarta.validation.constraints.NotBlank;
+import lombok.Data;
+
+import java.util.Map;
+
+/**
+ * @author: regan
+ * @description:
+ * @date:created in 2023/6/17 12:17
+ * @modificed by:
+ */
+@ApiModel(value = "SetDeviceServicePorpertyBo")
+@Data
+public class SetDeviceServicePorpertyBo {
+    @ApiModelProperty(value="设备id",required = true)
+    @NotBlank
+    private String deviceId;
+    @ApiModelProperty(value="参数")
+    private Map<String, Object> args;
+
+}

+ 10 - 3
待优化项.md

@@ -1,4 +1,4 @@
-# **待优化项**
+# **后端待优化项**
 
 ## **主键**
 统一主键名称id,属性Long
@@ -6,6 +6,13 @@
 ## **sonerlint扫描**
 sonerlint扫描,按建议修改相关不规范的代码
 
+## **接口路径**
+尽量不用路径参数、且路径直接放在接口上,不放在常量里
+
+## **冗余方法、类**
+删除掉不用的冗余方法、类
+
+## **日志**
+sql 日志打印的话加个拦截器,简化sql  
+增加requestid 基于MDC
 
-## **xx**
-xxxxxxxxxxxx