from django.shortcuts import render from django.template import RequestContext from .models import Transaction, DescriptionType, TvaType # Create your views here. def transaction_listing(request, year): tmp = Transaction.objects.filter(date__year = year) sumHTvap = 0 sumHTvam = 0 sumTvap = 0 sumTvam = 0 sumDeductible = 0 nb_transaction = tmp.count() for line in tmp: if line.amountHTva > 0: sumHTvap += line.amountHTva else: sumHTvam += line.amountHTva if line.amountTva > 0: sumTvap += line.amountTva else: sumTvam += line.amountTva sumDeductible += line.amountDeductible benefit = sumHTvap + sumDeductible context = { 'year': year, 'sumHTvap' : sumHTvap, 'sumHTvam' : sumHTvam, 'sumTvap' : sumTvap, 'sumTvam' : sumTvam, 'sumDeductible' : sumDeductible, 'benefit' : benefit, 'nb_transaction': nb_transaction, 'Transactions': Transaction.objects.filter(date__year = year).order_by('date') } # 3) Faire le calcul ici en "static" ou en jquery dans ma vue, en "dynamique" (suivant les cases cochées ou pas, ...) return render(request, 'compta/transaction/listing.html', context) def transaction_detail(request, transactionid): """ Renvoie les détails d'une transaction dont l'ID est passé en paramètre. """ transaction = Transaction.objects.get(pk=transactionid) context = {'transaction': transaction} return render(request, 'compta/transaction/detail.html', context) def year_listing(request): """ Liste les années de comptabilité présentes. """ year_list = DescriptionType.objects.values('year').distinct() year_count = [] for year in year_list: year_count.append((year, Transaction.objects.filter(date__year = year['year']).count())) context = { 'objects_year': year_count } return render(request, 'year_listing.html', context)