Files
mini-openclaw/docs/对公多表业务库与数据卡说明.md
T

65 lines
3.4 KiB
Markdown
Raw Permalink Normal View History

# 对公多表业务库与数据卡说明
## 1. 定位
本库是脱敏的业务演示库,表结构按融资租赁对公项目拆分,不包含真实客户信息。它用于验证:一个数据卡可以通过受控 SQL 连接多张表、选取部分字段、映射为统一业务字段,再交给 mini-openclaw 的 Skills 和规则使用。
客户经理不配置数据库或 SQL。配置管理员维护数据连接、允许访问的表、参数化 SQL、字段映射和口径;客户经理只选择已发布的业务方案。
## 2. 文件
- 可重复生成的结构与数据:`backend/fixtures/xingbang_demo/business_database.sql`
- 生成服务:`backend/services/business_demo_database.py`
- 手工生成入口:`scripts/build_business_demo_db.py`
- 本地运行库:`backend/xingbang_data/xingbang_business_demo.sqlite3`(运行数据,不提交 Git)
重新生成:
```powershell
.\backend\venv\Scripts\python.exe scripts\build_business_demo_db.py --force
```
## 3. 业务表
| 表 | 用途 |
|---|---|
| `corporate_customer` | 对公客户主数据 |
| `lease_project` | 租赁项目主数据 |
| `financing_scheme` | 融资方案及版本 |
| `financial_statement` | 多期、多口径财务报表 |
| `lease_asset` | 租赁物明细及唯一编号 |
| `insurance_policy` | 保险保单 |
| `guarantee_measure` | 保证金、保证及质押措施 |
| `credit_snapshot` | 征信快照 |
| `legal_case` | 涉诉与执行案件 |
| `repayment_source` | 还款来源及佐证状态 |
| `project_document` | 项目材料索引,不保存文件正文 |
库内提供 `DEMO-A`、`DEMO-B`、`DEMO-C` 三个项目。金额、名称和编号均为演示数据。
## 4. 已配置的数据卡
| 数据卡 | SQL 涉及的表 | 主要标准字段 |
|---|---|---|
| 项目与授信方案 | 客户、项目、融资方案 | `project.id`、`customer.name`、`facility.amount`、`facility.term` |
| 多期财务报表 | 财务报表 | 期间、口径、资产、负债、经营现金流 |
| 征信与涉诉汇总 | 征信、涉诉 | 报告日期、逾期、查询次数、案件数量和金额 |
| 租赁物与增信汇总 | 租赁物、保险、增信 | 租赁物价值、重复编号、保额、保证金、保证金额 |
| 还款来源与材料 | 还款来源 | 是否依赖特定回款、材料状态、预计金额 |
已发布方案 `plan-business-sql` 在配置工作台用于单独自查;项目工作台中的 `corporate.business-sql` 使用同一组数据卡完成 AI 预审。
## 5. SQL 配置约束
- 仅允许一条参数化 `SELECT` 或 `WITH ... SELECT`。
- 项目条件使用服务端参数 `:project_id`,不得字符串拼接。
- 数据连接配置允许表白名单,SQL 不能访问白名单之外的表或系统表。
- SQLite 以只读模式打开,并由数据库授权器再次禁止写操作。
- 每次查询限制时间和行数;数据卡负责多期、口径、单位和唯一粒度对齐。
- 数据库密码只引用服务器环境变量,不进入 SQL、数据卡或运行快照。
- 每次运行冻结数据卡版本、字段映射、查询结果哈希和字段级来源,AI 不具备自行执行 SQL 的工具。
## 6. 生产替换方式
正式环境可将连接类型从 SQLite 换为 PostgreSQL 或 MySQL,SQL 改为只读视图查询,字段仍映射到相同的标准字段。Skills、规则和报告模板不需要理解源系统的表名,从而避免 ERP 字段变化直接影响业务逻辑。