Browse Source

Identificar bancadas e comissões com autor externo

pull/2454/head
João Rodrigues 7 years ago
committed by João Rodrigues
parent
commit
8a0f940497
  1. 1
      sapl/base/urls.py
  2. 79
      sapl/base/views.py

1
sapl/base/urls.py

@ -155,7 +155,6 @@ urlpatterns = [
ListarBancadaComissaoAutorExternoView.as_view(), ListarBancadaComissaoAutorExternoView.as_view(),
name='lista_bancada_comissao_autor_externo'), name='lista_bancada_comissao_autor_externo'),
# todos os sublinks de sistema devem vir acima deste # todos os sublinks de sistema devem vir acima deste
url(r'^sistema/$', permission_required('base.view_tabelas_auxiliares') url(r'^sistema/$', permission_required('base.view_tabelas_auxiliares')
(TemplateView.as_view(template_name='sistema.html')), (TemplateView.as_view(template_name='sistema.html')),

79
sapl/base/views.py

@ -1463,13 +1463,88 @@ class ListarInconsistenciasView(PermissionRequiredMixin, ListView):
len(autores_duplicados()) len(autores_duplicados())
) )
) )
tabela.append(
('bancada_comissao_autor_externo',
'Bancadas e Comissões com autor externo',
len(bancada_comissao_autor_externo())
)
)
return tabela return tabela
def bancada_comissao_autor_externo():
lista_bancada_autor_externo = []
lista_comissao_autor_externo = []
tipo_autor_externo = TipoAutor.objects.filter(descricao='Externo')
for bancada in Bancada.objects.all():
autor_externo = bancada.autor.filter(tipo=tipo_autor_externo)
# if len(autor_externo) == 1:
if len(autor_externo) > 0:
q_autor_externo = bancada.autor.get(tipo=tipo_autor_externo)
lista_bancada_autor_externo.append(
(q_autor_externo, bancada, 'Bancada')
)
# elif len(autor_externo) > 1:
# q_autor_externo = bancada.autor.get(tipo=tipo_autor_externo)
# for autor in q_autor_externo:
# lista_bancada_autor_externo.append(
# (q_autor_externo, bancada, 'Bancada')
# )
for comissao in Comissao.objects.all():
autor_externo = comissao.autor.filter(tipo=tipo_autor_externo)
# if len(autor_externo) == 1:
if len(autor_externo) > 0:
q_autor_externo = comissao.autor.get(tipo=tipo_autor_externo)
lista_comissao_autor_externo.append(
(q_autor_externo, comissao, 'Comissão')
)
# elif len(autor_externo) > 1:
# q_autor_externo = comissao.autor.get(tipo=tipo_autor_externo)
# for autor in q_autor_externo:
# lista_comissao_autor_externo.append(
# (q_autor_externo, comissao, 'Comissão')
# )
return lista_bancada_autor_externo + lista_comissao_autor_externo
class ListarBancadaComissaoAutorExternoView(PermissionRequiredMixin, ListView):
model = get_user_model()
template_name = 'base/bancada_comissao_autor_externo.html'
context_object_name = 'bancada_comissao_autor_externo'
permission_required = ('base.list_appconfig',)
paginate_by = 10
def get_queryset(self):
return bancada_comissao_autor_externo()
def get_context_data(self, **kwargs):
context = super(
ListarBancadaComissaoAutorExternoView, self
).get_context_data(**kwargs)
paginator = context['paginator']
page_obj = context['page_obj']
context['page_range'] = make_pagination(
page_obj.number, paginator.num_pages)
context[
'NO_ENTRIES_MSG'
] = 'Nenhum encontrado.'
return context
def autores_duplicados(): def autores_duplicados():
autores = {} autores = {}
for a in Autor.objects.all(): for a in Autor.objects.all().order_by('nome'):
key = "{}".format(a.nome) key = "{}".format(a.nome)
val = autores.get(key, list()) val = autores.get(key, list())
val.append(a) val.append(a)
@ -1504,7 +1579,7 @@ class ListarAutoresDuplicadosView(PermissionRequiredMixin, ListView):
def parlamentares_mandatos_intersecao(): def parlamentares_mandatos_intersecao():
intersecoes = [] intersecoes = []
for parlamentar in Parlamentar.objects.all(): for parlamentar in Parlamentar.objects.all().order_by('nome_completo'):
mandatos = parlamentar.mandato_set.all() mandatos = parlamentar.mandato_set.all()
length = len(mandatos) length = len(mandatos)
if mandatos and length > 1: if mandatos and length > 1:

Loading…
Cancel
Save