Commit 21acea4256609ab2fc81131370a97b290aa57570

Authored by YunaiV
1 parent 3a18fe6b

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

将工具编码字段设置为必填,并添加相应的校验逻辑。更新可用数量字段名称为更具描述性的名称,确保代码一致性和可读性。同时,调整相关逻辑以支持新的字段名称。
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 {
48 48  
49 49 @Schema(description = "可用数量", example = "1")
50 50 @ExcelProperty("可用数量")
51   - private Integer quantityAvailable;
  51 + private Integer availableQuantity;
52 52  
53 53 @Schema(description = "保养维护类型", example = "1")
54 54 @ExcelProperty(value = "保养维护类型", converter = DictConvert.class)
... ...
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 {
14 14 @Schema(description = "编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "1024")
15 15 private Long id;
16 16  
17   - @Schema(description = "工具编码", example = "T-001")
  17 + @Schema(description = "工具编码", requiredMode = Schema.RequiredMode.REQUIRED, example = "T-001")
  18 + @NotEmpty(message = "工具编码不能为空")
18 19 private String code;
19 20  
20 21 @Schema(description = "工具名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "5mm 铣刀")
... ... @@ -36,7 +37,7 @@ public class MesTmToolSaveReqVO {
36 37 private Integer quantity;
37 38  
38 39 @Schema(description = "可用数量", example = "1")
39   - private Integer quantityAvailable;
  40 + private Integer availableQuantity;
40 41  
41 42 @Schema(description = "保养维护类型", example = "1")
42 43 private Integer maintenType;
... ...
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 {
59 59 /**
60 60 * 可用数量
61 61 */
62   - private Integer quantityAvailable;
  62 + private Integer availableQuantity;
63 63 /**
64 64 * 保养维护类型
65 65 *
... ...
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 {
43 43  
44 44 @Override
45 45 public Long createTool(MesTmToolSaveReqVO createReqVO) {
46   - // 校验工具类型存在
47   - toolTypeService.getToolType(createReqVO.getToolTypeId());
48   - // 校验编码唯一
49   - validateToolCodeUnique(null, createReqVO.getCode());
  46 + // 校验数据
  47 + validateToolSaveData(null, createReqVO);
50 48  
51 49 // 插入
52 50 MesTmToolDO tool = BeanUtils.toBean(createReqVO, MesTmToolDO.class);
... ... @@ -60,23 +58,29 @@ public class MesTmToolServiceImpl implements MesTmToolService {
60 58  
61 59 @Override
62 60 public void updateTool(MesTmToolSaveReqVO updateReqVO) {
63   - // 校验存在
  61 + // 1.1 校验存在
64 62 validateToolExists(updateReqVO.getId());
65   - // 校验工具类型存在
66   - toolTypeService.getToolType(updateReqVO.getToolTypeId());
67   - // 校验编码唯一
68   - validateToolCodeUnique(updateReqVO.getId(), updateReqVO.getCode());
  63 + // 1.2 校验数据
  64 + validateToolSaveData(updateReqVO.getId(), updateReqVO);
69 65  
70   - // 更新
  66 + // 2.1 保养类型互斥清理
71 67 if (Objects.equals(updateReqVO.getMaintenType(), MesTmMaintenTypeEnum.REGULAR.getType())) {
72 68 updateReqVO.setNextMaintenPeriod(null);
73 69 } else if (Objects.equals(updateReqVO.getMaintenType(), MesTmMaintenTypeEnum.USAGE.getType())) {
74 70 updateReqVO.setNextMaintenDate(null);
75 71 }
  72 + // 2.2 更新
76 73 MesTmToolDO updateObj = BeanUtils.toBean(updateReqVO, MesTmToolDO.class);
77 74 toolMapper.updateById(updateObj);
78 75 }
79 76  
  77 + private void validateToolSaveData(Long id, MesTmToolSaveReqVO reqVO) {
  78 + // 校验工具类型存在
  79 + toolTypeService.validateToolTypeExists(reqVO.getToolTypeId());
  80 + // 校验编码唯一
  81 + validateToolCodeUnique(id, reqVO.getCode());
  82 + }
  83 +
80 84 @Override
81 85 public void deleteTool(Long id) {
82 86 // 校验存在
... ...