diff --git a/app/db_cross_delay.py b/app/db_cross_delay.py index db7e238..92ba0c6 100644 --- a/app/db_cross_delay.py +++ b/app/db_cross_delay.py @@ -156,7 +156,7 @@ class CrossDbHelper(TableDbHelperBase): def query_csr_data(self, nodeid, key, crossid): sql = f""" - select * from traffic_{nodeid}.csr_data where key = '{key}' and crossid = '{crossid}' + select * from traffic_{nodeid}.cross_csrs where `key` = '{key}' and crossid = '{crossid}' """ return self.do_select(sql) diff --git a/app/eva_common.py b/app/eva_common.py index e12ed5b..19c1c3f 100644 --- a/app/eva_common.py +++ b/app/eva_common.py @@ -761,7 +761,7 @@ def gen_flow_turn_rate_index(avg_cross_delay_info, roads_dir_dict): split_turns_set.add(2) else: split_turns_set.add(1) - car_num = road_delay_dict[roadid].delay_info.car_num + car_num = road_delay_dict[roadid].delay_info.turn_ratio_1 + road_delay_dict[roadid].delay_info.turn_ratio_0 + road_delay_dict[roadid].delay_info.turn_ratio_2 in_flow_rate = int(car_num / cross_sum_car_num * 100) if cross_out_sum_car_num != 0 else 0 l_rate = int(road_delay_dict[roadid].delay_info.turn_ratio_1 / car_num * 100) if car_num != 0 else 0 s_rate = int(road_delay_dict[roadid].delay_info.turn_ratio_0 / car_num * 100) if car_num != 0 else 0 diff --git a/app/monitor_common.py b/app/monitor_common.py index ea168ef..55bed98 100644 --- a/app/monitor_common.py +++ b/app/monitor_common.py @@ -1151,6 +1151,8 @@ def cross_tide_problems(cross_tide_crosses, routing_crosses, date_type, records, shield_state = 1 roads_dir_dict = routing_crosses[crossid]['roads_dir_dict'] road_dir = {v['in']: k for k, v in roads_dir_dict.items()} + if item.detail.inroadid_pair1[0] not in road_dir or item.detail.inroadid_pair1[1] not in road_dir: + continue total_num += 1 is_new, cont_times = 0, 0 if crossid in records['tide'].keys():