Browse Source

sobe alteracoes

pull/2454/head
Cesar Carvalho 7 years ago
committed by João Rodrigues
parent
commit
c54b49c4fd
  1. 76
      sapl/base/views.py
  2. 2
      sapl/templates/base/materias_protocolo_inexistente.html
  3. 6
      sapl/templates/base/parlamentares_mandatos_interseccao.html
  4. 32
      sapl/templates/base/protocolos_com_materias.html
  5. 2
      sapl/templates/base/protocolos_materias.html

76
sapl/base/views.py

@ -1112,21 +1112,64 @@ class ListarInconsistenciasView(PermissionRequiredMixin, ListView):
len(protocolos_duplicados())) len(protocolos_duplicados()))
) )
tabela.append( tabela.append(
('protocolos_com_materias', ('protocolos_materias',
'Protocolos que excedem o limite de matérias vinculadas', 'Protocolos que excedem o limite de matérias vinculadas',
len(protocolos_com_materias())) len(protocolos_materias()))
) )
tabela.append( tabela.append(
('materias_com_protocolo_inexistente', ('materias_protocolo_inexistente',
'Matérias Legislativas com protocolo inexistente', 'Matérias Legislativas com protocolo inexistente',
len(materias_com_protocolo_inexistente()) len(materias_protocolo_inexistente()))
) )
tabela.append(
('parlamentares_mandato_intersecao',
'Parlamentares com mandatos com interseção',
len(parlamentares_mandatos_intersecao()))
) )
return tabela return tabela
def materias_com_protocolo_inexistente(): def parlamentares_mandatos_intersecao():
intersecoes = []
for parlamentar in Parlamentar.objects.all():
mandatos = parlamentar.mandato_set.all()
length = len(mandatos)
if mandatos and length > 1:
for i in range(0, length-1):
for j in range(i+1, length):
mandato1 = mandatos[i]
mandato2 = mandatos[j]
exists = intervalos_tem_intersecao(mandato1.data_inicio_mandato, mandato1.data_fim_mandato, mandato2.data_inicio_mandato, mandato2.data_fim_mandato)
if exists:
intersecoes.append((parlamentar, mandato1, mandato2))
return intersecoes
class ListarParlMandatosIntersecaoView(PermissionRequiredMixin, ListView):
model = get_user_model()
template_name = 'base/parlamentares_mandato_intersecao.html'
context_object_name = 'parlamentares_mandatos_intersecao'
permission_required = ('base.list_appconfig',)
paginate_by = 10
def get_queryset(self):
return parlamentares_mandato_intersecao()
def get_context_data(self, **kwargs):
context = super(
ListarParlMandatosIntersecaoView, 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'
] = '--.'
return context
def materias_protocolo_inexistente():
materias = [] materias = []
for materia in MateriaLegislativa.objects.all().order_by('-ano'): for materia in MateriaLegislativa.objects.all().order_by('-ano'):
if materia.numero_protocolo: if materia.numero_protocolo:
@ -1138,19 +1181,20 @@ def materias_com_protocolo_inexistente():
return materias return materias
class ListarMateriasCProtocoloInexistenteV(PermissionRequiredMixin, ListView): class ListarMatProtocoloInexistenteView(PermissionRequiredMixin, ListView):
model = get_user_model() model = get_user_model()
template_name = 'base/materias_com_protocolo_inexistente.html' template_name = 'base/materias_protocolo_inexistente.html'
context_object_name = 'materias_com_protocolo_inexistente' context_object_name = 'materias_protocolo_inexistente'
permission_required = ('base.list_appconfig',) permission_required = ('base.list_appconfig',)
paginate_by = 10 paginate_by = 10
def get_queryset(self): def get_queryset(self):
return materias_com_protocolo_inexistente() return materias_protocolo_inexistente()
def get_context_data(self, **kwargs): def get_context_data(self, **kwargs):
context = super( context = super(
ListarProtocolosComMateriasView, self).get_context_data(**kwargs) ListarMatProtocoloInexistenteView, self
).get_context_data(**kwargs)
paginator = context['paginator'] paginator = context['paginator']
page_obj = context['page_obj'] page_obj = context['page_obj']
context['page_range'] = make_pagination( context['page_range'] = make_pagination(
@ -1161,7 +1205,7 @@ class ListarMateriasCProtocoloInexistenteV(PermissionRequiredMixin, ListView):
return context return context
def protocolos_com_materias(): def protocolos_materias():
protocolos = [] protocolos = []
for protocolo in Protocolo.objects.all(): for protocolo in Protocolo.objects.all():
materias_protocolo = MateriaLegislativa.objects.filter( materias_protocolo = MateriaLegislativa.objects.filter(
@ -1171,19 +1215,19 @@ def protocolos_com_materias():
return protocolos return protocolos
class ListarProtocolosComMateriasView(PermissionRequiredMixin, ListView): class ListarProtocolosMateriasView(PermissionRequiredMixin, ListView):
model = get_user_model() model = get_user_model()
template_name = 'base/protocolos_com_materias.html' template_name = 'base/protocolos_materias.html'
context_object_name = 'protocolos_com_materias' context_object_name = 'protocolos_materias'
permission_required = ('base.list_appconfig',) permission_required = ('base.list_appconfig',)
paginate_by = 10 paginate_by = 10
def get_queryset(self): def get_queryset(self):
return protocolos_com_materias() return protocolos_materias()
def get_context_data(self, **kwargs): def get_context_data(self, **kwargs):
context = super( context = super(
ListarProtocolosComMateriasView, self).get_context_data(**kwargs) ListarProtocolosMateriasView, self).get_context_data(**kwargs)
paginator = context['paginator'] paginator = context['paginator']
page_obj = context['page_obj'] page_obj = context['page_obj']
context['page_range'] = make_pagination( context['page_range'] = make_pagination(

2
sapl/templates/base/materias_protocolo_inexistente.html

@ -20,7 +20,7 @@
{% for materia, ano, numero_protocolo in materias_protocolo_inexistente %} {% for materia, ano, numero_protocolo in materias_protocolo_inexistente %}
<tr> <tr>
<td> <td>
<a href="{% url 'sapl_index' %}materia/{{ materia.pk }}">{{ materia }}</a> <a href="{% url 'sapl.materia:pesquisar_materia' %}">{{ materia }}</a>
</td> </td>
<td>{{ ano }}</td> <td>{{ ano }}</td>
<td>{{ numero_protocolo }}</td> <td>{{ numero_protocolo }}</td>

6
sapl/templates/base/materias_com_protocolo_inexistente.html → sapl/templates/base/parlamentares_mandatos_interseccao.html

@ -4,8 +4,8 @@
{% load common_tags %} {% load common_tags %}
{% block base_content %} {% block base_content %}
<fieldset> <fieldset>
<h1>Lista de Matérias Legislativas com Protocolo Inexistente</h1> <h1>Lista de Parlamentares com Mandatos com Interseção</h1>
{% if not materias_com_protocolo_inexistente %} {% if not parlamentares_mandatos_intersecao %}
<p>{{ NO_ENTRIES_MSG }}</p> <p>{{ NO_ENTRIES_MSG }}</p>
{% else %} {% else %}
<table class="table table-striped table-hover"> <table class="table table-striped table-hover">
@ -17,7 +17,7 @@
</tr> </tr>
</thead> </thead>
<tbody> <tbody>
{% for materia, ano, numero_protocolo in materias_com_protocolo_inexistente %} {% for materia, ano, numero_protocolo in parlamentares_mandatos_intersecao %}
<tr> <tr>
<td> <td>
<a href="{% url 'sapl.materia:pesquisar_materia' %}">{{ materia }}</a> <a href="{% url 'sapl.materia:pesquisar_materia' %}">{{ materia }}</a>

32
sapl/templates/base/protocolos_com_materias.html

@ -1,32 +0,0 @@
{% extends "base.html" %}
{% load i18n %}
{% load tz %}
{% load common_tags %}
{% block base_content %}
<fieldset>
<h1>Lista de Protocolos que Excedem o Limite de Matérias Vinculadas</h1>
{% if not protocolos_com_materias %}
<p>{{ NO_ENTRIES_MSG }}</p>
{% else %}
<table class="table table-striped table-hover">
<thead>
<tr>
<th>Protocolo</th>
<th>Quantidade de Matérias Vinculas</th>
</tr>
</thead>
<tbody>
{% for protocolo, quantidade in protocolos_com_materias %}
<tr>
<td>
<a href="{% url 'sapl.materia:pesquisar_materia' %}?numero_protocolo={{protocolo.numero}}">{{ protocolo }}</a>
</td>
<td>{{ quantidade }}</td>
</tr>
{% endfor %}
</tbody>
</table>
{% endif %}
</fieldset>
{% include 'paginacao.html'%}
{% endblock base_content %}

2
sapl/templates/base/protocolos_materias.html

@ -19,7 +19,7 @@
{% for protocolo, quantidade in protocolos_materias %} {% for protocolo, quantidade in protocolos_materias %}
<tr> <tr>
<td> <td>
<a href="{% url 'sapl.materia:pesquisar_materia' %}?numero_protocolo={{protocolo.numero}}&ano={{protocolo.ano}}">{{ protocolo }}</a> <a href="{% url 'sapl.materia:pesquisar_materia' %}?numero_protocolo={{protocolo.numero}}">{{ protocolo }}</a>
</td> </td>
<td>{{ quantidade }}</td> <td>{{ quantidade }}</td>
</tr> </tr>

Loading…
Cancel
Save