43 lines
2.3 KiB
Markdown
43 lines
2.3 KiB
Markdown
# Contract: REV-004 功能缺失判定矩阵
|
|
|
|
## 1. 目标
|
|
|
|
本合同用于统一判定旧账务对象相对当前 backend 的承接成熟度,避免将“旧表缺失”直接误判为“功能缺失”。
|
|
|
|
## 2. 判定字段
|
|
|
|
| Field | Required | Description |
|
|
| --- | --- | --- |
|
|
| `legacyObjectName` | Yes | 旧对象名称 |
|
|
| `legacyTable` | Yes | 旧表名 |
|
|
| `expectedCapability` | Yes | 旧对象期望承载的业务能力 |
|
|
| `currentVerdict` | Yes | `implemented` / `partial` / `readonly` / `missing` |
|
|
| `evidenceType` | Yes | `controller` / `service` / `do` / `mapping-doc` / `none` |
|
|
| `evidencePath` | Yes | 证据路径或文档路径 |
|
|
| `whyNotFullyImplemented` | No | 为什么不能判定为完全实现 |
|
|
| `recommendedHandling` | Yes | `reuse` / `extend` / `readonly-retain` / `implement-later` |
|
|
| `migrationImpact` | Yes | 对迁移的影响:低 / 中 / 高 |
|
|
| `notes` | No | 其他补充说明 |
|
|
|
|
## 3. 判定规则
|
|
|
|
- `implemented`:当前 backend 已有稳定在线能力,且核心业务语义可被当前对象直接承接。
|
|
- `partial`:已有部分能力、控制器、服务或数据对象,但无法完整表达旧模型全部语义。
|
|
- `readonly`:不建议在线重建,只要求查询、比对和追溯能力。
|
|
- `missing`:当前未看到稳定承接能力或映射出口,后续需补设计或开发。
|
|
|
|
## 4. 使用约束
|
|
|
|
- 不允许仅凭“未看到同名表”判定为 `missing`。
|
|
- 必须优先核对统一场景入口、服务逻辑、日志承接和历史只读口径。
|
|
- 对于旧审批流相关对象,若当前只保留审批能力位,可优先判为 `readonly` 或 `partial`,而不是默认 `missing`。
|
|
|
|
## 5. 示例
|
|
|
|
| legacyObjectName | currentVerdict | evidencePath | recommendedHandling | 说明 |
|
|
| --- | --- | --- | --- | --- |
|
|
| 营业账 | implemented | `ChargeDO.java` / `biz_charge` | reuse | 已有主对象承接 |
|
|
| 预存退款详情 | partial | `ChargeServiceImpl.adjustAccounting` + `bk_transaction*` | extend | 退款语义已有,旧细明台账未一对一落地 |
|
|
| 账单-呆坏账详情 | partial | `ChargeServiceImpl.adjustAccounting` | extend | 坏账申请语义已有,但旧细表未独立承接 |
|
|
| 特账明细 | missing | `BACKEND_TABLE_MAPPING.md` | implement-later or readonly-retain | 当前未见稳定承接 |
|