补充异常账户规则SQL校验记录

This commit is contained in:
wkc
2026-03-31 16:37:17 +08:00
parent 2aee9ff76e
commit d01362cc72

View File

@@ -48,6 +48,15 @@ bin/mysql_utf8_exec.sh sql/migration/2026-03-31-create-ccdi-account-info-and-abn
bin/mysql_utf8_exec.sh sql/migration/2026-03-31-add-abnormal-account-rule-test-data.sql
```
### 2.3 导入结果
- 已使用 `bin/mysql_utf8_exec.sh` 成功执行两份 SQL 脚本
- 远端业务库已写入:
- 项目:`90331 / 异常账户规则测试项目`
- 员工A、B、C、D 四个最小样本
- 账户4 个员工本人账户
- 项目流水7 笔
## 3. 过程说明
- 本轮实现保持最短路径,未新增平行结果表或独立查询链路
@@ -55,9 +64,53 @@ bin/mysql_utf8_exec.sh sql/migration/2026-03-31-add-abnormal-account-rule-test-d
- 为保证 `ccdi-project` 模块测试可执行,补充了缺失的 `easyexcel` 依赖声明
- `mvn` 定向测试统一使用 `-am`,确保 `ccdi-lsfx` 依赖以当前源码参与 reactor 构建,避免使用陈旧本地产物
## 4. 待补充验证
## 4. SQL 校验结果
### 4.1 环境说明
- 项目导入脚本读取的数据库配置为:`jdbc:mysql://116.62.17.81:3307/ccdi`
- 当前 MySQL MCP 会话实际连接为:`ccdi@ca446c6169d2:3306`
- 由于 MySQL MCP 与项目配置数据库不是同一实例,直接在 MCP 中查询不到刚导入的样本数据
- 因此本次“真实 SQL 命中校验”实际使用项目配置对应库的只读 `mysql` 查询执行 Mapper 等价 SQLMySQL MCP 仅用于确认环境差异,而未直接承载最终命中校验
### 4.2 `SUDDEN_ACCOUNT_CLOSURE`
- 执行 SQL 摘要:
- 关联 `ccdi_account_info``ccdi_base_staff` 与项目内 `ccdi_bank_statement`
- 过滤 `owner_type = 'EMPLOYEE'``status = 2``invalid_date is not null`
- 统计窗口为 `[invalid_date - 30天, invalid_date)`
- 命中结果:
- 员工 A `330101199001010001`
- `reasonDetail` 快照:
- `账户6222000000000001于2026-03-20销户销户前30天内最后交易日2026-03-18累计交易金额180000.00元单笔最大金额70000.00元`
- 反样本校验:
- 员工 D `330101199001010004` 命中数为 `0`
### 4.3 `DORMANT_ACCOUNT_LARGE_ACTIVATION`
- 执行 SQL 摘要:
- 关联 `ccdi_account_info``ccdi_base_staff` 与项目内 `ccdi_bank_statement`
- 过滤 `owner_type = 'EMPLOYEE'``status = 1``effective_date is not null`
- 要求 `first_tx_date >= effective_date + 6个月`
- 要求 `windowTotalAmount >= 500000``windowMaxSingleAmount >= 100000`
- 命中结果:
- 员工 B `330101199001010002`
- `reasonDetail` 快照:
- `账户6222000000000002开户于2025-01-01首次交易日期2025-08-01沉睡时长7个月启用后累计交易金额550000.00元单笔最大金额300000.00元`
- 反样本校验:
- 员工 C `330101199001010003` 命中数为 `0`
### 4.4 口径结论
- 两条规则均只命中预期正样本:
- `SUDDEN_ACCOUNT_CLOSURE` 仅命中员工 A
- `DORMANT_ACCOUNT_LARGE_ACTIVATION` 仅命中员工 B
- 反样本满足预期:
- 员工 C 因沉睡期不足 6 个月未命中
- 员工 D 因销户前 30 天无流水未命中
## 5. 待补充验证
- MySQL MCP 真实 SQL 命中结果
- 最终定向测试汇总
- 最终改动文件清单
- 如有联调启动进程,记录已关闭结论