コード例 #1
0
ファイル: views_frais.py プロジェクト: wilrona/Gesacom
def index(projet_id):
    menu = 'projet'
    submenu = 'projet'
    context = 'frais'
    title_page = 'Projets - Frais'

    search = False
    q = request.args.get('q')
    if q:
        search = True
    try:
        page = int(request.args.get('page', 1))
    except ValueError:
        page = 1

    projet = Projet.get_by_id(projet_id)
    datas = FraisProjet.query(FraisProjet.projet_id == projet.key)
    pagination = Pagination(css_framework='bootstrap3', page=page, total=datas.count(), search=search, record_name='Projets')

    if datas.count() > 10:
        if page == 1:
            offset = 0
        else:
            page -= 1
            offset = page * 10
        datas = datas.fetch(limit=10, offset=offset)

    return render_template('frais/frais_projet.html', **locals())
コード例 #2
0
ファイル: views_frais.py プロジェクト: wilrona/Gesacom
def edit(projet_id, frais_projet_id=None):

    projet = Projet.get_by_id(projet_id)
    if frais_projet_id:
        frais_projet = FraisProjet.get_by_id(frais_projet_id)
        form = FormFraisProjet(obj=frais_projet)
        form.frais_id.data = frais_projet.frais_id.get().key.id()
        if frais_projet.frais_id.get().factu:
            form.facturable.data = '1'
        else:
            form.facturable.data = '2'
    else:
        frais_projet = FraisProjet()
        form = FormFraisProjet()

    form.frais_id.choices = [(0, 'Selectionnez un frais')]
    for frais in Frais.query():
        form.frais_id.choices.append((frais.key.id(), frais.libelle))

    if form.frais_id.data:
        frais = Frais.get_by_id(int(form.frais_id.data))
        list_factu = {}
        if frais.nfactu:
            list_factu[2] = 'Non Facturable'
        if frais.factu:
            list_factu[1] = 'Facturable'

    success = False
    if form.validate_on_submit():

        frais_projet.projet_id = projet.key

        frais = Frais.get_by_id(int(form.frais_id.data))
        frais_projet.frais_id = frais.key

        if form.facturable.data == '2':
            frais_projet.facturable = False
        if form.facturable.data == '1':
            frais_projet.facturable = True

        frais_projet.montant = form.montant.data
        frais_projet.put()

        success = True

    return render_template('frais/frais_projet_edit.html', **locals())