feat(wms): 新增钢卷表面处理字段及相关功能

在钢卷相关实体类、前端页面和查询逻辑中新增钢卷表面处理字段,包括:
1. 在WmsMaterialCoil、WmsMaterialCoilVo、WmsMaterialCoilBo中新增coilSurfaceTreatment字段
2. 在前端多个页面中新增钢卷表面处理的展示和编辑功能
3. 在查询逻辑中新增对钢卷表面处理的过滤条件
4. 新增仓库操作记录页面及相关统计图表功能
This commit is contained in:
砂糖
2026-04-01 14:50:56 +08:00
parent f959f97099
commit 579bf3796f
19 changed files with 677 additions and 47 deletions

View File

@@ -55,7 +55,47 @@ public class WmsCoilWarehouseOperationLogServiceImpl implements IWmsCoilWarehous
public TableDataInfo<WmsCoilWarehouseOperationLogVo> queryPageList(WmsCoilWarehouseOperationLogBo bo, PageQuery pageQuery) {
LambdaQueryWrapper<WmsCoilWarehouseOperationLog> lqw = buildQueryWrapper(bo);
Page<WmsCoilWarehouseOperationLogVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
return TableDataInfo.build(result);
List<WmsCoilWarehouseOperationLogVo> records = result.getRecords();
Set<Long> coilIds = records.stream()
.map(WmsCoilWarehouseOperationLogVo::getCoilId)
.filter(Objects::nonNull)
.collect(Collectors.toSet());
Set<Long> warehouseIds = records.stream()
.map(WmsCoilWarehouseOperationLogVo::getActualWarehouseId)
.filter(Objects::nonNull)
.collect(Collectors.toSet());
Map<Long, WmsMaterialCoilVo> coilMap = new HashMap<>();
if (!coilIds.isEmpty()) {
WmsMaterialCoilBo coilBo = new WmsMaterialCoilBo();
coilBo.setCoilIds(coilIds.stream().map(String::valueOf).collect(Collectors.joining(",")));
List<WmsMaterialCoilVo> coils = wmsMaterialCoilService.queryList(coilBo);
for (WmsMaterialCoilVo coil : coils) {
coilMap.put(coil.getCoilId(), coil);
}
}
Map<Long, WmsActualWarehouseVo> warehouseMap = new HashMap<>();
if (!warehouseIds.isEmpty()) {
LambdaQueryWrapper<WmsActualWarehouse> warehouseQuery = Wrappers.lambdaQuery();
warehouseQuery.in(WmsActualWarehouse::getActualWarehouseId, warehouseIds);
List<WmsActualWarehouse> warehouses = wmsActualWarehouseMapper.selectList(warehouseQuery);
for (WmsActualWarehouse warehouse : warehouses) {
WmsActualWarehouseVo vo = BeanUtil.toBean(warehouse, WmsActualWarehouseVo.class);
warehouseMap.put(warehouse.getActualWarehouseId(), vo);
}
}
for (WmsCoilWarehouseOperationLogVo vo : records) {
vo.setCoil(coilMap.get(vo.getCoilId()));
vo.setWarehouse(warehouseMap.get(vo.getActualWarehouseId()));
}
TableDataInfo<WmsCoilWarehouseOperationLogVo> tabledata = TableDataInfo.build(result);
return tabledata;
}
/**
@@ -74,6 +114,9 @@ public class WmsCoilWarehouseOperationLogServiceImpl implements IWmsCoilWarehous
lqw.eq(bo.getActualWarehouseId() != null, WmsCoilWarehouseOperationLog::getActualWarehouseId, bo.getActualWarehouseId());
lqw.eq(bo.getOperationType() != null, WmsCoilWarehouseOperationLog::getOperationType, bo.getOperationType());
lqw.eq(bo.getInOutType() != null, WmsCoilWarehouseOperationLog::getInOutType, bo.getInOutType());
lqw.eq(bo.getCreateBy() != null, WmsCoilWarehouseOperationLog::getCreateBy, bo.getCreateBy());
lqw.ge(bo.getCreateStartTime() != null, WmsCoilWarehouseOperationLog::getCreateTime, bo.getCreateStartTime());
lqw.le(bo.getCreateEndTime() != null, WmsCoilWarehouseOperationLog::getCreateTime, bo.getCreateEndTime());
return lqw;
}

View File

@@ -520,6 +520,8 @@ public class WmsMaterialCoilServiceImpl implements IWmsMaterialCoilService {
qw.eq(bo.getProductionDuration() != null, "mc.production_duration", bo.getProductionDuration());
// 预留宽度
qw.eq(bo.getReservedWidth() != null, "mc.reserved_width", bo.getReservedWidth());
// 钢卷表面处理
qw.eq(bo.getCoilSurfaceTreatment() != null, "mc.coil_surface_treatment", bo.getCoilSurfaceTreatment());
// 如果actualWarehouseId不为空则根据实际库区ID进行查询 如果为-1,则查询无库区的数据
if (bo.getActualWarehouseId() != null) {
if (bo.getActualWarehouseId() == -1) {