Browse Source

Correção do Relatório de Matérias em Tramitação

pull/2176/head
cristian-longhi 7 years ago
parent
commit
db8aac84f7
  1. 23
      sapl/base/views.py

23
sapl/base/views.py

@ -44,6 +44,17 @@ from .forms import (AlterarSenhaForm, CasaLegislativaForm,
from .models import AppConfig, CasaLegislativa from .models import AppConfig, CasaLegislativa
def filtra_url_materias_em_tramitacao(qr, qs, campo_url, local_ou_status):
id_materias = []
filtro_url = qr[campo_url]
if local_ou_status == 'local':
id_materias = [item.id for item in qs if item.tramitacao_set.order_by('-id').first().unidade_tramitacao_destino_id == int(filtro_url)]
elif local_ou_status == 'status':
id_materias = [item.id for item in qs if item.tramitacao_set.order_by('-id').first().status_id == int(filtro_url)]
return qs.filter(em_tramitacao=True, id__in=id_materias)
def get_casalegislativa(): def get_casalegislativa():
return CasaLegislativa.objects.first() return CasaLegislativa.objects.first()
@ -400,17 +411,9 @@ class RelatorioMateriasTramitacaoView(FilterView):
qs = qs.filter(em_tramitacao=True) qs = qs.filter(em_tramitacao=True)
if qr.get('tramitacao__unidade_tramitacao_destino'): if qr.get('tramitacao__unidade_tramitacao_destino'):
id_materias = [] qs = filtra_url_materias_em_tramitacao(qr, qs, 'tramitacao__unidade_tramitacao_destino', 'local')
for item in qs:
if str(item.tramitacao_set.order_by('-id').first().unidade_tramitacao_destino_id) == qr['tramitacao__unidade_tramitacao_destino']:
id_materias.append(item.id)
qs = qs.filter(em_tramitacao=True, id__in=id_materias)
if qr.get('tramitacao__status'): if qr.get('tramitacao__status'):
id_materias = [] qs = filtra_url_materias_em_tramitacao(qr, qs, 'tramitacao__status', 'status')
for item in qs:
if str(item.tramitacao_set.order_by('-id').first().status_id) == qr['tramitacao__status']:
id_materias.append(item.id)
qs = qs.filter(em_tramitacao=True, id__in=id_materias)
context['object_list'] = qs context['object_list'] = qs

Loading…
Cancel
Save