From b5aa39c412ed5f72f13d60be787c95c5152bb2e3 Mon Sep 17 00:00:00 2001 From: chenfang Date: Mon, 4 Dec 2023 16:57:54 +0800 Subject: [PATCH] =?UTF-8?q?=E6=88=90=E5=93=81=E5=8F=91=E8=B4=A7=E4=BB=BB?= =?UTF-8?q?=E5=8A=A1=E5=90=8E=E7=AB=AF=E4=BB=A3=E7=A0=81=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../deliverJob/DeliverJobMainController.java | 27 ++++---- .../vo/DeliverJobDetailUpdateReqVO.java | 2 +- .../deliverJob/vo/DeliverJobMainBaseVO.java | 6 ++ .../deliverJob/vo/DeliverJobMainExcelVO.java | 9 ++- .../vo/DeliverJobMainExportReqVO.java | 5 ++ .../vo/DeliverJobMainPageReqVO.java | 6 ++ .../deliverJob/DeliverJobMainDO.java | 11 ++- .../deliverJob/DeliverJobDetailMapper.java | 2 +- .../deliverJob/DeliverJobMainMapper.java | 7 +- .../deliverJob/DeliverJobMainService.java | 2 +- .../deliverJob/DeliverJobMainServiceImpl.java | 69 ++++++++++++++----- 11 files changed, 112 insertions(+), 34 deletions(-) diff --git a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/deliverJob/DeliverJobMainController.java b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/deliverJob/DeliverJobMainController.java index c9eab9e3..0af4f958 100644 --- a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/deliverJob/DeliverJobMainController.java +++ b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/deliverJob/DeliverJobMainController.java @@ -6,6 +6,7 @@ import com.win.module.system.api.user.AdminUserApi; import com.win.module.system.api.user.dto.AdminUserRespDTO; import com.win.module.wms.convert.deliverJob.DeliverJobDetailConvert; import com.win.module.wms.dal.dataobject.deliverJob.DeliverJobDetailDO; +import com.win.module.wms.dal.dataobject.issueJob.IssueJobDetailDO; import com.win.module.wms.enums.DictTypeConstants; import com.win.module.wms.service.deliverJob.DeliverJobDetailService; import jodd.util.StringUtil; @@ -190,11 +191,13 @@ public class DeliverJobMainController { if(result==null) { return success(result); }; - DeliverJobDetailExportReqVO exportReqVO = new DeliverJobDetailExportReqVO(); - exportReqVO.setMasterId(result.getId()); - List deliverJobDetailList = deliverJobDetailService.getDeliverJobDetailList(exportReqVO); - List deliverJobDetailExcelVOS = DeliverJobDetailConvert.INSTANCE.convertList02(deliverJobDetailList); - result.setSubList(deliverJobDetailExcelVOS); +// DeliverJobDetailExportReqVO exportReqVO = new DeliverJobDetailExportReqVO(); +// exportReqVO.setMasterId(result.getId()); +// List deliverJobDetailList = deliverJobDetailService.getDeliverJobDetailList(exportReqVO); +// List deliverJobDetailExcelVOS = DeliverJobDetailConvert.INSTANCE.convertList02(deliverJobDetailList); +// result.setSubList(deliverJobDetailExcelVOS); + List subList = deliverJobDetailService.selectList(id); + result.setSubList(subList); return success(result); } @@ -214,7 +217,7 @@ public class DeliverJobMainController { } @PutMapping("/accept") - @Operation(summary = "承接客户退货任务") + @Operation(summary = "承接发货任务") @Parameter(name = "id", description = "编号", required = true) @PreAuthorize("@ss.hasPermission('wms:deliver-job-main:accept')") public CommonResult acceptDeliverJobMain(@RequestParam("id") Long id) { @@ -223,7 +226,7 @@ public class DeliverJobMainController { } @PutMapping("/abandon") - @Operation(summary = "取消承接客户退货任务") + @Operation(summary = "取消承接发货任务") @Parameter(name = "id", description = "编号", required = true) @PreAuthorize("@ss.hasPermission('wms:deliver-job-main:abandon')") public CommonResult abandonDeliverJobMain(@RequestParam("id") Long id) { @@ -232,7 +235,7 @@ public class DeliverJobMainController { } @PutMapping("/close") - @Operation(summary = "关闭客户退货任务主") + @Operation(summary = "关闭发货任务主") @Parameter(name = "id", description = "编号", required = true) @PreAuthorize("@ss.hasPermission('wms:deliver-job-main:close')") public CommonResult closeDeliverJobMain(@RequestParam("id") Long id) { @@ -241,11 +244,11 @@ public class DeliverJobMainController { } @PutMapping("/execute") - @Operation(summary = "执行客户退货任务主") + @Operation(summary = "执行发货任务主") @Parameter(name = "id", description = "编号", required = true) @PreAuthorize("@ss.hasPermission('wms:deliver-job-main:execute')") - public CommonResult executeDeliverJobMain(@Valid @RequestBody DeliverJobMainUpdateReqVO updateReqVO) { - Integer count = deliverJobMainService.executeDeliverJobMain(updateReqVO); - return success(count > 0); + public CommonResult executeDeliverJobMain(@Valid @RequestBody DeliverJobMainUpdateReqVO updateReqVO) { + String number = deliverJobMainService.executeDeliverJobMain(updateReqVO); + return success(number); } } diff --git a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/deliverJob/vo/DeliverJobDetailUpdateReqVO.java b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/deliverJob/vo/DeliverJobDetailUpdateReqVO.java index 984fd80d..c889ef36 100644 --- a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/deliverJob/vo/DeliverJobDetailUpdateReqVO.java +++ b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/deliverJob/vo/DeliverJobDetailUpdateReqVO.java @@ -13,5 +13,5 @@ import java.util.Map; public class DeliverJobDetailUpdateReqVO extends DeliverJobDetailBaseVO { @Schema(description = "子表记录数据") - private List> recordLst; + private List> recordList; } diff --git a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/deliverJob/vo/DeliverJobMainBaseVO.java b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/deliverJob/vo/DeliverJobMainBaseVO.java index a214878a..f42a1019 100644 --- a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/deliverJob/vo/DeliverJobMainBaseVO.java +++ b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/deliverJob/vo/DeliverJobMainBaseVO.java @@ -166,4 +166,10 @@ public class DeliverJobMainBaseVO { @Schema(description = "允许修改箱码") private String allowModifyPackingNumber; + @Schema(description = "入库库存状态范围") + private String inInventoryStatuses; + + @Schema(description = "出库库存状态范围") + private String outInventoryStatuses; + } diff --git a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/deliverJob/vo/DeliverJobMainExcelVO.java b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/deliverJob/vo/DeliverJobMainExcelVO.java index f05bc545..b657fd1d 100644 --- a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/deliverJob/vo/DeliverJobMainExcelVO.java +++ b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/deliverJob/vo/DeliverJobMainExcelVO.java @@ -1,6 +1,7 @@ package com.win.module.wms.controller.deliverJob.vo; import com.alibaba.excel.annotation.write.style.ColumnWidth; +import io.swagger.v3.oas.annotations.media.Schema; import lombok.*; import java.math.BigDecimal; @@ -79,7 +80,7 @@ public class DeliverJobMainExcelVO { @ExcelProperty("最后更新者Id") private String updater; - @ExcelProperty(value = "状态", converter = DictConvert.class) + @ExcelProperty(value = "任务阶段状态", converter = DictConvert.class) @DictFormat("job_stage_status") // TODO 代码优化:建议设置到对应的 XXXDictTypeConstants 枚举类中 private String jobStageStatus; @@ -169,6 +170,12 @@ public class DeliverJobMainExcelVO { @ExcelProperty("允许修改箱码") private String allowModifyPackingNumber; + @ExcelProperty("入库库存状态范围") + private String inInventoryStatuses; + + @ExcelProperty("出库库存状态范围") + private String outInventoryStatuses; + @ExcelProperty("销售订单号") private String soNumber; diff --git a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/deliverJob/vo/DeliverJobMainExportReqVO.java b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/deliverJob/vo/DeliverJobMainExportReqVO.java index 36825eeb..b4c94553 100644 --- a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/deliverJob/vo/DeliverJobMainExportReqVO.java +++ b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/deliverJob/vo/DeliverJobMainExportReqVO.java @@ -157,4 +157,9 @@ public class DeliverJobMainExportReqVO { @Schema(description = "允许修改箱码") private String allowModifyPackingNumber; + @Schema(description = "入库库存状态范围") + private String inInventoryStatuses; + + @Schema(description = "出库库存状态范围") + private String outInventoryStatuses; } diff --git a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/deliverJob/vo/DeliverJobMainPageReqVO.java b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/deliverJob/vo/DeliverJobMainPageReqVO.java index f6e8aa83..f5858f1b 100644 --- a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/deliverJob/vo/DeliverJobMainPageReqVO.java +++ b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/deliverJob/vo/DeliverJobMainPageReqVO.java @@ -159,4 +159,10 @@ public class DeliverJobMainPageReqVO extends PageParam { @Schema(description = "允许修改箱码") private String allowModifyPackingNumber; + @Schema(description = "入库库存状态范围") + private String inInventoryStatuses; + + @Schema(description = "出库库存状态范围") + private String outInventoryStatuses; + } diff --git a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/dataobject/deliverJob/DeliverJobMainDO.java b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/dataobject/deliverJob/DeliverJobMainDO.java index 18a3a8dc..c69f1b5d 100644 --- a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/dataobject/deliverJob/DeliverJobMainDO.java +++ b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/dataobject/deliverJob/DeliverJobMainDO.java @@ -1,5 +1,7 @@ package com.win.module.wms.dal.dataobject.deliverJob; +import com.sun.xml.bind.v2.TODO; +import io.swagger.v3.oas.annotations.media.Schema; import lombok.*; import java.util.*; import java.time.LocalDateTime; @@ -243,5 +245,12 @@ public class DeliverJobMainDO extends BaseDO { * 允许修改箱码 */ private String allowModifyPackingNumber; - + /** + * 入库库存状态范围 + */ + private String inInventoryStatuses; + /** + * 出库库存状态范围 + */ + private String outInventoryStatuses; } diff --git a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/mysql/deliverJob/DeliverJobDetailMapper.java b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/mysql/deliverJob/DeliverJobDetailMapper.java index 834846a0..0c84a475 100644 --- a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/mysql/deliverJob/DeliverJobDetailMapper.java +++ b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/mysql/deliverJob/DeliverJobDetailMapper.java @@ -22,7 +22,7 @@ public interface DeliverJobDetailMapper extends BaseMapperX default PageResult selectPage(DeliverJobDetailPageReqVO reqVO) { return selectPage(reqVO, new LambdaQueryWrapperX() - .eq(DeliverJobDetailDO::getMasterId, reqVO.getMasterId()) + .eqIfPresent(DeliverJobDetailDO::getMasterId, reqVO.getMasterId()) .eqIfPresent(DeliverJobDetailDO::getSoNumber, reqVO.getSoNumber()) .eqIfPresent(DeliverJobDetailDO::getSoLine, reqVO.getSoLine()) .eqIfPresent(DeliverJobDetailDO::getPackingNumber, reqVO.getPackingNumber()) diff --git a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/mysql/deliverJob/DeliverJobMainMapper.java b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/mysql/deliverJob/DeliverJobMainMapper.java index 012a3586..852d9c14 100644 --- a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/mysql/deliverJob/DeliverJobMainMapper.java +++ b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/mysql/deliverJob/DeliverJobMainMapper.java @@ -10,6 +10,7 @@ import com.win.framework.mybatis.core.util.QueryWrapperUtils; import com.win.module.wms.controller.deliverJob.vo.DeliverJobMainExportReqVO; import com.win.module.wms.controller.deliverJob.vo.DeliverJobMainPageReqVO; import com.win.module.wms.dal.dataobject.deliverJob.DeliverJobMainDO; +import com.win.module.wms.enums.job.JobStatusEnum; import com.win.module.wms.enums.order.OrderStatusEnum; import org.apache.ibatis.annotations.Mapper; @@ -69,6 +70,8 @@ public interface DeliverJobMainMapper extends BaseMapperX { .eqIfPresent(DeliverJobMainDO::getAllowPartialComplete, reqVO.getAllowPartialComplete()) .eqIfPresent(DeliverJobMainDO::getAllowModifyBatch, reqVO.getAllowModifyBatch()) .eqIfPresent(DeliverJobMainDO::getAllowModifyPackingNumber, reqVO.getAllowModifyPackingNumber()) + .eqIfPresent(DeliverJobMainDO::getInInventoryStatuses, reqVO.getInInventoryStatuses()) + .eqIfPresent(DeliverJobMainDO::getOutInventoryStatuses, reqVO.getOutInventoryStatuses()) .orderByDesc(DeliverJobMainDO::getId)); } default PageResult selectSenior(CustomConditions conditions) { @@ -122,6 +125,8 @@ public interface DeliverJobMainMapper extends BaseMapperX { .eqIfPresent(DeliverJobMainDO::getAllowPartialComplete, reqVO.getAllowPartialComplete()) .eqIfPresent(DeliverJobMainDO::getAllowModifyBatch, reqVO.getAllowModifyBatch()) .eqIfPresent(DeliverJobMainDO::getAllowModifyPackingNumber, reqVO.getAllowModifyPackingNumber()) + .eqIfPresent(DeliverJobMainDO::getInInventoryStatuses, reqVO.getInInventoryStatuses()) + .eqIfPresent(DeliverJobMainDO::getOutInventoryStatuses, reqVO.getOutInventoryStatuses()) .orderByDesc(DeliverJobMainDO::getId)); } @@ -139,7 +144,7 @@ public interface DeliverJobMainMapper extends BaseMapperX { default Long selectByRequestNumber(String number){ return selectCount(new LambdaQueryWrapperX() .eq(DeliverJobMainDO::getRequestNumber,number) - .ne(DeliverJobMainDO::getStatus, OrderStatusEnum.CLOSED.getCode())); + .ne(DeliverJobMainDO::getStatus, JobStatusEnum.CLOSED.getCode())); } /** diff --git a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/deliverJob/DeliverJobMainService.java b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/deliverJob/DeliverJobMainService.java index 7fe9fdae..68191f83 100644 --- a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/deliverJob/DeliverJobMainService.java +++ b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/deliverJob/DeliverJobMainService.java @@ -143,5 +143,5 @@ public interface DeliverJobMainService { * @param updateReqVO * @return */ - public Integer executeDeliverJobMain(DeliverJobMainUpdateReqVO updateReqVO); + public String executeDeliverJobMain(DeliverJobMainUpdateReqVO updateReqVO); } diff --git a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/deliverJob/DeliverJobMainServiceImpl.java b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/deliverJob/DeliverJobMainServiceImpl.java index fb16244d..1be987ae 100644 --- a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/deliverJob/DeliverJobMainServiceImpl.java +++ b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/deliverJob/DeliverJobMainServiceImpl.java @@ -9,13 +9,19 @@ import com.win.module.system.api.serialnumber.SerialNumberApi; import com.win.module.system.api.user.AdminUserApi; import com.win.module.system.api.user.dto.AdminUserRespDTO; import com.win.module.system.enums.serialNumber.RuleCodeEnum; +import com.win.module.wms.controller.customerreceiptRequest.vo.CustomerreceiptRequestDetailCreateReqVO; +import com.win.module.wms.controller.customerreceiptRequest.vo.CustomerreceiptRequestDetailRespVO; +import com.win.module.wms.controller.customerreceiptRequest.vo.CustomerreceiptRequestMainCreateReqVO; import com.win.module.wms.controller.deliverJob.vo.DeliverJobDetailUpdateReqVO; import com.win.module.wms.controller.deliverJob.vo.DeliverJobMainUpdateReqVO; import com.win.module.wms.controller.deliverJob.vo.DeliverJobMainCreateReqVO; import com.win.module.wms.controller.deliverJob.vo.DeliverJobMainExportReqVO; import com.win.module.wms.controller.deliverJob.vo.DeliverJobMainPageReqVO; import com.win.module.wms.controller.transaction.vo.TransactionCreateReqVO; +import com.win.module.wms.convert.customerreceiptRequest.CustomerreceiptRequestDetailConvert; import com.win.module.wms.dal.dataobject.businesstype.BusinesstypeDO; +import com.win.module.wms.dal.dataobject.customerreceiptRequest.CustomerreceiptRequestDetailDO; +import com.win.module.wms.dal.dataobject.customerreceiptRequest.CustomerreceiptRequestMainDO; import com.win.module.wms.dal.dataobject.deliverJob.DeliverJobDetailDO; import com.win.module.wms.dal.dataobject.deliverJob.DeliverJobMainDO; import com.win.module.wms.dal.dataobject.deliverRecord.DeliverRecordDetailDO; @@ -23,18 +29,22 @@ import com.win.module.wms.dal.dataobject.deliverRecord.DeliverRecordMainDO; import com.win.module.wms.dal.dataobject.deliverRequest.DeliverRequestMainDO; import com.win.module.wms.dal.dataobject.location.LocationDO; import com.win.module.wms.dal.dataobject.purchase.PurchaseDetailDO; +import com.win.module.wms.dal.dataobject.requestsetting.RequestsettingDO; import com.win.module.wms.dal.dataobject.sale.SaleDetailDO; import com.win.module.wms.dal.dataobject.transactiontype.TransactiontypeDO; +import com.win.module.wms.dal.mysql.customerreceiptRequest.CustomerreceiptRequestDetailMapper; +import com.win.module.wms.dal.mysql.customerreceiptRequest.CustomerreceiptRequestMainMapper; import com.win.module.wms.dal.mysql.deliverRecord.DeliverRecordDetailMapper; import com.win.module.wms.dal.mysql.deliverRecord.DeliverRecordMainMapper; import com.win.module.wms.dal.mysql.deliverRequest.DeliverRequestMainMapper; import com.win.module.wms.enums.job.JobStatusEnum; import com.win.module.wms.enums.job.JobStatusState; import com.win.module.wms.enums.request.RequestStatusEnum; -import com.win.module.wms.service.deliverJob.DeliverJobDetailService; +import com.win.module.wms.service.customerreceiptRequest.CustomerreceiptRequestMainService; import com.win.module.wms.service.expectout.ExpectoutService; import com.win.module.wms.service.location.LocationService; import com.win.module.wms.service.purchase.PurchaseMainService; +import com.win.module.wms.service.requestsetting.RequestsettingService; import com.win.module.wms.service.sale.SaleMainService; import com.win.module.wms.service.transaction.TransactionService; import com.win.module.wms.util.JobUtils; @@ -74,7 +84,8 @@ public class DeliverJobMainServiceImpl implements DeliverJobMainService { private PurchaseMainService purchaseMainService; @Resource private SaleMainService saleMainService; - + @Resource + private RequestsettingService requestsettingService; @Resource private AdminUserApi userApi; @Resource @@ -97,6 +108,10 @@ public class DeliverJobMainServiceImpl implements DeliverJobMainService { private TransactionService transactionService; @Resource private LocationService locationService; + @Resource + private CustomerreceiptRequestMainService customerreceiptRequestMainService; + @Resource + private CustomerreceiptRequestDetailMapper customerreceiptRequestDetailMapper; @Override public Long createDeliverJobMain(DeliverJobMainCreateReqVO createReqVO) { @@ -161,6 +176,8 @@ public class DeliverJobMainServiceImpl implements DeliverJobMainService { PurchaseDetailDO purchaseDetailDO = purchaseMainService.selectPurchaseDetailDoExist(pnumber, psupplierCode, pitemCode,poLine); return purchaseDetailDO; } + + //校验销售订单 @Override public SaleDetailDO saleDetailExist(String psoNumber, String psoLine, String pitemCode) { SaleDetailDO saleDetailDO = saleMainService.selectSaleDetailDoExist(psoNumber, psoLine, pitemCode); @@ -237,7 +254,7 @@ public class DeliverJobMainServiceImpl implements DeliverJobMainService { @Override @Transactional - public Integer executeDeliverJobMain(DeliverJobMainUpdateReqVO deliverJobMainUpdateReqVO) { + public String executeDeliverJobMain(DeliverJobMainUpdateReqVO deliverJobMainUpdateReqVO) { //查询数据 DeliverJobMainDO deliverJobMainDO = this.validateDeliverJobMainExists(deliverJobMainUpdateReqVO.getId()); List subList = deliverJobDetailService.selectList(deliverJobMainDO.getId()); @@ -266,8 +283,8 @@ public class DeliverJobMainServiceImpl implements DeliverJobMainService { deliverRecordMainDO.setBusinessType(businesstypeDO.getCode()); deliverRecordMainMapper.insert(deliverRecordMainDO); List deliverJobDetailUpdateReqVOList = deliverJobMainUpdateReqVO.getSubList(); - //退货记录子 List deliverRecordDetailDOList = new ArrayList<>(); + ArrayList customerreceiptRequestDetailCreateReqVOS = new ArrayList<>(); //库存事务 List transactionCreateReqVOList = new ArrayList<>(); subList.forEach(subListItem -> { @@ -281,9 +298,10 @@ public class DeliverJobMainServiceImpl implements DeliverJobMainService { deliverJobDetailUpdateReqVOList.forEach(DetailUpdateItem -> { // 匹配任务子表与参数中子表 if (DetailUpdateItem.getId().equals(subListItem.getId())) { - List> recordLst = DetailUpdateItem.getRecordLst(); - recordLst.forEach(recordLstItem -> { + List> recordList = DetailUpdateItem.getRecordList(); + recordList.forEach(recordListItem -> { DeliverRecordDetailDO deliverRecordDetailDO = new DeliverRecordDetailDO(); + CustomerreceiptRequestDetailDO customerreceiptRequestDetailDO = new CustomerreceiptRequestDetailDO(); BeanUtils.copyProperties(DetailUpdateItem, deliverRecordDetailDO); deliverRecordDetailDO.setJobDetailId(DetailUpdateItem.getId().toString()); deliverRecordDetailDO.setId(null); @@ -293,16 +311,16 @@ public class DeliverJobMainServiceImpl implements DeliverJobMainService { deliverRecordDetailDO.setUpdateTime(null); deliverRecordDetailDO.setNumber(number); deliverRecordDetailDO.setMasterId(deliverRecordMainDO.getId().toString()); - // 根据recordLst 进行赋值子表部分数据 - deliverRecordDetailDO.setQty(new BigDecimal(recordLstItem.get("handleQty").toString())); - deliverRecordDetailDO.setPackingNumber(recordLstItem.get("toPackingNumber").toString()); - deliverRecordDetailDO.setToContainerNumber(recordLstItem.get("toContainerNumber").toString()); - deliverRecordDetailDO.setBatch(recordLstItem.get("toBatch").toString()); - deliverRecordDetailDO.setToLocationCode(recordLstItem.get("toLocationCode").toString()); - deliverRecordDetailDO.setInventoryStatus(recordLstItem.get("toInventoryStatus").toString()); + // 根据recordList 进行赋值子表部分数据 + deliverRecordDetailDO.setQty(new BigDecimal(recordListItem.get("handleQty").toString())); + deliverRecordDetailDO.setPackingNumber(recordListItem.get("toPackingNumber")==null?"":recordListItem.get("toPackingNumber")); + deliverRecordDetailDO.setToContainerNumber(recordListItem.get("toContainerNumber")==null?"":recordListItem.get("toContainerNumber")); + deliverRecordDetailDO.setBatch(recordListItem.get("toBatch")==null?"":recordListItem.get("toBatch")); + deliverRecordDetailDO.setToLocationCode(recordListItem.get("toLocationCode").toString()); + deliverRecordDetailDO.setInventoryStatus(recordListItem.get("toInventoryStatus").toString()); deliverRecordDetailDO.setToContainerNumber(DetailUpdateItem.getToContainerNumber()); // 根据 to库位 查询 库位组 库区 - LocationDO locationDO = locationService.selectLocation(recordLstItem.get("toLocationCode").toString()); + LocationDO locationDO = locationService.selectLocation(recordListItem.get("toLocationCode").toString()); deliverRecordDetailDO.setToLocationGroupCode(locationDO.getLocationGroupCode()); deliverRecordDetailDO.setToAreaCode(locationDO.getAreaCode()); // 根据 from库位 查询 库位组 库区 @@ -310,12 +328,20 @@ public class DeliverJobMainServiceImpl implements DeliverJobMainService { deliverRecordDetailDO.setFromLocationGroupCode(locationDOFrom.getLocationGroupCode()); deliverRecordDetailDO.setFromAreaCode(locationDOFrom.getAreaCode()); deliverRecordDetailDOList.add(deliverRecordDetailDO); + BeanUtils.copyProperties(deliverRecordDetailDO, customerreceiptRequestDetailDO); + customerreceiptRequestDetailDO.setId(null); + customerreceiptRequestDetailDO.setCreator(null); + customerreceiptRequestDetailDO.setCreateTime(null); + customerreceiptRequestDetailDO.setUpdater(null); + customerreceiptRequestDetailDO.setUpdateTime(null); + CustomerreceiptRequestDetailCreateReqVO customerreceiptRequestDetailCreateReqVO = CustomerreceiptRequestDetailConvert.INSTANCE.convertDoToVo(customerreceiptRequestDetailDO); + customerreceiptRequestDetailCreateReqVOS.add(customerreceiptRequestDetailCreateReqVO); //添加库存事务list TransactionCreateReqVO transactionCreateReqVO = new TransactionCreateReqVO(); BeanUtils.copyProperties(deliverRecordDetailDO, transactionCreateReqVO); //增加业务类型 transactionCreateReqVO.setBusinessType(businesstypeDO.getCode()); - TransactiontypeDO transactiontypeDO = jobUtils.selectDocumentFromTransactionType(businesstypeDO.getInTransactionType()); + TransactiontypeDO transactiontypeDO = jobUtils.selectDocumentFromTransactionType(businesstypeDO.getOutTransactionType()); transactionCreateReqVO.setInventoryAction(transactiontypeDO.getInventoryAction()); transactionCreateReqVO.setTransactionType(transactiontypeDO.getCode()); transactionCreateReqVO.setBusinessType(deliverRecordMainDO.getBusinessType()); @@ -333,6 +359,17 @@ public class DeliverJobMainServiceImpl implements DeliverJobMainService { }); }); deliverRecordDetailMapper.insertBatch(deliverRecordDetailDOList); + //添加客户收货申请主表 + CustomerreceiptRequestMainCreateReqVO customerreceiptRequestMainCreateReqVO = new CustomerreceiptRequestMainCreateReqVO(); + BeanUtils.copyProperties(deliverJobMainDO, customerreceiptRequestMainCreateReqVO); + customerreceiptRequestMainCreateReqVO.setId(null); + customerreceiptRequestMainCreateReqVO.setCreator(null); + customerreceiptRequestMainCreateReqVO.setCreateTime(null); + customerreceiptRequestMainCreateReqVO.setUpdater(null); + customerreceiptRequestMainCreateReqVO.setUpdateTime(null); + customerreceiptRequestMainCreateReqVO.setDeliverRequestNumber(deliverJobMainDO.getRequestNumber()); + customerreceiptRequestMainCreateReqVO.setSubList(customerreceiptRequestDetailCreateReqVOS); + customerreceiptRequestMainService.createCustomerreceiptRequestMain(customerreceiptRequestMainCreateReqVO); List typeList = new ArrayList<>(); typeList.add(JobStatusEnum.PENDING.getCode()); typeList.add(JobStatusEnum.PROCESSING.getCode()); @@ -352,6 +389,6 @@ public class DeliverJobMainServiceImpl implements DeliverJobMainService { expectoutService.deleteExpectoutByJobNumber(deliverJobMainDO.getNumber()); //变更记录 trendsApi.createTrends(deliverJobMainDO.getId(), "deliverJob", "执行了发货任务", TrendsTypeEnum.UPDATE); - return result; + return number; } }