• Data Governance Dev's avatar
    feat(standards): 单位/法人/经办人/对公账户 校验 12 项 indicator (3 批合并提交) · 42a0a18c
    Data Governance Dev authored
    === 第一批:单位基本信息 7 项 ===
    * IND-012-a 单位名称 格式(length [4,100])
    * IND-013-a 单位类型 值域(GB/T 12402-2017)
    * IND-013-b 经济类型 值域(国统字〔2011〕86 号)
    * IND-013-c 行业代码 格式(GB/T 4754-2017)
    * IND-014-a 单位设立日期(GB/T 7408)
    * IND-014-b 启缴年月(GB/T 7408)
    * IND-015-a 发薪日 值域
    
    === 第二批:对公账户 + 老代码兼容 3 项 ===
    * IND-002-c USCC 老代码兼容(GB 32100-2015 附录 A.1 + GB/T 12403-1990 MOD 11)
    * IND-016-a CNAPS 联行号 格式(12 位 + 行别字典)
    * IND-016-b 银行账号 格式(12~22 位 + 16~19 位 Luhn)
    
    === 第三批:跨表/跨字段 2 项 ===
    * IND-901 单位名 全局唯一性(单字段 GROUP BY HAVING)
    * IND-902 账户名 一致性(同行双字段配对 + 容错归一化)
    
    === 配套 ===
    * 11 个已有 indicator 补 comment_keywords 让法人/经办人/单位字段自动匹配
      - ind_003a_mobile / 005a_fixed_phone / 006a_address / 006b_postal_code
      - ind_101_id_type / 201_id_card / 202_passport / 203_hkmacao / 204_foreign
      - ind_401_name_charset / 402_name_length
    * orchestrator _derive_target + special_checks 加 12 段描述
    * analysis_tree.json 新增 2 个分组:
      - business_unit(IND-012~15)
      - business_unit_bank(IND-016 + 901/902)
      - standards 组加 IND-002-c(老代码兼容归入 USCC 体系)
    * step7 dispatch 扩展为 4 类执行路径:
      - 单值 / 跨字段 / 跨表聚合 / 跨表单字段 GROUP BY
      - 新增 _run_round3_global_uniqueness_one / _run_round3_cross_field_one
      - run_step7_for_indicator if/elif 链加 IND-901/902 分支
    * 2 个新 SQL 模板:
      - sample_field_groups_single.sql(IND-901)
      - sample_field_pairs_two_text.sql(IND-902)
    * WORKLOG.md 加 2 段工作记录(含 GB/T 12403 字符集修正、GB/T 4754 位数修正等关键技术细节)
    
    验证:orchestrator._STEPS 从 36 → 48 个 step(+12)
    42a0a18c
ind_014a_company_establishment_date.py 4 KB