diff --git a/src/chat/utils/report_generator.py b/src/chat/utils/report_generator.py index 5be2fd19a..5526781fa 100644 --- a/src/chat/utils/report_generator.py +++ b/src/chat/utils/report_generator.py @@ -154,8 +154,7 @@ class HTMLReportGenerator: """ # 增加饼图和条形图 - # static_charts = self._generate_static_charts_div(stat_data, div_id) # 该功能尚未实现 - static_charts = "" + static_charts = self._generate_static_charts_div(stat_data, div_id) # 该功能尚未实现 return f"""
@@ -365,3 +364,83 @@ class HTMLReportGenerator: """ async with aiofiles.open(output_path, "w", encoding="utf-8") as f: await f.write(html_template) + def _generate_static_charts_div(self, stat_data: dict[str, Any], period_id: str) -> str: + """生成静态图表(饼图、条形图)的HTML和JS。""" + provider_cost_data = stat_data.get(PIE_CHART_COST_BY_PROVIDER, {}) + model_cost_data = stat_data.get(BAR_CHART_COST_BY_MODEL, {}) + + if not provider_cost_data and not model_cost_data: + return "
当前时段暂无足够数据生成图表。
" + + provider_labels = provider_cost_data.get('labels', []) + provider_data = provider_cost_data.get('data', []) + model_labels = model_cost_data.get('labels', []) + model_data = model_cost_data.get('data', []) + + return f""" +