From 5eefbfe122a7b53e4b7d86e28509aaa1fa9f9b90 Mon Sep 17 00:00:00 2001 From: YunaiV Date: Mon, 30 Mar 2026 18:26:55 +0800 Subject: [PATCH] ✨ feat(mes): 优化销售通知单创建和更新逻辑 --- yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/salesnotice/MesWmSalesNoticeServiceImpl.java | 21 +++++++++++++-------- 1 file changed, 13 insertions(+), 8 deletions(-) diff --git a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/salesnotice/MesWmSalesNoticeServiceImpl.java b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/salesnotice/MesWmSalesNoticeServiceImpl.java index 79c94e7..9e82adc 100644 --- a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/salesnotice/MesWmSalesNoticeServiceImpl.java +++ b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/salesnotice/MesWmSalesNoticeServiceImpl.java @@ -43,10 +43,8 @@ public class MesWmSalesNoticeServiceImpl implements MesWmSalesNoticeService { @Override public Long createSalesNotice(MesWmSalesNoticeSaveReqVO createReqVO) { - // 校验编码唯一 - validateNoticeCodeUnique(null, createReqVO.getNoticeCode()); - // DONE @AI:clientId 存在; - clientService.validateClientExists(createReqVO.getClientId()); + // 校验数据 + validateSalesNoticeSave(createReqVO); // 插入 MesWmSalesNoticeDO notice = BeanUtils.toBean(createReqVO, MesWmSalesNoticeDO.class); @@ -59,10 +57,8 @@ public class MesWmSalesNoticeServiceImpl implements MesWmSalesNoticeService { public void updateSalesNotice(MesWmSalesNoticeSaveReqVO updateReqVO) { // 校验存在 + 草稿状态 validateSalesNoticeExistsAndDraft(updateReqVO.getId()); - // 校验编码唯一 - validateNoticeCodeUnique(updateReqVO.getId(), updateReqVO.getNoticeCode()); - // 校验客户存在 - clientService.validateClientExists(updateReqVO.getClientId()); + // 校验数据 + validateSalesNoticeSave(updateReqVO); // 更新 MesWmSalesNoticeDO updateObj = BeanUtils.toBean(updateReqVO, MesWmSalesNoticeDO.class); @@ -142,6 +138,15 @@ public class MesWmSalesNoticeServiceImpl implements MesWmSalesNoticeService { return notice; } + private void validateSalesNoticeSave(MesWmSalesNoticeSaveReqVO saveReqVO) { + // 校验编码唯一 + validateNoticeCodeUnique(saveReqVO.getId(), saveReqVO.getNoticeCode()); + // 校验客户存在 + if (saveReqVO.getClientId() != null) { + clientService.validateClientExists(saveReqVO.getClientId()); + } + } + private void validateNoticeCodeUnique(Long id, String noticeCode) { MesWmSalesNoticeDO notice = salesNoticeMapper.selectByNoticeCode(noticeCode); if (notice == null) { -- libgit2 0.21.4