优化绿波优化任务流程中对时段校验逻辑不通过时的返回值
This commit is contained in:
parent
4ab9a054c8
commit
8a14ae4bd2
|
|
@ -1819,8 +1819,15 @@ def update_greenwave_task_stage_info(params):
|
|||
task_additional_info = db_task.query_wave_task_additional_info_sql(task_no, nodeid, area_id)
|
||||
task_tp_info = db_task.query_wave_task_tp_info(task_no, nodeid, area_id)
|
||||
wave_info = db_wave.query_wave_info(waveid)
|
||||
if modify_stage != 1 and not verify_task_wave_tp(task_tp_info, waveid, wave_info['srcDir']):
|
||||
return json.dumps(make_common_res(13, '时段校验失败,绿波时段必须包含需求确认单上的所有时段'))
|
||||
wave_tp_info = db_wave.query_wave_tp_infos(waveid, wave_info['srcDir'])
|
||||
conflict_tp_list = verify_task_wave_tp(task_tp_info, waveid, wave_info['srcDir'])
|
||||
if modify_stage != 1 and len(conflict_tp_list) > 0:
|
||||
res = make_common_res(13, '时段校验失败,绿波时段必须包含需求确认单上的所有时段')
|
||||
res['data'] = {
|
||||
'wave_tp_info': wave_tp_info,
|
||||
'conflict_tp_info': conflict_tp_list
|
||||
}
|
||||
return json.dumps(res)
|
||||
progress = check_param(params, 'progress')
|
||||
if not progress:
|
||||
return json.dumps(make_common_res(11, '缺少任务进度信息,请刷新后重试'))
|
||||
|
|
@ -1833,7 +1840,6 @@ def update_greenwave_task_stage_info(params):
|
|||
wave_crosses = db_wave.query_wave_crosses(waveid)
|
||||
|
||||
# 补充同步绿波时段表id信息的逻辑
|
||||
wave_tp_info = db_wave.query_wave_tp_infos(waveid, wave_info['srcDir'])
|
||||
async_tp_info_res = db_task.async_wave_tp_id(wave_tp_info, task_tp_info, task_no, nodeid, area_id)
|
||||
if not async_tp_info_res:
|
||||
return json.dumps(make_common_res(15, '当前绿波设置的运行时段与需求确认单中要求的协调时段不一致,请按需求确认单中要求调整'))
|
||||
|
|
@ -1942,10 +1948,11 @@ def verify_task_wave_tp(task_tp_info, waveid, srcDir):
|
|||
wave_tp_info = db_wave.query_wave_tp_infos(waveid, srcDir)
|
||||
wave_info_dict = {row['tp_start'] + '-' + row['tp_end'] + '-' + row['weekday']: row for row in wave_tp_info}
|
||||
task_tp_dict = {row['tp_start'] + '-' + row['tp_end'] + '-' + row['weekday']: row for row in task_tp_info}
|
||||
conflict_tp_list = []
|
||||
for tp_key in task_tp_dict:
|
||||
if tp_key not in wave_info_dict:
|
||||
return False
|
||||
return True
|
||||
conflict_tp_list.append(task_tp_dict[tp_key])
|
||||
return conflict_tp_list
|
||||
|
||||
|
||||
def query_usable_monitor_job_info(params):
|
||||
|
|
|
|||
Loading…
Reference in New Issue