diff --git a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/purchasereceiptJob/PurchasereceiptJobMainController.java b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/purchasereceiptJob/PurchasereceiptJobMainController.java index 238550c6..5feb964b 100644 --- a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/purchasereceiptJob/PurchasereceiptJobMainController.java +++ b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/purchasereceiptJob/PurchasereceiptJobMainController.java @@ -58,7 +58,7 @@ public class PurchasereceiptJobMainController { public CommonResult> getPurchasereceiptJobMainPage(@Valid PurchasereceiptJobMainPageReqVO pageVO) { PageResult pageResult = purchasereceiptJobMainService.getPurchasereceiptJobMainPage(pageVO); PageResult pageResult1 = PurchasereceiptJobMainConvert.INSTANCE.convertPage(pageResult); - for(PurchasereceiptJobMainRespVO vo : pageResult1.getList()) { + for (PurchasereceiptJobMainRespVO vo : pageResult1.getList()) { AdminUserRespDTO user = userApi.getUser(Long.valueOf(vo.getCreator())); //后端创建个字段作为前端展示的虚拟字段 vo.setCreator(user.getNickname()); @@ -72,7 +72,7 @@ public class PurchasereceiptJobMainController { public CommonResult> getPurchasereceiptJobMainSenior(@Valid @RequestBody CustomConditions conditions) { PageResult pageResult = purchasereceiptJobMainService.getPurchasereceiptJobMainSenior(conditions); PageResult result = PurchasereceiptJobMainConvert.INSTANCE.convertPage(pageResult); - for(PurchasereceiptJobMainRespVO vo : result.getList()) { + for (PurchasereceiptJobMainRespVO vo : result.getList()) { AdminUserRespDTO user = userApi.getUser(Long.valueOf(vo.getCreator())); //后端创建个字段作为前端展示的虚拟字段 vo.setCreator(user.getNickname()); @@ -130,9 +130,9 @@ public class PurchasereceiptJobMainController { mapDropDown.put(62, uom); List resultList = new ArrayList<>(); // 导出 - for(PurchasereceiptJobMainDO mainDO : list) { + for (PurchasereceiptJobMainDO mainDO : list) { List subList = purchasereceiptJobDetailService.selectList(mainDO.getId()); - for(PurchasereceiptJobDetailDO detailDO : subList) { + for (PurchasereceiptJobDetailDO detailDO : subList) { PurchasereceiptJobMainExcelVO vo = PurchasereceiptJobMainConvert.INSTANCE.convert(mainDO, detailDO); resultList.add(vo); } @@ -147,9 +147,9 @@ public class PurchasereceiptJobMainController { public CommonResult getPurchasereceiptJobyId(@RequestParam("id") Long id) { PurchasereceiptJobMainDO purchasereceiptJobMain = purchasereceiptJobMainService.getPurchasereceiptJobMain(id); PurchasereceiptJobMainRespVO result = PurchasereceiptJobMainConvert.INSTANCE.convert(purchasereceiptJobMain); - if(result==null) { + if (result == null) { return success(result); - }; + } List purchasereceiptJobDetailList = purchasereceiptJobDetailService.selectList(result.getId()); List purchasereceiptJobDetailExcelVOS = PurchasereceiptJobDetailConvert.INSTANCE.convertList02(purchasereceiptJobDetailList); result.setSubList(purchasereceiptJobDetailExcelVOS); @@ -160,30 +160,38 @@ public class PurchasereceiptJobMainController { @Operation(summary = "APP获得采购收货任务数量根据任务状态") @Parameter(name = "types", description = "类型数组", required = false, example = "\"types\":[\"1\",\"2\"]") @PreAuthorize("@ss.hasPermission('wms:purchasereceipt-job-main:query')") - public CommonResult> getCountByStatus(@RequestBody Map> map) { + public CommonResult> getCountByStatus(@RequestBody Map> map) { List list = new ArrayList<>(); - if(map==null||map.get("types")==null|| StringUtil.isEmpty(map.get("types").toString())){ + if (map == null || map.get("types") == null || StringUtil.isEmpty(map.get("types").toString())) { list.add("1");//默认不传为执行中的 - }else{ + } else { list = map.get("types"); } Map countByStatus = purchasereceiptJobMainService.getCountByStatus(list); return success(countByStatus); } + @GetMapping(value = "/accept") @Operation(summary = "承接任务") @PreAuthorize("@ss.hasPermission('wms:purchasereceipt-job-main:accept')") - @PostMapping(value = "/accept/{id}") - public CommonResult acceptPurchasereceiptJobMain(@PathVariable("id") Long id) { + public CommonResult acceptPurchasereceiptJobMain(@RequestParam("id") Long id) { int result = purchasereceiptJobMainService.acceptPurchasereceiptJobMain(id); return success(result > 0); } - @Operation(summary = "取消承接任务") - @PreAuthorize("@ss.hasPermission('wms:purchasereceipt-job-main:cancel-accept')") - @PostMapping(value = "/cancelAccept/{id}") - public CommonResult cancelAcceptPurchasereceiptJobMain(@PathVariable("id") Long id) { - int result = purchasereceiptJobMainService.cancelAcceptPurchasereceiptJobMain(id); + @GetMapping(value = "/abandon") + @Operation(summary = "放弃任务") + @PreAuthorize("@ss.hasPermission('wms:purchasereceipt-job-main:abandon')") + public CommonResult abandonPurchasereceiptJobMain(@RequestParam("id") Long id) { + int result = purchasereceiptJobMainService.abandonPurchasereceiptJobMain(id); + return success(result > 0); + } + + @GetMapping(value = "/close") + @Operation(summary = "关闭任务") + @PreAuthorize("@ss.hasPermission('wms:purchasereceipt-job-main:close')") + public CommonResult closePurchasereceiptJobMain(@RequestParam("id") Long id) { + int result = purchasereceiptJobMainService.closePurchasereceiptJobMain(id); return success(result > 0); } diff --git a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/enums/job/JobStatusState.java b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/enums/job/JobStatusState.java index a0699442..63106e15 100644 --- a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/enums/job/JobStatusState.java +++ b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/enums/job/JobStatusState.java @@ -59,6 +59,19 @@ public class JobStatusState { } } + /** + * 关闭 + * @return + */ + public boolean close() { + if(this.jobStatusEnum.getCode().equals(JobStatusEnum.PENDING.getCode())) { + this.jobStatusEnum = JobStatusEnum.CLOSED; + return Boolean.TRUE; + } else { + return Boolean.FALSE; + } + } + /** * 执行 * @return diff --git a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/inspectRequest/InspectRequestMainServiceImpl.java b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/inspectRequest/InspectRequestMainServiceImpl.java index 15ceeec1..697672a3 100644 --- a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/inspectRequest/InspectRequestMainServiceImpl.java +++ b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/inspectRequest/InspectRequestMainServiceImpl.java @@ -384,6 +384,9 @@ public class InspectRequestMainServiceImpl implements InspectRequestMainService ExpectoutCreateReqVO expectoutCreateReqVO = new ExpectoutCreateReqVO(); BeanUtils.copyProperties(inspectJobDetailDO, expectoutCreateReqVO); expectoutCreateReqVO.setJobNumber(number); + expectoutCreateReqVO.setBusinessType(inspectJobMainDO.getBusinessType()); + expectoutCreateReqVO.setLocationCode(inspectJobDetailDO.getFromLocationCode()); + expectoutCreateReqVO.setOwnerCode(mainDO.getOwnerCode()); expectoutCreateReqVOList.add(expectoutCreateReqVO); } inspectJobDetailMapper.insertBatch(inspectJobDetailDOList); diff --git a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/purchasereceiptJob/PurchasereceiptJobMainService.java b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/purchasereceiptJob/PurchasereceiptJobMainService.java index a581c0f5..c5923318 100644 --- a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/purchasereceiptJob/PurchasereceiptJobMainService.java +++ b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/purchasereceiptJob/PurchasereceiptJobMainService.java @@ -99,7 +99,14 @@ public interface PurchasereceiptJobMainService { * @param id * @return */ - Integer cancelAcceptPurchasereceiptJobMain(Long id); + Integer abandonPurchasereceiptJobMain(Long id); + + /** + * 关闭任务 + * @param id + * @return + */ + Integer closePurchasereceiptJobMain(Long id); /** * 执行任务 diff --git a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/purchasereceiptJob/PurchasereceiptJobMainServiceImpl.java b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/purchasereceiptJob/PurchasereceiptJobMainServiceImpl.java index 33fd893b..3598ba6b 100644 --- a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/purchasereceiptJob/PurchasereceiptJobMainServiceImpl.java +++ b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/purchasereceiptJob/PurchasereceiptJobMainServiceImpl.java @@ -41,6 +41,7 @@ import com.win.module.wms.enums.request.RequestStatusEnum; import com.win.module.wms.service.documentSwitch.SwitchService; import com.win.module.wms.service.expectin.ExpectinService; import com.win.module.wms.service.inspectRequest.InspectRequestMainService; +import com.win.module.wms.service.purchase.PurchaseMainService; import com.win.module.wms.service.rule.RuleService; import com.win.module.wms.service.supplierdeliverRecord.SupplierdeliverRecordMainService; import com.win.module.wms.service.transaction.TransactionService; @@ -99,6 +100,8 @@ public class PurchasereceiptJobMainServiceImpl implements PurchasereceiptJobMain private RuleService ruleService; @Resource private ExpectinService expectinService; + @Resource + private PurchaseMainService purchaseMainService; @Override public PageResult getPurchasereceiptJobMainSenior(CustomConditions conditions) { @@ -185,7 +188,7 @@ public class PurchasereceiptJobMainServiceImpl implements PurchasereceiptJobMain @Override @Transactional - public Integer cancelAcceptPurchasereceiptJobMain(Long id) { + public Integer abandonPurchasereceiptJobMain(Long id) { PurchasereceiptJobMainDO purchasereceiptJobMainDO = this.validatePurchasereceiptJobMainExists(id); JobStatusState jobStatusState = new JobStatusState(purchasereceiptJobMainDO.getStatus()); if(!jobStatusState.cancelAccept()) { @@ -199,6 +202,19 @@ public class PurchasereceiptJobMainServiceImpl implements PurchasereceiptJobMain return purchasereceiptJobMainMapper.updateById(purchasereceiptJobMainDO); } + @Override + @Transactional + public Integer closePurchasereceiptJobMain(Long id) { + PurchasereceiptJobMainDO purchasereceiptJobMainDO = this.validatePurchasereceiptJobMainExists(id); + JobStatusState jobStatusState = new JobStatusState(purchasereceiptJobMainDO.getStatus()); + if(!jobStatusState.close()) { + throw exception(PURCHASERECEIPT_JOB_MAIN_STATUS_ERROR); + } + purchasereceiptJobMainDO.setStatus(jobStatusState.getState().getCode()); + trendsApi.createTrends(id, "purchasereceiptJob", "关闭了采购收货任务", TrendsTypeEnum.UPDATE); + return purchasereceiptJobMainMapper.updateById(purchasereceiptJobMainDO); + } + @Override @Transactional public Integer executePurchasereceiptJobMain(PurchasereceiptJobMainUpdateReqVO purchasereceiptJobMainUpdateReqVO) { @@ -226,16 +242,14 @@ public class PurchasereceiptJobMainServiceImpl implements PurchasereceiptJobMain purchasereceiptRecordMainDO.setNumber(number); purchasereceiptRecordMainDO.setJobNumber(purchasereceiptJobMainDO.getNumber()); purchasereceiptRecordMainDO.setId(null); - purchasereceiptRecordMainDO.setCreator(null); - purchasereceiptRecordMainDO.setCreateTime(null); - purchasereceiptRecordMainDO.setUpdater(null); - purchasereceiptRecordMainDO.setUpdateTime(null); purchasereceiptRecordMainMapper.insert(purchasereceiptRecordMainDO); - //库存事务 - List transactionCreateReqVOList = new ArrayList<>(); List purchasereceiptJobDetailUpdateReqVOList = purchasereceiptJobMainUpdateReqVO.getSubList(); + //收货记录子 List purchasereceiptRecordDetailDOList = new ArrayList<>(); + //缺货记录 List purchaseshortageDetailDOList = new ArrayList<>(); + //库存事务 + List transactionCreateReqVOList = new ArrayList<>(); for(PurchasereceiptJobDetailDO purchasereceiptJobDetailDO : subList) { boolean isExists = false; PurchasereceiptJobDetailUpdateReqVO purchasereceiptJobDetailUpdateReqVOTemp = null; @@ -258,11 +272,9 @@ public class PurchasereceiptJobMainServiceImpl implements PurchasereceiptJobMain purchasereceiptRecordDetailDO.setToPackingNumber(purchasereceiptJobDetailUpdateReqVOTemp.getToPackingNumber()); purchasereceiptRecordDetailDO.setQty(purchasereceiptJobDetailUpdateReqVOTemp.getHandleQty()); purchasereceiptRecordDetailDO.setId(null); - purchasereceiptRecordDetailDO.setCreator(null); - purchasereceiptRecordDetailDO.setCreateTime(null); - purchasereceiptRecordDetailDO.setUpdater(null); - purchasereceiptRecordDetailDO.setUpdateTime(null); purchasereceiptRecordDetailDOList.add(purchasereceiptRecordDetailDO); + //更新采购订单明细的收货数量 + purchaseMainService.updateOrderPurchaseReceivedQty(purchasereceiptRecordDetailDO.getPoNumber(), purchasereceiptRecordDetailDO.getPoLine(), purchasereceiptRecordDetailDO.getItemCode(), purchasereceiptRecordDetailDO.getQty()); //添加库存事务list TransactionCreateReqVO transactionCreateReqVO = new TransactionCreateReqVO(); BeanUtils.copyProperties(purchasereceiptRecordDetailDO, transactionCreateReqVO); @@ -272,9 +284,11 @@ public class PurchasereceiptJobMainServiceImpl implements PurchasereceiptJobMain TransactiontypeDO transactiontypeDO = jobUtils.selectDocumentFromTransactionType(businesstypeDO.getInTransactionType()); transactionCreateReqVO.setInventoryAction(transactiontypeDO.getInventoryAction()); transactionCreateReqVO.setTransactionType(transactiontypeDO.getCode()); + transactionCreateReqVO.setBusinessType(purchasereceiptRecordMainDO.getBusinessType()); + transactionCreateReqVO.setLocationCode(purchasereceiptJobDetailDO.getFromLocationCode()); + transactionCreateReqVO.setOwnerCode(purchasereceiptRecordDetailDO.getFromOwnerCode()); transactionCreateReqVO.setRecordNumber(number); transactionCreateReqVO.setId(null); - //待确定库存事务信息 transactionCreateReqVOList.add(transactionCreateReqVO); } else {//生成缺货记录 PurchaseshortageDetailDO purchaseshortageDetailDO = new PurchaseshortageDetailDO(); @@ -283,10 +297,6 @@ public class PurchasereceiptJobMainServiceImpl implements PurchasereceiptJobMain purchaseshortageDetailDO.setNumber(number); purchaseshortageDetailDO.setJobDetailId(String.valueOf(purchasereceiptJobDetailDO.getId())); purchaseshortageDetailDO.setId(null); - purchaseshortageDetailDO.setCreator(null); - purchaseshortageDetailDO.setCreateTime(null); - purchaseshortageDetailDO.setUpdater(null); - purchaseshortageDetailDO.setUpdateTime(null); purchaseshortageDetailDOList.add(purchaseshortageDetailDO); } } @@ -309,66 +319,78 @@ public class PurchasereceiptJobMainServiceImpl implements PurchasereceiptJobMain purchasereceiptRequestMainDO.setStatus(RequestStatusEnum.PARTIAL.getCode()); purchasereceiptRequestMainMapper.updateById(purchasereceiptRequestMainDO); } - SwitchDO switchDO = switchService.selectSwitchExist("CreateInspectRequestAfterPurchaseReceiptRecordCreated"); - //需要增加到货检验申请 - if(switchDO.getEffectiveSetValue().equals("TRUE")) { - RuleRespVO ruleRespVO = ruleService.inspect(purchasereceiptRecordMainDO.getSupplierCode(), null); - JSONObject jsonObject = JSONUtil.parseObj(ruleRespVO.getConfiguration()); - //生成到货检验申请 - if(!"EXAMPT".equals(String.valueOf(jsonObject.get("InspectType")))) { - //按零件号和批次分组 - Map> listMap = new HashMap<>(); - for(PurchasereceiptRecordDetailDO purchasereceiptRecordDetailDO : purchasereceiptRecordDetailDOList) { - String key = purchasereceiptRecordDetailDO.getItemCode() + "_" + purchasereceiptRecordDetailDO.getFromBatch(); - List list = listMap.get(key); - if(list == null) { - list = new ArrayList<>(); - } - list.add(purchasereceiptRecordDetailDO); - listMap.put(key, list); + RuleRespVO ruleRespVO = ruleService.inspect(purchasereceiptRecordMainDO.getSupplierCode(), null); + //上架申请子 + List inspectRequestDetailCreateReqVOList = new ArrayList<>(); + JSONObject jsonObject = JSONUtil.parseObj(ruleRespVO.getConfiguration()); + SwitchDO switchDO1 = switchService.selectSwitchExist("CreateInspectRequestAfterPurchaseReceiptRecordCreated"); + SwitchDO switchDO2 = switchService.selectSwitchExist("ExemptItemCreatePutawayRequestAfterPurchaseReceiptRecordCreated"); + //采购收货记录 生成后 创建 到货检验申请 + if(switchDO1.getEffectiveSetValue().equals("TRUE") && !"EXAMPT".equals(String.valueOf(jsonObject.get("InspectType")))) { + //按零件号和批次分组 + Map> listMap = new HashMap<>(); + for(PurchasereceiptRecordDetailDO purchasereceiptRecordDetailDO : purchasereceiptRecordDetailDOList) { + //采购收货记录 生成后免检物品 创建 上架申请 + if(switchDO2.getEffectiveSetValue().equals("TRUE")) { + InspectRequestDetailCreateReqVO inspectRequestDetailCreateReqVO = new InspectRequestDetailCreateReqVO(); + BeanUtils.copyProperties(purchasereceiptRecordDetailDO, inspectRequestDetailCreateReqVO); + inspectRequestDetailCreateReqVO.setId(null); + inspectRequestDetailCreateReqVOList.add(inspectRequestDetailCreateReqVO); } - //组装到货检验数据 - for(String mapKey : listMap.keySet()) { - List purchasereceiptRecordDetailDOList1 = listMap.get(mapKey); - //创建主表信息 - PurchasereceiptRecordDetailDO recordDetailDO = purchasereceiptRecordDetailDOList1.get(0); - InspectRequestMainCreateReqVO inspectRequestMainCreateReqVO = new InspectRequestMainCreateReqVO(); - String inspectRecordNumber = serialNumberApi.generateCode(RuleCodeEnum.INSPECT_RECORD.getCode()); - inspectRequestMainCreateReqVO.setNumber(inspectRecordNumber); - inspectRequestMainCreateReqVO.setPurchaseReceiptRecordNumber(number); - inspectRequestMainCreateReqVO.setSupplierCode(purchasereceiptRecordMainDO.getSupplierCode()); - inspectRequestMainCreateReqVO.setItemCode(recordDetailDO.getItemCode()); - inspectRequestMainCreateReqVO.setBatch(recordDetailDO.getFromBatch()); - inspectRequestMainCreateReqVO.setPoNumber(recordDetailDO.getPoNumber()); - inspectRequestMainCreateReqVO.setPoLine(recordDetailDO.getPoLine()); - inspectRequestMainCreateReqVO.setUom(recordDetailDO.getUom()); - inspectRequestMainCreateReqVO.setReceiveQty(recordDetailDO.getQty()); - List inspectRequestDetailCreateReqVOList = new ArrayList<>(); - //创建子表信息 - for(PurchasereceiptRecordDetailDO purchasereceiptRecordDetailDO : purchasereceiptRecordDetailDOList1) { - InspectRequestDetailCreateReqVO inspectRequestDetailCreateReqVO = new InspectRequestDetailCreateReqVO(); - inspectRequestDetailCreateReqVO.setPackingNumber(purchasereceiptRecordDetailDO.getFromPackingNumber()); - inspectRequestDetailCreateReqVO.setContainerNumber(purchasereceiptRecordDetailDO.getFromContainerNumber()); - inspectRequestDetailCreateReqVO.setInventoryStatus(purchasereceiptRecordDetailDO.getInventoryStatus()); - inspectRequestDetailCreateReqVO.setFromLocationCode(purchasereceiptRecordDetailDO.getFromLocationCode()); - inspectRequestDetailCreateReqVO.setItemCode(purchasereceiptRecordDetailDO.getItemCode()); - inspectRequestDetailCreateReqVO.setItemName(purchasereceiptRecordDetailDO.getItemName()); - inspectRequestDetailCreateReqVO.setItemDesc1(purchasereceiptRecordDetailDO.getItemDesc1()); - inspectRequestDetailCreateReqVO.setItemDesc2(purchasereceiptRecordDetailDO.getItemDesc2()); - inspectRequestDetailCreateReqVO.setProjectCode(purchasereceiptRecordDetailDO.getProjectCode()); - inspectRequestDetailCreateReqVO.setQty(purchasereceiptRecordDetailDO.getQty()); - inspectRequestDetailCreateReqVO.setUom(purchasereceiptRecordDetailDO.getUom()); - //合计数量 - inspectRequestMainCreateReqVO.setReceiveQty(inspectRequestMainCreateReqVO.getReceiveQty().add(inspectRequestDetailCreateReqVO.getQty())); - inspectRequestDetailCreateReqVOList.add(inspectRequestDetailCreateReqVO); - } - inspectRequestMainCreateReqVO.setSubList(inspectRequestDetailCreateReqVOList); - inspectRequestMainService.createInspectRequestMain(inspectRequestMainCreateReqVO); + String key = purchasereceiptRecordDetailDO.getItemCode() + "_" + purchasereceiptRecordDetailDO.getFromBatch(); + List list = listMap.get(key); + if(list == null) { + list = new ArrayList<>(); } - } else {//免检,生成上架申请 - + list.add(purchasereceiptRecordDetailDO); + listMap.put(key, list); + } + //组装到货检验数据 + for(String mapKey : listMap.keySet()) { + List purchasereceiptRecordDetailDOList1 = listMap.get(mapKey); + //创建主表信息 + PurchasereceiptRecordDetailDO recordDetailDO = purchasereceiptRecordDetailDOList1.get(0); + InspectRequestMainCreateReqVO inspectRequestMainCreateReqVO = new InspectRequestMainCreateReqVO(); + String inspectRecordNumber = serialNumberApi.generateCode(RuleCodeEnum.INSPECT_RECORD.getCode()); + inspectRequestMainCreateReqVO.setNumber(inspectRecordNumber); + inspectRequestMainCreateReqVO.setPurchaseReceiptRecordNumber(number); + inspectRequestMainCreateReqVO.setSupplierCode(purchasereceiptRecordMainDO.getSupplierCode()); + inspectRequestMainCreateReqVO.setItemCode(recordDetailDO.getItemCode()); + inspectRequestMainCreateReqVO.setBatch(recordDetailDO.getFromBatch()); + inspectRequestMainCreateReqVO.setPoNumber(recordDetailDO.getPoNumber()); + inspectRequestMainCreateReqVO.setPoLine(recordDetailDO.getPoLine()); + inspectRequestMainCreateReqVO.setUom(recordDetailDO.getUom()); + inspectRequestMainCreateReqVO.setReceiveQty(recordDetailDO.getQty()); + //创建子表信息 + for(PurchasereceiptRecordDetailDO purchasereceiptRecordDetailDO : purchasereceiptRecordDetailDOList1) { + InspectRequestDetailCreateReqVO inspectRequestDetailCreateReqVO = new InspectRequestDetailCreateReqVO(); + inspectRequestDetailCreateReqVO.setPackingNumber(purchasereceiptRecordDetailDO.getFromPackingNumber()); + inspectRequestDetailCreateReqVO.setContainerNumber(purchasereceiptRecordDetailDO.getFromContainerNumber()); + inspectRequestDetailCreateReqVO.setInventoryStatus(purchasereceiptRecordDetailDO.getInventoryStatus()); + inspectRequestDetailCreateReqVO.setFromLocationCode(purchasereceiptRecordDetailDO.getFromLocationCode()); + inspectRequestDetailCreateReqVO.setItemCode(purchasereceiptRecordDetailDO.getItemCode()); + inspectRequestDetailCreateReqVO.setItemName(purchasereceiptRecordDetailDO.getItemName()); + inspectRequestDetailCreateReqVO.setItemDesc1(purchasereceiptRecordDetailDO.getItemDesc1()); + inspectRequestDetailCreateReqVO.setItemDesc2(purchasereceiptRecordDetailDO.getItemDesc2()); + inspectRequestDetailCreateReqVO.setProjectCode(purchasereceiptRecordDetailDO.getProjectCode()); + inspectRequestDetailCreateReqVO.setQty(purchasereceiptRecordDetailDO.getQty()); + inspectRequestDetailCreateReqVO.setUom(purchasereceiptRecordDetailDO.getUom()); + //合计数量 + inspectRequestMainCreateReqVO.setReceiveQty(inspectRequestMainCreateReqVO.getReceiveQty().add(inspectRequestDetailCreateReqVO.getQty())); + inspectRequestDetailCreateReqVOList.add(inspectRequestDetailCreateReqVO); + } + inspectRequestMainCreateReqVO.setSubList(inspectRequestDetailCreateReqVOList); + inspectRequestMainService.createInspectRequestMain(inspectRequestMainCreateReqVO); } } + //采购收货记录 生成后免检物品 创建 上架申请 + if(switchDO2.getEffectiveSetValue().equals("TRUE") && "EXAMPT".equals(String.valueOf(jsonObject.get("InspectType")))) { + InspectRequestMainCreateReqVO inspectRequestMainCreateReqVO = new InspectRequestMainCreateReqVO(); + BeanUtils.copyProperties(purchasereceiptRecordMainDO, inspectRequestMainCreateReqVO); + inspectRequestMainCreateReqVO.setId(null); + inspectRequestMainCreateReqVO.setSubList(inspectRequestDetailCreateReqVOList); + inspectRequestMainService.createInspectRequestMain(inspectRequestMainCreateReqVO); + } //增加库存事务 transactionService.createTransaction(transactionCreateReqVOList); //移除预计入 diff --git a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/purchasereceiptRequest/PurchasereceiptRequestMainServiceImpl.java b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/purchasereceiptRequest/PurchasereceiptRequestMainServiceImpl.java index 9245937c..e61cf8f5 100644 --- a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/purchasereceiptRequest/PurchasereceiptRequestMainServiceImpl.java +++ b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/purchasereceiptRequest/PurchasereceiptRequestMainServiceImpl.java @@ -526,6 +526,7 @@ public class PurchasereceiptRequestMainServiceImpl implements PurchasereceiptReq purchasereceiptJobMainDO.setStatus(JobStatusEnum.PENDING.getCode()); String number = serialNumberApi.generateCode(RuleCodeEnum.PURCHASE_RECEIPT_JOB.getCode()); purchasereceiptJobMainDO.setNumber(number); + purchasereceiptJobMainDO.setId(null); //增加业务类型 BusinesstypeDO businesstypeDO = jobUtils.selectDocumentSettingFromBusinessType("PurchaseReceiptJob"); purchasereceiptJobMainDO.setBusinessType(businesstypeDO.getCode()); @@ -535,11 +536,15 @@ public class PurchasereceiptRequestMainServiceImpl implements PurchasereceiptReq PurchasereceiptJobDetailDO purchasereceiptJobDetailDO = PurchasereceiptJobDetailConvert.INSTANCE.convert(purchasereceiptJobDetailCreateReqVO); purchasereceiptJobDetailDO.setNumber(number); purchasereceiptJobDetailDO.setMasterId(purchasereceiptJobMainDO.getId()); + purchasereceiptJobDetailDO.setId(null); purchasereceiptJobDetailDOList.add(purchasereceiptJobDetailDO); //预计入 ExpectinCreateReqVO expectinCreateReqVO = new ExpectinCreateReqVO(); BeanUtils.copyProperties(purchasereceiptJobDetailDO, expectinCreateReqVO); expectinCreateReqVO.setJobNumber(number); + expectinCreateReqVO.setBusinessType(purchasereceiptJobMainDO.getBusinessType()); + expectinCreateReqVO.setLocationCode(purchasereceiptJobDetailDO.getFromLocationCode()); + expectinCreateReqVO.setOwnerCode(purchasereceiptJobDetailDO.getFromOwnerCode()); expectinCreateReqVOList.add(expectinCreateReqVO); } purchasereceiptJobDetailMapper.insertBatch(purchasereceiptJobDetailDOList);