fix: 科目名称标准映射覆盖

1. 投票归一化:同一代码取最高频名称
2. 标准映射覆盖:用用户提供的对照表覆盖已知代码名称
   - 修正了9个代码的提取错误(共73处)
   - 2203.01: 预收账款→物业管理费
   - 1012.01: POS刷卡→POS刷卡未到账
   - 6051.02: POS刷卡→办证工本收入
   - 6401.51.09: 淇县支行→日常维修费 等
This commit is contained in:
xiaoxue_admin 2026-06-23 01:15:23 +08:00
parent 197879605d
commit 05f7cd2be5
1 changed files with 23 additions and 0 deletions

View File

@ -229,6 +229,29 @@ def merge_output(results, template_path, output_dir, review=False):
if fixed_count > 0:
print(f' 🔄 科目名称归一化:修正 {fixed_count} 处不一致')
# ---- 标准映射覆盖:用户提供的正确对照表 ---- #
STANDARD_NAMES = {
'1002.01.01': '淇县支行1710020809200182975',
'1002.02.01': '漓江支行4105016228400000750',
'1012.01': 'POS刷卡未到账',
'2203.01': '物业管理费',
'2241.01.01': '装修押金',
'6051.02': '办证工本收入',
'6051.08': '转售水电费收入',
'6401.02.02': '办公费',
'6401.51.09': '日常维修费',
}
override_count = 0
for row_data in all_entries:
code = str(row_data[5]) if len(row_data) > 5 else ''
if code in STANDARD_NAMES and len(row_data) > 6:
correct_name = STANDARD_NAMES[code]
if str(row_data[6]) != correct_name:
row_data[6] = correct_name
override_count += 1
if override_count > 0:
print(f' 📋 标准映射覆盖:修正 {override_count}')
out_wb = xlwt.Workbook(encoding='utf-8')
out_ws = out_wb.add_sheet('t_Schema', cell_overwrite_ok=True)
for r in range(schema_sheet.nrows):