fix(wms,oms):入库排名统计查询恒为空修复:OMS执行入库单状态不回传(全停status=1)无法按已入库过滤,改为仅排除已取消(6)/已关闭(7)(与入库明细查询页口径一致);入仓日期为空的历史单筛选与展示均兜底建档时间create_time(与出库明细统计口径一致);WMS仍保持仅已入库(5)

This commit is contained in:
rcx
2026-09-01 09:24:20 +08:00
parent 1300a4e1f8
commit a588264849
4 changed files with 15 additions and 13 deletions
@@ -9,7 +9,7 @@
数据源:入库明细 in_material_detail(a,仅 level=1 主行防重复) join 入仓单 stock_in_order(b)
left join 货品档案 material_base_info(c,取保额作投保总额)
口径:b.status = 5已入库(排除已取消(6)/已关闭(7)及未完成单据);
日期筛选按入仓单入仓日期 b.warehouse_date(与列表"入仓日期"列同源);
日期筛选按入仓单入仓日期 b.warehouse_date(与列表"入仓日期"列同源,为空的历史单按建档时间兜底);
一行 = 某仓单(b.in_order_number)内某货品(a.material_code)的合计,按件数降序排名
-->
<sql id="inboundRankConditions">
@@ -41,10 +41,10 @@
and a.material_name like concat('%', #{materialName}, '%')
</if>
<if test="warehouseDateStart != null and warehouseDateStart != ''">
and date_format(b.warehouse_date,'%Y-%m-%d') &gt;= #{warehouseDateStart}
and date_format(IFNULL(b.warehouse_date, b.create_time),'%Y-%m-%d') &gt;= #{warehouseDateStart}
</if>
<if test="warehouseDateEnd != null and warehouseDateEnd != ''">
and date_format(b.warehouse_date,'%Y-%m-%d') &lt;= #{warehouseDateEnd}
and date_format(IFNULL(b.warehouse_date, b.create_time),'%Y-%m-%d') &lt;= #{warehouseDateEnd}
</if>
</sql>
@@ -58,7 +58,7 @@
<select id="queryMaterialRankList" parameterType="com.mhd.wms.domain.inboundRank.repository.todo.InboundRankDO"
resultType="com.mhd.wms.domain.inboundRank.repository.po.InboundMaterialRankPO">
select
MAX(b.warehouse_date) AS warehouseDate,
IFNULL(MAX(b.warehouse_date), MAX(b.create_time)) AS warehouseDate,
b.in_order_number AS inOrderNumber,
MAX(b.shipper_code) AS shipperCode,
MAX(b.shipper_name) AS shipperName,