盘点功能完善

This commit is contained in:
lsymicc
2026-09-15 23:10:35 +08:00
parent 39632ef960
commit 42104d892b
25 changed files with 728 additions and 85 deletions

View File

@@ -382,16 +382,8 @@ public class MydoJobHandler {
if (mydoJobs.isEmpty()) return;
for (MydoJob mydoJob : mydoJobs) {
//任务子表
if (mydoJob.getInOrOut() != TaskType.TASKTYPE_STOCKOUT_INVENTORY || mydoJob.getInOrOut() != TaskType.TASKTYPE_INVENTORY_BACK) continue;
if (mydoJob.getInOrOut() != TaskType.TASKTYPE_STOCKOUT_INVENTORY && mydoJob.getInOrOut() != TaskType.TASKTYPE_INVENTORY_BACK) continue;
List<MydoJobDetail> details = mydoJobDetailService.selectMydoJobDetailByJobId(mydoJob.getJobId());
if (!details.isEmpty()){
//移除任务子表
mydoJobDetailService.insertMydoJobDetailsForJobFinish(mydoJob.getJobId());
mydoJobDetailService.deleteMydoJobDetailsByJobId(mydoJob.getJobId());
log.info("【手动作废任务】移除<盘点出库>任务明细,作业号:{}", mydoJob.getJobId());
}
//库存子表
List<BasStock> stocks = basStockService.selectBasStockListByTrayCode(mydoJob.getTrayCode());
if (!stocks.isEmpty()){
@@ -409,19 +401,32 @@ public class MydoJobHandler {
stockInfo.setCargoSpaceId(mydoJob.getCargoSpaceId());
basStockInfoService.updateBasStockInfo(stockInfo);
}
// for (MydoJobDetail mydoJobDetail : details){
// //还原子单数量
// PdStockpdDetail pdStockpdDetail = pdStockpdDetailService.selectPdStockpdDetailList(mydoJobDetail.getRollerNumber());
// if(ObjUtil.isNotNull(pdStockpdDetail)){
// pdStockpdDetail.setAllotNum(BigDecimal.ZERO);
// pdStockpdDetail.setAssignNum(BigDecimal.ZERO);
// pdStockpdDetail.setStatus(0);
// pdStockpdDetailService.updatePdStockpdDetail(pdStockpdDetail);
// }
// }
//还原盘点子单分配数量
List<PdStockpdDetail> pdStockpdDetails = pdStockpdDetailService.selectPdStockpdDetailList(
new PdStockpdDetail().builder().trayCode(mydoJob.getTrayCode()).build()
);
if(!pdStockpdDetails.isEmpty()){
for (PdStockpdDetail pdStockpdDetail : pdStockpdDetails){
pdStockpdDetail.setAllotNum(BigDecimal.ZERO);
pdStockpdDetail.setAssignNum(BigDecimal.ZERO);
pdStockpdDetail.setStatus(0);
pdStockpdDetailService.updatePdStockpdDetail(pdStockpdDetail);
}
}
//任务子表
List<MydoJobDetail> details = mydoJobDetailService.selectMydoJobDetailByJobId(mydoJob.getJobId());
if (!details.isEmpty()){
//移除任务子表
mydoJobDetailService.insertMydoJobDetailsForJobFinish(mydoJob.getJobId());
mydoJobDetailService.deleteMydoJobDetailsByJobId(mydoJob.getJobId());
log.info("【手动作废任务】移除<盘点出库>任务明细,作业号:{}", mydoJob.getJobId());
}
mydoJobService.insertMydoJobFinish(mydoJob.getJobId());
mydoJobService.deleteMydoJobByJobId(mydoJob.getJobId());
log.info("【账务处理-出库】任务作废,更新货位和库存信息,作业号:{}", mydoJob.getJobId());
log.info("【账务处理-盘点出库】任务作废,更新货位和库存信息,作业号:{}", mydoJob.getJobId());
}
@@ -826,18 +831,9 @@ public class MydoJobHandler {
if (mydoJobs.isEmpty()) return;
for (MydoJob mydoJob : mydoJobs) {
//任务子表
if (mydoJob.getInOrOut() != TaskType.TASKTYPE_STOCKOUT_INVENTORY || mydoJob.getInOrOut() != TaskType.TASKTYPE_INVENTORY_BACK) continue;
if (mydoJob.getInOrOut() != TaskType.TASKTYPE_STOCKOUT_INVENTORY && mydoJob.getInOrOut() != TaskType.TASKTYPE_INVENTORY_BACK) continue;
List<MydoJobDetail> details = mydoJobDetailService.selectMydoJobDetailByJobId(mydoJob.getJobId());
if (!details.isEmpty()){
//移除任务子表
mydoJobDetailService.insertMydoJobDetailsForJobFinish(mydoJob.getJobId());
mydoJobDetailService.deleteMydoJobDetailsByJobId(mydoJob.getJobId());
log.info("【手动完成任务】移除<盘点>任务明细,作业号:{}", mydoJob.getJobId());
}
//库存子表
List<BasStock> stocks = basStockService.selectBasStockListByTrayCode(mydoJob.getTrayCode());
if (!stocks.isEmpty()){
@@ -848,9 +844,30 @@ public class MydoJobHandler {
}
}
//还原盘点子单分配数量
List<PdStockpdDetail> pdStockpdDetails = pdStockpdDetailService.selectPdStockpdDetailList(
new PdStockpdDetail().builder().trayCode(mydoJob.getTrayCode()).build()
);
if(!pdStockpdDetails.isEmpty()){
for (PdStockpdDetail pdStockpdDetail : pdStockpdDetails){
pdStockpdDetail.setAssignNum(BigDecimal.ONE);
pdStockpdDetail.setStatus(1);
pdStockpdDetailService.updatePdStockpdDetail(pdStockpdDetail);
}
}
basCargoSpaceService.updateBasCargoSpaceStatus(mydoJob.getCargoSpaceId(), mydoJob.getTrayCode(), CargoSpaceCode.CARGOSPACE_STATUS_OCCUPIED);
log.info("【账务处理-盘点】任务完成,更新货位和库存信息,作业号:{},托盘号:{}", mydoJob.getJobId(), mydoJob.getTrayCode());
//任务子表
List<MydoJobDetail> details = mydoJobDetailService.selectMydoJobDetailByJobId(mydoJob.getJobId());
if (!details.isEmpty()){
//移除任务子表
mydoJobDetailService.insertMydoJobDetailsForJobFinish(mydoJob.getJobId());
mydoJobDetailService.deleteMydoJobDetailsByJobId(mydoJob.getJobId());
log.info("【手动完成任务】移除<盘点>任务明细,作业号:{}", mydoJob.getJobId());
}
mydoJobService.insertMydoJobFinish(mydoJob.getJobId());
mydoJobService.deleteMydoJobByJobId(mydoJob.getJobId());
log.info( "【账务处理-盘点】任务完成,移除作业信息,作业号:{},托盘号:{}", mydoJob.getJobId(), mydoJob.getTrayCode());