Files
junhong_cmp_fiber/scripts/migration/config/mapping.yaml.kw
Break 1f634eb465
All checks were successful
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Successful in 8m3s
init
2026-06-16 15:15:50 +08:00

123 lines
5.4 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 奇成迁移映射配置(由 scan_legacy.py 生成/增量补全)
#
# 使用方式:
# 1. cards.csv 必填;devices.csv 可选。没有 devices.csv 时就是纯卡迁移。
# 2. legacy_* 字段来自奇成扫描,一般不要手工修改。
# 3. target_* 字段需要人工填写,否则生成 SQL 时会写入 errors.csv 并阻断对应资产。
# 4. 资产归属先看 overrides,再看 ownership_rules;只有显式 legacy_agent 模式才读取 agents。
# ============== 全局配置 ==============
# 迁移操作者账号 ID,写入 creator/updater/operator_id。线上建议使用后台超级管理员 ID。
migration_user_id: 0
# 本次迁移批次号。每批线上迁移保持唯一,方便收尾、验收和回滚定位。
migration_batch_no: "MIGRATION-QICHENG-20260615"
# ============== 资产归属与槽位规则 ==============
# default_shop 模式下的批量目标店铺编码;mode=legacy_agent/none 时可保持 null。
ownership_rules:
default_target_shop_code: KWTX
# 设备规则只在存在 resources/devices.csv 时生效。
device:
# default_shop=默认店铺;legacy_agent=按默认/行级旧套餐读取槽位绑定卡的奇成 agent_id 映射店铺;none=平台库存。
mode: "legacy_agent"
# 默认当前卡槽。devices.csv 未填 current_slot 时使用这里;写入 tb_device_sim_binding.is_current。
current_slot: null
# 默认旧套餐读取卡槽。devices.csv 未填 package_source_slot 时使用这里;新系统套餐仍挂设备;不填则回退 current_slot。
package_source_slot: null
standalone_card:
# default_shop=默认店铺;legacy_agent=按奇成 agent_id 映射店铺;none=平台库存。
mode: "legacy_agent"
# ============== 套餐迁移规则 ==============
package_rules:
# active=当前生效正式套餐;pending=未生效待生效正式套餐。
migrate_statuses:
- "active"
- "pending"
# ============== 少量资产级覆盖 ==============
# 覆盖优先级:devices.csv 行级槽位 > overrides.devices 槽位 > ownership_rules.device 默认槽位。
overrides:
# 设备级特殊处理。virtual_no 对应 devices.csv 的 virtual_no/imei 兜底值。
devices: []
# 独立卡特殊处理。iccid 可填 19 位或 20 位。
cards: []
# ============== 运营商映射 ==============
# scan_legacy 按奇成 tbl_card.account_id/account_name 分组写入;只需要人工填写 target_*。
# target_carrier_type 只能填 CMCC / CUCC / CTCC / CBN。
carriers:
- legacy_account_id: "64E0F6057D6749ABB211E11D51C3F1AA"
legacy_account_name: "新移动15-1"
legacy_category: 126
legacy_category_name: "GS移动"
target_carrier_id: 2
target_carrier_type: CMCC
target_carrier_name: 移动15-BE20030985258
- legacy_account_id: "811CA4BF74E24CD7AAEC3C54EF1BAE63"
legacy_account_name: "新移动15-2"
legacy_category: 126
legacy_category_name: "GS移动"
target_carrier_id: 2
target_carrier_type: CMCC
target_carrier_name: 移动15-BE20030985258
- legacy_account_id: "6A6D70450525448780AD4C3CCE6D4B29"
legacy_account_name: "电信10-1"
legacy_category: 124
legacy_category_name: "GS电信"
target_carrier_id: 7
target_carrier_type: CTCC
target_carrier_name: 电信10-qiangukeji
- legacy_account_id: "B0C93CB44C184DFDA230DF0E574A395F"
legacy_account_name: "电信9"
legacy_category: 124
legacy_category_name: "GS电信"
target_carrier_id: 4
target_carrier_type: CTCC
target_carrier_name: 电信5-junhong004
- legacy_account_id: "ED12247823374841934283AAD40CCA9D"
legacy_account_name: "联通15-1(3T)"
legacy_category: 125
legacy_category_name: "GS联通"
target_carrier_id: 3
target_carrier_type: CUCC
target_carrier_name: 联通31-710WLW17915117
- legacy_account_id: "648D3C383B904D9686EC8650D5F20A7C"
legacy_account_name: "联通38"
legacy_category: 125
legacy_category_name: "GS联通"
target_carrier_id: 3
target_carrier_type: CUCC
target_carrier_name: 联通31-710WLW17915117
# ============== 套餐映射 ==============
# scan_legacy 按奇成 tbl_card_life.meal_id 分组写入;target_package_id 必须指向新库正式套餐。
packages:
- legacy_meal_id: "D6695908379395072"
legacy_meal_name: "特惠畅享月卡套餐30G/月1个月"
target_package_id: 40
- legacy_meal_id: "D6695911346816000"
legacy_meal_name: "特惠畅享月卡套餐100G/月1个月"
target_package_id: 39
- legacy_meal_id: "D6695913990718464"
legacy_meal_name: "特惠畅享月卡套餐1000G/月1个月"
target_package_id: 37
- legacy_meal_id: "D6695917828850688"
legacy_meal_name: "特惠畅享年卡套餐3000G/月12个月"
target_package_id: 34
# ============== 套餐系列快照(可选) ==============
# 资产 series_id 优先从 target_package_id 对应的 tb_package.series_id 反查;target_series_id 可作无套餐时的兜底。
series:
- legacy_series_id: "61721B92E3FF4F53834AC16F4214667C"
legacy_series_name: "2026新春特惠套餐"
target_series_id: 5
# ============== 代理-店铺映射(legacy_agent 归属 + 代理钱包) ==============
# standalone_card/device mode=legacy_agent 时,资产按这里的 target_shop_code 分配。
# 不使用 legacy_agent 时,这里只影响 migrate_runtime.py 的代理钱包初始化。
agents:
- legacy_agent_id: "0072250EBB88422C88A573AB06870D17"
legacy_agent_name: "酷蛙通讯"
target_shop_code: KWTX