更新Company页面的UI为FUI风格

This commit is contained in:
2025-12-22 00:02:14 +08:00
parent 19ca71068b
commit f09062491e

57
app.py
View File

@@ -11046,40 +11046,37 @@ def get_events_by_mainline():
concept_hierarchy_map = {} # { concept_name: { lv1, lv2, lv1_id, lv2_id } } concept_hierarchy_map = {} # { concept_name: { lv1, lv2, lv1_id, lv2_id } }
try: try:
# 调用 concept-api 获取层级结构 # 从本地文件读取概念层级结构
hierarchy_resp = requests.get( import json
'https://api.valuefrontier.cn/concept-api/hierarchy', import os
timeout=10 hierarchy_file = os.path.join(os.path.dirname(__file__), 'concept_hierarchy_v3.json')
) with open(hierarchy_file, 'r', encoding='utf-8') as f:
if hierarchy_resp.status_code == 200: hierarchy_data = json.load(f)
hierarchy_data = hierarchy_resp.json() hierarchy_list = hierarchy_data.get('hierarchy', [])
hierarchy_list = hierarchy_data.get('hierarchy', [])
# 构建概念名称 -> lv2 映射 # 构建概念名称 -> lv2 映射
# 结构: L1 -> L2 -> L3 -> concepts (concepts 只在 L3 层) # 结构: L1 -> L2 -> L3 -> concepts (concepts 只在 L3 层)
for lv1 in hierarchy_list: for lv1 in hierarchy_list:
lv1_name = lv1.get('name', '') lv1_name = lv1.get('name', '')
lv1_id = lv1.get('id', '') lv1_id = lv1.get('id', '')
for lv2 in lv1.get('children', []) or []: for lv2 in lv1.get('children', []) or []:
lv2_name = lv2.get('name', '') lv2_name = lv2.get('name', '')
lv2_id = lv2.get('id', '') lv2_id = lv2.get('id', '')
# L3 层包含 concepts # L3 层包含 concepts
for lv3 in lv2.get('children', []) or []: for lv3 in lv2.get('children', []) or []:
for concept in lv3.get('concepts', []) or []: for concept in lv3.get('concepts', []) or []:
concept_name = concept if isinstance(concept, str) else concept.get('name', '') concept_name = concept if isinstance(concept, str) else concept.get('name', '')
if concept_name: if concept_name:
concept_hierarchy_map[concept_name] = { concept_hierarchy_map[concept_name] = {
'lv1': lv1_name, 'lv1': lv1_name,
'lv1_id': lv1_id, 'lv1_id': lv1_id,
'lv2': lv2_name, 'lv2': lv2_name,
'lv2_id': lv2_id 'lv2_id': lv2_id
} }
app.logger.info(f'[mainline] 加载概念层级映射: {len(concept_hierarchy_map)} 个概念') app.logger.info(f'[mainline] 加载概念层级映射: {len(concept_hierarchy_map)} 个概念')
else:
app.logger.warning(f'[mainline] 概念层级API返回非200: {hierarchy_resp.status_code}')
except Exception as e: except Exception as e:
app.logger.warning(f'[mainline] 获取概念层级失败: {e}') app.logger.warning(f'[mainline] 获取概念层级失败: {e}')