Przeglądaj źródła

fix(首页统计): 「银联收款统计」标题摆正 —— 乐收赢的数不再挂「支付宝收款」名下

用户 2026-10-05 口径:「lsy是银联收款,har是支付宝收款」。变更请求①里把乐收赢
的数标成「支付宝收款」是标题用错(那是汇安融/支付宝收单的名),数据链路不动,
只改显示标题,并同步其余 7 处注释/javadoc 里对该卡的称呼。

- tenant.vue 第三块 h2:「支付宝收款」→「银联收款统计」(数据仍是乐收赢净额)
- account.ts / AccountController / AccountService / LsyOrderMapper 及两个测试类
  的注释:同一张卡的名字一并改,并记下 lsy/har 的定名
- 汇总统计第三段不动(相加的还是同一张卡的数字)

未做:支付宝收款(HAR/汇安融)的统计卡 —— 后端没有 HAR 统计端点、页面也没有
这块,本次不建(要建需先定口径,比如是否与乐收赢同为净额)。

验证:mvn test -Dtest='LsyOrderMapperSqlTest,AccountServiceStatTest' → 12 绿;
前端 pnpm ts:check 与改动前输出逐字节相同(sha256 4788…、329 行基线;文件换回
动作经 sha256 复核);用户正在跑的 dev server(5180)现吐模块里 h2 已是
「银联收款统计」(curl 实测)。
alphaH 1 tydzień temu
rodzic
commit
ab14acde0b

+ 2 - 1
frontend/src/api/module_payment/account.ts

@@ -44,7 +44,8 @@ export const AccountAPI = {
   },
 
   /**
-   * 乐收赢收款统计(**净额** = 实收 − 已退)—— 首页「支付宝收款」卡的数据源。
+   * 乐收赢收款统计(**净额** = 实收 − 已退)—— 首页「银联收款统计」卡的数据源
+   * (2026-10-05 定名:lsy = 银联收款、har = 支付宝收款,本卡标题据此从「支付宝收款」改来)。
    * 单位已是元(后端把库里的分换好才出网),键名与旁边三块统计一致。
    *
    * 【不带企业参数】乐收赢无企业维度(2026-09-30 去企业化后新单 enterprise_id 恒 NULL)

+ 6 - 2
frontend/src/views/dashboard/tenant.vue

@@ -103,7 +103,7 @@
       </div>
 
       <div class="section-header" style="margin-top: 24px;">
-        <h2>支付宝收款</h2>
+        <h2>银联收款统计</h2>
       </div>
       <div class="data-cards">
         <div class="data-card lsy-card">
@@ -185,7 +185,11 @@ const consumeAmount = ref<{
   amount_of_all?: string;
 }>({});
 
-/** 「支付宝收款」卡的数据 —— 2026-10-05 起来自**乐收赢**(净额,后端已把分换成元)。 */
+/**
+ * 「银联收款统计」卡的数据 —— 2026-10-05 起来自**乐收赢**(净额,后端已把分换成元)。
+ * 标题当天由「支付宝收款」改过来:用户裁定 lsy = 银联收款、har = 支付宝收款,
+ * 乐收赢的数不能挂在「支付宝收款」名下(那是汇安融的)。
+ */
 const lsyAmount = ref<{
   amount_of_today?: string;
   amount_of_7days?: string;

+ 2 - 1
java/src/main/java/com/payment/platform/module/payment/account/controller/AccountController.java

@@ -62,7 +62,8 @@ public class AccountController {
     }
 
     /**
-     * 乐收赢收款统计(净额,元)—— 首页「支付宝收款」卡片的数据源(2026-10-05 起)。
+     * 乐收赢收款统计(净额,元)—— 首页「银联收款统计」卡片的数据源(2026-10-05 起)。
+     * 卡片标题当天由「支付宝收款」改来(用户裁定:lsy = 银联收款、har = 支付宝收款)。
      *
      * <p>【没有 enterprise_id 参数,故意的】乐收赢无企业维度(2026-09-30 去企业化:
      * 新单 enterprise_id 恒 NULL)⇒ 按企业筛只会把新单整批排除、卡片恒 0.00,

+ 2 - 1
java/src/main/java/com/payment/platform/module/payment/account/service/AccountService.java

@@ -155,7 +155,8 @@ public class AccountService {
     /**
      * 统计乐收赢收款金额 —— **净额**(实收 − 已退),只算钱已到账的状态。
      *
-     * <p>2026-10-05 用户裁定:首页「支付宝收款」这张卡不再统计当面付、改统计乐收赢。
+     * <p>2026-10-05 用户裁定:首页「银联收款统计」这张卡不再统计当面付、改统计乐收赢
+     * (同日定名:lsy = 银联收款、har = 支付宝收款,卡片标题由「支付宝收款」改来)。
      * 口径细节(逐行 COALESCE 兜底、finish_time 窗口、状态集合来源)全在
      * {@link LsyOrderMapper#statCollectedAmount} 的注释里,这里只做两件事:
      * 把 {@link LsyOrderStatus#PAY_RECORDED} 传下去,把**分换成元**。

+ 1 - 1
java/src/main/java/com/payment/platform/module/payment/leshouying/mapper/LsyOrderMapper.java

@@ -15,7 +15,7 @@ import java.util.Map;
 public interface LsyOrderMapper extends BaseMapper<LsyOrderEntity> {
 
     /**
-     * 首页「支付宝收款」卡片的三窗口聚合 —— **净额**(实收 − 已退),单位:**分**。
+     * 首页「银联收款统计」卡片的三窗口聚合 —— **净额**(实收 − 已退),单位:**分**。
      *
      * <p>【净额 = 实收 − 已退】实收取 {@code receipt_amount}(上游回的实收),
      * <b>为空的那一行按该行 {@code total_amount} 兜底</b>。逐行 COALESCE 不是笔误:

+ 2 - 1
java/src/test/java/com/payment/platform/module/payment/account/service/AccountServiceStatTest.java

@@ -36,7 +36,8 @@ import static org.mockito.Mockito.verifyNoInteractions;
 import static org.mockito.Mockito.when;
 
 /**
- * 首页「支付宝收款」这张卡的数从哪来 —— 乐收赢聚合腿(用户 2026-10-05 裁定:不再统计当面付)。
+ * 首页「银联收款统计」这张卡的数从哪来 —— 乐收赢聚合腿(用户 2026-10-05 裁定:不再统计当面付;
+ * 同日定名 lsy = 银联收款、har = 支付宝收款)。
  *
  * <p>钉三件事:
  * <ol>

+ 1 - 1
java/src/test/java/com/payment/platform/module/payment/leshouying/mapper/LsyOrderMapperSqlTest.java

@@ -22,7 +22,7 @@ import static org.junit.jupiter.api.Assertions.assertFalse;
 import static org.junit.jupiter.api.Assertions.assertTrue;
 
 /**
- * 钉住首页「支付宝收款」那只聚合查询({@code LsyOrderMapper#statCollectedAmount})的形状。
+ * 钉住首页「银联收款统计」那只聚合查询({@code LsyOrderMapper#statCollectedAmount})的形状。
  *
  * <p>【为什么必须单独钉】{@code AccountServiceStatTest} 把 mapper 整个 mock 掉 ⇒
  * 注解里的 SQL 一次都没被 MyBatis 求值过,它长什么样在测试里完全不可见 ——