Exemple #1
0
def charge_edit():

    try:
        page = int(request.args.get('page', 1))
    except ValueError:
        page = 1

    if request.form['year']:

        charges = Charge.objects.paginate(page=page, per_page=10)
        for char in charges:
            budget = ChargeBudget.objects(
                Q(charge_id=char.id) & Q(date_app=function.datetime_convert(
                    datetime.date(int(request.form['year']), 1, 1)))).first()

            clef = 'name[' + str(char.id) + ']'

            if budget:
                if float(request.form[clef]) > 0:
                    budget.montant = float(request.form[clef])
                    budget.save()
                else:
                    budget.delete()
            else:
                budget_new = ChargeBudget()
                if float(request.form[clef]) > 0:
                    budget_new.montant = float(request.form[clef])
                else:
                    budget_new.montant = float(0)
                budget_new.date_app = function.datetime_convert(
                    datetime.date(int(request.form['year']), 1, 1))
                budget_new.charge_id = char
                budget_new.save()

        flash('Enregistrement effectue avec succes', 'success')

    return redirect(
        url_for('budget.charge', page=page, year=str(request.form['year'])))