Commit 7a791cfff3790294ac3a07949d156c0cfdde3d47
1 parent
430bdfe4
出库完成完善
Showing
1 changed file
with
26 additions
and
7 deletions
src/main/java/com/huaheng/pc/task/taskHeader/service/TaskHeaderServiceImpl.java
@@ -483,7 +483,7 @@ public class TaskHeaderServiceImpl extends ServiceImpl<TaskHeaderMapper, TaskHea | @@ -483,7 +483,7 @@ public class TaskHeaderServiceImpl extends ServiceImpl<TaskHeaderMapper, TaskHea | ||
483 | } | 483 | } |
484 | //修改组盘表状态为20 | 484 | //修改组盘表状态为20 |
485 | ReceiptContainerDetail receiptContainerDetail = new ReceiptContainerDetail(); | 485 | ReceiptContainerDetail receiptContainerDetail = new ReceiptContainerDetail(); |
486 | - receiptContainerDetail.setStatus(20); | 486 | + receiptContainerDetail.setStatus(30); |
487 | receiptContainerDetail.setProcessStamp("0"); | 487 | receiptContainerDetail.setProcessStamp("0"); |
488 | receiptContainerDetail.setLastUpdated(new Date()); | 488 | receiptContainerDetail.setLastUpdated(new Date()); |
489 | receiptContainerDetail.setLastUpdatedBy(ShiroUtils.getLoginName()); | 489 | receiptContainerDetail.setLastUpdatedBy(ShiroUtils.getLoginName()); |
@@ -1015,15 +1015,20 @@ public class TaskHeaderServiceImpl extends ServiceImpl<TaskHeaderMapper, TaskHea | @@ -1015,15 +1015,20 @@ public class TaskHeaderServiceImpl extends ServiceImpl<TaskHeaderMapper, TaskHea | ||
1015 | throw new ServiceException("任务明细对应的库存ID【" + taskDetail.getToInventoryId().toString() + "】不存在!"); | 1015 | throw new ServiceException("任务明细对应的库存ID【" + taskDetail.getToInventoryId().toString() + "】不存在!"); |
1016 | } | 1016 | } |
1017 | BigDecimal orignalQty = inventoryDetail.getQty(); | 1017 | BigDecimal orignalQty = inventoryDetail.getQty(); |
1018 | - //扣减库存 | 1018 | + //减扣库存单 |
1019 | + InventoryHeader inventoryHeader = inventoryHeaderService.getById(inventoryDetail.getInventoryHeaderId()); | ||
1020 | + inventoryHeader.setTotalQty(inventoryDetail.getQty().subtract(taskDetail.getQty()).intValue()); | ||
1021 | + //扣减库存明细 | ||
1019 | inventoryDetail.setTaskQty(inventoryDetail.getTaskQty().subtract(taskDetail.getQty())); | 1022 | inventoryDetail.setTaskQty(inventoryDetail.getTaskQty().subtract(taskDetail.getQty())); |
1020 | inventoryDetail.setQty(inventoryDetail.getQty().subtract(taskDetail.getQty())); | 1023 | inventoryDetail.setQty(inventoryDetail.getQty().subtract(taskDetail.getQty())); |
1021 | if(inventoryDetail.getQty().compareTo(new BigDecimal("0"))==0 && inventoryDetail.getTaskQty().compareTo(new BigDecimal("0"))==0){ | 1024 | if(inventoryDetail.getQty().compareTo(new BigDecimal("0"))==0 && inventoryDetail.getTaskQty().compareTo(new BigDecimal("0"))==0){ |
1022 | //如果库存没有了,就删除这个库存 | 1025 | //如果库存没有了,就删除这个库存 |
1023 | inventoryDetailService.removeById(inventoryDetail.getId()); | 1026 | inventoryDetailService.removeById(inventoryDetail.getId()); |
1027 | + inventoryHeaderService.removeById(inventoryHeader.getId()); | ||
1024 | }else { | 1028 | }else { |
1025 | //否则更新这个库存 | 1029 | //否则更新这个库存 |
1026 | inventoryDetailService.updateById(inventoryDetail); | 1030 | inventoryDetailService.updateById(inventoryDetail); |
1031 | + inventoryHeaderService.updateById(inventoryHeader); | ||
1027 | } | 1032 | } |
1028 | //设置子任务状态为已执行 | 1033 | //设置子任务状态为已执行 |
1029 | taskDetail.setStatus(100); | 1034 | taskDetail.setStatus(100); |
@@ -1092,11 +1097,25 @@ public class TaskHeaderServiceImpl extends ServiceImpl<TaskHeaderMapper, TaskHea | @@ -1092,11 +1097,25 @@ public class TaskHeaderServiceImpl extends ServiceImpl<TaskHeaderMapper, TaskHea | ||
1092 | containerService.update(containerLambdaUpdateWrapper); | 1097 | containerService.update(containerLambdaUpdateWrapper); |
1093 | } | 1098 | } |
1094 | } | 1099 | } |
1095 | -// //设置出库货箱状态为拣货任务完成 | ||
1096 | -// shipmentContainerHeaderService.resetStatusShipmentContainer(task.getAllocationHeadId(),(short)20); | ||
1097 | - // 最后更新单据状态 | ||
1098 | - shipmentHeadIds.stream().distinct().forEach(t->shipmentHeaderService.updateShipmentStatus(t)); | ||
1099 | - | 1100 | + //设置出库货箱状态为拣货任务完成 |
1101 | + ReceiptContainerDetail receiptContainerDetail = new ReceiptContainerDetail(); | ||
1102 | + receiptContainerDetail.setStatus(30); | ||
1103 | + receiptContainerDetail.setLastUpdated(new Date()); | ||
1104 | + receiptContainerDetail.setLastUpdatedBy(ShiroUtils.getLoginName()); | ||
1105 | + LambdaUpdateWrapper<ReceiptContainerDetail> receiptContainerDetailLambdaUpdateWrapper = Wrappers.lambdaUpdate(); | ||
1106 | + receiptContainerDetailLambdaUpdateWrapper.eq(ReceiptContainerDetail::getId,task.getAllocationHeadId()); | ||
1107 | + if (! receiptContainerDetailService.update(receiptContainerDetail, receiptContainerDetailLambdaUpdateWrapper)){ | ||
1108 | + throw new ServiceException("更新组盘明细状态失败"); | ||
1109 | + } | ||
1110 | + //设置出库货箱表头状态为拣货任务完成 | ||
1111 | + ReceiptContainerHeader ContainerHeader = new ReceiptContainerHeader(); | ||
1112 | + ContainerHeader.setStatus((short)30); | ||
1113 | + ContainerHeader.setLastUpdated(new Date()); | ||
1114 | + ContainerHeader.setLastUpdatedBy(ShiroUtils.getLoginName()); | ||
1115 | + LambdaUpdateWrapper<ReceiptContainerHeader> receiptContainerHeaderLambdaUpdateWrapper = Wrappers.lambdaUpdate(); | ||
1116 | + receiptContainerHeaderLambdaUpdateWrapper.eq(ReceiptContainerHeader::getId,task.getAllocationHeadId()); | ||
1117 | + if (! receiptContainerHeaderService.update(ContainerHeader, receiptContainerHeaderLambdaUpdateWrapper)) | ||
1118 | + throw new ServiceException("更新组盘头状态失败"); | ||
1100 | } | 1119 | } |
1101 | 1120 | ||
1102 | 1121 |