fix(wms,oms):出库排名件数改为复核确认的实际出库量(CHECK_QUANTITY),排序同步调整

- 件数取数由明细 PIECE_COUNT(计划/申报件数)改为 SUM(CHECK_QUANTITY) 复核确认的实际出库量,与入库排名的实际上架量 SHELVES_QUANTITY 取数逻辑对称(已验证现有已出库数据 222/222 全覆盖)

- 排序第一键由出库数量(outbound_quantity,下发时的计划复制值)改为件数(实际出库量)降序,出仓日期/单号次之

- 接口路径/传参/返回字段结构均不变,前端无感;其余为注释同步
This commit is contained in:
rcx
2026-09-02 15:41:51 +08:00
parent 3af78d5d7b
commit 028af3dd2f
6 changed files with 16 additions and 14 deletions
@@ -12,7 +12,8 @@
故跨库取数(与 OMS 库存查询跨库 join NGWL_TEST_WMS.material_base_info 同一模式),
口径与 WMS 端 /outboundRankApi 完全一致,两边数字一致;
条件:b.status in (9已出库,12已复核,13已交接),排除已取消(10)/已关闭(11);
日期按出库单创建时间 b.create_time;一行 = 某仓单内某货品的合计,按出库数量(销售量)降序,件数/出仓日期/单号次之
日期按出库单创建时间 b.create_time;一行 = 某仓单内某货品的合计
件数 = SUM(a.CHECK_QUANTITY) 复核确认的实际出库量(与入库排名的实际上架量 SHELVES_QUANTITY 对称),按件数降序排名
-->
<sql id="outboundRankConditions">
a.del_flag = 1
@@ -61,7 +62,7 @@
join NGWL_TEST_WMS.stock_out_order b on a.out_order_number = b.out_order_number and b.del_flag = 1
</sql>
<!-- 出库明细列表(仓单+货品汇总,按出库数量(销售量)降序;退保总额暂无后端字段不提供) -->
<!-- 出库明细列表(仓单+货品汇总,按件数(实际复核出库量)降序;退保总额暂无后端字段不提供) -->
<select id="queryDetailList" parameterType="com.mhd.oms.domain.outboundRank.repository.todo.ExecutionOutboundRankDO"
resultType="com.mhd.oms.domain.outboundRank.repository.po.ExecutionOutboundDetailRankPO">
select
@@ -74,7 +75,7 @@
MAX(a.material_name) AS materialName,
MAX(b.line_code) AS lineCode,
MAX(b.line_name) AS lineName,
IFNULL(SUM(a.PIECE_COUNT), 0) AS pieceCount,
IFNULL(SUM(a.CHECK_QUANTITY), 0) AS pieceCount,
ROUND(IFNULL(SUM(a.TOTAL_GROSS_WEIGHT), 0) / 1000, 3) AS grossWeightTon,
IFNULL(SUM(a.TOTAL_VOLUME), 0) AS totalVolume,
MAX(IFNULL(b.OUTBOUND_DATE, IFNULL(b.COMPLETE_TIME, b.create_time))) AS outboundDate
@@ -83,7 +84,7 @@
<include refid="outboundRankConditions"/>
</where>
GROUP BY b.out_order_number, a.material_code
order by IFNULL(SUM(a.outbound_quantity), 0) desc, pieceCount desc, outboundDate desc, outOrderNumber desc
order by pieceCount desc, outboundDate desc, outOrderNumber desc
</select>
<!-- 出库明细合计(当前筛选条件全量;外层对分组结果再汇总,与入库排名同模板) -->
@@ -97,7 +98,7 @@
from (
select
b.out_order_number AS outOrderNumber,
IFNULL(SUM(a.PIECE_COUNT), 0) AS pieceCount,
IFNULL(SUM(a.CHECK_QUANTITY), 0) AS pieceCount,
IFNULL(SUM(a.TOTAL_GROSS_WEIGHT), 0) AS grossWeightKG,
IFNULL(SUM(a.TOTAL_VOLUME), 0) AS totalVolume
<include refid="outboundRankFrom"/>