refactor(wms): 优化订单查询功能

- 在 WmsOrder 模型中添加 customerId 字段
- 更新 WmsOrderBo 和 WmsOrderVo 以包含 customerId
- 修改订单查询相关方法,支持按客户 ID 查询
-优化订单列表展示,使用 images 字段替代 ossIds
This commit is contained in:
JR
2025-08-12 15:19:34 +08:00
parent fedcdc1e1e
commit 3882cae28b
7 changed files with 64 additions and 15 deletions

View File

@@ -101,7 +101,7 @@
<el-table-column label="收发货详情" align="center" prop="reportDetail" /> <el-table-column label="收发货详情" align="center" prop="reportDetail" />
<el-table-column label="图片概况" align="center" prop="ossIds" width="100"> <el-table-column label="图片概况" align="center" prop="ossIds" width="100">
<template slot-scope="scope"> <template slot-scope="scope">
<image-preview :src="scope.row.ossIds" :width="50" :height="50"/> <image-preview :src="scope.row.images" :width="50" :height="50"/>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="备注" align="center" prop="remark" /> <el-table-column label="备注" align="center" prop="remark" />
@@ -578,7 +578,7 @@ export default {
}, },
/** 查看图片详情 */ /** 查看图片详情 */
handleImageDetail(row) { handleImageDetail(row) {
this.imageList = row.ossIds; this.imageList = row.images;
this.imageDrawer = true; this.imageDrawer = true;
this.getImageList() this.getImageList()
}, },

View File

