# 银行流水打标编码大写与数据库同步实施记录

## 变更概述

- 在 [`AGENTS.md`](/Users/wkc/Desktop/ccdi/ccdi/AGENTS.md) 补充银行流水打标相关 `rule_code`、`indicator_code`、`param_code` 必须统一全大写的协作约束。
- 将默认参数脚本中遗漏的 `SUSPICIOUS_GAMBLING` 参数编码改为全大写：`MULTI_PARTY_AMT_MIN`、`MULTI_PARTY_AMT_MAX`。
- 新增可重复执行的增量脚本 [`sql/migration/2026-03-18-sync-bank-tag-uppercase-and-rules.sql`](/Users/wkc/Desktop/ccdi/ccdi/sql/migration/2026-03-18-sync-bank-tag-uppercase-and-rules.sql)，用于同步规则表、指标编码和参数编码。

## 涉及文件

- [`AGENTS.md`](/Users/wkc/Desktop/ccdi/ccdi/AGENTS.md)
- [`sql/ccdi_model_param.sql`](/Users/wkc/Desktop/ccdi/ccdi/sql/ccdi_model_param.sql)
- [`sql/2026-03-16-update-ccdi-model-param-defaults.sql`](/Users/wkc/Desktop/ccdi/ccdi/sql/2026-03-16-update-ccdi-model-param-defaults.sql)
- [`sql/migration/2026-03-18-sync-bank-tag-uppercase-and-rules.sql`](/Users/wkc/Desktop/ccdi/ccdi/sql/migration/2026-03-18-sync-bank-tag-uppercase-and-rules.sql)
- [`ccdi-project/src/test/java/com/ruoyi/ccdi/project/sql/CcdiModelParamSqlDefaultsTest.java`](/Users/wkc/Desktop/ccdi/ccdi/ccdi-project/src/test/java/com/ruoyi/ccdi/project/sql/CcdiModelParamSqlDefaultsTest.java)
- [`ccdi-project/src/test/java/com/ruoyi/ccdi/project/service/impl/CcdiModelParamServiceImplTest.java`](/Users/wkc/Desktop/ccdi/ccdi/ccdi-project/src/test/java/com/ruoyi/ccdi/project/service/impl/CcdiModelParamServiceImplTest.java)

## 实施结果

- 默认参数 SQL 中银行流水打标相关 `param_code` 已全部统一为全大写，不再保留 `annual_turnover`、`stock_tfr_large`、`withdraw_cnt`、`withdraw_amt`、`multi_party_amt_min`、`multi_party_amt_max` 等小写残留。
- 增量脚本已执行，规则表已补齐到 33 条，数据库中的 `rule_code`、`indicator_code` 均为全大写或 `NULL`。
- 参数表中 `LARGE_TRANSACTION`、`ABNORMAL_BEHAVIOR`、`SUSPICIOUS_GAMBLING` 模型的默认参数编码已同步为全大写。

## 执行与验证

- 执行脚本：
  - `bin/mysql_utf8_exec.sh sql/migration/2026-03-18-sync-bank-tag-uppercase-and-rules.sql`
- 数据库核验：
  - `ccdi_bank_tag_rule` 共 33 条规则，`rule_code`/`indicator_code` 全部满足全大写约束。
  - `ccdi_model_param` 中相关参数编码核验结果为 `ANNUAL_TURNOVER`、`STOCK_TFR_LARGE`、`WITHDRAW_CNT`、`WITHDRAW_AMT`、`MULTI_PARTY_AMT_MIN`、`MULTI_PARTY_AMT_MAX`。

## 备注

- 初始化脚本 [`sql/2026-03-16-bank-tagging.sql`](/Users/wkc/Desktop/ccdi/ccdi/sql/2026-03-16-bank-tagging.sql) 因唯一键限制不适合直接重复执行，本次通过增量迁移脚本完成数据库同步，避免重复插入失败。
