修正上游路口相关内容

This commit is contained in:
wangxu 2025-11-04 18:25:35 +08:00
parent aca72f00f7
commit 04996409da
3 changed files with 11 additions and 9 deletions

View File

@ -149,7 +149,7 @@ def query_cross_delay_info_controller(params):
road_flow_delay_infos = gen_road_delay_index(avg_cross_delay_info, roads_dir_dict)
# 路段进出口方向分流比
road_flow_turn_rate = gen_flow_turn_rate_index(avg_cross_delay_info, roads_dir_dict)
next_cross_info = get_next_cross(nodeid, area_id, roads_dir_dict)
prev_cross_info = get_prev_cross(nodeid, area_id, roads_dir_dict)
res = make_common_res(0, 'ok')
res['data'] = {
'overview': overview_res,
@ -157,7 +157,7 @@ def query_cross_delay_info_controller(params):
'road_flow_turn_rate': road_flow_turn_rate,
'cross_static_info': cross_static_info,
'ledger_info': cross_ledger_info,
'next_cross_info': next_cross_info
'next_cross_info': prev_cross_info
}
excel = check_param(params, 'excel')
if not excel:

View File

@ -1870,17 +1870,19 @@ def count_lsr_half(turn_str):
return round(left_count, 1), round(straight_count, 1), round(right_count, 1)
def get_next_cross(nodeid, area_id, roads_dir_dict):
def get_prev_cross(nodeid, area_id, roads_dir_dict):
src_cross = {}
for src_dir in roads_dir_dict.keys():
outroadid = roads_dir_dict[src_dir]['out']
if outroadid and outroadid != '-':
row_list = db_tmnet.query_out_cross(outroadid)
inroadid = roads_dir_dict[src_dir]['in']
if inroadid and inroadid != '-':
row_list = db_tmnet.query_out_cross(inroadid)
if len(row_list) > 0:
crossid = row_list[0]['to_crossid']
crossid = row_list[0]['from_crossid']
length = row_list[0]['from_road_length']
cross_info = db_tmnet.query_next_cross_info(nodeid, area_id, crossid)
if cross_info:
src_cross[src_dir] = cross_info[0]
src_cross[src_dir]['length'] = length
return src_cross

View File

@ -158,8 +158,8 @@ class TmnetDbHelper(TableDbHelperBase):
""" % (crossid, start_hm, first_date, end_date)
return self.do_select(sql)
def query_out_cross(self, outroadid):
sql = "select to_crossid from road where roadid = '%s'" % outroadid
def query_out_cross(self, inroadid):
sql = "select from_crossid, from_road_length from road where roadid = '%s'" % inroadid
return self.do_select(sql)
def query_next_cross_info(self, nodeid, area_id, crossid):