diff --git a/sapl/base/urls.py b/sapl/base/urls.py index fb7b81d5f..0a96d1acc 100644 --- a/sapl/base/urls.py +++ b/sapl/base/urls.py @@ -33,7 +33,8 @@ from .views import (AlterarSenha, AppConfigCrud, CasaLegislativaCrud, ListarMatProtocoloInexistenteView, ListarParlMandatosIntersecaoView, ListarAutoresDuplicadosView, - ListarBancadaComissaoAutorExternoView) + ListarBancadaComissaoAutorExternoView, + ListarLegislaturaAnteriorInfindavelView) app_name = AppConfig.name @@ -154,6 +155,9 @@ urlpatterns = [ url(r'^sistema/inconsistencias/bancada_comissao_autor_externo$', ListarBancadaComissaoAutorExternoView.as_view(), name='lista_bancada_comissao_autor_externo'), + url(r'^sistema/inconsistencias/legislatura_anterior_infindavel$', + ListarLegislaturaAnteriorInfindavelView.as_view(), + name='lista_legislatura_anterior_infindavel'), # todos os sublinks de sistema devem vir acima deste url(r'^sistema/$', permission_required('base.view_tabelas_auxiliares') diff --git a/sapl/base/views.py b/sapl/base/views.py index 378d7cf81..40c31482f 100644 --- a/sapl/base/views.py +++ b/sapl/base/views.py @@ -35,7 +35,7 @@ from sapl.crud.base import CrudAux, make_pagination from sapl.materia.models import (Autoria, MateriaLegislativa, TipoMateriaLegislativa, StatusTramitacao, UnidadeTramitacao) from sapl.norma.models import (NormaJuridica, NormaEstatisticas) -from sapl.parlamentares.models import Parlamentar +from sapl.parlamentares.models import Parlamentar, Legislatura from sapl.protocoloadm.models import Protocolo from sapl.sessao.models import (PresencaOrdemDia, SessaoPlenaria, SessaoPlenariaPresenca, Bancada) @@ -1469,10 +1469,50 @@ class ListarInconsistenciasView(PermissionRequiredMixin, ListView): len(bancada_comissao_autor_externo()) ) ) + tabela.append( + ('legislatura_anterior_infindavel', + 'Legislaturas anteriores sem data fim', + len(legislatura_anterior_infindavel()) + ) + ) return tabela +def legislatura_anterior_infindavel(): + legislaturas = [] + + for legislatura in Legislatura.objects.all(): + if legislatura.data_fim == None: + legislaturas.append(legislatura) + + return legislaturas + + +class ListarLegislaturaAnteriorInfindavelView(PermissionRequiredMixin, ListView): + model = get_user_model() + template_name = 'base/legislatura_anterior_infindavel.html' + context_object_name = 'legislatura_anterior_infindavel' + permission_required = ('base.list_appconfig',) + paginate_by = 10 + + def get_queryset(self): + return legislatura_anterior_infindavel() + + def get_context_data(self, **kwargs): + context = super( + ListarLegislaturaAnteriorInfindavelView, 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' + ] = 'Nenhuma encontrada.' + return context + + def bancada_comissao_autor_externo(): lista_bancada_autor_externo = [] lista_comissao_autor_externo = [] diff --git a/sapl/templates/base/legislatura_anterior_infindavel.html b/sapl/templates/base/legislatura_anterior_infindavel.html new file mode 100644 index 000000000..9a35b2668 --- /dev/null +++ b/sapl/templates/base/legislatura_anterior_infindavel.html @@ -0,0 +1,32 @@ +{% extends "base.html" %} +{% load i18n %} +{% load tz %} +{% load common_tags %} +{% block base_content %} +
+ {% include 'paginacao.html'%} +{% endblock base_content %} \ No newline at end of file