fix: add missing self._pipeline_mode assignment + getattr guard + init stats_data before try
This commit is contained in:
@ -818,6 +818,9 @@ class WaterQualityReportGenerator:
|
|||||||
else:
|
else:
|
||||||
print(f"[报告] 用户选择 → {report_mode}")
|
print(f"[报告] 用户选择 → {report_mode}")
|
||||||
|
|
||||||
|
# 存储管线模式到实例,供后续 _add_result_analysis_section 等使用
|
||||||
|
self._pipeline_mode = 'water_index' if report_mode == 'formula' else 'ml'
|
||||||
|
|
||||||
if report_mode == 'formula':
|
if report_mode == 'formula':
|
||||||
return self._generate_formula_report(parameters, report_title, output_path,
|
return self._generate_formula_report(parameters, report_title, output_path,
|
||||||
ai_maps_limit=ai_maps_limit, on_progress=on_progress)
|
ai_maps_limit=ai_maps_limit, on_progress=on_progress)
|
||||||
@ -1857,7 +1860,7 @@ class WaterQualityReportGenerator:
|
|||||||
stats_dir = work_dir_path / "5_Data_Cleaning"
|
stats_dir = work_dir_path / "5_Data_Cleaning"
|
||||||
|
|
||||||
if not stats_dir.exists():
|
if not stats_dir.exists():
|
||||||
alt_name = "10_WaterIndex_CSV" if self._pipeline_mode == 'water_index' else "5_Data_Cleaning"
|
alt_name = "10_WaterIndex_CSV" if getattr(self, '_pipeline_mode', 'ml') == 'water_index' else "5_Data_Cleaning"
|
||||||
doc.add_paragraph(f"未找到数据目录: {stats_dir}")
|
doc.add_paragraph(f"未找到数据目录: {stats_dir}")
|
||||||
doc.add_page_break()
|
doc.add_page_break()
|
||||||
return start_figure_num
|
return start_figure_num
|
||||||
@ -1870,6 +1873,7 @@ class WaterQualityReportGenerator:
|
|||||||
|
|
||||||
csv_path = csv_files[0] # 使用找到的第一个CSV文件
|
csv_path = csv_files[0] # 使用找到的第一个CSV文件
|
||||||
|
|
||||||
|
stats_data = []
|
||||||
try:
|
try:
|
||||||
if getattr(self, '_pipeline_mode', 'ml') == 'water_index':
|
if getattr(self, '_pipeline_mode', 'ml') == 'water_index':
|
||||||
# 水色指数模式:遍历所有 CSV,每个公式一行统计
|
# 水色指数模式:遍历所有 CSV,每个公式一行统计
|
||||||
|
|||||||
Reference in New Issue
Block a user