Browse Source

Merge remote-tracking branch 'origin/master'

master
常熟吴彦祖 1 week ago
parent
commit
0dec7c98c7
  1. 15
      src/main/java/com/gaotao/modules/inspection/service/impl/QualifiedStorageServiceImpl.java

15
src/main/java/com/gaotao/modules/inspection/service/impl/QualifiedStorageServiceImpl.java

@ -265,6 +265,21 @@ public class QualifiedStorageServiceImpl implements QualifiedStorageService {
return R.error("部分HandlingUnit不存在或站点不匹配");
}
// 扫描时已按接收行物料拦过一次,但已扫列表可能残留上一行的 HU。
// 确认入库会把全部数量记到当前接收行物料并调用 IFS,提交前必须再逐个核对,不匹配则整单拒绝。
if (StringUtils.isBlank(partNo)) {
return R.error("接收记录物料编码不能为空");
}
List<String> mismatchedHuList = handlingUnits.stream()
.filter(hu -> !partNo.equals(hu.getPartNo()))
.map(hu -> hu.getUnitId() + "(" + hu.getPartNo() + ")")
.collect(Collectors.toList());
if (!mismatchedHuList.isEmpty()) {
log.warn("检验合格入库物料不匹配,site={},receiptSequence={},期望物料={},不匹配HU={}",
site, receiptSequence, partNo, mismatchedHuList);
return R.error("HandlingUnit物料编码不匹配,期望: " + partNo + ",不匹配: " + String.join(",", mismatchedHuList));
}
// 计算HandlingUnit总数量
BigDecimal totalScannedQty = handlingUnits.stream()
.map(hu -> hu.getQty() != null ? hu.getQty() : BigDecimal.ZERO)

Loading…
Cancel
Save