Merge branch '0.8.X' of https://gitee.com/hdka/klp-oa into 0.8.X

This commit is contained in:
砂糖
2026-01-17 09:40:10 +08:00

View File

@@ -829,6 +829,10 @@ public class WmsMaterialCoilServiceImpl implements IWmsMaterialCoilService {
// 2. 查找或创建stock
findOrCreateStock(bo);
// 处理实际库区:-1 表示空置库,统一转 NULL
if (bo.getActualWarehouseId() != null && bo.getActualWarehouseId() == -1) {
bo.setActualWarehouseId(null);
}
// 3. 插入钢卷数据
WmsMaterialCoil add = BeanUtil.toBean(bo, WmsMaterialCoil.class);
if(bo.getDataType() != null && bo.getDataType() == 10){
@@ -2597,11 +2601,25 @@ public class WmsMaterialCoilServiceImpl implements IWmsMaterialCoilService {
/**
* 检查钢卷号是否重复
* 根据入场钢卷号和当前钢卷号查询数据库,判断哪个钢卷号重复
* 新增逻辑:修改历史记录时不检查重复
*/
@Override
public Map<String, Object> checkCoilNoDuplicate(Long coilId, String enterCoilNo, String currentCoilNo) {
Map<String, Object> result = new HashMap<>();
// 新增核心逻辑:先判断是否操作的是历史记录
// 1. 如果coilId不为空修改操作先查询该钢卷的dataType
if (coilId != null) {
WmsMaterialCoil coil = baseMapper.selectById(coilId);
// 2. 如果查询到钢卷且dataType!=1说明是历史记录直接返回无重复
if (coil != null && coil.getDataType() != 1) {
result.put("duplicateType", "none");
result.put("enterCoilNoDuplicate", false);
result.put("currentCoilNoDuplicate", false);
return result; // 直接返回,不执行后续检查
}
}
boolean enterCoilNoDuplicate = false;
boolean currentCoilNoDuplicate = false;
@@ -2610,7 +2628,7 @@ public class WmsMaterialCoilServiceImpl implements IWmsMaterialCoilService {
LambdaQueryWrapper<WmsMaterialCoil> enterWrapper = Wrappers.lambdaQuery();
enterWrapper.eq(WmsMaterialCoil::getEnterCoilNo, enterCoilNo)
.eq(WmsMaterialCoil::getDelFlag, 0)
.eq(WmsMaterialCoil::getDataType, 1);
.eq(WmsMaterialCoil::getDataType, 1); // 过滤历史数据
// 如果是修改操作,排除自身
if (coilId != null) {
enterWrapper.ne(WmsMaterialCoil::getCoilId, coilId);