From c9c3062789923ca95a48003c723e30e6888ebd57 Mon Sep 17 00:00:00 2001
From: rcx <3084692334@qq.com>
Date: Thu, 3 Sep 2026 15:57:44 +0800
Subject: [PATCH] =?UTF-8?q?feat(wms,oms)=EF=BC=9A=E5=85=A5=E5=BA=93?=
=?UTF-8?q?=E6=8E=92=E5=90=8D=E7=BB=9F=E8=AE=A1=E6=94=B9=E4=B8=BA=E6=8C=89?=
=?UTF-8?q?=E7=89=A9=E6=96=99=E7=BC=96=E7=A0=81=E5=90=88=E5=B9=B6(?=
=?UTF-8?q?=E4=B8=80=E8=A1=8C=3D=E4=B8=80=E4=B8=AA=E7=89=A9=E6=96=99?=
=?UTF-8?q?=E5=9C=A8=E5=8C=BA=E9=97=B4=E5=86=85=E5=85=A8=E9=83=A8=E5=B7=B2?=
=?UTF-8?q?=E5=85=A5=E5=BA=93=E4=BB=93=E5=8D=95=E7=9A=84=E5=90=88=E8=AE=A1?=
=?UTF-8?q?)=EF=BC=9A=E8=BF=94=E5=9B=9E=E5=88=97=E8=A3=81=E5=89=AA?=
=?UTF-8?q?=E4=B8=BA=E7=89=A9=E6=96=99=E7=BC=96=E7=A0=81/=E8=B4=A7?=
=?UTF-8?q?=E5=90=8D/=E8=A7=84=E6=A0=BC=E5=9E=8B=E5=8F=B7/=E5=8D=95?=
=?UTF-8?q?=E4=BD=8D/=E4=BB=B6=E6=95=B0(=E5=AE=9E=E9=99=85=E4=B8=8A?=
=?UTF-8?q?=E6=9E=B6=E9=87=8F)/=E6=AF=9B=E9=87=8D(=E5=90=A8)/=E6=8A=95?=
=?UTF-8?q?=E4=BF=9D=E6=80=BB=E9=A2=9D(=E8=B4=A7=E5=93=81=E6=A1=A3?=
=?UTF-8?q?=E6=A1=88=E4=BF=9D=E9=A2=9D=E5=8F=96MAX=E4=B8=8D=E8=B7=A8?=
=?UTF-8?q?=E4=BB=93=E5=8D=95=E7=B4=AF=E5=8A=A0)/=E4=BD=93=E7=A7=AF?=
=?UTF-8?q?=EF=BC=9B=E4=BB=93=E5=8D=95=E7=BC=96=E5=8F=B7/=E5=AE=A2?=
=?UTF-8?q?=E6=88=B7=E7=BC=96=E5=8F=B7/=E5=AD=98=E8=B4=A7=E4=BA=BA/?=
=?UTF-8?q?=E5=85=A5=E4=BB=93=E6=97=A5=E6=9C=9F=E4=B8=BA=E5=8D=95=E6=8D=AE?=
=?UTF-8?q?=E7=BA=A7=E5=AD=97=E6=AE=B5=E5=8D=95=E5=80=BC=E5=A4=B1=E7=9C=9F?=
=?UTF-8?q?=EF=BC=8C=E7=A7=BB=E5=87=BA=E8=BF=94=E5=9B=9E=E5=88=97=E4=BB=85?=
=?UTF-8?q?=E4=BF=9D=E7=95=99=E4=B8=BA=E6=9F=A5=E8=AF=A2=E6=9D=A1=E4=BB=B6?=
=?UTF-8?q?=EF=BC=9BHAVING=E8=BF=87=E6=BB=A40=E4=BB=B6=E8=A1=8C=EF=BC=9B?=
=?UTF-8?q?=E5=90=88=E8=AE=A1=E8=A1=8C=E6=8A=95=E4=BF=9D=E6=80=BB=E9=A2=9D?=
=?UTF-8?q?=3D=E5=90=84=E7=89=A9=E6=96=99=E4=BF=9D=E9=A2=9D=E4=B9=8B?=
=?UTF-8?q?=E5=92=8C(=E6=AF=8F=E7=89=A9=E6=96=99=E8=AE=A1=E4=B8=80?=
=?UTF-8?q?=E6=AC=A1)=EF=BC=8CtotalOrderCount=3D=E6=B6=89=E5=8F=8A?=
=?UTF-8?q?=E4=BB=93=E5=8D=95=E6=95=B0=EF=BC=9BOMS/WMS=E4=B8=A4=E7=AB=AF?=
=?UTF-8?q?=E5=8F=A3=E5=BE=84=E6=95=B0=E5=AD=97=E4=B8=80=E8=87=B4=EF=BC=9B?=
=?UTF-8?q?=E6=9F=A5=E8=AF=A2=E5=8F=82=E6=95=B0=E4=B8=8E=E8=BF=94=E5=9B=9E?=
=?UTF-8?q?=E7=BB=93=E6=9E=84=E5=A4=96=E5=B1=82=E4=B8=8D=E5=8F=98?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../mapper/ExecutionInboundRankMapper.java | 2 +-
.../po/ExecutionInboundMaterialRankPO.java | 41 +++++--------------
.../po/ExecutionInboundRankTotalPO.java | 4 +-
.../inboundRank/ExecutionInboundRankApi.java | 4 +-
.../ExecutionInboundRankMapper.xml | 28 +++++++------
.../repository/mapper/InboundRankMapper.java | 2 +-
.../repository/po/InboundMaterialRankPO.java | 41 +++++--------------
.../repository/po/InboundRankTotalPO.java | 4 +-
.../dto/inboundRank/InboundRankDTO.java | 3 +-
.../facadeApi/inboundRank/InboundRankApi.java | 6 ++-
.../mapper/inboundRank/InboundRankMapper.xml | 27 ++++++------
11 files changed, 65 insertions(+), 97 deletions(-)
diff --git a/mhd_oms/src/main/java/com/mhd/oms/domain/inboundRank/repository/mapper/ExecutionInboundRankMapper.java b/mhd_oms/src/main/java/com/mhd/oms/domain/inboundRank/repository/mapper/ExecutionInboundRankMapper.java
index 64654e548..699f91e69 100644
--- a/mhd_oms/src/main/java/com/mhd/oms/domain/inboundRank/repository/mapper/ExecutionInboundRankMapper.java
+++ b/mhd_oms/src/main/java/com/mhd/oms/domain/inboundRank/repository/mapper/ExecutionInboundRankMapper.java
@@ -15,7 +15,7 @@ import java.util.List;
public interface ExecutionInboundRankMapper {
/**
- * 商品入库排名列表(仓单+货品汇总,按件数降序)
+ * 商品入库排名列表(按物料编码合并,按件数降序,过滤0件行)
*/
List queryMaterialRankList(ExecutionInboundRankDO executionInboundRankDO);
diff --git a/mhd_oms/src/main/java/com/mhd/oms/domain/inboundRank/repository/po/ExecutionInboundMaterialRankPO.java b/mhd_oms/src/main/java/com/mhd/oms/domain/inboundRank/repository/po/ExecutionInboundMaterialRankPO.java
index 6532af87f..1aa7db54f 100644
--- a/mhd_oms/src/main/java/com/mhd/oms/domain/inboundRank/repository/po/ExecutionInboundMaterialRankPO.java
+++ b/mhd_oms/src/main/java/com/mhd/oms/domain/inboundRank/repository/po/ExecutionInboundMaterialRankPO.java
@@ -1,24 +1,21 @@
package com.mhd.oms.domain.inboundRank.repository.po;
-import com.fasterxml.jackson.annotation.JsonFormat;
import com.mhd.common.core.annotation.Excel;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
-import org.springframework.format.annotation.DateTimeFormat;
import java.io.Serializable;
import java.math.BigDecimal;
-import java.util.Date;
/**
- * 入库排名统计PO(一行 = 某仓单内某货品的合计,按件数降序排名)
+ * 入库排名统计PO(一行 = 一个物料的合计(按物料编码合并,查询区间内全部已入库仓单),按件数降序排名)
*
* 数据源跨库取 WMS 入库表(NGWL_TEST_WMS.stock_in_order / in_material_detail,OMS 执行单状态/上架量不回传),
* 口径与 WMS 端 /inboundRankApi 完全一致,两边数字一致。
- * 字段口径:入仓日期=WMS入仓单入仓日期(为空兜底建档时间);仓单编号=WMS入库单号;客户编号/存货人=入仓单货主;
- * 件数/毛重/体积=仓单内该货品明细合计(件数取实际上架量 SHELVES_QUANTITY);毛重(吨)=明细总毛重KG/1000;
- * 投保总额=货品档案保额(NGWL_TEST_WMS.material_base_info.insure_amount,组内取MAX防多批次明细行重复累加)
+ * 字段口径:件数=实际上架量(SHELVES_QUANTITY)合计;毛重(吨)=明细总毛重KG/1000;体积=明细合计;
+ * 投保总额=货品档案保额(NGWL_TEST_WMS.material_base_info.insure_amount,物料维度单一值取MAX,不跨仓单累加);
+ * 仓单编号/客户编号/存货人/入仓日期为单据级字段,按物料合并后单值失真,仅作查询条件不返回
*
* @author rcx
* @date 2026-08-31
@@ -29,26 +26,8 @@ public class ExecutionInboundMaterialRankPO implements Serializable {
private static final long serialVersionUID = 1L;
- @ApiModelProperty("入仓日期")
- @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
- @DateTimeFormat(pattern = "yyyy-MM-dd")
- @Excel(name = "入仓日期", width = 30, dateFormat = "yyyy-MM-dd")
- private Date warehouseDate;
-
- @ApiModelProperty("仓单编号(WMS入库单号)")
- @Excel(name = "仓单编号")
- private String inOrderNumber;
-
- @ApiModelProperty("客户编号")
- @Excel(name = "客户编号")
- private String shipperCode;
-
- @ApiModelProperty("存货人(客户名称)")
- @Excel(name = "存货人")
- private String shipperName;
-
- @ApiModelProperty("商品货号")
- @Excel(name = "商品货号")
+ @ApiModelProperty("物料编码(合并依据)")
+ @Excel(name = "物料编码")
private String materialCode;
@ApiModelProperty("货名/商品名称")
@@ -63,19 +42,19 @@ public class ExecutionInboundMaterialRankPO implements Serializable {
@Excel(name = "单位")
private String unitName;
- @ApiModelProperty("件数(仓单内该货品实际上架量合计 SHELVES_QUANTITY,排名依据)")
+ @ApiModelProperty("件数(该物料实际上架量合计 SHELVES_QUANTITY,排名依据)")
@Excel(name = "件数")
private BigDecimal pieceCount;
- @ApiModelProperty("毛重(吨)(仓单内该货品合计,KG/1000)")
+ @ApiModelProperty("毛重(吨)(该物料合计,KG/1000)")
@Excel(name = "毛重(吨)")
private BigDecimal grossWeightTon;
- @ApiModelProperty("投保总额(货品档案保额)")
+ @ApiModelProperty("投保总额(货品档案保额,物料维度单一值)")
@Excel(name = "投保总额")
private BigDecimal insureAmount;
- @ApiModelProperty("体积(CBM)(仓单内该货品合计)")
+ @ApiModelProperty("体积(CBM)(该物料合计)")
@Excel(name = "体积(CBM)")
private BigDecimal totalVolume;
}
diff --git a/mhd_oms/src/main/java/com/mhd/oms/domain/inboundRank/repository/po/ExecutionInboundRankTotalPO.java b/mhd_oms/src/main/java/com/mhd/oms/domain/inboundRank/repository/po/ExecutionInboundRankTotalPO.java
index c8a51892e..6bd14a5f4 100644
--- a/mhd_oms/src/main/java/com/mhd/oms/domain/inboundRank/repository/po/ExecutionInboundRankTotalPO.java
+++ b/mhd_oms/src/main/java/com/mhd/oms/domain/inboundRank/repository/po/ExecutionInboundRankTotalPO.java
@@ -28,12 +28,12 @@ public class ExecutionInboundRankTotalPO implements Serializable {
@ApiModelProperty("毛重(吨)合计")
private BigDecimal totalGrossWeightTon;
- @ApiModelProperty("投保总额合计(各仓单+货品行保额之和)")
+ @ApiModelProperty("投保总额合计(各物料保额之和,每物料计一次)")
private BigDecimal totalInsureAmount;
@ApiModelProperty("体积(CBM)合计")
private BigDecimal totalVolume;
- @ApiModelProperty("仓单数合计")
+ @ApiModelProperty("涉及仓单数(当前筛选条件下去重统计)")
private Long totalOrderCount;
}
diff --git a/mhd_oms/src/main/java/com/mhd/oms/interfaces/facade/inboundRank/ExecutionInboundRankApi.java b/mhd_oms/src/main/java/com/mhd/oms/interfaces/facade/inboundRank/ExecutionInboundRankApi.java
index f97d23e57..5fa9b0fe0 100644
--- a/mhd_oms/src/main/java/com/mhd/oms/interfaces/facade/inboundRank/ExecutionInboundRankApi.java
+++ b/mhd_oms/src/main/java/com/mhd/oms/interfaces/facade/inboundRank/ExecutionInboundRankApi.java
@@ -30,7 +30,9 @@ import java.util.List;
* 故数据源跨库取 WMS 入库表(NGWL_TEST_WMS.stock_in_order/in_material_detail,与 OMS 出库排名跨库修法一致);
* 口径与 WMS 端 /inboundRankApi 完全一致,两边数字一致:仅已入库(5) + 明细 level=1 主行 +
* 入仓日期(为空的历史单按建档时间兜底) + 件数=实际上架量(SHELVES_QUANTITY);
- * 一行 = 某仓单内某货品的合计,按件数降序排名。
+ * 一行 = 一个物料的合计(按物料编码合并区间内全部已入库仓单),按件数降序排名,件数为0的物料不返回。
+ * 返回字段:物料编码/货名/规格型号/单位/件数/毛重(吨)/投保总额/体积(CBM);
+ * 仓单编号/客户编号/存货人/入仓日期为单据级字段仅作查询条件,不返回。
* 字段:入仓日期/仓单编号/客户编号/存货人/货名/件数/毛重(吨)/投保总额/体积(CBM)。
* 与出库排名(/executionOutboundRankApi)配对,前端用 tab 页区分
*
diff --git a/mhd_oms/src/main/resources/mapper/inboundRank/ExecutionInboundRankMapper.xml b/mhd_oms/src/main/resources/mapper/inboundRank/ExecutionInboundRankMapper.xml
index e6b76eb0d..f73e13eea 100644
--- a/mhd_oms/src/main/resources/mapper/inboundRank/ExecutionInboundRankMapper.xml
+++ b/mhd_oms/src/main/resources/mapper/inboundRank/ExecutionInboundRankMapper.xml
@@ -15,8 +15,8 @@
口径与 WMS 端 /inboundRankApi 完全一致,两边数字一致;
条件:b.status = 5已入库(排除已取消(6)/已关闭(7)及未完成单据);
日期筛选按入仓单入仓日期 b.warehouse_date(与列表"入仓日期"列同源,为空的历史单按建档时间兜底);
- 一行 = 某仓单(b.in_order_number)内某货品(a.material_code)的合计,
- 按件数(实际上架量 SUM(a.SHELVES_QUANTITY))降序排名
+ 一行 = 一个物料的合计(按物料编码合并,区间内全部已入库仓单),按件数(实际上架量 SUM(a.SHELVES_QUANTITY))降序排名,
+ 件数为0的物料不返回(HAVING过滤);仓单编号/客户编号/存货人/入仓日期为单据级字段仅作查询条件不返回
-->
a.del_flag = 1
@@ -57,14 +57,10 @@
left join NGWL_TEST_WMS.material_base_info c on a.material_base_info_id = c.material_base_info_id
-
+
-
+
diff --git a/mhd_wms/src/main/java/com/mhd/wms/domain/inboundRank/repository/mapper/InboundRankMapper.java b/mhd_wms/src/main/java/com/mhd/wms/domain/inboundRank/repository/mapper/InboundRankMapper.java
index 5c95d09fa..bb30997d2 100644
--- a/mhd_wms/src/main/java/com/mhd/wms/domain/inboundRank/repository/mapper/InboundRankMapper.java
+++ b/mhd_wms/src/main/java/com/mhd/wms/domain/inboundRank/repository/mapper/InboundRankMapper.java
@@ -15,7 +15,7 @@ import java.util.List;
public interface InboundRankMapper {
/**
- * 商品入库排名列表(仓单+货品汇总,按件数降序)
+ * 商品入库排名列表(按物料编码合并,按件数降序,过滤0件行)
*/
List queryMaterialRankList(InboundRankDO inboundRankDO);
diff --git a/mhd_wms/src/main/java/com/mhd/wms/domain/inboundRank/repository/po/InboundMaterialRankPO.java b/mhd_wms/src/main/java/com/mhd/wms/domain/inboundRank/repository/po/InboundMaterialRankPO.java
index 3044767a9..0805c433c 100644
--- a/mhd_wms/src/main/java/com/mhd/wms/domain/inboundRank/repository/po/InboundMaterialRankPO.java
+++ b/mhd_wms/src/main/java/com/mhd/wms/domain/inboundRank/repository/po/InboundMaterialRankPO.java
@@ -1,22 +1,19 @@
package com.mhd.wms.domain.inboundRank.repository.po;
-import com.fasterxml.jackson.annotation.JsonFormat;
import com.mhd.common.core.annotation.Excel;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
-import org.springframework.format.annotation.DateTimeFormat;
import java.io.Serializable;
import java.math.BigDecimal;
-import java.util.Date;
/**
- * 入库排名统计PO(一行 = 某仓单内某货品的合计,按件数降序排名)
+ * 入库排名统计PO(一行 = 一个物料的合计(按物料编码合并,查询区间内全部已入库仓单),按件数降序排名)
*
- * 字段口径:入仓日期=入仓单入仓日期(为空兜底建档时间);仓单编号=入库单号;客户编号/存货人=入仓单货主;
- * 件数/毛重/体积=仓单内该货品明细合计(件数取实际上架量 SHELVES_QUANTITY);毛重(吨)=明细总毛重KG/1000;
- * 投保总额=货品档案保额(material_base_info.insure_amount,组内取MAX防多批次明细行重复累加)
+ * 字段口径:件数=实际上架量(SHELVES_QUANTITY)合计;毛重(吨)=明细总毛重KG/1000;体积=明细合计;
+ * 投保总额=货品档案保额(material_base_info.insure_amount,物料维度单一值取MAX,不跨仓单累加);
+ * 仓单编号/客户编号/存货人/入仓日期为单据级字段,按物料合并后单值失真,仅作查询条件不返回
*
* @author rcx
* @date 2026-08-31
@@ -27,26 +24,8 @@ public class InboundMaterialRankPO implements Serializable {
private static final long serialVersionUID = 1L;
- @ApiModelProperty("入仓日期")
- @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
- @DateTimeFormat(pattern = "yyyy-MM-dd")
- @Excel(name = "入仓日期", width = 30, dateFormat = "yyyy-MM-dd")
- private Date warehouseDate;
-
- @ApiModelProperty("仓单编号(入库单号)")
- @Excel(name = "仓单编号")
- private String inOrderNumber;
-
- @ApiModelProperty("客户编号")
- @Excel(name = "客户编号")
- private String shipperCode;
-
- @ApiModelProperty("存货人(客户名称)")
- @Excel(name = "存货人")
- private String shipperName;
-
- @ApiModelProperty("商品货号")
- @Excel(name = "商品货号")
+ @ApiModelProperty("物料编码(合并依据)")
+ @Excel(name = "物料编码")
private String materialCode;
@ApiModelProperty("货名/商品名称")
@@ -61,19 +40,19 @@ public class InboundMaterialRankPO implements Serializable {
@Excel(name = "单位")
private String unitName;
- @ApiModelProperty("件数(仓单内该货品实际上架量合计 SHELVES_QUANTITY,排名依据)")
+ @ApiModelProperty("件数(该物料实际上架量合计 SHELVES_QUANTITY,排名依据)")
@Excel(name = "件数")
private BigDecimal pieceCount;
- @ApiModelProperty("毛重(吨)(仓单内该货品合计,KG/1000)")
+ @ApiModelProperty("毛重(吨)(该物料合计,KG/1000)")
@Excel(name = "毛重(吨)")
private BigDecimal grossWeightTon;
- @ApiModelProperty("投保总额(货品档案保额)")
+ @ApiModelProperty("投保总额(货品档案保额,物料维度单一值)")
@Excel(name = "投保总额")
private BigDecimal insureAmount;
- @ApiModelProperty("体积(CBM)(仓单内该货品合计)")
+ @ApiModelProperty("体积(CBM)(该物料合计)")
@Excel(name = "体积(CBM)")
private BigDecimal totalVolume;
}
diff --git a/mhd_wms/src/main/java/com/mhd/wms/domain/inboundRank/repository/po/InboundRankTotalPO.java b/mhd_wms/src/main/java/com/mhd/wms/domain/inboundRank/repository/po/InboundRankTotalPO.java
index f7433e5af..59ac8006b 100644
--- a/mhd_wms/src/main/java/com/mhd/wms/domain/inboundRank/repository/po/InboundRankTotalPO.java
+++ b/mhd_wms/src/main/java/com/mhd/wms/domain/inboundRank/repository/po/InboundRankTotalPO.java
@@ -28,12 +28,12 @@ public class InboundRankTotalPO implements Serializable {
@ApiModelProperty("毛重(吨)合计")
private BigDecimal totalGrossWeightTon;
- @ApiModelProperty("投保总额合计(各仓单+货品行保额之和)")
+ @ApiModelProperty("投保总额合计(各物料保额之和,每物料计一次)")
private BigDecimal totalInsureAmount;
@ApiModelProperty("体积(CBM)合计")
private BigDecimal totalVolume;
- @ApiModelProperty("仓单数合计")
+ @ApiModelProperty("涉及仓单数(当前筛选条件下去重统计)")
private Long totalOrderCount;
}
diff --git a/mhd_wms/src/main/java/com/mhd/wms/interfaces/dto/inboundRank/InboundRankDTO.java b/mhd_wms/src/main/java/com/mhd/wms/interfaces/dto/inboundRank/InboundRankDTO.java
index e7c812636..a73386995 100644
--- a/mhd_wms/src/main/java/com/mhd/wms/interfaces/dto/inboundRank/InboundRankDTO.java
+++ b/mhd_wms/src/main/java/com/mhd/wms/interfaces/dto/inboundRank/InboundRankDTO.java
@@ -9,7 +9,8 @@ import java.io.Serializable;
* 入库排名统计入参DTO
*
* 按入仓日期区间筛选商品入库量统计排名,统计口径:入仓日期 + 仅已入库状态(5) + 明细仅取 level=1 主行;
- * 一行 = 某仓单内某货品的合计,按件数降序排名
+ * 一行 = 一个物料的合计(按物料编码合并),按件数降序排名;
+ * 仓单编号/客户编号/存货人/入仓日期为单据级字段仅作查询条件,返回列不含这些字段
*
* @author rcx
* @date 2026-08-31
diff --git a/mhd_wms/src/main/java/com/mhd/wms/interfaces/facadeApi/inboundRank/InboundRankApi.java b/mhd_wms/src/main/java/com/mhd/wms/interfaces/facadeApi/inboundRank/InboundRankApi.java
index bde6855dd..a60b9308a 100644
--- a/mhd_wms/src/main/java/com/mhd/wms/interfaces/facadeApi/inboundRank/InboundRankApi.java
+++ b/mhd_wms/src/main/java/com/mhd/wms/interfaces/facadeApi/inboundRank/InboundRankApi.java
@@ -26,8 +26,10 @@ import java.util.List;
* 入库排名统计Api
*
* 按入仓日期区间筛选商品入库量统计排名。统计口径:入仓日期(为空的历史单按建档时间兜底) + 仅已入库状态(5),
- * 明细仅取 level=1 主行;一行 = 某仓单内某货品的合计,按件数(实际上架量 SHELVES_QUANTITY)降序排名。
- * 字段:入仓日期/仓单编号/客户编号/存货人/货名/件数/毛重(吨)/投保总额/体积(CBM)。
+ * 明细仅取 level=1 主行;一行 = 一个物料的合计(按物料编码合并区间内全部已入库仓单),
+ * 按件数(实际上架量 SHELVES_QUANTITY)降序排名,件数为0的物料不返回。
+ * 返回字段:物料编码/货名/规格型号/单位/件数/毛重(吨)/投保总额/体积(CBM);
+ * 仓单编号/客户编号/存货人/入仓日期为单据级字段仅作查询条件,不返回。
* 与出库排名(/outboundRankApi)配对,前端用 tab 页区分
*
* @author rcx
diff --git a/mhd_wms/src/main/resources/mapper/inboundRank/InboundRankMapper.xml b/mhd_wms/src/main/resources/mapper/inboundRank/InboundRankMapper.xml
index 63f9a07e0..f4c34136c 100644
--- a/mhd_wms/src/main/resources/mapper/inboundRank/InboundRankMapper.xml
+++ b/mhd_wms/src/main/resources/mapper/inboundRank/InboundRankMapper.xml
@@ -10,7 +10,8 @@
left join 货品档案 material_base_info(c,取保额作投保总额)
口径:b.status = 5已入库(排除已取消(6)/已关闭(7)及未完成单据);
日期筛选按入仓单入仓日期 b.warehouse_date(与列表"入仓日期"列同源,为空的历史单按建档时间兜底);
- 一行 = 某仓单(b.in_order_number)内某货品(a.material_code)的合计,按件数(实际上架量 SUM(a.SHELVES_QUANTITY))降序排名
+ 一行 = 一个物料的合计(按物料编码合并,区间内全部已入库仓单),按件数(实际上架量 SUM(a.SHELVES_QUANTITY))降序排名,
+ 件数为0的物料不返回(HAVING过滤);仓单编号/客户编号/存货人/入仓日期为单据级字段仅作查询条件不返回
-->
a.del_flag = 1
@@ -54,14 +55,10 @@
left join material_base_info c on a.material_base_info_id = c.material_base_info_id
-
+
-
+