From 613abe9a3968724ee028e4c6ddd480d6e66a1271 Mon Sep 17 00:00:00 2001 From: YunaiV Date: Sat, 28 Mar 2026 10:56:58 +0800 Subject: [PATCH] ✨ feat(mes): 添加工序存在性校验功能,优化物料表单 --- yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/md/item/MesMdProductSipServiceImpl.java | 12 ++++++++++++ yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/md/item/MesMdProductSopServiceImpl.java | 12 ++++++++++++ 2 files changed, 24 insertions(+), 0 deletions(-) diff --git a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/md/item/MesMdProductSipServiceImpl.java b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/md/item/MesMdProductSipServiceImpl.java index ec8e8a7..bd96283 100644 --- a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/md/item/MesMdProductSipServiceImpl.java +++ b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/md/item/MesMdProductSipServiceImpl.java @@ -6,6 +6,7 @@ import cn.iocoder.yudao.module.mes.controller.admin.md.item.vo.sip.MesMdProductS import cn.iocoder.yudao.module.mes.controller.admin.md.item.vo.sip.MesMdProductSipSaveReqVO; import cn.iocoder.yudao.module.mes.dal.dataobject.md.item.MesMdProductSipDO; import cn.iocoder.yudao.module.mes.dal.mysql.md.item.MesMdProductSipMapper; +import cn.iocoder.yudao.module.mes.service.pro.process.MesProProcessService; import jakarta.annotation.Resource; import org.springframework.stereotype.Service; import org.springframework.validation.annotation.Validated; @@ -27,10 +28,17 @@ public class MesMdProductSipServiceImpl implements MesMdProductSipService { @Resource private MesMdProductSipMapper productSipMapper; + @Resource + private MesProProcessService processService; + @Override public Long createProductSip(MesMdProductSipSaveReqVO createReqVO) { // 校验排列顺序的唯一性 validateSortUnique(createReqVO.getItemId(), createReqVO.getSort(), null); + // 校验工序存在 + if (createReqVO.getProcessId() != null) { + processService.validateProcessExists(createReqVO.getProcessId()); + } // 插入 MesMdProductSipDO sip = BeanUtils.toBean(createReqVO, MesMdProductSipDO.class); @@ -44,6 +52,10 @@ public class MesMdProductSipServiceImpl implements MesMdProductSipService { validateProductSipExists(updateReqVO.getId()); // 校验排列顺序的唯一性 validateSortUnique(updateReqVO.getItemId(), updateReqVO.getSort(), updateReqVO.getId()); + // 校验工序存在 + if (updateReqVO.getProcessId() != null) { + processService.validateProcessExists(updateReqVO.getProcessId()); + } // 更新 MesMdProductSipDO updateObj = BeanUtils.toBean(updateReqVO, MesMdProductSipDO.class); diff --git a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/md/item/MesMdProductSopServiceImpl.java b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/md/item/MesMdProductSopServiceImpl.java index 3c94726..c7f949d 100644 --- a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/md/item/MesMdProductSopServiceImpl.java +++ b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/md/item/MesMdProductSopServiceImpl.java @@ -6,6 +6,7 @@ import cn.iocoder.yudao.module.mes.controller.admin.md.item.vo.sop.MesMdProductS import cn.iocoder.yudao.module.mes.controller.admin.md.item.vo.sop.MesMdProductSopSaveReqVO; import cn.iocoder.yudao.module.mes.dal.dataobject.md.item.MesMdProductSopDO; import cn.iocoder.yudao.module.mes.dal.mysql.md.item.MesMdProductSopMapper; +import cn.iocoder.yudao.module.mes.service.pro.process.MesProProcessService; import jakarta.annotation.Resource; import org.springframework.stereotype.Service; import org.springframework.validation.annotation.Validated; @@ -27,10 +28,17 @@ public class MesMdProductSopServiceImpl implements MesMdProductSopService { @Resource private MesMdProductSopMapper productSopMapper; + @Resource + private MesProProcessService processService; + @Override public Long createProductSop(MesMdProductSopSaveReqVO createReqVO) { // 校验排列顺序的唯一性 validateSortUnique(createReqVO.getItemId(), createReqVO.getSort(), null); + // 校验工序存在 + if (createReqVO.getProcessId() != null) { + processService.validateProcessExists(createReqVO.getProcessId()); + } // 插入 MesMdProductSopDO sop = BeanUtils.toBean(createReqVO, MesMdProductSopDO.class); @@ -44,6 +52,10 @@ public class MesMdProductSopServiceImpl implements MesMdProductSopService { validateProductSopExists(updateReqVO.getId()); // 校验排列顺序的唯一性 validateSortUnique(updateReqVO.getItemId(), updateReqVO.getSort(), updateReqVO.getId()); + // 校验工序存在 + if (updateReqVO.getProcessId() != null) { + processService.validateProcessExists(updateReqVO.getProcessId()); + } // 更新 MesMdProductSopDO updateObj = BeanUtils.toBean(updateReqVO, MesMdProductSopDO.class); -- libgit2 0.21.4