修正异常账户规则金额口径并补充后端验证记录
This commit is contained in:
@@ -1229,8 +1229,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||
ai.account_no AS accountNo,
|
||||
ai.invalid_date AS invalidDate,
|
||||
max(tx.txDate) AS lastTxDate,
|
||||
round(sum(tx.tradeAmount), 2) AS windowTotalAmount,
|
||||
round(max(tx.tradeAmount), 2) AS windowMaxSingleAmount
|
||||
round(sum(tx.tradeTotalAmount), 2) AS windowTotalAmount,
|
||||
round(max(tx.tradeMaxSingleAmount), 2) AS windowMaxSingleAmount
|
||||
from ccdi_account_info ai
|
||||
inner join ccdi_base_staff staff
|
||||
on staff.id_card = ai.owner_id
|
||||
@@ -1241,7 +1241,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||
STR_TO_DATE(LEFT(TRIM(bs.TRX_DATE), 19), '%Y-%m-%d %H:%i:%s'),
|
||||
STR_TO_DATE(LEFT(TRIM(bs.TRX_DATE), 10), '%Y-%m-%d')
|
||||
) AS txDate,
|
||||
GREATEST(IFNULL(bs.AMOUNT_DR, 0), IFNULL(bs.AMOUNT_CR, 0)) AS tradeAmount
|
||||
IFNULL(bs.AMOUNT_DR, 0) + IFNULL(bs.AMOUNT_CR, 0) AS tradeTotalAmount,
|
||||
GREATEST(IFNULL(bs.AMOUNT_DR, 0), IFNULL(bs.AMOUNT_CR, 0)) AS tradeMaxSingleAmount
|
||||
from ccdi_bank_statement bs
|
||||
where bs.project_id = #{projectId}
|
||||
and trim(IFNULL(bs.LE_ACCOUNT_NO, '')) != ''
|
||||
|
||||
@@ -109,8 +109,67 @@ bin/mysql_utf8_exec.sh sql/migration/2026-03-31-add-abnormal-account-rule-test-d
|
||||
- 员工 C 因沉睡期不足 6 个月未命中
|
||||
- 员工 D 因销户前 30 天无流水未命中
|
||||
|
||||
## 5. 待补充验证
|
||||
## 5. 最终验证汇总
|
||||
|
||||
- 最终定向测试汇总
|
||||
- 最终改动文件清单
|
||||
- 如有联调启动进程,记录已关闭结论
|
||||
### 5.1 Java 定向测试
|
||||
|
||||
- 执行命令:
|
||||
|
||||
```bash
|
||||
mvn -pl ccdi-project -am -Dsurefire.failIfNoSpecifiedTests=false \
|
||||
-Dtest=CcdiAbnormalAccountRuleSqlMetadataTest,CcdiBankTagRuleSqlMetadataTest,CcdiBankTagServiceImplTest,CcdiProjectOverviewEmployeeResultBuilderTest \
|
||||
test
|
||||
```
|
||||
|
||||
- 执行结果:
|
||||
- `Tests run: 25, Failures: 0, Errors: 0, Skipped: 0`
|
||||
- `BUILD SUCCESS`
|
||||
|
||||
### 5.2 端到端链路验证
|
||||
|
||||
- 已重新执行后端打包:
|
||||
|
||||
```bash
|
||||
mvn -pl ruoyi-admin -am package -DskipTests
|
||||
```
|
||||
|
||||
- 已启动 `ruoyi-admin/target/ruoyi-admin.jar`,并使用测试登录接口获取 token
|
||||
- 已调用手工重建接口:
|
||||
|
||||
```http
|
||||
POST /ccdi/project/tags/rebuild
|
||||
{
|
||||
"projectId": 90331,
|
||||
"modelCode": "ABNORMAL_ACCOUNT"
|
||||
}
|
||||
```
|
||||
|
||||
- 后端执行日志确认:
|
||||
- 异常账户模型规则数为 `2`
|
||||
- 实际命中数为 `2`
|
||||
- 员工风险聚合已刷新
|
||||
- 结果表校验确认:
|
||||
- `SUDDEN_ACCOUNT_CLOSURE` 写入员工 `330101199001010001`
|
||||
- `DORMANT_ACCOUNT_LARGE_ACTIVATION` 写入员工 `330101199001010002`
|
||||
- 员工总览聚合表校验确认:
|
||||
- 员工 A 聚合命中 `ABNORMAL_ACCOUNT / SUDDEN_ACCOUNT_CLOSURE`
|
||||
- 员工 B 聚合命中 `ABNORMAL_ACCOUNT / DORMANT_ACCOUNT_LARGE_ACTIVATION`
|
||||
|
||||
### 5.3 进程关闭
|
||||
|
||||
- 端到端验证完成后,已主动关闭本轮启动的后端 `java -jar ruoyi-admin.jar` 进程
|
||||
- 关闭日志可见 Quartz 调度器与 Druid 数据源正常释放,无残留后端进程
|
||||
|
||||
## 6. 最终改动文件清单
|
||||
|
||||
- `ccdi-project/pom.xml`
|
||||
- `ccdi-project/src/main/java/com/ruoyi/ccdi/project/mapper/CcdiBankTagAnalysisMapper.java`
|
||||
- `ccdi-project/src/main/java/com/ruoyi/ccdi/project/service/impl/CcdiBankTagServiceImpl.java`
|
||||
- `ccdi-project/src/main/resources/mapper/ccdi/project/CcdiBankTagAnalysisMapper.xml`
|
||||
- `ccdi-project/src/test/java/com/ruoyi/ccdi/project/sql/CcdiAbnormalAccountRuleSqlMetadataTest.java`
|
||||
- `ccdi-project/src/test/java/com/ruoyi/ccdi/project/sql/CcdiBankTagRuleSqlMetadataTest.java`
|
||||
- `ccdi-project/src/test/java/com/ruoyi/ccdi/project/service/impl/CcdiBankTagServiceImplTest.java`
|
||||
- `ccdi-project/src/test/java/com/ruoyi/ccdi/project/service/impl/CcdiProjectOverviewEmployeeResultBuilderTest.java`
|
||||
- `sql/migration/2026-03-31-create-ccdi-account-info-and-abnormal-account-rules.sql`
|
||||
- `sql/migration/2026-03-31-add-abnormal-account-rule-test-data.sql`
|
||||
- `docs/reports/implementation/2026-03-31-abnormal-account-bank-tag-backend-implementation.md`
|
||||
|
||||
Reference in New Issue
Block a user