From 1b392da58b00a16a0f906daf67b7bccb608d28ef Mon Sep 17 00:00:00 2001 From: wangxu <1318272526@qq.com> Date: Wed, 20 May 2026 16:49:04 +0800 Subject: [PATCH] =?UTF-8?q?=E8=A1=A5=E5=85=85=E8=87=AA=E5=8A=A8=E6=88=AA?= =?UTF-8?q?=E5=9B=BE=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/cross_compare_report.py | 42 ++++++++----------------------------- 1 file changed, 9 insertions(+), 33 deletions(-) diff --git a/app/cross_compare_report.py b/app/cross_compare_report.py index 0a0457f..76aa21f 100644 --- a/app/cross_compare_report.py +++ b/app/cross_compare_report.py @@ -110,19 +110,14 @@ def gen_cross_compare_report(params): return json.dumps(make_common_res(12, '正在生成中,请勿重复提交')) with open(localfile_path, 'w') as f: pass - doc1 = DocDocumentContrastCtx('9660') - cut_image_params = { - 'crossid': crossid, - 'nodeid': nodeid, - 'area_id': area_id, - 'date_list': date_list, - 'compare_date_list': compare_date_list, - 'query_type': query_type, - 'time_range': time_range, - 'weekdays': weekdays, - 'userid': userid, - 'cross_name': cross_static_info['name'], - } + doc1 = DocDocumentContrastCtx(str(nodeid)) + if cut_images == 1: + doc1.cut_image = 1 + doc1.area_id = area_id + doc1.crossid = crossid + doc1.cross_name = cross_static_info['name'] + doc1.time_list = date_list + doc1.tp = time_range # 必要数据获取 cross_delay_data_list = db_cross.query_cross_delay_info(crossid, nodeid, date_list, tp_start) avg_cross_delay_info = gen_avg_cross_delay_pb(cross_delay_data_list, weekdays) @@ -159,11 +154,6 @@ def gen_cross_compare_report(params): item_detail = PartDetail() item_detail.detail = item doc1.tpl_data['part1_1'].table.append(item_detail) - if cut_images == 1: - part1_data['cut_images'] = True - part1_data['cut_image_params'] = cut_image_params - part1_data['cut_image_params']['image_part'] = 'part1' - # todo 补充自动截图逻辑 if 'part2' in parts: doc1.tpl_paragraph['part2']['visible'] = 1 if 'part2_1' in parts: @@ -173,22 +163,12 @@ def gen_cross_compare_report(params): doc1.tpl_data['part2_1'].item2 = part2_1_data['division'] doc1.tpl_data['part2_1'].item3 = part2_1_data['cross_model'] + '的' + part2_1_data['cross_type'] doc1.tpl_data['part2_1'].item4 = part2_1_data['slc_company'] - if cut_images == 1: - part2_1_data['cut_images'] = True - part2_1_data['cut_image_params'] = cut_image_params - part2_1_data['cut_image_params']['image_part'] = 'part2_1' - # todo 补充自动截图逻辑 if 'part2_2' in parts: doc1.tpl_paragraph['part2']['part2_2'] = 1 part2_2_data = gen_compare_report_part2_2_data(road_flow_delay_infos, roads_dir_dict) detail1 = PartDetail() detail1.detail = part2_2_data['detail'] doc1.tpl_data['part2_2'].table = [detail1] - if cut_images == 1: - part2_2_data['cut_images'] = True - part2_2_data['cut_image_params'] = cut_image_params - part2_2_data['cut_image_params']['image_part'] = 'part2_2' - # todo 补充自动截图逻辑 if 'part2_3' in parts: doc1.tpl_paragraph['part2']['part2_3'] = 1 part2_3_data = gen_compare_report_part2_3_data(road_flow_turn_rate, avg_cross_delay_info, inroad_static_info_dict) @@ -196,11 +176,6 @@ def gen_cross_compare_report(params): detail1.detail = "根据车辆分流转向比分析,?进口道流量占比最大为?,?进口道流量占比最小为?。路口的主要车流方向为?,?。" detail1.detail_value = [part2_3_data['max_src_dir'], part2_3_data['max_flow_rate'], part2_3_data['min_src_dir'], part2_3_data['min_flow_rate'], part2_3_data['main_flow_str'], part2_3_data['main_flow_detail']] doc1.tpl_data['part2_3'].table = [detail1] - if cut_images == 1: - part2_3_data['cut_images'] = True - part2_3_data['cut_image_params'] = cut_image_params - part2_3_data['cut_image_params']['image_part'] = 'part2_3' - # todo 补充自动截图逻辑 if 'part3' in parts: doc1.tpl_paragraph['part3']['visible'] = 1 part3_data = gen_compare_report_part3_data(crossid, nodeid, area_id, time_range, tp_start, date_list, avg_cross_delay_info, roads_dir_dict, inroad_static_info_dict, cross_phase, is_peak, cross_ledger_info, weekdays) @@ -590,6 +565,7 @@ def query_collect_report_record(params): if not str(area_id).lstrip('-').isdigit() or int(area_id) not in area_list: return json.dumps(make_common_res(5, '辖区id异常,请检查后重试')) report_type = check_param(params, 'report_type') + report_type = int(report_type) if not report_type or report_type not in(0, 1, 2, 3): # 0 对比报告 ,其余为预留 return json.dumps(make_common_res(7, '缺少报告类型,请刷新后重试'))