入库绑定校验优化

This commit is contained in:
FT577-Server
2026-10-15 08:58:11 +08:00
parent 6b9d9300fd
commit adf9a49b9f

View File

@@ -233,15 +233,32 @@ public class PdaServiceImpl implements IPdaService {
//======================生成绑定信息======================
String trayCode = bindTrayMsg.getTrayCode();
//检查条码长度
if (trayCode.length() != 8){
log.warn("【入库绑定失败】条码长度错误,无法执行绑定操作,请检查当前托盘的条码格式,当前条码:{}", trayCode);
return AjaxResult.error("【入库绑定失败】条码长度错误,无法执行绑定操作,请检查当前托盘的条码格式,当前条码:" + trayCode);
}
//检查入库绑定时该托盘是否有未完成的任务
MydoJob mydoJobExist = mydoJobService.selectMydoJobByTrayCode(trayCode);
if (ObjUtil.isNotNull(mydoJobExist)){
log.warn("【入库绑定失败】当前条码有未结束的任务,无法执行绑定操作,请检查该托盘的任务状态,条码:{}", trayCode);
return AjaxResult.error("【入库绑定失败】当前条码有未结束的任务,无法执行绑定操作,请检查该托盘的任务状态,当前条码:" + trayCode);
}
//获取绑定状态,【新建绑定】或【原有库存】
int trayMsgStatus =
ObjUtil.isNull(basStockInfoService.selectBasStockInfoByTrayCode(trayCode)) ? InTrayMsgCode.STATUS_NEW :InTrayMsgCode.STATUS_EXIST;
//校验托盘类型
int trayType = mydoJobService.getTrayTypeByTrayCode(trayCode);
if (trayType == 0){
log.warn("【入库绑定失败】托盘类型异常,无法执行绑定操作,请检查当前托盘的条码格式,当前条码:{}", trayCode);
return AjaxResult.error("【入库绑定失败】托盘类型异常,无法执行绑定操作,请检查当前托盘的条码格式,当前条码:" + trayCode);
}
//检查是否进行了绑定操作
if (bindTrayMsg.getItems().size() == 0){
log.warn("【入库绑定失败】无版辊信息,请扫描版辊信息绑定重试,执行绑定的托盘:{}", trayCode);
return AjaxResult.error("【入库绑定失败】无版辊信息,请扫描版辊信息绑定重试,执行绑定的托盘:" + trayCode);
@@ -333,6 +350,15 @@ public class PdaServiceImpl implements IPdaService {
.build()
);
//整托确认出库后生成的空托回流,可能继续帮顶版辊入库
// 生成版辊绑定信息后自动移除该条码的【空托】绑定信息
List<InTrayMsg> msgs = inTrayMsgService.selectInTrayMsgList(
new InTrayMsg().builder().trayCode(bindTrayMsg.getTrayCode()).productId(ProductType.EMPTY_TRAY).build()
);
if (!msgs.isEmpty()){
inTrayMsgService.deleteInTrayMsgByRollerNumber(ProductType.EMPTY_TRAY);
}
//>>>扣减子单的【扫码数量】
detail.setScanNum(BigDecimal.valueOf(1));
inStockinDetailService.updateInStockinDetail(detail);