From 9056004f48644ac4af429fba722085b4c20cf7f1 Mon Sep 17 00:00:00 2001 From: Mariana Mendes Date: Wed, 26 Sep 2018 10:37:33 -0300 Subject: [PATCH] Create Tipo Justificativa --- sapl/rules/map_rules.py | 1 + sapl/sessao/models.py | 27 +++++++++++++++++++++ sapl/sessao/urls.py | 4 ++- sapl/sessao/views.py | 4 ++- sapl/templates/menu_tabelas_auxiliares.yaml | 3 +++ sapl/templates/sessao/layouts.yaml | 4 +++ sapl/templates/sistema.html | 1 + 7 files changed, 42 insertions(+), 2 deletions(-) diff --git a/sapl/rules/map_rules.py b/sapl/rules/map_rules.py index bba114149..4eb32dbe3 100644 --- a/sapl/rules/map_rules.py +++ b/sapl/rules/map_rules.py @@ -260,6 +260,7 @@ rules_group_geral = { (sessao.TipoSessaoPlenaria, __base__), (sessao.TipoResultadoVotacao, __base__), (sessao.TipoExpediente, __base__), + (sessao.TipoJustificativa, __base__), (sessao.Bloco, __base__), (sessao.ResumoOrdenacao, __base__), diff --git a/sapl/sessao/models.py b/sapl/sessao/models.py index 11047ed9e..68609dd40 100644 --- a/sapl/sessao/models.py +++ b/sapl/sessao/models.py @@ -565,3 +565,30 @@ class ResumoOrdenacao(models.Model): def __str__(self): return 'Ordenação do Resumo de uma Sessão' + + +@reversion.register() +class TipoJustificativa(models.Model): + descricao = models.CharField(max_length=150, verbose_name=_('Descrição')) + + class Meta: + verbose_name = _('Tipo de Justificativa') + verbose_name_plural = _('Tipos de Justificativa') + ordering = ['descricao'] + + def __str__(self): + return self.descricao + + +@reversion.register() +class JustificativaAusencia(models.Model): + parlamentar = models.ForeignKey(Parlamentar, on_delete=models.PROTECT) + sessao_plenaria = models.ForeignKey(SessaoPlenaria, + on_delete=models.CASCADE) + tipo_ausencia = models.ForeignKey(TipoJustificativa, on_delete=models.PROTECT, + verbose_name=_('Tipo')) + data = models.DateField(verbose_name=_('Data')) + hora = models.CharField( + max_length=5, verbose_name=_('Horário (hh:mm)')) + observacao = models.CharField( + max_length=150, blank=True, verbose_name=_('Observação')) \ No newline at end of file diff --git a/sapl/sessao/urls.py b/sapl/sessao/urls.py index 201623824..5e977691b 100644 --- a/sapl/sessao/urls.py +++ b/sapl/sessao/urls.py @@ -11,7 +11,7 @@ from sapl.sessao.views import (AdicionarVariasMateriasExpediente, PesquisarSessaoPlenariaView, PresencaOrdemDiaView, PresencaView, ResumoOrdenacaoView, ResumoView, ResumoAtaView, SessaoCrud, - TipoExpedienteCrud, TipoResultadoVotacaoCrud, + TipoJustificativaCrud, TipoExpedienteCrud, TipoResultadoVotacaoCrud, TipoSessaoCrud, VotacaoEditView, VotacaoExpedienteEditView, VotacaoExpedienteView, VotacaoNominalEditView, @@ -73,6 +73,8 @@ urlpatterns = [ include(TipoResultadoVotacaoCrud.get_urls())), url(r'^sistema/sessao-plenaria/tipo-expediente/', include(TipoExpedienteCrud.get_urls())), + url(r'^sistema/sessao-plenaria/tipo-justificativa/', + include(TipoJustificativaCrud.get_urls())), url(r'^sistema/bancada/', include(BancadaCrud.get_urls())), url(r'^sistema/bloco/', diff --git a/sapl/sessao/views.py b/sapl/sessao/views.py index d64f3dba0..5c2c83ab2 100644 --- a/sapl/sessao/views.py +++ b/sapl/sessao/views.py @@ -47,11 +47,13 @@ from .models import (Bancada, Bloco, CargoBancada, CargoMesa, MateriaLegislativa, Orador, OradorExpediente, OrdemDia, PresencaOrdemDia, RegistroVotacao, ResumoOrdenacao, SessaoPlenaria, SessaoPlenariaPresenca, TipoExpediente, - TipoResultadoVotacao, TipoSessaoPlenaria, VotoParlamentar) + TipoJustificativa, TipoResultadoVotacao, TipoSessaoPlenaria, + VotoParlamentar) TipoSessaoCrud = CrudAux.build(TipoSessaoPlenaria, 'tipo_sessao_plenaria') TipoExpedienteCrud = CrudAux.build(TipoExpediente, 'tipo_expediente') +TipoJustificativaCrud = CrudAux.build(TipoJustificativa, 'tipo_justificativa') CargoBancadaCrud = CrudAux.build(CargoBancada, '') diff --git a/sapl/templates/menu_tabelas_auxiliares.yaml b/sapl/templates/menu_tabelas_auxiliares.yaml index c1ae1767f..65ea6fd6f 100644 --- a/sapl/templates/menu_tabelas_auxiliares.yaml +++ b/sapl/templates/menu_tabelas_auxiliares.yaml @@ -155,6 +155,9 @@ - title: {% trans 'Ordenação do Resumo' %} url: sapl.sessao:resumo_ordenacao css_class: btn btn-link + - title: {% trans 'Tipo de Justificativa' %} + url: sapl.sessao:tipojustificativa_list + css_class: btn btn-link - title: {% trans 'Módulo LexML' %} css_class: head_title children: diff --git a/sapl/templates/sessao/layouts.yaml b/sapl/templates/sessao/layouts.yaml index b0127565f..16fb1713f 100644 --- a/sapl/templates/sessao/layouts.yaml +++ b/sapl/templates/sessao/layouts.yaml @@ -84,3 +84,7 @@ Bloco: - data_criacao data_extincao - partidos - descricao + +TipoJustificativa: + {% trans 'Tipo de Justificativa' %}: + - descricao \ No newline at end of file diff --git a/sapl/templates/sistema.html b/sapl/templates/sistema.html index 8e3882369..8807932e5 100644 --- a/sapl/templates/sistema.html +++ b/sapl/templates/sistema.html @@ -105,6 +105,7 @@
Tipo de Resultado da Votação
Tipo de Expediente
Ordenação do Resumo
+
Ordenação do Resumo