Merge remote-tracking branch '惠信/develop' into develop

# Conflicts:
#	nflg-wms-admin/src/main/java/com/nflg/wms/admin/controller/LocationTransferController.java
This commit is contained in:
曹鹏飞 2026-03-20 11:55:40 +08:00
commit 5738a4309e
2 changed files with 43 additions and 11 deletions

View File

@ -138,14 +138,30 @@ public class ScanRecordController extends BaseController {
v.stream() v.stream()
.collect(Collectors.groupingBy(OutMaterialScanRecord::getKey9)) .collect(Collectors.groupingBy(OutMaterialScanRecord::getKey9))
.forEach((key, vv) -> { .forEach((key, vv) -> {
List<String> keyParts = StrUtil.split(key, "|");
String scanBatchNo = "";
if (keyParts.size() > 1) {
scanBatchNo = "null".equals(keyParts.get(1)) ? "" : keyParts.get(1);
}
String scanSerialNo = "";
if (keyParts.size() > 2) {
scanSerialNo = "null".equals(keyParts.get(2)) ? "" : keyParts.get(2);
}
String scanBinNo = "";
if (keyParts.size() > 3) {
scanBinNo = keyParts.get(3);
}
vo.getItems().add(new OutDifferenceItemVO() vo.getItems().add(new OutDifferenceItemVO()
.setRecommendbatchNo("") .setRecommendbatchNo("")
.setRecommendSerialNo("") .setRecommendSerialNo("")
.setRecommendBinNo("") .setRecommendBinNo("")
// .setRecommendNum(BigDecimal.ZERO) // .setRecommendNum(BigDecimal.ZERO)
.setScanBatchNo(StrUtil.split(key, "|").get(1)) // .setScanBatchNo(StrUtil.split(key, "|").get(1))
.setScanSerialNo(StrUtil.split(key, "|").get(2)) // .setScanSerialNo(StrUtil.split(key, "|").get(2))
.setScanBinNo(StrUtil.split(key, "|").get(3)) // .setScanBinNo(StrUtil.split(key, "|").get(3))
.setScanBatchNo(scanBatchNo)
.setScanSerialNo(scanSerialNo)
.setScanBinNo(scanBinNo)
.setScanNum(vv.stream().map(OutMaterialScanRecord::getNum).reduce(BigDecimal.ZERO, BigDecimal::add))); .setScanNum(vv.stream().map(OutMaterialScanRecord::getNum).reduce(BigDecimal.ZERO, BigDecimal::add)));
}); });
}); });

View File

@ -252,14 +252,30 @@ public class TransferFactoryController extends BaseController {
.setCreateBy(UserUtil.getUserName()) .setCreateBy(UserUtil.getUserName())
.setCreateTime(LocalDateTime.now()); .setCreateTime(LocalDateTime.now());
List<WmsTransferFactoryTicketItem> ticketItems = new ArrayList<>(); List<WmsTransferFactoryTicketItem> ticketItems = new ArrayList<>();
List<WmsQrCodeMaster> qrCodeMasters = qrCodeMasterService.lambdaQuery() // List<WmsQrCodeMaster> qrCodeMasters = qrCodeMasterService.lambdaQuery()
.eq(WmsQrCodeMaster::getProcessStage, BarCodeProcessStage.InBound.getState()) // .eq(WmsQrCodeMaster::getProcessStage, BarCodeProcessStage.InBound.getState())
.in(WmsQrCodeMaster::getBarcodeCode, request.getItems().stream() // .in(WmsQrCodeMaster::getBarcodeCode, request.getItems().stream()
// .map(OutProduceSubmitItemQO::getQrCodes)
// .flatMap(Collection::stream)
// .toList()
// )
// .list();
List<String> barcodeCodes = request.getItems().stream()
.map(OutProduceSubmitItemQO::getQrCodes) .map(OutProduceSubmitItemQO::getQrCodes)
.filter(Objects::nonNull)
.flatMap(Collection::stream) .flatMap(Collection::stream)
.toList() .map(qrCodeQO -> qrCodeQO.getContent())
) .filter(StrUtil::isNotBlank)
.toList();
final List<WmsQrCodeMaster> qrCodeMasters = new ArrayList<>();
if (CollectionUtil.isNotEmpty(barcodeCodes)) {
List<WmsQrCodeMaster> tempList = qrCodeMasterService.lambdaQuery()
.eq(WmsQrCodeMaster::getProcessStage, BarCodeProcessStage.InBound.getState())
.in(WmsQrCodeMaster::getBarcodeCode, barcodeCodes)
.list(); .list();
qrCodeMasters.addAll(tempList);
}
request.getItems().forEach(qitem -> { request.getItems().forEach(qitem -> {
WmsTransferFactoryItem item = datas.stream().filter(d -> Objects.equals(d.getId(), qitem.getItemId())).findFirst().orElse(null); WmsTransferFactoryItem item = datas.stream().filter(d -> Objects.equals(d.getId(), qitem.getItemId())).findFirst().orElse(null);
VUtil.trueThrowBusinessError(Objects.isNull(item)).throwMessage("物料" + qitem.getMaterialNo() + "不需要出库"); VUtil.trueThrowBusinessError(Objects.isNull(item)).throwMessage("物料" + qitem.getMaterialNo() + "不需要出库");