Use Chinese short names in IPO reports
Request: Prefer stock-app-style Chinese display names in IPO report tables, for example 圣邦股份 instead of the full legal issuer name. Changes: - Update the hk-ipo-analyst report naming rule to prefer sourced stock short names in 中文名 columns. - Export stock_short_name into the analysis model dataset. - Make generated single-ticker reports use the short Chinese name as the title/display label while retaining legal names for disambiguation. - Refresh the latest dated report and reports README to use Chinese short names consistently. Verification: - git diff --check - .venv/bin/python -m py_compile scripts/build_analysis_dataset.py scripts/generate_ipo_report.py - CSV validation for stock_short_name on 03661, 01688, and 01191 - Confirmed latest report and README contain no matched full legal issuer names for the refreshed shortlist
This commit is contained in:
@@ -150,9 +150,18 @@ def fmt_int(value: int | None) -> str:
|
||||
return f"{value:,}"
|
||||
|
||||
|
||||
def chinese_display_name(record: dict[str, str]) -> str:
|
||||
return record.get("stock_short_name") or record.get("company_name_zh") or ""
|
||||
|
||||
|
||||
def company_display_name(record: dict[str, str]) -> str:
|
||||
short_name = record.get("stock_short_name") or ""
|
||||
chinese_name = record.get("company_name_zh") or ""
|
||||
english_name = record.get("company_name_en") or ""
|
||||
if short_name and chinese_name and short_name != chinese_name:
|
||||
return f"{short_name}(法定中文名:{chinese_name})"
|
||||
if short_name:
|
||||
return short_name
|
||||
if chinese_name and english_name:
|
||||
return f"{chinese_name}({english_name})"
|
||||
return chinese_name or english_name or "未记录"
|
||||
@@ -416,7 +425,7 @@ def build_report(record: dict[str, str], rows: list[dict[str, str]], stage: str,
|
||||
paths = source_paths(record, stage)
|
||||
source_lines = [f"- `{path}`" for path in paths] or ["- 本阶段没有记录来源路径。"]
|
||||
company_name = company_display_name(record)
|
||||
title_name = record.get("company_name_zh") or record.get("company_name_en") or ""
|
||||
title_name = chinese_display_name(record) or record.get("company_name_en") or ""
|
||||
title_prefix = f"{ticker} {title_name}" if title_name else ticker
|
||||
|
||||
lines = [
|
||||
|
||||
Reference in New Issue
Block a user