Commit b49798aa9e0d14bd679715c436343db2096d04dd
1 parent
b886ad6f
✨ feat(mes): 添加物料/产品标识枚举及相关逻辑
新增物料/产品标识枚举类,优化物料类型校验逻辑,提升代码可读性和可维护性
Showing
3 changed files
with
44 additions
and
1 deletions
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/dal/dataobject/md/item/MesMdItemTypeDO.java
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/enums/md/MesMdItemTypeEnum.java
0 → 100644
| 1 | +package cn.iocoder.yudao.module.mes.enums.md; | |
| 2 | + | |
| 3 | +import lombok.AllArgsConstructor; | |
| 4 | +import lombok.Getter; | |
| 5 | + | |
| 6 | +/** | |
| 7 | + * MES 物料产品分类 - 物料/产品标识枚举 | |
| 8 | + * | |
| 9 | + * @author 芋道源码 | |
| 10 | + */ | |
| 11 | +@Getter | |
| 12 | +@AllArgsConstructor | |
| 13 | +public enum MesMdItemTypeEnum { | |
| 14 | + | |
| 15 | + /** | |
| 16 | + * 物料 | |
| 17 | + */ | |
| 18 | + ITEM("ITEM", "物料"), | |
| 19 | + /** | |
| 20 | + * 产品 | |
| 21 | + */ | |
| 22 | + PRODUCT("PRODUCT", "产品"); | |
| 23 | + | |
| 24 | + /** | |
| 25 | + * 标识值 | |
| 26 | + */ | |
| 27 | + private final String value; | |
| 28 | + /** | |
| 29 | + * 标识名 | |
| 30 | + */ | |
| 31 | + private final String name; | |
| 32 | + | |
| 33 | + /** | |
| 34 | + * 判断给定值是否为产品类型 | |
| 35 | + */ | |
| 36 | + public static boolean isProduct(String value) { | |
| 37 | + return PRODUCT.getValue().equals(value); | |
| 38 | + } | |
| 39 | + | |
| 40 | +} | ... | ... |
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/md/item/MesMdItemServiceImpl.java
| ... | ... | @@ -16,6 +16,7 @@ import cn.iocoder.yudao.module.mes.dal.dataobject.md.item.MesMdItemDO; |
| 16 | 16 | import cn.iocoder.yudao.module.mes.dal.dataobject.md.item.MesMdItemTypeDO; |
| 17 | 17 | import cn.iocoder.yudao.module.mes.dal.dataobject.md.unitmeasure.MesMdUnitMeasureDO; |
| 18 | 18 | import cn.iocoder.yudao.module.mes.dal.mysql.md.item.MesMdItemMapper; |
| 19 | +import cn.iocoder.yudao.module.mes.enums.md.MesMdItemTypeEnum; | |
| 19 | 20 | import cn.iocoder.yudao.module.mes.enums.wm.BarcodeBizTypeEnum; |
| 20 | 21 | import cn.iocoder.yudao.module.mes.service.md.unitmeasure.MesMdUnitMeasureService; |
| 21 | 22 | import cn.iocoder.yudao.module.mes.service.wm.barcode.MesWmBarcodeService; |
| ... | ... | @@ -112,7 +113,7 @@ public class MesMdItemServiceImpl implements MesMdItemService { |
| 112 | 113 | } |
| 113 | 114 | // 如果是产品类型,校验必须配置 BOM |
| 114 | 115 | MesMdItemTypeDO itemType = itemTypeService.getItemType(item.getItemTypeId()); |
| 115 | - if (itemType != null && "PRODUCT".equals(itemType.getItemOrProduct())) { | |
| 116 | + if (MesMdItemTypeEnum.isProduct(itemType.getItemOrProduct())) { | |
| 116 | 117 | if (CollUtil.isEmpty(productBomService.getProductBomListByItemId(id))) { |
| 117 | 118 | throw exception(MD_ITEM_PRODUCT_BOM_REQUIRED); |
| 118 | 119 | } | ... | ... |