コード例 #1
0
def terminate_scheduler():
    session = get_db_session()
    try:
        SchedulerCommandAdapter(session).terminate(jsonize.loads(request.data))
        response = jsonize.json_response()
    except Exception as e:
        print(e)
        response = jsonize.json_response(status_code=400)
    return response
コード例 #2
0
def remove_request(request_id):
    session = get_db_session()
    try:
        SchedulerCommandAdapter(session).remove_request(request_id)
        session.commit()
        response = jsonize.json_response()
    except Exception as e:
        session.rollback()
        print(e)
        response = jsonize.json_response(status_code=400)
    return response
コード例 #3
0
def update_skill(skill_id: str):
    session = get_db_session()
    try:
        OperatorCommandAdapter(session).save_skill(jsonize.loads(request.data))
        session.commit()
        response = jsonize.json_response()
    except Exception as e:
        session.rollback()
        print(e)
        response = jsonize.json_response(status_code=400)
    return response
コード例 #4
0
def remove_skill(skill_id: str):
    session = get_db_session()
    try:
        OperatorCommandAdapter(session).delete_skill(skill_id)
        session.commit()
        response = jsonize.json_response()
    except Exception as e:
        session.rollback()
        print(e)
        response = jsonize.json_response(status_code=400)
    return response
コード例 #5
0
def remove_team(team_id: str):
    session = get_db_session()
    try:
        UserCommandAdapter(session).remove_team(team_id)
        session.commit()
        response = jsonize.json_response()
    except Exception as e:
        session.rollback()
        print(e)
        response = jsonize.json_response()
        response.status_code = 400
    return response
コード例 #6
0
def withdraw_schedules():
    session = get_db_session()
    try:
        ScheduleCommandAdapter(session).withdraw_schedule(
            jsonize.loads(request.data))
        session.commit()
        response = jsonize.json_response()
    except Exception as e:
        session.rollback()
        print(e)
        response = jsonize.json_response(status_code=400)
    return response
コード例 #7
0
def public_monthly_setting():
    session = get_db_session()
    try:
        SchedulerCommandAdapter(session).public_monthly_setting(
            jsonize.loads(request.data))
        session.commit()
        response = jsonize.json_response()
    except Exception as e:
        session.rollback()
        print(e)
        response = jsonize.json_response(status_code=400)
    return response
コード例 #8
0
def reset_password_user(user_id):
    session = get_db_session()
    try:
        UserCommandAdapter(session).reset_user_password(user_id)
        session.commit()
        response = jsonize.json_response()
    except Exception as e:
        print(e)
        response = jsonize.json_response()
        response.status_code = 400
        session.rollback()
    return response
コード例 #9
0
def update_user(user_id):
    session = get_db_session()
    try:
        UserCommandAdapter(session).save_user(jsonize.loads(request.data))
        session.commit()
        response = jsonize.json_response()
    except Exception as e:
        session.rollback()
        print(e)
        response = jsonize.json_response()
        response.status_code = 400
    return response
コード例 #10
0
def append_user():
    session = get_db_session()
    try:
        UserFacadeAdapter(session).append_user(jsonize.loads(request.data))
        session.commit()
        response = jsonize.json_response()
    except Exception as e:
        session.rollback()
        print(e)
        response = jsonize.json_response()
        response.status_code = 400
    return response
コード例 #11
0
def append_vacation():
    session = get_db_session()
    try:
        req = SchedulerCommandAdapter(session).append_vacation(
            jsonize.loads(request.data))
        session.commit()
        session.refresh(req)
        response = jsonize.json_response(jsonize.dumps(req))
    except Exception as e:
        session.rollback()
        print(e)
        response = jsonize.json_response(status_code=400)
    return response
コード例 #12
0
def get_monthly_setting():
    team_id = request.args.get('team-id')
    schedule_of = to_date(request.args.get('schedule-of'), '%Y-%m')
    scheduler = SchedulerQuery(
        get_db_session()).get_scheduler_of_team_id(team_id)
    monthly_setting = scheduler.monthly_setting(schedule_of.month,
                                                schedule_of.year)
    return jsonize.json_response(jsonize.dumps(monthly_setting))
コード例 #13
0
def get_schedules():
    team_id = request.args.get('team-id')
    schedule_of = to_date(request.args.get('schedule-of'), '%Y-%m')
    day_settings, schedules = ScheduleFacade(get_db_session()).get_schedule(
        team_id, schedule_of.month, schedule_of.year)
    return jsonize.json_response(
        jsonize.dumps({
            'day_settings': day_settings,
            'schedules': schedules
        }))
コード例 #14
0
def launch_scheduler():
    session = get_db_session()
    try:
        print("#### start time: {}".format(
            strftime("%a, %d %b %Y %H:%M:%S", localtime())))
        SchedulerCommandAdapter(session).launch(jsonize.loads(request.data))
        print("#### fin time: {}".format(
            strftime("%a, %d %b %Y %H:%M:%S", localtime())))
        session.commit()
        response = jsonize.json_response()
    except AlreadyLaunchError as e:
        print(e)
        response = jsonize.json_response(
            'already launched this team scheduler. please wait util its completion.',
            status_code=400)
    except Exception as e:
        print(e)
        response = jsonize.json_response(status_code=400)
    return response
コード例 #15
0
def get_vacations():
    team_id = request.args.get('team-id')
    scheduler = SchedulerQuery(
        get_db_session()).get_scheduler_of_team_id(team_id)
    schedule_of = to_date(request.args.get('schedule-of'), '%Y-%m')

    def is_in_period(on_from, on_to):
        return (on_from.year == schedule_of.year and on_from.month <= schedule_of.month
                or on_from.year < schedule_of.year)\
                and (on_to.year == schedule_of.year and on_to.month >= schedule_of.month
                     or schedule_of.year < on_to.year)

    vacations = list(
        filter(lambda x: is_in_period(x.on_from, x.on_to),
               scheduler.vacations))
    return jsonize.json_response(jsonize.dumps(vacations))
コード例 #16
0
def get_operators():
    operators = OperatorQuery(get_db_session()).get_operators()
    return jsonize.json_response(jsonize.dumps(operators))
コード例 #17
0
ファイル: util_api.py プロジェクト: epirevolve/workscheduler
def get_uuid():
    uuid = UuidFactory.new_uuid()
    return jsonize.json_response(jsonize.dumps(uuid))
コード例 #18
0
def get_available_signs():
    return jsonize.json_response(jsonize.dumps(all_available_sign))
コード例 #19
0
def get_work_categories():
    team_id = request.args.get('team-id')
    scheduler = SchedulerQuery(
        get_db_session()).get_scheduler_of_team_id(team_id)
    work_categories = scheduler.work_categories
    return jsonize.json_response(jsonize.dumps(work_categories))
コード例 #20
0
def get_scheduler():
    team_id = request.args.get('team-id')
    scheduler = SchedulerQuery(
        get_db_session()).get_scheduler_of_team_id(team_id)
    return jsonize.json_response(jsonize.dumps(scheduler))
コード例 #21
0
def get_launch_histories():
    histories = SchedulerQuery(get_db_session()).get_launch_histories()
    return jsonize.json_response(jsonize.dumps(histories))
コード例 #22
0
def get_current_runners():
    current_runners = SchedulerQuery(get_db_session()).get_current_runners()
    return jsonize.json_response(jsonize.dumps(current_runners))
コード例 #23
0
def get_teams():
    teams = UserQuery(get_db_session()).get_teams_without_default()
    return jsonize.json_response(jsonize.dumps(teams))