优化绿波优化任务流程中对时段校验逻辑不通过时的返回值
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_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)
|
task_tp_info = db_task.query_wave_task_tp_info(task_no, nodeid, area_id)
|
||||||
wave_info = db_wave.query_wave_info(waveid)
|
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']):
|
wave_tp_info = db_wave.query_wave_tp_infos(waveid, wave_info['srcDir'])
|
||||||
return json.dumps(make_common_res(13, '时段校验失败,绿波时段必须包含需求确认单上的所有时段'))
|
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')
|
progress = check_param(params, 'progress')
|
||||||
if not progress:
|
if not progress:
|
||||||
return json.dumps(make_common_res(11, '缺少任务进度信息,请刷新后重试'))
|
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)
|
wave_crosses = db_wave.query_wave_crosses(waveid)
|
||||||
|
|
||||||
# 补充同步绿波时段表id信息的逻辑
|
# 补充同步绿波时段表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)
|
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:
|
if not async_tp_info_res:
|
||||||
return json.dumps(make_common_res(15, '当前绿波设置的运行时段与需求确认单中要求的协调时段不一致,请按需求确认单中要求调整'))
|
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_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}
|
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}
|
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:
|
for tp_key in task_tp_dict:
|
||||||
if tp_key not in wave_info_dict:
|
if tp_key not in wave_info_dict:
|
||||||
return False
|
conflict_tp_list.append(task_tp_dict[tp_key])
|
||||||
return True
|
return conflict_tp_list
|
||||||
|
|
||||||
|
|
||||||
def query_usable_monitor_job_info(params):
|
def query_usable_monitor_job_info(params):
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue