|
|
@ -20,6 +20,8 @@ import csv |
|
|
|
|
|
|
|
# @param qs: queryset |
|
|
|
# @param o: (int) number of order field |
|
|
|
|
|
|
|
|
|
|
|
def query_ordena(qs, o): |
|
|
|
from sigi.apps.casas.admin import CasaLegislativaAdmin |
|
|
|
list_display = CasaLegislativaAdmin.list_display |
|
|
@ -36,6 +38,7 @@ def query_ordena(qs, o): |
|
|
|
qs = qs.order_by(*order_fields) |
|
|
|
return qs |
|
|
|
|
|
|
|
|
|
|
|
def get_for_qs(get, qs): |
|
|
|
""" |
|
|
|
Verifica atributos do GET e retorna queryset correspondente |
|
|
@ -51,6 +54,7 @@ def get_for_qs(get,qs): |
|
|
|
|
|
|
|
return qs |
|
|
|
|
|
|
|
|
|
|
|
def carrinhoOrGet_for_qs(request): |
|
|
|
""" |
|
|
|
Verifica se existe casas na sessão se não verifica get e retorna qs correspondente. |
|
|
@ -64,6 +68,7 @@ def carrinhoOrGet_for_qs(request): |
|
|
|
qs = get_for_qs(request.GET, qs) |
|
|
|
return qs |
|
|
|
|
|
|
|
|
|
|
|
def adicionar_casas_carrinho(request, queryset=None, id=None): |
|
|
|
if request.method == 'POST': |
|
|
|
ids_selecionados = request.POST.getlist('_selected_action') |
|
|
@ -78,7 +83,6 @@ def adicionar_casas_carrinho(request,queryset=None,id=None): |
|
|
|
request.session['carrinho_casas'] = lista |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
def visualizar_carrinho(request): |
|
|
|
|
|
|
|
qs = carrinhoOrGet_for_qs(request) |
|
|
@ -110,11 +114,13 @@ def visualizar_carrinho(request): |
|
|
|
} |
|
|
|
) |
|
|
|
|
|
|
|
|
|
|
|
def excluir_carrinho(request): |
|
|
|
if request.session.has_key('carrinho_casas'): |
|
|
|
del request.session['carrinho_casas'] |
|
|
|
return HttpResponseRedirect('.') |
|
|
|
|
|
|
|
|
|
|
|
def deleta_itens_carrinho(request): |
|
|
|
if request.method == 'POST': |
|
|
|
ids_selecionados = request.POST.getlist('_selected_action') |
|
|
@ -125,14 +131,12 @@ def deleta_itens_carrinho(request): |
|
|
|
if lista: |
|
|
|
request.session['carrinho_casas'] = lista |
|
|
|
else: |
|
|
|
del lista; |
|
|
|
del lista |
|
|
|
del request.session['carrinho_casas'] |
|
|
|
|
|
|
|
return HttpResponseRedirect('.') |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
def labels_report(request, id=None, tipo=None, formato='3x9_etiqueta'): |
|
|
|
""" TODO: adicionar suporte para resultado de pesquisa do admin. |
|
|
|
""" |
|
|
@ -161,6 +165,7 @@ def labels_report(request, id=None, tipo=None, formato='3x9_etiqueta'): |
|
|
|
|
|
|
|
return response |
|
|
|
|
|
|
|
|
|
|
|
def labels_report_parlamentar(request, id=None, formato='3x9_etiqueta'): |
|
|
|
""" TODO: adicionar suporte para resultado de pesquisa do admin. |
|
|
|
""" |
|
|
@ -169,7 +174,6 @@ def labels_report_parlamentar(request, id=None, formato='3x9_etiqueta'): |
|
|
|
if request.POST.has_key('tamanho_etiqueta'): |
|
|
|
formato = request.POST['tamanho_etiqueta'] |
|
|
|
|
|
|
|
|
|
|
|
if id: |
|
|
|
legislaturas = [c.legislatura_set.latest('data_inicio') for c in CasaLegislativa.objects.filter(pk__in=id, legislatura__id__isnull=False).distinct()] |
|
|
|
mandatos = reduce(lambda x, y: x | y, [l.mandato_set.all() for l in legislaturas]) |
|
|
@ -189,6 +193,7 @@ def labels_report_parlamentar(request, id=None, formato='3x9_etiqueta'): |
|
|
|
|
|
|
|
return response |
|
|
|
|
|
|
|
|
|
|
|
def carrinhoOrGet_for_parlamentar_qs(request): |
|
|
|
""" |
|
|
|
Verifica se existe parlamentares na sessão se não verifica get e retorna qs correspondente. |
|
|
@ -208,6 +213,7 @@ def carrinhoOrGet_for_parlamentar_qs(request): |
|
|
|
qs = get_for_qs(request.GET, qs) |
|
|
|
return qs |
|
|
|
|
|
|
|
|
|
|
|
def labels_report_sem_presidente(request, id=None, formato='2x5_etiqueta'): |
|
|
|
""" TODO: adicionar suporte para resultado de pesquisa do admin. |
|
|
|
""" |
|
|
@ -237,7 +243,6 @@ def report(request, id=None,tipo=None): |
|
|
|
if tipo == 'completo': |
|
|
|
return report_complete(request, id) |
|
|
|
|
|
|
|
|
|
|
|
if id: |
|
|
|
qs = CasaLegislativa.objects.filter(pk=id) |
|
|
|
else: |
|
|
@ -253,6 +258,7 @@ def report(request, id=None,tipo=None): |
|
|
|
report.generate_by(PDFGenerator, filename=response) |
|
|
|
return response |
|
|
|
|
|
|
|
|
|
|
|
def report_complete(request, id=None): |
|
|
|
|
|
|
|
if id: |
|
|
@ -290,6 +296,7 @@ def report_complete(request,id=None): |
|
|
|
|
|
|
|
return response |
|
|
|
|
|
|
|
|
|
|
|
def casas_sem_convenio_report(request): |
|
|
|
qs = CasaLegislativa.objects.filter(convenio=None).order_by('municipio__uf', 'nome') |
|
|
|
|
|
|
@ -304,7 +311,6 @@ def casas_sem_convenio_report(request): |
|
|
|
return response |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
def export_csv(request): |
|
|
|
response = HttpResponse(mimetype='text/csv') |
|
|
|
response['Content-Disposition'] = 'attachment; filename=casas.csv' |
|
|
|