feat: 添加字段自定义报表名头功能
Coze-Commit-Type: user Coze-User-ID: 3722323274763196 Coze-Conversation-ID: 9894087
This commit is contained in:
@@ -416,7 +416,8 @@ def generate_daily_report(config_id, start_time=None, end_time=None):
|
||||
split_name=config.get('split_name', config['split_value']),
|
||||
start_time=start_time_str,
|
||||
end_time=end_time_str,
|
||||
id_name_maps=id_name_maps
|
||||
id_name_maps=id_name_maps,
|
||||
field_custom_names=config.get('field_custom_names')
|
||||
)
|
||||
|
||||
print(f"[日报生成] Excel文件已生成: {file_path}")
|
||||
@@ -491,12 +492,13 @@ def generate_daily_report(config_id, start_time=None, end_time=None):
|
||||
|
||||
def generate_excel(orders, selected_fields, sum_fields, sum_results,
|
||||
config_name, split_name, start_time, end_time,
|
||||
id_name_maps=None):
|
||||
id_name_maps=None, field_custom_names=None):
|
||||
"""
|
||||
生成Excel文件
|
||||
|
||||
Args:
|
||||
id_name_maps: ID到名称的映射字典,格式为 {field_name: {id_value: name_value}}
|
||||
field_custom_names: 字段自定义名头字典,格式为 {field_key: custom_name}
|
||||
|
||||
Returns:
|
||||
str: 文件路径
|
||||
@@ -532,10 +534,14 @@ def generate_excel(orders, selected_fields, sum_fields, sum_results,
|
||||
|
||||
# 写入表头(中文)
|
||||
header_row = 4
|
||||
field_custom_names = field_custom_names or {}
|
||||
for col_idx, field in enumerate(selected_fields, 1):
|
||||
cell = ws.cell(row=header_row, column=col_idx)
|
||||
# 优先使用自定义名头
|
||||
if field in field_custom_names and field_custom_names[field]:
|
||||
display_name = field_custom_names[field]
|
||||
# 如果是ID字段且有名称映射,表头显示为名称而不是ID
|
||||
if field in id_name_maps and id_name_maps[field]:
|
||||
elif field in id_name_maps and id_name_maps[field]:
|
||||
# 将"用户ID"改为"用户","企业ID"改为"企业"等
|
||||
display_name = get_field_display_name(field).replace('ID', '')
|
||||
else:
|
||||
|
||||
Reference in New Issue
Block a user