diff --git a/win-module-wms/win-module-wms-api/src/main/java/com/win/module/wms/enums/ErrorCodeConstants.java b/win-module-wms/win-module-wms-api/src/main/java/com/win/module/wms/enums/ErrorCodeConstants.java index 6a938a7a..c597ba1b 100644 --- a/win-module-wms/win-module-wms-api/src/main/java/com/win/module/wms/enums/ErrorCodeConstants.java +++ b/win-module-wms/win-module-wms-api/src/main/java/com/win/module/wms/enums/ErrorCodeConstants.java @@ -702,6 +702,7 @@ public interface ErrorCodeConstants { ErrorCode PRODUCTREPAIR_REQUEST_MAIN_TEAM_NOT_INVALID = new ErrorCode(1_000_108_001, "班组【team】无效"); ErrorCode PRODUCTREPAIR_REQUEST_MAIN_SHIFT_NOT_INVALID = new ErrorCode(1_001_108_002, "班次【shift】无效"); ErrorCode PRODUCTREPAIR_REQUEST_MAIN_STATUS_ERROR = new ErrorCode(1_001_102_003, "制品返修申请状态错误"); + ErrorCode PRODUCTREPAIR_REQUEST_SECOND_DETAIL_LIST_IS_EMPTY = new ErrorCode(1_000_108_001, "制品返修Bom列表不存在"); //制品返修申请子ErrorCode ErrorCode PRODUCTREPAIR_REQUEST_DETAILA_NOT_EXISTS = new ErrorCode(1_001_108_101, "制品返修申请子不存在"); ErrorCode PRODUCTREPAIR_REQUEST_DETAILA_UOM_ERROR = new ErrorCode(1_000_108_102, "记量单位【{}】错误,应该是【{}】"); @@ -720,6 +721,7 @@ public interface ErrorCodeConstants { //制品报废申请主ErrorCode ErrorCode PRODUCTSCRAP_REQUEST_MAIN_NOT_EXISTS = new ErrorCode(1_000_110_000, "制品报废申请主不存在"); ErrorCode PRODUCTSCRAP_REQUEST_MAIN_STATUS_ERROR = new ErrorCode(1_000_110_001, "制品返修申请状态错误"); + ErrorCode PRODUCTSCRAP_REQUEST_SECOND_DETAIL_LIST_IS_EMPTY = new ErrorCode(1_000_108_001, "制品报废Bom列表不存在"); //制品报废申请一级子表ErrorCode ErrorCode PRODUCTSCRAP_REQUEST_DETAIL_NOT_EXISTS = new ErrorCode(1_001_110_101, "制品报废申请子不存在"); ErrorCode PRODUCTSCRAP_REQUEST_NOT_EXISTS = new ErrorCode(1_001_110_102, "制品报废申请不存在"); diff --git a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/productrepairRequest/ProductrepairRequestMainServiceImpl.java b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/productrepairRequest/ProductrepairRequestMainServiceImpl.java index 344ba3d6..4a7b5510 100644 --- a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/productrepairRequest/ProductrepairRequestMainServiceImpl.java +++ b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/productrepairRequest/ProductrepairRequestMainServiceImpl.java @@ -216,16 +216,21 @@ public class ProductrepairRequestMainServiceImpl implements ProductrepairRequest detailaDO.setInventoryStatus(businesstypeDO.getOutInventoryStatuses()); productrepairRequestDetailaMapper.insert(detailaDO); List consumereDetailbList = productrepairRequestDetailaCreateReqVO.getChildList(); - List childList = new ArrayList<>(); - for(ProductrepairRequestDetailbCreateReqVO productrepairRequestDetailbCreateReqVO:consumereDetailbList){ - ProductrepairRequestDetailbDO detailbDO = ProductrepairRequestDetailbConvert.INSTANCE.convert(productrepairRequestDetailbCreateReqVO); - detailbDO.setMasterId(detailaDO.getId()); - detailbDO.setNumber(detailaDO.getNumber()); - validateDetailbBom(detailbDO,detailaDO,mainBo); // 创建二级子表数据 - detailbDO.setId(null); - childList.add(detailbDO); + if(consumereDetailbList != null && consumereDetailbList.size() > 0){ + List childList = new ArrayList<>(); + for(ProductrepairRequestDetailbCreateReqVO productrepairRequestDetailbCreateReqVO:consumereDetailbList){ + ProductrepairRequestDetailbDO detailbDO = ProductrepairRequestDetailbConvert.INSTANCE.convert(productrepairRequestDetailbCreateReqVO); + detailbDO.setMasterId(detailaDO.getId()); + detailbDO.setNumber(detailaDO.getNumber()); + validateDetailbBom(detailbDO,detailaDO,mainBo); // 创建二级子表数据 + detailbDO.setId(null); + childList.add(detailbDO); + } + productrepairRequestDetailbMapper.insertBatch(childList); + }else { + throw exception(PRODUCTREPAIR_REQUEST_SECOND_DETAIL_LIST_IS_EMPTY); } - productrepairRequestDetailbMapper.insertBatch(childList); + } return mainBo; } diff --git a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/productscrapRequest/ProductscrapRequestMainServiceImpl.java b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/productscrapRequest/ProductscrapRequestMainServiceImpl.java index 1a4e705d..03d97455 100644 --- a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/productscrapRequest/ProductscrapRequestMainServiceImpl.java +++ b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/productscrapRequest/ProductscrapRequestMainServiceImpl.java @@ -225,17 +225,21 @@ public class ProductscrapRequestMainServiceImpl implements ProductscrapRequestMa detailDO.setNumber(mainBo.getNumber()); productscrapRequestDetailMapper.insert(detailDO); List requestDetailCreateReqVOList = detailCreateReqVO.getChildList(); - List childList = new ArrayList<>(); - for(RawscrapRequestDetailCreateReqVO rawscrapRequestDetailCreateReqVO:requestDetailCreateReqVOList){ - RawscrapRequestDetailDO rawscrapRequestDetailDO = RawscrapRequestDetailConvert.INSTANCE.convert(rawscrapRequestDetailCreateReqVO); - rawscrapRequestDetailDO.setMasterId(detailDO.getId()); - rawscrapRequestDetailDO.setNumber(detailDO.getNumber()); - // 校验--二级子表数据 - rawscrapRequestDetailService.validateDetailbBom(rawscrapRequestDetailDO,detailDO,mainBo); - rawscrapRequestDetailDO.setId(null); - childList.add(rawscrapRequestDetailDO); + if(requestDetailCreateReqVOList != null && requestDetailCreateReqVOList.size() > 0){ + List childList = new ArrayList<>(); + for(RawscrapRequestDetailCreateReqVO rawscrapRequestDetailCreateReqVO:requestDetailCreateReqVOList){ + RawscrapRequestDetailDO rawscrapRequestDetailDO = RawscrapRequestDetailConvert.INSTANCE.convert(rawscrapRequestDetailCreateReqVO); + rawscrapRequestDetailDO.setMasterId(detailDO.getId()); + rawscrapRequestDetailDO.setNumber(detailDO.getNumber()); + // 校验--二级子表数据 + rawscrapRequestDetailService.validateDetailbBom(rawscrapRequestDetailDO,detailDO,mainBo); + rawscrapRequestDetailDO.setId(null); + childList.add(rawscrapRequestDetailDO); + } + rawscrapRequestDetailMapper.insertBatch(childList); + }else { + throw exception(PRODUCTSCRAP_REQUEST_SECOND_DETAIL_LIST_IS_EMPTY); } - rawscrapRequestDetailMapper.insertBatch(childList); } return mainBo; }