fix(wms): 修复coil状态更新逻辑并处理saleId空值
- 调整状态判断条件,确保status非空再比较 - 新增对saleId为null时的特殊更新处理 - 使用LambdaUpdateWrapper确保null值正确更新到数据库
This commit is contained in:
@@ -910,7 +910,14 @@ public class WmsMaterialCoilServiceImpl implements IWmsMaterialCoilService {
|
||||
|
||||
// 使用MyBatis-Plus的updateById方法直接更新
|
||||
boolean flag = baseMapper.updateById(updateCoil) > 0;
|
||||
if (bo.getStatus().equals(1)) {
|
||||
// 特殊处理saleId字段,确保null值也能被正确更新
|
||||
if (bo.getSaleId() == null) {
|
||||
LambdaUpdateWrapper<WmsMaterialCoil> updateWrapper = new LambdaUpdateWrapper<>();
|
||||
updateWrapper.eq(WmsMaterialCoil::getCoilId, bo.getCoilId());
|
||||
updateWrapper.set(WmsMaterialCoil::getSaleId, (Long)null);
|
||||
baseMapper.update(null, updateWrapper);
|
||||
}
|
||||
if (bo.getStatus() != null && bo.getStatus().equals(1)) {
|
||||
WmsActualWarehouseBo disableWarehouseBo = new WmsActualWarehouseBo();
|
||||
disableWarehouseBo.setActualWarehouseId(oldCoil.getActualWarehouseId());
|
||||
disableWarehouseBo.setIsEnabled(1); // 设置为启用状态
|
||||
|
||||
Reference in New Issue
Block a user