def get_task_day(): projects_result, project_count = select_scheduler_enable_project() write_to_log(filename='scheduler', defname='get_task_day', result='获取启用定时器任务的项目' + (str(project_count) if project_count else '0')) for project in projects_result: plan_result, plan_count = select_usergroup_jobs_plan( project=project[0]) write_to_log(filename='scheduler', defname='get_task_day', result='查询到项目' + project[0] + '含有可用计划' + (str(plan_count) if plan_count else '0')) for plan in plan_result: times = get_next_time(timer=plan[2], current_time=int(time.time())) for time_1 in times: func_loads = json.loads(plan[1]) func_loads['args']['noti_status'] = plan[4] insert_scheduler_job(project=project[0], group_id=plan[0], datetime=time_1['time_int'], data={ 'datetime_int': time_1['time_int'], 'datetime_tuple': time_1['time_tuple'], 'datetime': time.strftime("%Y-%m-%d %H:%M:%S", time_1['time_tuple']), 'date': time.strftime("%Y-%m-%d", time_1['time_tuple']), 'func': func_loads }, priority=plan[3] if plan[3] else 13, status=16) write_to_log( filename='scheduler', defname='get_task_day', result='项目' + str(project[0]) + '计划' + str(plan[0]) + '已添加时间' + time.strftime("%Y-%m-%d %H:%M:%S", time_1['time_tuple'])) write_to_log(filename='scheduler', defname='get_task_day', result='项目' + str(project[0]) + '计划' + str(plan[0]) + '已添加计划条目' + str(len(times)))
def create_scheduler_jobs_manual(): #手动创建分群任务 project = get_url_params('project') plan_id = get_url_params('plan_id') send_at = get_url_params('send_at') if get_url_params('send_at') else int( time.time()) password = get_url_params('password') if password == admin.admin_password and request.method == 'POST': try: count = 0 plan_result, plan_count = select_usergroup_jobs_plan_manual( project=project, plan_id=plan_id) for plan in plan_result: times = get_next_time(current_time=int(send_at)) for time_1 in times: insert_result, insert_count = insert_scheduler_job( project=project, group_id=plan[0], datetime=time_1['time_int'], data={ 'datetime_int': time_1['time_int'], 'datetime_tuple': time_1['time_tuple'], 'datetime': time.strftime("%Y-%m-%d %H:%M:%S", time_1['time_tuple']), 'date': time.strftime("%Y-%m-%d", time_1['time_tuple']), 'func': json.loads(plan[1]) }, priority=plan[3] if plan[3] else 13, status=16) write_to_log( filename='api_noti', defname='create_scheduler_jobs_manual', result='项目' + str(project) + '计划' + str(plan[0]) + '已添加时间' + time.strftime( "%Y-%m-%d %H:%M:%S", time_1['time_tuple'])) count = count + insert_count returnjson = {'result': 'success', 'insert_count': count} return jsonify(returnjson) except Exception: error = traceback.format_exc() write_to_log(filename='api_noti', defname='create_scheduler_jobs_manual', result=error) returnjson = {'result': 'fail', 'error': error} return jsonify(returnjson)