fix(oms):下发过滤已删除明细,执行单不再残留已取消运输业务单号
This commit is contained in:
+25
-5
@@ -607,7 +607,8 @@ public class ReservationStockInOrderDomainService {
|
||||
String inOrderNumber = stockInOrder.getInOrderNumber();
|
||||
List<ReservationInMaterialDetail> materialDetailList = materialDetailService.list(
|
||||
new QueryWrapper<ReservationInMaterialDetail>().lambda()
|
||||
.eq(ReservationInMaterialDetail::getInOrderNumber, inOrderNumber));
|
||||
.eq(ReservationInMaterialDetail::getInOrderNumber, inOrderNumber)
|
||||
.eq(ReservationInMaterialDetail::getDelFlag, 1));
|
||||
List<InMaterialDetail> inMaterialDetailList = new ArrayList<>();
|
||||
for (ReservationInMaterialDetail reservationInMaterialDetail : materialDetailList) {
|
||||
InMaterialDetail inMaterialDetail = new InMaterialDetail();
|
||||
@@ -627,7 +628,10 @@ public class ReservationStockInOrderDomainService {
|
||||
// Long inOrderId = stockInOrderDO.getInOrderId();
|
||||
ReservationStockInOrder byId = stockInOrderService.getById(inOrderId);
|
||||
String inOrderNumber = byId.getInOrderNumber();
|
||||
List<ReservationInMaterialDetail> materialDetailList = materialDetailService.list(new QueryWrapper<ReservationInMaterialDetail>().lambda().eq(ReservationInMaterialDetail::getInOrderNumber, inOrderNumber));
|
||||
List<ReservationInMaterialDetail> materialDetailList = materialDetailService.list(
|
||||
new QueryWrapper<ReservationInMaterialDetail>().lambda()
|
||||
.eq(ReservationInMaterialDetail::getInOrderNumber, inOrderNumber)
|
||||
.eq(ReservationInMaterialDetail::getDelFlag, 1));
|
||||
|
||||
// 按照 warehouseId 分组
|
||||
Map<Long, List<ReservationInMaterialDetail>> materialDetailGroupByWarehouse = materialDetailList.stream()
|
||||
@@ -641,7 +645,8 @@ public class ReservationStockInOrderDomainService {
|
||||
String warehouseName = reservationStockInOrderMapper.getWarehouseName(warehouseId);
|
||||
|
||||
ExecutionStockInOrder reservationStockInOrder = new ExecutionStockInOrder();
|
||||
BeanUtils.copyProperties(byId, reservationStockInOrder,"inOrderId","issueStatus","issueTime","issueId","issueName","reservationAuditId","reservationAuditName","reservationAuditTime");
|
||||
// 运输业务单号不直接从业务单头复制,避免历史已取消运输单号残留下发到执行单
|
||||
BeanUtils.copyProperties(byId, reservationStockInOrder,"inOrderId","issueStatus","issueTime","issueId","issueName","reservationAuditId","reservationAuditName","reservationAuditTime","businessNumber","tmsOrderNumber");
|
||||
reservationStockInOrder.setIssueStatus(0);
|
||||
reservationStockInOrder.setOrderTypeCode("pu_tong_ru_ku");
|
||||
reservationStockInOrder.setOrderTypeName("普通入库");
|
||||
@@ -661,6 +666,18 @@ public class ReservationStockInOrderDomainService {
|
||||
reservationStockInOrder.setWarehouseName(warehouseName);
|
||||
reservationStockInOrder.setBusinessInOrderNumber(inOrderNumber);
|
||||
|
||||
// 仅当存在有效(未取消/未拦截/未删除)的运输业务单时,才回填运输业务单号
|
||||
BusinessDocumentOrder activeTransportOrder = businessDocumentOrderMapper.selectOne(new LambdaQueryWrapper<BusinessDocumentOrder>()
|
||||
.eq(BusinessDocumentOrder::getInOrderNumber, inOrderNumber)
|
||||
.eq(BusinessDocumentOrder::getDelFlag, 1)
|
||||
.notIn(BusinessDocumentOrder::getOrderStatus, 4L, 5L)
|
||||
.orderByDesc(BusinessDocumentOrder::getCreateTime)
|
||||
.last("limit 1"));
|
||||
if (activeTransportOrder != null) {
|
||||
reservationStockInOrder.setBusinessNumber(activeTransportOrder.getGoodsNumber());
|
||||
reservationStockInOrder.setTmsOrderNumber(byId.getTmsOrderNumber());
|
||||
}
|
||||
|
||||
|
||||
//设置入库单号
|
||||
Long warehouseId1 = reservationStockInOrder.getWarehouseId();
|
||||
@@ -815,7 +832,9 @@ public class ReservationStockInOrderDomainService {
|
||||
// Long inOrderId = stockInOrderDO.getInOrderId();
|
||||
ReservationStockInOrder byId = stockInOrderService.getById(inOrderId);
|
||||
String inOrderNumber = byId.getInOrderNumber();
|
||||
List<ReservationInMaterialDetail> materialDetailList = materialDetailService.list(new QueryWrapper<ReservationInMaterialDetail>().lambda().eq(ReservationInMaterialDetail::getInOrderNumber, inOrderNumber));
|
||||
List<ReservationInMaterialDetail> materialDetailList = materialDetailService.list(new QueryWrapper<ReservationInMaterialDetail>().lambda()
|
||||
.eq(ReservationInMaterialDetail::getInOrderNumber, inOrderNumber)
|
||||
.eq(ReservationInMaterialDetail::getDelFlag, 1));
|
||||
Long warehouseId1 = byId.getWarehouseId();
|
||||
String warehouseCode1 = byId.getWarehouseCode();
|
||||
String warehouseName1 = byId.getWarehouseName();
|
||||
@@ -837,7 +856,8 @@ public class ReservationStockInOrderDomainService {
|
||||
if (warehouseName == null) warehouseName = warehouseName1;
|
||||
|
||||
ExecutionStockInOrder reservationStockInOrder = new ExecutionStockInOrder();
|
||||
BeanUtils.copyProperties(byId, reservationStockInOrder,"inOrderId","issueStatus","issueTime","issueId","issueName","reservationAuditId","reservationAuditName","reservationAuditTime");
|
||||
// 运输业务单号不直接从业务单头复制,避免历史已取消运输单号残留下发到执行单
|
||||
BeanUtils.copyProperties(byId, reservationStockInOrder,"inOrderId","issueStatus","issueTime","issueId","issueName","reservationAuditId","reservationAuditName","reservationAuditTime","businessNumber","tmsOrderNumber");
|
||||
reservationStockInOrder.setIssueStatus(0);
|
||||
reservationStockInOrder.setOrderTypeCode("pu_tong_ru_ku");
|
||||
reservationStockInOrder.setOrderTypeName("普通入库");
|
||||
|
||||
Reference in New Issue
Block a user