diff --git a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/md/item/MesMdItemServiceImpl.java b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/md/item/MesMdItemServiceImpl.java index 9e1f4fd..077e572 100644 --- a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/md/item/MesMdItemServiceImpl.java +++ b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/md/item/MesMdItemServiceImpl.java @@ -62,14 +62,8 @@ public class MesMdItemServiceImpl implements MesMdItemService { @Override public Long createItem(MesMdItemSaveReqVO createReqVO) { - // 校验物料编码的唯一性 - validateItemCodeUnique(null, createReqVO.getCode()); - // 校验物料名称的唯一性 - validateItemNameUnique(null, createReqVO.getName()); - // 校验物料分类存在 - validateItemTypeExists(createReqVO.getItemTypeId()); - // 校验计量单位存在 - validateUnitMeasureExists(createReqVO.getUnitMeasureId()); + // 校验数据 + validateItemSaveData(createReqVO); // 插入 MesMdItemDO item = BeanUtils.toBean(createReqVO, MesMdItemDO.class); @@ -87,14 +81,8 @@ public class MesMdItemServiceImpl implements MesMdItemService { public void updateItem(MesMdItemSaveReqVO updateReqVO) { // 校验存在 validateItemExists(updateReqVO.getId()); - // 校验物料编码的唯一性 - validateItemCodeUnique(updateReqVO.getId(), updateReqVO.getCode()); - // 校验物料名称的唯一性 - validateItemNameUnique(updateReqVO.getId(), updateReqVO.getName()); - // 校验物料分类存在 - validateItemTypeExists(updateReqVO.getItemTypeId()); - // 校验计量单位存在 - validateUnitMeasureExists(updateReqVO.getUnitMeasureId()); + // 校验数据 + validateItemSaveData(updateReqVO); // 更新 MesMdItemDO updateObj = BeanUtils.toBean(updateReqVO, MesMdItemDO.class); @@ -102,6 +90,17 @@ public class MesMdItemServiceImpl implements MesMdItemService { itemMapper.updateById(updateObj); } + private void validateItemSaveData(MesMdItemSaveReqVO reqVO) { + // 校验物料编码的唯一性 + validateItemCodeUnique(reqVO.getId(), reqVO.getCode()); + // 校验物料名称的唯一性 + validateItemNameUnique(reqVO.getId(), reqVO.getName()); + // 校验物料分类存在 + validateItemTypeExists(reqVO.getItemTypeId()); + // 校验计量单位存在 + validateUnitMeasureExists(reqVO.getUnitMeasureId()); + } + @Override public void updateItemStatus(Long id, Integer status) { // 校验存在 diff --git a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/md/item/MesMdItemTypeServiceImpl.java b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/md/item/MesMdItemTypeServiceImpl.java index c0280ef..b260230 100644 --- a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/md/item/MesMdItemTypeServiceImpl.java +++ b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/md/item/MesMdItemTypeServiceImpl.java @@ -35,12 +35,8 @@ public class MesMdItemTypeServiceImpl implements MesMdItemTypeService { @Override public Long createItemType(MesMdItemTypeSaveReqVO createReqVO) { - // 校验父分类编号的有效性 - validateParentItemType(null, createReqVO.getParentId()); - // 校验分类名称的唯一性 - validateItemTypeNameUnique(null, createReqVO.getParentId(), createReqVO.getName()); - // 校验分类编码的唯一性 - validateItemTypeCodeUnique(null, createReqVO.getParentId(), createReqVO.getCode()); + // 校验数据 + validateItemTypeSaveData(createReqVO); // 插入 MesMdItemTypeDO itemType = BeanUtils.toBean(createReqVO, MesMdItemTypeDO.class); @@ -52,18 +48,23 @@ public class MesMdItemTypeServiceImpl implements MesMdItemTypeService { public void updateItemType(MesMdItemTypeSaveReqVO updateReqVO) { // 校验存在 validateItemTypeExists(updateReqVO.getId()); - // 校验父分类编号的有效性 - validateParentItemType(updateReqVO.getId(), updateReqVO.getParentId()); - // 校验分类名称的唯一性 - validateItemTypeNameUnique(updateReqVO.getId(), updateReqVO.getParentId(), updateReqVO.getName()); - // 校验分类编码的唯一性 - validateItemTypeCodeUnique(updateReqVO.getId(), updateReqVO.getParentId(), updateReqVO.getCode()); + // 校验数据 + validateItemTypeSaveData(updateReqVO); // 更新 MesMdItemTypeDO updateObj = BeanUtils.toBean(updateReqVO, MesMdItemTypeDO.class); itemTypeMapper.updateById(updateObj); } + private void validateItemTypeSaveData(MesMdItemTypeSaveReqVO reqVO) { + // 校验父分类编号的有效性 + validateParentItemType(reqVO.getId(), reqVO.getParentId()); + // 校验分类名称的唯一性 + validateItemTypeNameUnique(reqVO.getId(), reqVO.getParentId(), reqVO.getName()); + // 校验分类编码的唯一性 + validateItemTypeCodeUnique(reqVO.getId(), reqVO.getParentId(), reqVO.getCode()); + } + @Override public void deleteItemType(Long id) { // 1.1 校验存在 diff --git a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/md/item/MesMdProductBomServiceImpl.java b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/md/item/MesMdProductBomServiceImpl.java index e49c651..eba2be7 100644 --- a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/md/item/MesMdProductBomServiceImpl.java +++ b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/md/item/MesMdProductBomServiceImpl.java @@ -36,15 +36,9 @@ public class MesMdProductBomServiceImpl implements MesMdProductBomService { @Override public Long createProductBom(MesMdProductBomSaveReqVO createReqVO) { - // 1.1 校验物料产品存在 - validateItemExists(createReqVO.getItemId()); - // 1.2 校验BOM物料存在 - validateItemExists(createReqVO.getBomItemId()); - // 1.3 校验不能自引用 - if (createReqVO.getItemId().equals(createReqVO.getBomItemId())) { - throw exception(MD_PRODUCT_BOM_SELF_REFERENCE); - } - // 1.4 校验不能形成闭环 + // 1.1 校验数据 + validateProductBomSaveData(createReqVO); + // 1.2 校验不能形成闭环 if (hasBomCycle(createReqVO.getItemId(), createReqVO.getBomItemId())) { throw exception(MD_PRODUCT_BOM_CIRCULAR); } @@ -59,20 +53,25 @@ public class MesMdProductBomServiceImpl implements MesMdProductBomService { public void updateProductBom(MesMdProductBomSaveReqVO updateReqVO) { // 1.1 校验存在 validateProductBomExists(updateReqVO.getId()); - // 1.2 校验物料产品存在 - validateItemExists(updateReqVO.getItemId()); - // 1.3 校验BOM物料存在 - validateItemExists(updateReqVO.getBomItemId()); - // 1.4 校验不能自引用 - if (updateReqVO.getItemId().equals(updateReqVO.getBomItemId())) { - throw exception(MD_PRODUCT_BOM_SELF_REFERENCE); - } + // 1.2 校验数据 + validateProductBomSaveData(updateReqVO); // 更新 MesMdProductBomDO updateObj = BeanUtils.toBean(updateReqVO, MesMdProductBomDO.class); productBomMapper.updateById(updateObj); } + private void validateProductBomSaveData(MesMdProductBomSaveReqVO reqVO) { + // 校验物料产品存在 + validateItemExists(reqVO.getItemId()); + // 校验BOM物料存在 + validateItemExists(reqVO.getBomItemId()); + // 校验不能自引用 + if (reqVO.getItemId().equals(reqVO.getBomItemId())) { + throw exception(MD_PRODUCT_BOM_SELF_REFERENCE); + } + } + @Override public void deleteProductBom(Long id) { // 校验存在 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 bd96283..f6963e3 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 @@ -33,12 +33,8 @@ public class MesMdProductSipServiceImpl implements MesMdProductSipService { @Override public Long createProductSip(MesMdProductSipSaveReqVO createReqVO) { - // 校验排列顺序的唯一性 - validateSortUnique(createReqVO.getItemId(), createReqVO.getSort(), null); - // 校验工序存在 - if (createReqVO.getProcessId() != null) { - processService.validateProcessExists(createReqVO.getProcessId()); - } + // 校验数据 + validateProductSipSaveData(createReqVO, null); // 插入 MesMdProductSipDO sip = BeanUtils.toBean(createReqVO, MesMdProductSipDO.class); @@ -50,18 +46,23 @@ public class MesMdProductSipServiceImpl implements MesMdProductSipService { public void updateProductSip(MesMdProductSipSaveReqVO updateReqVO) { // 校验存在 validateProductSipExists(updateReqVO.getId()); - // 校验排列顺序的唯一性 - validateSortUnique(updateReqVO.getItemId(), updateReqVO.getSort(), updateReqVO.getId()); - // 校验工序存在 - if (updateReqVO.getProcessId() != null) { - processService.validateProcessExists(updateReqVO.getProcessId()); - } + // 校验数据 + validateProductSipSaveData(updateReqVO, updateReqVO.getId()); // 更新 MesMdProductSipDO updateObj = BeanUtils.toBean(updateReqVO, MesMdProductSipDO.class); productSipMapper.updateById(updateObj); } + private void validateProductSipSaveData(MesMdProductSipSaveReqVO reqVO, Long excludeId) { + // 校验排列顺序的唯一性 + validateSortUnique(reqVO.getItemId(), reqVO.getSort(), excludeId); + // 校验工序存在 + if (reqVO.getProcessId() != null) { + processService.validateProcessExists(reqVO.getProcessId()); + } + } + @Override public void deleteProductSip(Long id) { // 校验存在 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 c7f949d..3bbd330 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 @@ -33,12 +33,8 @@ public class MesMdProductSopServiceImpl implements MesMdProductSopService { @Override public Long createProductSop(MesMdProductSopSaveReqVO createReqVO) { - // 校验排列顺序的唯一性 - validateSortUnique(createReqVO.getItemId(), createReqVO.getSort(), null); - // 校验工序存在 - if (createReqVO.getProcessId() != null) { - processService.validateProcessExists(createReqVO.getProcessId()); - } + // 校验数据 + validateProductSopSaveData(createReqVO, null); // 插入 MesMdProductSopDO sop = BeanUtils.toBean(createReqVO, MesMdProductSopDO.class); @@ -50,18 +46,23 @@ public class MesMdProductSopServiceImpl implements MesMdProductSopService { public void updateProductSop(MesMdProductSopSaveReqVO updateReqVO) { // 校验存在 validateProductSopExists(updateReqVO.getId()); - // 校验排列顺序的唯一性 - validateSortUnique(updateReqVO.getItemId(), updateReqVO.getSort(), updateReqVO.getId()); - // 校验工序存在 - if (updateReqVO.getProcessId() != null) { - processService.validateProcessExists(updateReqVO.getProcessId()); - } + // 校验数据 + validateProductSopSaveData(updateReqVO, updateReqVO.getId()); // 更新 MesMdProductSopDO updateObj = BeanUtils.toBean(updateReqVO, MesMdProductSopDO.class); productSopMapper.updateById(updateObj); } + private void validateProductSopSaveData(MesMdProductSopSaveReqVO reqVO, Long excludeId) { + // 校验排列顺序的唯一性 + validateSortUnique(reqVO.getItemId(), reqVO.getSort(), excludeId); + // 校验工序存在 + if (reqVO.getProcessId() != null) { + processService.validateProcessExists(reqVO.getProcessId()); + } + } + @Override public void deleteProductSop(Long id) { // 校验存在 diff --git a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/qc/ipqc/MesQcIpqcServiceImpl.java b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/qc/ipqc/MesQcIpqcServiceImpl.java index 2f3ba48..a604030 100644 --- a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/qc/ipqc/MesQcIpqcServiceImpl.java +++ b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/qc/ipqc/MesQcIpqcServiceImpl.java @@ -86,12 +86,10 @@ public class MesQcIpqcServiceImpl implements MesQcIpqcService { @Override @Transactional(rollbackFor = Exception.class) public Long createIpqc(MesQcIpqcSaveReqVO createReqVO) { - // 1.1 校验编号唯一 - validateIpqcCodeUnique(null, createReqVO.getCode()); - // 1.2 校验工单、工位、检测人员存在 + // 1.1 校验数据 + MesMdWorkstationDO workstation = validateIpqcSaveData(createReqVO); + // 1.2 校验工单存在 MesProWorkOrderDO workOrder = workOrderService.validateWorkOrderExists(createReqVO.getWorkOrderId()); - MesMdWorkstationDO workstation = workstationService.validateWorkstationExists(createReqVO.getWorkstationId()); - adminUserApi.validateUser(createReqVO.getInspectorUserId()); // 1.3 根据产品 + 检验类型自动匹配模板 MesQcTemplateItemDO templateItem = templateDetailService.getRequiredTemplateByItemIdAndType( workOrder.getProductId(), MesQcTypeEnum.IPQC.getType()); @@ -118,11 +116,8 @@ public class MesQcIpqcServiceImpl implements MesQcIpqcService { public void updateIpqc(MesQcIpqcSaveReqVO updateReqVO) { // 1.1 校验存在 + 草稿状态 validateIpqcStatusPrepare(updateReqVO.getId()); - // 1.2 校验编号唯一 - validateIpqcCodeUnique(updateReqVO.getId(), updateReqVO.getCode()); - // 1.3 校验工位、检测人员存在 - MesMdWorkstationDO workstation = workstationService.validateWorkstationExists(updateReqVO.getWorkstationId()); - adminUserApi.validateUser(updateReqVO.getInspectorUserId()); + // 1.2 校验数据 + MesMdWorkstationDO workstation = validateIpqcSaveData(updateReqVO); // 2. 更新主表 MesQcIpqcDO existIpqc = validateIpqcExists(updateReqVO.getId()); @@ -135,6 +130,15 @@ public class MesQcIpqcServiceImpl implements MesQcIpqcService { ipqcMapper.updateById(updateObj); } + private MesMdWorkstationDO validateIpqcSaveData(MesQcIpqcSaveReqVO reqVO) { + // 校验编号唯一 + validateIpqcCodeUnique(reqVO.getId(), reqVO.getCode()); + // 校验工位、检测人员存在 + MesMdWorkstationDO workstation = workstationService.validateWorkstationExists(reqVO.getWorkstationId()); + adminUserApi.validateUser(reqVO.getInspectorUserId()); + return workstation; + } + @Override @Transactional(rollbackFor = Exception.class) public void finishIpqc(Long id) { diff --git a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/qc/iqc/MesQcIqcServiceImpl.java b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/qc/iqc/MesQcIqcServiceImpl.java index ecd49f4..f0613f9 100644 --- a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/qc/iqc/MesQcIqcServiceImpl.java +++ b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/qc/iqc/MesQcIqcServiceImpl.java @@ -69,16 +69,12 @@ public class MesQcIqcServiceImpl implements MesQcIqcService { @Override @Transactional(rollbackFor = Exception.class) public Long createIqc(MesQcIqcSaveReqVO createReqVO) { - // 1.1 校验编号唯一 - validateIqcCodeUnique(null, createReqVO.getCode()); - // 1.2 校验供应商、物料、检测人员存在 - vendorService.validateVendorExists(createReqVO.getVendorId()); - itemService.validateItemExists(createReqVO.getItemId()); - adminUserApi.validateUser(createReqVO.getInspectorUserId()); - // 1.3 校验来源单据参数,并验证数据存在 + // 1.1 校验数据 + validateIqcSaveData(createReqVO); + // 1.2 校验来源单据参数,并验证数据存在 String sourceDocCode = validateAndGetSourceDocCode( createReqVO.getSourceDocType(), createReqVO.getSourceDocId(), createReqVO.getSourceLineId()); - // 1.4 通过 itemId + IQC 类型自动查找模板 + // 1.3 通过 itemId + IQC 类型自动查找模板 MesQcTemplateItemDO templateItem = templateDetailService.getRequiredTemplateByItemIdAndType( createReqVO.getItemId(), MesQcTypeEnum.IQC.getType()); Long templateId = templateItem.getTemplateId(); @@ -100,12 +96,8 @@ public class MesQcIqcServiceImpl implements MesQcIqcService { public void updateIqc(MesQcIqcSaveReqVO updateReqVO) { // 1.1 校验存在 + 草稿状态 validateIqcStatusPrepare(updateReqVO.getId()); - // 1.2 校验编号唯一 - validateIqcCodeUnique(updateReqVO.getId(), updateReqVO.getCode()); - // 1.3 校验供应商、物料、检测人员存在 - vendorService.validateVendorExists(updateReqVO.getVendorId()); - itemService.validateItemExists(updateReqVO.getItemId()); - adminUserApi.validateUser(updateReqVO.getInspectorUserId()); + // 1.2 校验数据 + validateIqcSaveData(updateReqVO); // 2. 更新主表 MesQcIqcDO updateObj = BeanUtils.toBean(updateReqVO, MesQcIqcDO.class); @@ -116,6 +108,15 @@ public class MesQcIqcServiceImpl implements MesQcIqcService { iqcMapper.updateById(updateObj); } + private void validateIqcSaveData(MesQcIqcSaveReqVO reqVO) { + // 校验编号唯一 + validateIqcCodeUnique(reqVO.getId(), reqVO.getCode()); + // 校验供应商、物料、检测人员存在 + vendorService.validateVendorExists(reqVO.getVendorId()); + itemService.validateItemExists(reqVO.getItemId()); + adminUserApi.validateUser(reqVO.getInspectorUserId()); + } + @Override @Transactional(rollbackFor = Exception.class) public void finishIqc(Long id) { diff --git a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/qc/oqc/MesQcOqcServiceImpl.java b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/qc/oqc/MesQcOqcServiceImpl.java index eacf20a..4fda221 100644 --- a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/qc/oqc/MesQcOqcServiceImpl.java +++ b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/qc/oqc/MesQcOqcServiceImpl.java @@ -73,17 +73,12 @@ public class MesQcOqcServiceImpl implements MesQcOqcService { @Override @Transactional(rollbackFor = Exception.class) public Long createOqc(MesQcOqcSaveReqVO createReqVO) { - // 1.1 校验编号唯一 - validateOqcCodeUnique(null, createReqVO.getCode()); - // 1.2 校验物料、检测人员存在 - itemService.validateItemExists(createReqVO.getItemId()); - adminUserApi.validateUser(createReqVO.getInspectorUserId()); - // 1.3 校验来源单据参数,并验证数据存在 + // 1.1 校验数据 + validateOqcSaveData(createReqVO); + // 1.2 校验来源单据参数,并验证数据存在 String sourceDocCode = validateAndGetSourceDocCode( createReqVO.getSourceDocType(), createReqVO.getSourceLineId()); - // 1.4 校验客户存在 - clientService.validateClientExists(createReqVO.getClientId()); - // 1.5 根据产品 + 检验类型自动匹配模板 + // 1.3 根据产品 + 检验类型自动匹配模板 MesQcTemplateItemDO templateItem = templateDetailService.getRequiredTemplateByItemIdAndType( createReqVO.getItemId(), MesQcTypeEnum.OQC.getType()); Long templateId = templateItem.getTemplateId(); @@ -104,12 +99,8 @@ public class MesQcOqcServiceImpl implements MesQcOqcService { public void updateOqc(MesQcOqcSaveReqVO updateReqVO) { // 1.1 校验存在 + 草稿状态 validateOqcStatusPrepare(updateReqVO.getId()); - // 1.2 校验编号唯一 - validateOqcCodeUnique(updateReqVO.getId(), updateReqVO.getCode()); - // 1.3 校验客户、物料、检测人员存在 - clientService.validateClientExists(updateReqVO.getClientId()); - itemService.validateItemExists(updateReqVO.getItemId()); - adminUserApi.validateUser(updateReqVO.getInspectorUserId()); + // 1.2 校验数据 + validateOqcSaveData(updateReqVO); // 2. 更新 MesQcOqcDO updateObj = BeanUtils.toBean(updateReqVO, MesQcOqcDO.class); @@ -119,6 +110,15 @@ public class MesQcOqcServiceImpl implements MesQcOqcService { oqcMapper.updateById(updateObj); } + private void validateOqcSaveData(MesQcOqcSaveReqVO reqVO) { + // 校验编号唯一 + validateOqcCodeUnique(reqVO.getId(), reqVO.getCode()); + // 校验客户、物料、检测人员存在 + clientService.validateClientExists(reqVO.getClientId()); + itemService.validateItemExists(reqVO.getItemId()); + adminUserApi.validateUser(reqVO.getInspectorUserId()); + } + @Override @Transactional(rollbackFor = Exception.class) public void finishOqc(Long id) { diff --git a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/qc/rqc/MesQcRqcServiceImpl.java b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/qc/rqc/MesQcRqcServiceImpl.java index c2303d9..6fe72fd 100644 --- a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/qc/rqc/MesQcRqcServiceImpl.java +++ b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/qc/rqc/MesQcRqcServiceImpl.java @@ -75,16 +75,13 @@ public class MesQcRqcServiceImpl implements MesQcRqcService { @Override @Transactional(rollbackFor = Exception.class) public Long createRqc(MesQcRqcSaveReqVO createReqVO) { - // 1.1 校验编号唯一 - validateRqcCodeUnique(null, createReqVO.getCode()); - // 1.2 校验物料、检测人员存在 - itemService.validateItemExists(createReqVO.getItemId()); - adminUserApi.validateUser(createReqVO.getInspectorUserId()); - // 1.3 根据物料 + 检验类型自动匹配模板 + // 1.1 校验数据 + validateRqcSaveData(createReqVO); + // 1.2 根据物料 + 检验类型自动匹配模板 MesQcTemplateItemDO templateItem = templateDetailService.getRequiredTemplateByItemIdAndType( createReqVO.getItemId(), createReqVO.getType()); Long templateId = templateItem.getTemplateId(); - // 1.4 获取来源单据编号 + // 1.3 获取来源单据编号 String sourceDocCode = validateAndGetSourceDocCode( createReqVO.getSourceDocType(), createReqVO.getSourceDocId()); @@ -104,11 +101,8 @@ public class MesQcRqcServiceImpl implements MesQcRqcService { public void updateRqc(MesQcRqcSaveReqVO updateReqVO) { // 1.1 校验存在 + 草稿状态 validateRqcStatusPrepare(updateReqVO.getId()); - // 1.2 校验编号唯一 - validateRqcCodeUnique(updateReqVO.getId(), updateReqVO.getCode()); - // 1.3 校验物料、检测人员存在 - itemService.validateItemExists(updateReqVO.getItemId()); - adminUserApi.validateUser(updateReqVO.getInspectorUserId()); + // 1.2 校验数据 + validateRqcSaveData(updateReqVO); // 2. 更新 MesQcRqcDO updateObj = BeanUtils.toBean(updateReqVO, MesQcRqcDO.class); @@ -118,6 +112,14 @@ public class MesQcRqcServiceImpl implements MesQcRqcService { rqcMapper.updateById(updateObj); } + private void validateRqcSaveData(MesQcRqcSaveReqVO reqVO) { + // 校验编号唯一 + validateRqcCodeUnique(reqVO.getId(), reqVO.getCode()); + // 校验物料、检测人员存在 + itemService.validateItemExists(reqVO.getItemId()); + adminUserApi.validateUser(reqVO.getInspectorUserId()); + } + @Override @Transactional(rollbackFor = Exception.class) public void finishRqc(Long id) {