5.3 KiB

Data Model: REV-004 旧账务迁移映射与功能缺失分析

1. 模型目标

本模型用于定义旧账务迁移规划阶段的核心对象,重点覆盖:

  • 旧对象如何分类
  • 新系统如何承接
  • 映射记录如何表达
  • 功能缺失如何判定
  • 迁移批次如何组织

2. Core Entities

2.1 LegacyFinanceObject

表示旧系统中的一个业务财务对象。

Field Type Required Description
legacyTable string Yes 旧表名,如 AT_CHARGESPM_ACCOUNT_RECORDS
legacyObjectName string Yes 旧对象名称,如“营业账”“预存退款”
domainCategory string Yes 领域分类:账单 / 账户 / 收费 / 调整 / 退款 / 坏账 / 发票
primaryIdentifier string Yes 旧对象主标识,如 FeeIdAccLogIdInvoiceInfoId
businessMeaning string Yes 旧对象业务语义
containsWorkflowFields boolean Yes 是否携带审批或流程字段
containsHistoricalOnlyData boolean Yes 是否包含明显历史只读数据

2.2 TargetDomainObject

表示新系统中用于承接旧语义的目标对象。

Field Type Required Description
targetDomain string Yes 新领域名,如 ChargeAggregateTransactionOperationLog
targetPhysicalCarrier string Yes 物理承接对象,如 biz_chargebk_transaction
carrierType string Yes online-main / mapping-layer / history-readonly
supportsOnlineProcessing boolean Yes 是否参与在线业务处理
supportsHistoricalQuery boolean Yes 是否支持历史查询

2.3 CompatibilityMappingRecord

表示旧对象与新对象之间的映射关系。

Field Type Required Description
legacySystem string Yes 原系统标识
legacyTable string Yes 旧表名
legacyId string Yes 旧主键值
legacyBizNo string No 旧业务单号/流水号
targetDomain string Yes 目标领域
targetId string No 新主键值
targetBizNo string No 新业务单号
mappingType string Yes one-to-one / many-to-one / one-to-many / readonly-only
mappingStatus string Yes planned / migrated / verified / failed
migrationBatchNo string Yes 迁移批次号
tracePayload string No 扩展追溯信息

2.4 HistoricalReadonlyRecord

表示仅保留查询与审计用途的历史记录。

Field Type Required Description
legacyTable string Yes 原表名
legacyId string Yes 原主键
legacyStatus string No 原状态
originalIdentifiers string[] Yes 原单号、原账单号、原流水号等
summarySnapshot string Yes 历史摘要
queryDimensions string[] Yes 可查询维度,如客户号、账期、处理类型
readonlyReason string Yes 为什么只读保留

2.5 GapVerdict

表示旧对象相对于当前 backend 的承接状态判定。

Field Type Required Description
legacyObjectName string Yes 旧对象名称
verdict string Yes implemented / partial / readonly / missing
evidenceType string Yes controller / service / do / table-mapping / doc-only
evidencePath string Yes 证据路径
gapDescription string No 缺失说明
recommendedAction string Yes reuse / extend / readonly-retain / implement-later

2.6 MigrationBatch

表示一个迁移批次。

Field Type Required Description
batchNo string Yes 批次编号
batchName string Yes 批次名称
scope string[] Yes 纳入对象列表
dependsOn string[] No 前置批次
validationFocus string[] Yes 校验重点
rollbackScope string[] Yes 回滚范围

3. Relationships

LegacyFinanceObject
  -> maps to -> TargetDomainObject
  -> produces -> CompatibilityMappingRecord
  -> may retain as -> HistoricalReadonlyRecord
  -> is judged by -> GapVerdict

MigrationBatch
  -> groups -> LegacyFinanceObject
  -> validates -> CompatibilityMappingRecord / GapVerdict

4. Validation Rules

  • 每个 LegacyFinanceObject 必须至少对应一种承接方式:在线主模型、兼容映射层或历史只读层之一。
  • 每个被判定为 implementedpartialGapVerdict 必须绑定 backend 证据路径。
  • 每个 HistoricalReadonlyRecord 必须能返回原系统标识和最小查询维度。
  • 每个 CompatibilityMappingRecord 必须带 migrationBatchNomappingStatus
  • 每个迁移批次必须先定义校验重点,再进入实际迁移脚本设计。

5.1 Mapping Status

planned -> migrated -> verified
planned -> failed
migrated -> failed

5.2 Gap Verdict

implemented
partial
readonly
missing

语义说明:

  • implemented:当前 backend 已有稳定在线承接能力
  • partial:已有部分承接,但与旧模型仍有明显差距
  • readonly:不建议在线重建,仅保留历史查询与追溯
  • missing:当前确实未见稳定承接能力,后续需补设计或实现