|
|
@ -120,9 +120,12 @@ public class InspectRequestMainServiceImpl implements InspectRequestMainService |
|
|
|
//子表校验
|
|
|
|
List<InspectRequestDetailCreateReqVO> subList = createReqVO.getSubList(); |
|
|
|
List<InspectRequestDetailDO> subDOList = InspectRequestDetailConvert.INSTANCE.convertList03(subList); |
|
|
|
BigDecimal sumQty = BigDecimal.ZERO; |
|
|
|
for (InspectRequestDetailDO detailDO : subDOList) { |
|
|
|
this.validatorDetail(detailDO, mainDO, businesstypeDO); |
|
|
|
sumQty = sumQty.add(detailDO.getQty()); |
|
|
|
} |
|
|
|
mainDO.setReceiveQty(sumQty); |
|
|
|
String number = serialNumberApi.generateCode(RuleCodeEnum.INSPECT_REQUEST.getCode()); |
|
|
|
mainDO.setNumber(number); |
|
|
|
RequestStatusState requestStatusState = new RequestStatusState(); |
|
|
@ -202,8 +205,10 @@ public class InspectRequestMainServiceImpl implements InspectRequestMainService |
|
|
|
List<InspectRequestDetailCreateReqVO> subList = createReqVO.getSubList(); |
|
|
|
List<InspectRequestDetailDO> subDOList = InspectRequestDetailConvert.INSTANCE.convertList03(subList); |
|
|
|
BusinesstypeDO businesstypeDO = jobUtils.selectDocumentSettingFromBusinessType("InspectRequest"); |
|
|
|
BigDecimal sumQty = BigDecimal.ZERO; |
|
|
|
for (InspectRequestDetailDO detailDO : subDOList) { |
|
|
|
String messageDetail = this.validatorInspectRequestDetailImport(detailDO, mainDO, businesstypeDO); |
|
|
|
sumQty = sumQty.add(detailDO.getQty()); |
|
|
|
InspectRequestDetailCreateReqVO inspectRequestDetailCreateReqVO = InspectRequestDetailConvert.INSTANCE.convert1(detailDO); |
|
|
|
InspectRequestImportErrorVO importVO = InspectRequestDetailConvert.INSTANCE.convert(createReqVO, inspectRequestDetailCreateReqVO); |
|
|
|
if (!messageMain.isEmpty() || !messageDetail.isEmpty()) { |
|
|
@ -213,6 +218,7 @@ public class InspectRequestMainServiceImpl implements InspectRequestMainService |
|
|
|
errorList.add(importVO); |
|
|
|
} |
|
|
|
} |
|
|
|
mainDO.setReceiveQty(sumQty); |
|
|
|
mainDO.setBusinessType(businesstypeDO.getCode()); |
|
|
|
mainDO.setFromLocationTypes(businesstypeDO.getOutLocationTypes()); |
|
|
|
mainDO.setFromAreaCodes(businesstypeDO.getOutAreaCodes()); |
|
|
@ -480,10 +486,6 @@ public class InspectRequestMainServiceImpl implements InspectRequestMainService |
|
|
|
return mapRule; |
|
|
|
} |
|
|
|
|
|
|
|
private PurchasereceiptRecordDetailDO validatorPurchasereceiptExist(String purchaseReceiptRecordNumber, String poNumber, String poLine, String itemCode) { |
|
|
|
return purchasereceiptRecordMainService.selectPurchasereceiptExist(poNumber, null, purchaseReceiptRecordNumber, poLine, itemCode); |
|
|
|
} |
|
|
|
|
|
|
|
private void validatorRule(InspectRequestMainDO mainDO) { |
|
|
|
HashMap<String, String> rule = selectRule(null, mainDO.getItemCode()); |
|
|
|
mainDO.setSampleQty(selectInspectType(mainDO, mainDO.getReceiveQty(), rule)); |
|
|
@ -501,8 +503,6 @@ public class InspectRequestMainServiceImpl implements InspectRequestMainService |
|
|
|
//校验主表公共方法(适用于新增/修改)
|
|
|
|
private InspectRequestMainDO validatorMain(InspectRequestMainBaseVO baseVO, BusinesstypeDO businesstypeDO, RequestsettingDO requestsettingDO) { |
|
|
|
InspectRequestMainDO mainDo = InspectRequestMainConvert.INSTANCE.convert(baseVO); |
|
|
|
PurchasereceiptRecordDetailDO purchasereceiptRecordDetailDO = this.validatorPurchasereceiptExist(mainDo.getPurchaseReceiptRecordNumber(), mainDo.getPoNumber(), mainDo.getPoLine(), mainDo.getItemCode()); |
|
|
|
mainDo.setReceiveQty(purchasereceiptRecordDetailDO.getQty()); |
|
|
|
this.validatorRule(mainDo); |
|
|
|
mainDo.setBusinessType(businesstypeDO.getCode()); |
|
|
|
mainDo.setFromLocationTypes(businesstypeDO.getOutLocationTypes()); |
|
|
@ -516,6 +516,8 @@ public class InspectRequestMainServiceImpl implements InspectRequestMainService |
|
|
|
|
|
|
|
//校验子表公共方法(适用于新增/修改)
|
|
|
|
private void validatorDetail(InspectRequestDetailDO detailDo, InspectRequestMainDO mainDo, BusinesstypeDO businesstypeDO) { |
|
|
|
PurchasereceiptRecordDetailDO purchasereceiptRecordDetailDO = purchasereceiptRecordMainService.selectPurchasereceiptExist(mainDo.getPoNumber(), mainDo.getSupplierCode(), mainDo.getPurchaseReceiptRecordNumber(), mainDo.getPoLine(), mainDo.getItemCode(), detailDo.getPackingNumber(), mainDo.getBatch()); |
|
|
|
detailDo.setQty(purchasereceiptRecordDetailDO.getQty()); |
|
|
|
ItembasicDO itembasicDO = validatorItembasic(detailDo.getItemCode()); |
|
|
|
detailDo.setNumber(mainDo.getNumber()); |
|
|
|
detailDo.setItemDesc1(itembasicDO.getDesc1()); |
|
|
@ -538,12 +540,6 @@ public class InspectRequestMainServiceImpl implements InspectRequestMainService |
|
|
|
*/ |
|
|
|
private String validatorInspectRequestMainImport(InspectRequestMainDO mainDo) { |
|
|
|
StringBuilder message = new StringBuilder(); |
|
|
|
try { |
|
|
|
PurchasereceiptRecordDetailDO purchasereceiptRecordDetailDO = validatorPurchasereceiptExist(mainDo.getPurchaseReceiptRecordNumber(), mainDo.getPoNumber(), mainDo.getPoLine(), mainDo.getItemCode()); |
|
|
|
mainDo.setReceiveQty(purchasereceiptRecordDetailDO.getQty()); |
|
|
|
} catch (Exception ex) { |
|
|
|
message.append(ex.getMessage()).append(","); |
|
|
|
} |
|
|
|
try { |
|
|
|
validatorRule(mainDo); |
|
|
|
} catch (Exception ex) { |
|
|
@ -565,6 +561,12 @@ public class InspectRequestMainServiceImpl implements InspectRequestMainService |
|
|
|
*/ |
|
|
|
private String validatorInspectRequestDetailImport(InspectRequestDetailDO detailDo, InspectRequestMainDO mainDo, BusinesstypeDO businesstypeDO) { |
|
|
|
StringBuilder message = new StringBuilder(); |
|
|
|
try { |
|
|
|
PurchasereceiptRecordDetailDO purchasereceiptRecordDetailDO = purchasereceiptRecordMainService.selectPurchasereceiptExist(mainDo.getPoNumber(), mainDo.getSupplierCode(), mainDo.getPurchaseReceiptRecordNumber(), mainDo.getPoLine(), mainDo.getItemCode(), detailDo.getPackingNumber(), mainDo.getBatch()); |
|
|
|
detailDo.setQty(purchasereceiptRecordDetailDO.getQty()); |
|
|
|
} catch (Exception ex) { |
|
|
|
message.append(ex.getMessage()).append(","); |
|
|
|
} |
|
|
|
try { |
|
|
|
ItembasicDO itembasicDO = validatorItembasic(detailDo.getItemCode()); |
|
|
|
detailDo.setItemDesc1(itembasicDO.getDesc1()); |
|
|
|