@@ -28,6 +28,10 @@ public class WmsOrder extends BaseEntity {
* 订单编号 * 订单编号
*/ */
private String orderCode; private String orderCode;
/**
* 客户ID
*/
private Long customerId;
/** /**
* 客户名称 * 客户名称
*/ */

View File

@@ -27,6 +27,11 @@ public class WmsOrderBo extends BaseEntity {
*/ */
private String orderCode; private String orderCode;
/**
* 客户ID
*/
private Long customerId;
/** /**
* 客户名称 * 客户名称
*/ */

View File

@@ -31,6 +31,12 @@ public class WmsOrderVo {
@ExcelProperty(value = "订单编号") @ExcelProperty(value = "订单编号")
private String orderCode; private String orderCode;
/**
* 客户ID
*/
@ExcelProperty(value = "客户ID")
private Long customerId;
/** /**
* 客户名称 * 客户名称
*/ */

View File

@@ -1,8 +1,12 @@
package com.klp.mapper; package com.klp.mapper;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.klp.domain.WmsOrder; import com.klp.domain.WmsOrder;
import com.klp.domain.vo.WmsOrderVo; import com.klp.domain.vo.WmsOrderVo;
import com.klp.common.core.mapper.BaseMapperPlus; import com.klp.common.core.mapper.BaseMapperPlus;
import org.apache.ibatis.annotations.Param;
/** /**
* 订单主Mapper接口 * 订单主Mapper接口
@@ -12,4 +16,5 @@ import com.klp.common.core.mapper.BaseMapperPlus;
*/ */
public interface WmsOrderMapper extends BaseMapperPlus<WmsOrderMapper, WmsOrder, WmsOrderVo> { public interface WmsOrderMapper extends BaseMapperPlus<WmsOrderMapper, WmsOrder, WmsOrderVo> {
Page<WmsOrderVo> selectVoPlusPage(Page<?> page, @Param("ew") Wrapper<WmsOrder> wrapper);
} }

View File

@@ -1,6 +1,7 @@
package com.klp.service.impl; package com.klp.service.impl;
import cn.hutool.core.bean.BeanUtil; 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.page.TableDataInfo;
import com.klp.common.core.domain.PageQuery; import com.klp.common.core.domain.PageQuery;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
@@ -44,8 +45,8 @@ public class WmsOrderServiceImpl implements IWmsOrderService {
*/ */
@Override @Override
public TableDataInfo<WmsOrderVo> queryPageList(WmsOrderBo bo, PageQuery pageQuery) { public TableDataInfo<WmsOrderVo> queryPageList(WmsOrderBo bo, PageQuery pageQuery) {
LambdaQueryWrapper<WmsOrder> lqw = buildQueryWrapper(bo); QueryWrapper<WmsOrder> lqw = buildQueryWrapperPlus(bo);
Page<WmsOrderVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw); Page<WmsOrderVo> result = baseMapper.selectVoPlusPage(pageQuery.build(), lqw);
return TableDataInfo.build(result); return TableDataInfo.build(result);
} }
/** /**
@@ -53,30 +54,40 @@ public class WmsOrderServiceImpl implements IWmsOrderService {
*/ */
@Override @Override
public TableDataInfo<WmsOrderVo> queryPageListByStatus(WmsOrderBo bo, PageQuery pageQuery) { public TableDataInfo<WmsOrderVo> queryPageListByStatus(WmsOrderBo bo, PageQuery pageQuery) {
LambdaQueryWrapper<WmsOrder> lqw = buildQueryWrapperByStatus(bo); QueryWrapper<WmsOrder> lqw = buildQueryWrapperByStatus(bo);
Page<WmsOrderVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw); Page<WmsOrderVo> result = baseMapper.selectVoPlusPage(pageQuery.build(), lqw);
return TableDataInfo.build(result); return TableDataInfo.build(result);
} }
private LambdaQueryWrapper<WmsOrder> buildQueryWrapperByStatus(WmsOrderBo bo) { private QueryWrapper<WmsOrder> buildQueryWrapperByStatus(WmsOrderBo bo) {
Map<String, Object> params = bo.getParams(); QueryWrapper<WmsOrder> lqw = Wrappers.query();
LambdaQueryWrapper<WmsOrder> lqw = Wrappers.lambdaQuery();
lqw.eq(StringUtils.isNotBlank(bo.getOrderCode()), WmsOrder::getOrderCode, bo.getOrderCode());
lqw.like(StringUtils.isNotBlank(bo.getCustomerName()), WmsOrder::getCustomerName, bo.getCustomerName());
lqw.eq(StringUtils.isNotBlank(bo.getSalesManager()), WmsOrder::getSalesManager, bo.getSalesManager());
// 修改为order_status不是零就查出来 // 修改为order_status不是零就查出来
if (bo.getOrderStatus() != null) { if (bo.getOrderStatus() != null) {
if (bo.getOrderStatus() == -1) { if (bo.getOrderStatus() == -1) {
// 当orderStatus为-1时查询所有非0状态的记录 // 当orderStatus为-1时查询所有非0状态的记录
lqw.ne(WmsOrder::getOrderStatus, 0); lqw.ne("o.order_status", 0);
} else { } else {
// 当orderStatus为其他值时包括0按指定状态查询 // 当orderStatus为其他值时包括0按指定状态查询
lqw.eq(WmsOrder::getOrderStatus, bo.getOrderStatus()); lqw.eq("o.order_status", bo.getOrderStatus());
} }
} }
lqw.eq("o.del_flag", 0);
lqw.eq(StringUtils.isNotBlank(bo.getOrderCode()), "o.order_code", bo.getOrderCode());
lqw.eq(bo.getCustomerId() != null, "o.customer_id", bo.getCustomerId());
lqw.eq(StringUtils.isNotBlank(bo.getSalesManager()), "o.sales_manager", bo.getSalesManager());
// 当orderStatus为null时不添加任何条件查询所有记录 // 当orderStatus为null时不添加任何条件查询所有记录
return lqw; return lqw;
} }
private QueryWrapper<WmsOrder> buildQueryWrapperPlus(WmsOrderBo bo) {
QueryWrapper<WmsOrder> lqw = Wrappers.query();
lqw.eq("o.del_flag", 0);
lqw.eq(StringUtils.isNotBlank(bo.getOrderCode()), "o.order_code", bo.getOrderCode());
lqw.eq(bo.getCustomerId() != null, "o.customer_id", bo.getCustomerId());
lqw.eq(StringUtils.isNotBlank(bo.getSalesManager()), "o.sales_manager", bo.getSalesManager());
lqw.eq(bo.getOrderStatus() != null, "o.order_status", bo.getOrderStatus());
return lqw;
}
/** /**
* 查询订单主列表 * 查询订单主列表
*/ */
@@ -90,7 +101,7 @@ public class WmsOrderServiceImpl implements IWmsOrderService {
Map<String, Object> params = bo.getParams(); Map<String, Object> params = bo.getParams();
LambdaQueryWrapper<WmsOrder> lqw = Wrappers.lambdaQuery(); LambdaQueryWrapper<WmsOrder> lqw = Wrappers.lambdaQuery();
lqw.eq(StringUtils.isNotBlank(bo.getOrderCode()), WmsOrder::getOrderCode, bo.getOrderCode()); lqw.eq(StringUtils.isNotBlank(bo.getOrderCode()), WmsOrder::getOrderCode, bo.getOrderCode());
lqw.like(StringUtils.isNotBlank(bo.getCustomerName()), WmsOrder::getCustomerName, bo.getCustomerName()); lqw.eq(bo.getCustomerId() != null, WmsOrder::getCustomerId, bo.getCustomerId());
lqw.eq(StringUtils.isNotBlank(bo.getSalesManager()), WmsOrder::getSalesManager, bo.getSalesManager()); lqw.eq(StringUtils.isNotBlank(bo.getSalesManager()), WmsOrder::getSalesManager, bo.getSalesManager());
lqw.eq(bo.getOrderStatus() != null, WmsOrder::getOrderStatus, bo.getOrderStatus()); lqw.eq(bo.getOrderStatus() != null, WmsOrder::getOrderStatus, bo.getOrderStatus());
return lqw; return lqw;

View File

@@ -18,5 +18,23 @@
<result property="updateBy" column="update_by"/> <result property="updateBy" column="update_by"/>
</resultMap> </resultMap>
<select id="selectVoPlusPage" resultType="com.klp.domain.vo.WmsOrderVo">
select o.order_id,
o.order_code,
o.customer_id,
o.sales_manager,
o.order_status,
o.remark,
o.del_flag,
o.create_time,
o.create_by,
o.update_time,
o.update_by,
c.customer_name
from wms_order o
left join wms_customer c on o.customer_id = c.customer_id
${ew.customSqlSegment}
</select>
</mapper> </mapper>