diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/jarvis/OrderRowsController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/jarvis/OrderRowsController.java
index c46bc2f..a6f97e9 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/jarvis/OrderRowsController.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/jarvis/OrderRowsController.java
@@ -178,6 +178,8 @@ public class OrderRowsController extends BaseController
/**
* 构建统计数据。
+ *
汇总口径:{@code totalCommission} 为预估佣金合计,排除取消单(validCode=3);{@code totalActualFee} 为实际佣金,仅统计已完成(validCode=17);
+ * {@code estimatePaidPending} 为已付款待收货(validCode=16)的预估佣金,与分组 {@code paid} 一致。
* @param forList true=与列表同数据源(不排除 isCount=0),保证总订单数与分页一致;false=独立统计(排除 isCount=0)
*/
private Map buildStatistics(OrderRows orderRows, Date beginTime, Date endTime, boolean forList) {
@@ -209,7 +211,7 @@ public class OrderRowsController extends BaseController
groupStats.put("cancel", createGroupStat("取消", "cancel"));
groupStats.put("invalid", createGroupStat("无效", "invalid"));
groupStats.put("pending", createGroupStat("待付款", "pending"));
- groupStats.put("paid", createGroupStat("已付款", "paid"));
+ groupStats.put("paid", createGroupStat("已付款(待结算)", "paid"));
groupStats.put("finished", createGroupStat("已完成", "finished"));
groupStats.put("deposit", createGroupStat("已付定金", "deposit"));
groupStats.put("illegal", createGroupStat("违规", "illegal"));
@@ -263,8 +265,14 @@ public class OrderRowsController extends BaseController
actualFeeAmount = row.getActualFee() != null ? row.getActualFee() : 0;
}
- totalCommission += commissionAmount;
- totalActualFee += actualFeeAmount;
+ // 顶部「预估佣金」汇总:排除取消单(validCode=3),其余状态累加单条 commissionAmount
+ if (!"3".equals(validCode)) {
+ totalCommission += commissionAmount;
+ }
+ // 顶部「实际佣金」汇总:仅已完成(validCode=17),与联盟「已结算」口径一致
+ if ("17".equals(validCode)) {
+ totalActualFee += actualFeeAmount;
+ }
if (validCode != null) {
for (Map.Entry> group : groups.entrySet()) {
@@ -290,6 +298,8 @@ public class OrderRowsController extends BaseController
result.put("totalCosPrice", totalCosPrice);
result.put("totalCommission", totalCommission);
result.put("totalActualFee", totalActualFee);
+ // 已付款待结算:与分组 paid 的预估佣金口径一致,便于独立展示卡片
+ result.put("estimatePaidPending", (Double) groupStats.get("paid").get("commission"));
result.put("totalSkuNum", totalSkuNum);
result.put("violationOrders", violationOrders);
result.put("violationCommission", violationCommission);