def export_all_demands(request): from accounting_core.models import AccountingYear from accounting_tools.models import Subvention if not Subvention.static_rights_can('EXPORT', request.user): raise Http404 years = AccountingYear.objects.filter(deleted=False).order_by('start_date') subventions = [] for ay in years: subv = Subvention.objects.filter(accounting_year=ay, deleted=False).order_by('unit__name', 'unit_blank_name') if subv: subv = list(subv) + [get_statistics(subv)] subventions.append((ay.name, subv)) summary = [] units = sorted(list(set(map(lambda subv: subv.get_real_unit_name(), list(Subvention.objects.all()))))) for unit_name in units: line = [unit_name] for year in years: year_subv = Subvention.objects.filter(accounting_year=year, deleted=False).filter(Q(unit__name=unit_name) | Q(unit_blank_name=unit_name)).first() if year_subv: line += [year_subv.amount_asked, year_subv.amount_given, year_subv.mobility_asked, year_subv.mobility_asked] else: line += ["", "", "", ""] summary.append(line) return generate_pdf("accounting_tools/subvention/subventions_pdf.html", request, {'subventions': subventions, 'summary': summary, 'years': years})
def export_all_demands(request): from accounting_core.models import AccountingYear from accounting_tools.models import Subvention if not Subvention.static_rights_can('EXPORT', request.user): raise Http404 years = AccountingYear.objects.filter(deleted=False).order_by('start_date') subventions = [] for ay in years: subv = Subvention.objects.filter(accounting_year=ay, deleted=False).order_by('unit__name', 'unit_blank_name') if subv: subv = list(subv) + [get_statistics(subv)] subventions.append((ay.name, subv)) summary = [] units = sorted(list(set(map(lambda subv: subv.get_real_unit_name(), list(Subvention.objects.all()))))) for unit_name in units: line = [unit_name] for year in years: year_subv = Subvention.objects.filter(accounting_year=year, deleted=False).filter(Q(unit__name=unit_name) | Q(unit_blank_name=unit_name)).first() if year_subv: line += [year_subv.amount_asked, year_subv.amount_given, year_subv.mobility_asked, year_subv.mobility_asked] else: line += ["", "", "", ""] summary.append(line) return generate_pdf("accounting_tools/subvention/subventions_pdf.html", request, {'subventions': subventions, 'summary': summary, 'years': years})
def export_demands_yearly(request, ypk): from accounting_core.models import AccountingYear from accounting_tools.models import Subvention if not Subvention.static_rights_can('EXPORT', request.user): raise Http404 try: ay = AccountingYear.objects.get(pk=ypk) subventions = Subvention.objects.filter(accounting_year=ay, deleted=False).order_by('unit__name', 'unit_blank_name') if subventions: subventions = list(subventions) + [get_statistics(subventions)] subv = [(ay.name, subventions)] except AccountingYear.DoesNotExist: subv = [(_(u'Période inconnue'), Subvention.objects.none())] return generate_pdf("accounting_tools/subvention/subventions_pdf.html", request, {'subventions': subv})
def export_demands_yearly(request, ypk): from accounting_core.models import AccountingYear from accounting_tools.models import Subvention if not Subvention.static_rights_can('EXPORT', request.user): raise Http404 try: ay = AccountingYear.objects.get(pk=ypk) subventions = Subvention.objects.filter(accounting_year=ay, deleted=False).order_by('unit__name', 'unit_blank_name') if subventions: subventions = list(subventions) + [get_statistics(subventions)] subv = [(ay.name, subventions)] except AccountingYear.DoesNotExist: subv = [(_(u'Période inconnue'), Subvention.objects.none())] return generate_pdf("accounting_tools/subvention/subventions_pdf.html", request, {'subventions': subv})