Esempio n. 1
0
def save_data_form_grid(request, pk_id, form, formset, formset_pilot):
    if pk_id:
        LogSection.objects.filter(log = pk_id).delete()
        log = Log.objects.get(pk=pk_id)
        if log:
            form = LogForm(request.POST, customer = request.POST.get('customer'), 
                            model = request.POST.get('model'), instance=log)
            
    form = form.save(commit = False)
    try:
        em = Employee.objects.filter(employee_number = request.session[constant.usernameParam])
        if em:
            form.pilot_employee_number = em[0] 
    except:
        print "get employee number"
        pass
    submit = None
    try:
        submit = request.POST.get("submit")
    except Exception as e:
        print 'Loi o kt submit'
        print e
    if submit:
        form.is_submited = True
        messages.success(request, 'Flight Log is submitted successfully.')
    else:
        messages.info(request, 'Flight Log is saved successfully.')
        
    form.save()
    
    log_ob = Log.objects.order_by('log_number').all()
    log_count = log_ob.count()

    formset = formset.save(commit=False)
    for f in formset:
        f.log_id = Log.objects.get(pk=pk_id) if pk_id else log_ob[log_count-1]
        f.save()
        
    formset_pilot = formset_pilot.save(commit=False)
    for f in formset_pilot:
        f.log = Log.objects.get(pk=pk_id) if pk_id else log_ob[log_count-1]
        f.save()
    # Flight Leg section (Pop up)
    try:
        list_flight_log = get_list_session_object(request, Log.objects.filter(id_log = pk_id)[0])
    except Exception as e:
        print 'save trong ham save 230'
        print e
        list_flight_log = get_list_session_object(request, log_ob[log_count-1])
        
    for flight_log in list_flight_log:
        flight_log.save()
Esempio n. 2
0
def save_data_form_grid(request, pk_id, form, formset, formset_pilot, log_number):
    alert = None
    if pk_id:
        LogSection.objects.filter(log=pk_id).delete()
        log = Log.objects.get(pk=pk_id)
        if log:
            form = LogForm(
                request.POST, customer=request.POST.get("customer"), model=request.POST.get("model"), instance=log
            )
            form = form.save(commit=False)
    else:
        form = form.save(commit=False)
        check_lognumber = Log.objects.filter(log_number=log_number)
        o = Log.objects.order_by("log_number").all()
        c = o.count()
        if check_lognumber:
            new_log_num = o[c - 1].log_number + 1
            form.log_number = new_log_num
            alert = "The log number has been used. Your log number changes to %06d" % new_log_num

    try:
        em = Employee.objects.filter(employee_number=request.session[constant.usernameParam])
        if em:
            form.pilot_employee_number = em[0]
    except:
        pass
    submit = None
    try:
        submit = request.POST.get("submit")
    except Exception as e:
        pass
    if submit:
        form.is_submited = True
        messages.success(request, "Flight Log is submitted successfully.")
    else:
        messages.info(request, "Flight Log is saved successfully.")

    form.save()

    log_ob = Log.objects.order_by("log_number").all()
    log_count = log_ob.count()

    formset = formset.save(commit=False)
    for f in formset:
        f.log_id = Log.objects.get(pk=pk_id) if pk_id else log_ob[log_count - 1]
        f.save()

    """Delete older Log Employee"""
    if pk_id:
        LogEmployee.objects.filter(log=pk_id).delete()
    for f in formset_pilot:
        f = f.save(commit=False)
        f.log = Log.objects.get(pk=pk_id) if pk_id else log_ob[log_count - 1]
        f = f.save()
    # Flight Leg section (Pop up)
    try:
        list_flight_log = get_list_session_object(request, Log.objects.filter(id_log=pk_id)[0])
    except Exception as e:
        list_flight_log = get_list_session_object(request, log_ob[log_count - 1])

    for flight_log in list_flight_log:
        if flight_log.partial_nfr == "":
            flight_log.partial_nfr = -1
        flight_log.save()

    return alert