feat(wms): 新增钢卷分页查询功能
- 在WmsMaterialCoilMapper中添加selectVoPagePlus方法及对应XML配置 - 实现基于QueryWrapper的分页查询逻辑- 补充关联字段warehouseName以支持统计展示-优化查询条件构造器,增强筛选能力 - 调整VO类结构,确保数据传输完整性- 修复原查询逻辑中的潜在空指针问题
This commit is contained in:
@@ -1,6 +1,7 @@
|
||||
package com.klp.service.impl;
|
||||
|
||||
import cn.hutool.core.bean.BeanUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.klp.common.core.page.TableDataInfo;
|
||||
import com.klp.common.core.domain.PageQuery;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
@@ -136,7 +137,7 @@ public class WmsMaterialCoilServiceImpl implements IWmsMaterialCoilService {
|
||||
if ("product".equals(vo.getItemType()) && vo.getItemId() != null) {
|
||||
// 产品和原材料的查询逻辑相同,都通过itemId查询
|
||||
WmsRawMaterialVo rawMaterial = rawMaterialService.queryById(vo.getItemId());
|
||||
|
||||
|
||||
// 查询原材料对应的BOM信息(通过bomId查询BomItem列表)
|
||||
if (rawMaterial != null && rawMaterial.getBomId() != null) {
|
||||
WmsBomItemBo bomItemBo = new WmsBomItemBo();
|
||||
@@ -152,11 +153,27 @@ public class WmsMaterialCoilServiceImpl implements IWmsMaterialCoilService {
|
||||
*/
|
||||
@Override
|
||||
public TableDataInfo<WmsMaterialCoilVo> queryPageList(WmsMaterialCoilBo bo, PageQuery pageQuery) {
|
||||
LambdaQueryWrapper<WmsMaterialCoil> lqw = buildQueryWrapper(bo);
|
||||
Page<WmsMaterialCoilVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
|
||||
QueryWrapper<WmsMaterialCoil> qw = buildQueryWrapperPlus(bo);
|
||||
Page<WmsMaterialCoilVo> result = baseMapper.selectVoPagePlus(pageQuery.build(), qw);
|
||||
return TableDataInfo.build(result);
|
||||
}
|
||||
|
||||
private QueryWrapper<WmsMaterialCoil> buildQueryWrapperPlus(WmsMaterialCoilBo bo) {
|
||||
QueryWrapper<WmsMaterialCoil> qw = Wrappers.query();
|
||||
qw.like(StringUtils.isNotBlank(bo.getEnterCoilNo()), "mc.enter_coil_no", bo.getEnterCoilNo());
|
||||
qw.like(StringUtils.isNotBlank(bo.getCurrentCoilNo()), "mc.current_coil_no", bo.getCurrentCoilNo());
|
||||
qw.like(StringUtils.isNotBlank(bo.getSupplierCoilNo()), "mc.supplier_coil_no", bo.getSupplierCoilNo());
|
||||
qw.eq(bo.getDataType() != null, "mc.data_type", bo.getDataType());
|
||||
qw.eq(bo.getWarehouseId() != null, "mc.warehouse_id", bo.getWarehouseId());
|
||||
qw.eq(bo.getHasMergeSplit() != null, "mc.has_merge_split", bo.getHasMergeSplit());
|
||||
qw.eq(bo.getStatus() != null, "mc.status", bo.getStatus());
|
||||
qw.eq(StringUtils.isNotBlank(bo.getItemType()), "mc.item_type", bo.getItemType());
|
||||
//逻辑删除
|
||||
qw.eq("mc.del_flag", 0);
|
||||
return qw;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 查询钢卷物料表列表
|
||||
*/
|
||||
|
||||
Reference in New Issue
Block a user