Sfoglia il codice sorgente

feat(device): 增加设备参数范围校验逻辑

- 在设备网关实现中增加对X和Y参数范围的校验- 更新设备参数错误提示信息,明确指出是X、Y参数范围错误
- 当参数范围不合法时抛出业务异常,阻止无效数据提交
hxd 1 settimana fa
parent
commit
5ee386bed8

+ 1 - 1
portal-service-domain/src/main/java/com/hfln/portal/domain/exception/ErrorEnum.java

@@ -60,7 +60,7 @@ public enum ErrorEnum implements ErrorEnumInterface {
     DEVICE_IS_BINDING("50002", "当前设备已经被绑定!"),
     CLIENT_ID_ID_NULL("50003", "设备ID不能为空!"),
     DEVICE_IS_EXIST("50004", "设备已存在!"),
-    DEVICE_PARAM_ERROR("50005", "设备参数范围错误!"),
+    DEVICE_PARAM_ERROR("50005", "设备X、Y参数范围错误!"),
     STATUS_LIGHT_IS_NOT_EXIST("50006", "指示灯状态不合法!"),
     USER_NO_PERMISSION("50007", "当前用户没有权限!"),
     DEVICE_UPDATE_FAIL("50008", "设备更新失败!"),

+ 4 - 0
portal-service-infrastructure/src/main/java/com/hfln/portal/infrastructure/gateway/impl/DeviceGatewayImpl.java

@@ -386,6 +386,10 @@ public class DeviceGatewayImpl implements DeviceGateway {
 
         logService.saveLog(devInfo.getDevId(), OprLogType.UPDATE_DEVICE.getCode(), devInfo);
 
+        // 1.参数范围大小校验
+        if (params.getXxEnd().compareTo(params.getXxStart()) <= 0 || params.getYyEnd().compareTo(params.getYyStart()) <= 0) {
+            throw new BizException(ErrorEnum.DEVICE_PARAM_ERROR.getErrorCode(), ErrorEnum.DEVICE_PARAM_ERROR.getErrorMessage());
+        }
 
         // 校验 北向夹角
         List<BigDecimal> validAngles = Arrays.asList(