Browse Source

更新!

TRX 1 year ago
parent
commit
cca864e02b

+ 2 - 1
OneCardIotClient/src/main/java/com/zhongshu/iot/client/model/mqtt/DeviceInfoSearchParam.java

@@ -1,7 +1,7 @@
 package com.zhongshu.iot.client.model.mqtt;
 
-import com.github.microservice.types.deviceUse.*;
 import com.github.microservice.models.baseParam.SuperSearchParam;
+import com.github.microservice.types.deviceUse.*;
 import io.swagger.v3.oas.annotations.media.Schema;
 import lombok.Data;
 
@@ -30,6 +30,7 @@ public class DeviceInfoSearchParam extends SuperSearchParam {
     @Schema(description = "设备类型:消费机 闸机")
     private List<DeviceType> deviceTypes = new ArrayList<>();
 
+    @Schema(description = "筛选不属于的设备类型")
     private List<DeviceType> ninDeviceTypes = new ArrayList<DeviceType>();
 
     @Schema(description = "设备型号")

+ 1 - 1
OneCardIotServer/src/main/java/com/zhongshu/iot/server/core/controller/devices/DeviceController.java

@@ -2,13 +2,13 @@ package com.zhongshu.iot.server.core.controller.devices;
 
 import com.github.microservice.auth.security.annotations.ResourceAuth;
 import com.github.microservice.auth.security.type.AuthType;
+import com.github.microservice.busInfoModel.device.DeviceInfoModel;
 import com.github.microservice.busInfoModel.device.DeviceInfoMoreModel;
 import com.github.microservice.net.ResultContent;
 import com.github.microservice.types.FunctionType;
 import com.github.microservice.types.deviceUse.DeviceCategory;
 import com.zhongshu.iot.client.model.iot.IotMainModel;
 import com.zhongshu.iot.client.model.mqtt.DeviceInfoAddParam;
-import com.github.microservice.busInfoModel.device.DeviceInfoModel;
 import com.zhongshu.iot.client.model.mqtt.DeviceInfoSearchParam;
 import com.zhongshu.iot.client.model.mqtt.DeviceInfoUpdateRemark;
 import com.zhongshu.iot.client.openApi.base.DeviceIdParam;

+ 8 - 1
OneCardIotServer/src/main/java/com/zhongshu/iot/server/core/controller/iot/IotController.java

@@ -2,8 +2,8 @@ package com.zhongshu.iot.server.core.controller.iot;
 
 import com.github.microservice.auth.security.annotations.ResourceAuth;
 import com.github.microservice.auth.security.type.AuthType;
-import com.github.microservice.net.ResultContent;
 import com.github.microservice.models.baseParam.NameModel;
+import com.github.microservice.net.ResultContent;
 import com.zhongshu.iot.client.model.iot.*;
 import com.zhongshu.iot.server.core.service.iot.IotServiceImpl;
 import com.zhongshu.iot.server.core.service.iot.IotTemplateManagerService;
@@ -47,6 +47,13 @@ public class IotController {
         return iotService.addIotTemplate(param);
     }
 
+    @ResourceAuth(value = "user", type = AuthType.User)
+    @Operation(summary = "编辑产品")
+    @RequestMapping(value = "updateIotTemplate", method = {RequestMethod.POST})
+    public ResultContent updateIotTemplate(@RequestBody IotTemplateParam param) {
+        return iotService.updateIotTemplate(param);
+    }
+
     @ResourceAuth(value = "user", type = AuthType.User)
     @Operation(summary = "产品列表-分页查询")
     @RequestMapping(value = {"pageTemplate"}, method = {RequestMethod.POST})

+ 12 - 0
OneCardIotServer/src/main/java/com/zhongshu/iot/server/core/service/device/DeviceInfoService.java

@@ -257,6 +257,9 @@ public class DeviceInfoService {
         if (ObjectUtils.isEmpty(deviceInfo)) {
             return ResultContent.buildFail(String.format(ResultMessage.DATA_NOT_EXIST, param.getId()));
         }
+        if (deviceInfo.getState() == DeviceState.Cancel) {
+            return ResultContent.buildFail("设备已注销");
+        }
         deviceInfo.setState(param.getState());
         updateDeviceOnLineStateByState(deviceInfo);
         deviceInfoDao.save(deviceInfo);
@@ -331,6 +334,9 @@ public class DeviceInfoService {
         if (deviceInfo.getState() != DeviceState.Cancel) {
             return ResultContent.buildFail("设备未注销,不能删除");
         }
+        if (deviceInfo.getIsDelete() != null && deviceInfo.getIsDelete()) {
+            return ResultContent.buildFail("设备已删除");
+        }
         deviceInfo.setIsDelete(Boolean.TRUE);
         deviceInfoDao.save(deviceInfo);
 
@@ -359,6 +365,12 @@ public class DeviceInfoService {
         if (ObjectUtils.isEmpty(deviceInfo)) {
             return ResultContent.buildFail(String.format("设备ID不存在:%s", deviceId));
         }
+        if (deviceInfo.getState() == DeviceState.Cancel) {
+            return ResultContent.buildFail("设备已注销");
+        }
+        if (deviceInfo.getIsDelete() != null && deviceInfo.getIsDelete()) {
+            return ResultContent.buildFail("设备已删除");
+        }
         deviceInfo.setState(DeviceState.Cancel);
         updateDeviceOnLineStateByState(deviceInfo);
         deviceInfoDao.save(deviceInfo);

+ 23 - 0
OneCardIotServer/src/main/java/com/zhongshu/iot/server/core/service/iot/IotServiceImpl.java

@@ -108,6 +108,7 @@ public class IotServiceImpl extends SuperService {
             }
         }
 
+        // 适用设备型号
         if (param.getSpecType() == null) {
             param.setSpecType(DeviceSpecType.Common);
         }
@@ -143,6 +144,28 @@ public class IotServiceImpl extends SuperService {
         return ResultContent.buildSuccess();
     }
 
+    public ResultContent updateIotTemplate(IotTemplateParam param) {
+        if (StringUtils.isEmpty(param.getId())) {
+            return ResultContent.buildFail("id is empty");
+        }
+        IotTemplate template = null;
+        IotTemplate temp = iotTemplateDao.findTopByNameAndIotDataType(param.getName(), IotDataType.IotTemplate);
+        if (StringUtils.isNotEmpty(param.getId())) {
+            // 编辑 (只能编辑名称和备注)
+            template = iotTemplateDao.findTopById(param.getId());
+            if (ObjectUtils.isEmpty(template)) {
+                return ResultContent.buildFail(String.format(ResultMessage.DATA_NOT_EXIST, param.getId()));
+            }
+            if (ObjectUtils.isNotEmpty(temp) && !temp.getId().equals(param.getId())) {
+                return ResultContent.buildFail(String.format(ResultMessage.NAME_EXIT, param.getName()));
+            }
+            template.setName(param.getName());
+            template.setRemark(param.getRemark());
+        }
+        iotTemplateDao.save(template);
+        return ResultContent.buildSuccess();
+    }
+
     /**
      * 删除产品
      *