Beispiel #1
0
def __edit_if_post_method(request, aircraft_id: int, context):
    if request.method == 'POST':
        try:
            aircraft = __set_attribute_from_request_edit(request, aircraft_id)
            aircraft.date_updated = datetime.date.today()
            app_service_provider.aircraft_management_service().edit_aircraft(
                aircraft_id, aircraft)
            context['saved'] = True
            return context
        except Exception as e:
            context['saved'] = False
            raise e
Beispiel #2
0
def __create_aircraft_if_post_method(request, context):
    if request.method == 'POST':
        try:
            aircraft = __set_attribute_from_request(request)
            aircraft.aircraft_no = str(uuid.uuid4()).replace('-',
                                                             '')[0:10].upper()
            aircraft.date_created = datetime.date.today()
            app_service_provider.aircraft_management_service(
            ).register_aircraft(aircraft)
            context['saved'] = True
        except Exception as e:
            context['saved'] = False
            raise e
        return context
Beispiel #3
0
def __get_aircraft_or_rise_404(aircraft_id: int):
    try:
        aircraft = app_service_provider.aircraft_management_service(
        ).aircraft_details(aircraft_id)
        return aircraft
    except Exception:
        raise Http404('Aircraft Dose Not Exit')
Beispiel #4
0
def register_flight(request):
    aircrafts = app_service_provider.aircraft_management_service(
    ).get_aircraft_list()
    context = {'title': 'Flight Registration', 'aircrafts': aircrafts}
    __create_flight_if_post_method(request, context)
    if request.method == 'POST' and context['saved']:
        return redirect('list_flight')
    return render(request, 'Flight/register_flight.html', context)
Beispiel #5
0
def edit_flight(request, flight_id: int):
    flight = __get_flight_or_rise_404(flight_id)
    aircrafts = app_service_provider.aircraft_management_service(
    ).get_aircraft_list()
    context = {'flight': flight, 'aircrafts': aircrafts}
    __edit_if_post_method(request, flight_id, context)
    new_flight_dto = __edit_if_post_method(request, flight_id, context)
    if new_flight_dto is not None:
        context['aircraft'] = new_flight_dto
        if context['saved'] is True:
            return redirect('list_flight')
    return render(request, 'Flight/edit_flight.html', context)
Beispiel #6
0
def aircraft_details(request, aircraft_id: int):
    aircraft = app_service_provider.aircraft_management_service(
    ).aircraft_details(aircraft_id)
    context = {'aircraft': aircraft, 'title': 'Aircraft Details'}
    return render(request, 'Aircraft/aircraft_details.html', context)
Beispiel #7
0
def list_aircraft(request):
    aircrafts = app_service_provider.aircraft_management_service(
    ).list_aircraft()
    context = {'aircrafts': aircrafts, 'title': 'Aircrafts'}
    return render(request, 'Aircraft/list_aircraft.html', context)
Beispiel #8
0
def delete_aircraft(request, aircraft_id):
    app_service_provider.aircraft_management_service().delete_aircraft(
        aircraft_id)
    return redirect('list_aircraft')