Browse Source

✨ feat(mes): 更新工具编码及可用数量字段,添加校验逻辑

将工具编码字段设置为必填,并添加相应的校验逻辑。更新可用数量字段名称为更具描述性的名称,确保代码一致性和可读性。同时,调整相关逻辑以支持新的字段名称。
YunaiV 4 months ago
parent
commit
21acea4256

+ 1 - 1
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/tm/tool/vo/MesTmToolRespVO.java

@@ -48,7 +48,7 @@ public class MesTmToolRespVO {
 
     @Schema(description = "可用数量", example = "1")
     @ExcelProperty("可用数量")
-    private Integer quantityAvailable;
+    private Integer availableQuantity;
 
     @Schema(description = "保养维护类型", example = "1")
     @ExcelProperty(value = "保养维护类型", converter = DictConvert.class)

+ 3 - 2
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/tm/tool/vo/MesTmToolSaveReqVO.java

@@ -14,7 +14,8 @@ public class MesTmToolSaveReqVO {
     @Schema(description = "编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "1024")
     private Long id;
 
-    @Schema(description = "工具编码", example = "T-001")
+    @Schema(description = "工具编码", requiredMode = Schema.RequiredMode.REQUIRED, example = "T-001")
+    @NotEmpty(message = "工具编码不能为空")
     private String code;
 
     @Schema(description = "工具名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "5mm 铣刀")
@@ -36,7 +37,7 @@ public class MesTmToolSaveReqVO {
     private Integer quantity;
 
     @Schema(description = "可用数量", example = "1")
-    private Integer quantityAvailable;
+    private Integer availableQuantity;
 
     @Schema(description = "保养维护类型", example = "1")
     private Integer maintenType;

+ 1 - 1
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/dal/dataobject/tm/tool/MesTmToolDO.java

@@ -59,7 +59,7 @@ public class MesTmToolDO extends BaseDO {
     /**
      * 可用数量
      */
-    private Integer quantityAvailable;
+    private Integer availableQuantity;
     /**
      * 保养维护类型
      *

+ 14 - 10
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/tm/tool/MesTmToolServiceImpl.java

@@ -43,10 +43,8 @@ public class MesTmToolServiceImpl implements MesTmToolService {
 
     @Override
     public Long createTool(MesTmToolSaveReqVO createReqVO) {
-        // 校验工具类型存在
-        toolTypeService.getToolType(createReqVO.getToolTypeId());
-        // 校验编码唯一
-        validateToolCodeUnique(null, createReqVO.getCode());
+        // 校验数据
+        validateToolSaveData(null, createReqVO);
 
         // 插入
         MesTmToolDO tool = BeanUtils.toBean(createReqVO, MesTmToolDO.class);
@@ -60,23 +58,29 @@ public class MesTmToolServiceImpl implements MesTmToolService {
 
     @Override
     public void updateTool(MesTmToolSaveReqVO updateReqVO) {
-        // 校验存在
+        // 1.1 校验存在
         validateToolExists(updateReqVO.getId());
-        // 校验工具类型存在
-        toolTypeService.getToolType(updateReqVO.getToolTypeId());
-        // 校验编码唯一
-        validateToolCodeUnique(updateReqVO.getId(), updateReqVO.getCode());
+        // 1.2 校验数据
+        validateToolSaveData(updateReqVO.getId(), updateReqVO);
 
-        // 更新
+        // 2.1 保养类型互斥清理
         if (Objects.equals(updateReqVO.getMaintenType(), MesTmMaintenTypeEnum.REGULAR.getType())) {
             updateReqVO.setNextMaintenPeriod(null);
         } else if (Objects.equals(updateReqVO.getMaintenType(), MesTmMaintenTypeEnum.USAGE.getType())) {
             updateReqVO.setNextMaintenDate(null);
         }
+        // 2.2 更新
         MesTmToolDO updateObj = BeanUtils.toBean(updateReqVO, MesTmToolDO.class);
         toolMapper.updateById(updateObj);
     }
 
+    private void validateToolSaveData(Long id, MesTmToolSaveReqVO reqVO) {
+        // 校验工具类型存在
+        toolTypeService.validateToolTypeExists(reqVO.getToolTypeId());
+        // 校验编码唯一
+        validateToolCodeUnique(id, reqVO.getCode());
+    }
+
     @Override
     public void deleteTool(Long id) {
         // 校验存在