迁移脚本的一些问题修复
This commit is contained in:
@@ -7,16 +7,19 @@
|
||||
|
||||
## cards.csv 卡资产清单
|
||||
|
||||
每张要迁移的卡一行。**必须同时提供 iccid_19 和 iccid_20**(因为奇成历史数据
|
||||
长度不可信,业务方提供两列作为权威值)。
|
||||
每张要迁移的卡一行。`iccid_19` / `iccid_20` 至少填一个。只有 20 位完整 ICCID
|
||||
时可只填 `iccid_20`,脚本会自动派生前 19 位作为内部稳定 ID。
|
||||
只填 `iccid_20` 的卡,脚本查询奇成主表时只按 20 位精确匹配;只有同时显式填写
|
||||
`iccid_19` 和 `iccid_20` 时,才允许 20 位未命中后退回 19 位查询。
|
||||
|
||||
| 列名 | 必填 | 说明 |
|
||||
|------|------|------|
|
||||
| `iccid_19` | 是 | ICCID 前 19 位(所有卡都有,作为跨文件稳定 ID;必须 19 位纯数字) |
|
||||
| `iccid_19` | 条件必填 | ICCID 前 19 位(内部稳定 ID;必须 19 位;允许奇成历史字母位)。`iccid_20` 已填时可留空 |
|
||||
| `iccid_20` | 视运营商 | 完整 20 位 ICCID;CMCC/CUCC/CBN(20 位运营商) **必填**,CTCC(19 位)**必须留空**;非空时前 19 位必须等于 `iccid_19` |
|
||||
| `is_industry` | 否 | 是否行业卡,留空 = `false`(普通卡) |
|
||||
|
||||
运营商类型从奇成 `tbl_card.category` 自动推断,在查完奇成后会做一致性校验:
|
||||
具体运营商从奇成 `tbl_card.account_id/account_name` 扫描后写入 `mapping.yaml.carriers`;
|
||||
`tbl_card.category` 只是奇成大类,仅辅助人工填写 `target_carrier_type`。填完映射后会做一致性校验:
|
||||
- CTCC 卡填了 `iccid_20` → `errors.csv: carrier_length_conflict` 阻断
|
||||
- 非 CTCC 卡 `iccid_20` 留空 → 同上阻断
|
||||
- `iccid_19` 在奇成 `tbl_card` 命中多条记录 → `errors.csv: legacy_duplicate` 阻断,请业务方人工确认
|
||||
|
||||
@@ -1,4 +0,0 @@
|
||||
iccid_19,iccid_20,is_industry
|
||||
8985200026333877243,89852000263338772439,
|
||||
8986062300000000001,,true
|
||||
8986006654000000000,89860066540000000002,
|
||||
@@ -1,4 +0,0 @@
|
||||
imei,virtual_no,sim_iccid_1,sim_iccid_2,sim_iccid_3,sim_iccid_4
|
||||
860000000000001,DEV-202604-0001,89852000263338772439,8986062300000000001,,
|
||||
,DEV-202604-0002,89860066540000000002,,,
|
||||
860000000000003,,89860000000000004,,,
|
||||
Reference in New Issue
Block a user