Browse Source

Identificar parlamentares duplicados

pull/2594/head
João 7 years ago
parent
commit
fc79fbd0df
  1. 4
      sapl/base/urls.py
  2. 39
      sapl/base/views.py
  3. 1
      sapl/templates/base/autores_duplicados.html
  4. 1
      sapl/templates/base/bancada_comissao_autor_externo.html
  5. 1
      sapl/templates/base/legislatura_infindavel.html
  6. 1
      sapl/templates/base/lista_inconsistencias.html
  7. 1
      sapl/templates/base/mandato_sem_data_inicio.html
  8. 1
      sapl/templates/base/materias_protocolo_inexistente.html
  9. 31
      sapl/templates/base/parlamentares_duplicados.html
  10. 1
      sapl/templates/base/parlamentares_mandatos_intersecao.html
  11. 1
      sapl/templates/base/protocolos_com_materias.html
  12. 1
      sapl/templates/base/protocolos_duplicados.html

4
sapl/base/urls.py

@ -31,6 +31,7 @@ from .views import (AlterarSenha, AppConfigCrud, CasaLegislativaCrud,
ListarInconsistenciasView, ListarProtocolosDuplicadosView,
ListarProtocolosComMateriasView,
ListarMatProtocoloInexistenteView,
ListarParlamentaresDuplicadosView,
ListarParlMandatosIntersecaoView,
ListarAutoresDuplicadosView,
ListarBancadaComissaoAutorExternoView,
@ -151,6 +152,9 @@ urlpatterns = [
url(r'^sistema/inconsistencias/mandato_sem_data_inicio',
ListarMandatoSemDataInicioView.as_view(),
name='lista_mandato_sem_data_inicio'),
url(r'^sistema/inconsistencias/parlamentares_duplicados$',
ListarParlamentaresDuplicadosView.as_view(),
name='lista_parlamentares_duplicados'),
url(r'^sistema/inconsistencias/parlamentares_mandatos_intersecao$',
ListarParlMandatosIntersecaoView.as_view(),
name='lista_parlamentares_mandatos_intersecao'),

39
sapl/base/views.py

@ -955,6 +955,12 @@ class ListarInconsistenciasView(PermissionRequiredMixin, ListView):
len(mandato_sem_data_inicio())
)
)
tabela.append(
('parlamentares_duplicados',
'Parlamentares duplicados',
len(parlamentares_duplicados())
)
)
tabela.append(
('parlamentares_mandatos_intersecao',
'Parlamentares com mandatos com interseção',
@ -1062,7 +1068,9 @@ class ListarBancadaComissaoAutorExternoView(PermissionRequiredMixin, ListView):
def autores_duplicados():
return [autor.values() for autor in Autor.objects.values('nome', 'tipo__descricao').annotate(count=Count('nome')).filter(count__gt=1)]
return [autor.values() for autor in Autor.objects.values(
'nome', 'tipo__descricao').order_by(
"nome").annotate(count=Count('nome')).filter(count__gt=1)]
class ListarAutoresDuplicadosView(PermissionRequiredMixin, ListView):
@ -1088,6 +1096,35 @@ class ListarAutoresDuplicadosView(PermissionRequiredMixin, ListView):
return context
def parlamentares_duplicados():
return [parlamentar.values() for parlamentar in Parlamentar.objects.values(
'nome_parlamentar').order_by('nome_parlamentar').annotate(count=Count(
'nome_parlamentar')).filter(count__gt=1)]
class ListarParlamentaresDuplicadosView(PermissionRequiredMixin, ListView):
model = get_user_model()
template_name = 'base/parlamentares_duplicados.html'
context_object_name = 'parlamentares_duplicados'
permission_required = ('base.list_appconfig',)
paginate_by = 10
def get_queryset(self):
return parlamentares_duplicados()
def get_context_data(self, **kwargs):
context = super(
ListarParlamentaresDuplicadosView, 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 parlamentares_mandatos_intersecao():
intersecoes = []

1
sapl/templates/base/autores_duplicados.html

@ -27,4 +27,5 @@
{% endif %}
</fieldset>
{% include 'paginacao.html'%}
<br/>
{% endblock base_content %}

1
sapl/templates/base/bancada_comissao_autor_externo.html

@ -31,4 +31,5 @@
{% endif %}
</fieldset>
{% include 'paginacao.html'%}
<br/>
{% endblock base_content %}

1
sapl/templates/base/legislatura_infindavel.html

@ -27,4 +27,5 @@
{% endif %}
</fieldset>
{% include 'paginacao.html'%}
<br/>
{% endblock base_content %}

1
sapl/templates/base/lista_inconsistencias.html

@ -17,4 +17,5 @@
</table>
</fieldset>
{% include 'paginacao.html'%}
<br/>
{% endblock base_content %}

1
sapl/templates/base/mandato_sem_data_inicio.html

@ -27,4 +27,5 @@
{% endif %}
</fieldset>
{% include 'paginacao.html'%}
<br/>
{% endblock base_content %}

1
sapl/templates/base/materias_protocolo_inexistente.html

@ -29,4 +29,5 @@
{% endif %}
</fieldset>
{% include 'paginacao.html'%}
<br/>
{% endblock base_content %}

31
sapl/templates/base/parlamentares_duplicados.html

@ -0,0 +1,31 @@
{% extends "base.html" %}
{% load common_tags %}
{% block base_content %}
<fieldset>
<h1>Lista de Parlamentares Duplicados</h1>
{% if not parlamentares_duplicados %}
<p>{{ NO_ENTRIES_MSG }}</p>
{% else %}
<table class="table table-striped table-hover">
<thead>
<tr>
<th>Nome do Parlamentar</th>
<th>Quantidade</th>
</tr>
</thead>
<tbody>
{% for parlamentar, quantidade in parlamentares_duplicados %}
<tr>
<td>
<a href="{% url 'sapl.parlamentares:pesquisar_parlamentar' %}?nome_parlamentar={{parlamentar}}">{{ parlamentar }}</a>
</td>
<td>{{ quantidade }}</td>
</tr>
{% endfor %}
</tbody>
</table>
{% endif %}
</fieldset>
{% include 'paginacao.html'%}
<br/>
{% endblock base_content %}

1
sapl/templates/base/parlamentares_mandatos_intersecao.html

@ -29,4 +29,5 @@
{% endif %}
</fieldset>
{% include 'paginacao.html'%}
<br/>
{% endblock base_content %}

1
sapl/templates/base/protocolos_com_materias.html

@ -25,4 +25,5 @@
{% endif %}
</fieldset>
{% include 'paginacao.html'%}
<br/>
{% endblock base_content %}

1
sapl/templates/base/protocolos_duplicados.html

@ -27,4 +27,5 @@
{% endif %}
</fieldset>
{% include 'paginacao.html'%}
<br/>
{% endblock base_content %}
Loading…
Cancel
Save