refactor(normalQM): 优化质检任务确认逻辑

- 注入SapService依赖以支持后续功能扩展
- 简化入库参数空值检查的条件判断逻辑
- 修正物料入库状态检查的条件,使用正确的集合变量
- 移除废弃的代码注释块,提高代码可读性
- 重新组织QCReceiveDTO对象创建逻辑,确保在正确位置初始化
- 删除重复的数据添加操作,避免数据冗余
This commit is contained in:
曹鹏飞 2026-06-24 11:13:09 +08:00
parent 0c4e0f63f1
commit 7d67395036
1 changed files with 21 additions and 12 deletions

View File

@ -75,6 +75,7 @@ public class NormalQMController extends BaseController {
@Resource
private IWmsQrCodeMasterService qrCodeMasterService;
@Resource
private SapService sapService;
/**
@ -137,8 +138,7 @@ public class NormalQMController extends BaseController {
@PostMapping("PDA/task/confirm")
@ApiMark(moduleName = "质检物料管理", apiName = "质检任务上架确认")
public ApiResult<Void> confirm(@Valid @RequestBody List<QCReceiveTaskConfirmQO> request) {
if (CollectionUtil.isEmpty(request))
VUtil.trueThrowBusinessError(CollectionUtil.isEmpty(request)).throwMessage("入库参数为空");
VUtil.trueThrowBusinessError(CollectionUtil.isEmpty(request)).throwMessage("入库参数为空");
//根据详情ID 获取到相应的入库单信息
List<Long> uniqueIds = request.stream()
@ -151,7 +151,7 @@ public class NormalQMController extends BaseController {
.apply("check_qty>in_qty")
.list();
VUtil.trueThrowBusinessError(CollectionUtil.isEmpty(request)).throwMessage("不存在待入库的物料(或此物料已入库)");
VUtil.trueThrowBusinessError(CollectionUtil.isEmpty(wmsQcReceiveItems)).throwMessage("不存在待入库的物料(或此物料已入库)");
List<String> qrCodes = CollectionUtil.unionAll(
request.stream()
@ -232,14 +232,14 @@ public class NormalQMController extends BaseController {
List<QCReceiveDTO> qcReceiveDTOS = new ArrayList<>();
for (String poNum : poNums) {
//封装一个数据
QCReceiveDTO qcReceiveDTO = new QCReceiveDTO()
// .setUnqualifiedInventories(new ArrayList<>())
.setQcIdList(new ArrayList<>())
.setReceiveIds(new ArrayList<>())
.setWaitModifyItems(new ArrayList<>())
.setStorageLocationDTOS(new ArrayList<>())
.setQualifiednventories(new ArrayList<>());
// //封装一个数据
// QCReceiveDTO qcReceiveDTO = new QCReceiveDTO()
//// .setUnqualifiedInventories(new ArrayList<>())
// .setQcIdList(new ArrayList<>())
// .setReceiveIds(new ArrayList<>())
// .setWaitModifyItems(new ArrayList<>())
// .setStorageLocationDTOS(new ArrayList<>())
// .setQualifiednventories(new ArrayList<>());
List<QCReceiveTaskConfirmQO> qcReceiveTaskConfirmQOS = request.stream()
.filter(q -> q.getPoNum().equals(poNum))
.collect(Collectors.toList());
@ -252,6 +252,15 @@ public class NormalQMController extends BaseController {
if (Objects.isNull(wmsQcReceiveItem)) {
continue;
}
//封装一个数据
QCReceiveDTO qcReceiveDTO = new QCReceiveDTO()
// .setUnqualifiedInventories(new ArrayList<>())
.setQcIdList(new ArrayList<>())
.setReceiveIds(new ArrayList<>())
.setWaitModifyItems(new ArrayList<>())
.setStorageLocationDTOS(new ArrayList<>())
.setQualifiednventories(new ArrayList<>());
qcReceiveDTOS.add(qcReceiveDTO);
if (!qcReceiveDTO.getReceiveIds().stream().anyMatch(id -> id.equals(wmsQcReceiveItem.getReceiveId()))) {
qcReceiveDTO.getReceiveIds().add(wmsQcReceiveItem.getReceiveId());
}
@ -366,7 +375,7 @@ public class NormalQMController extends BaseController {
}
}
}
qcReceiveDTOS.add(qcReceiveDTO);
// qcReceiveDTOS.add(qcReceiveDTO);
}
qrCodeMasterService.updateBarCode(qrCodeMasters);
normalQMControllerService.confirmReceive(qcReceiveDTOS);