From b01d6f0c74751d96172a097991e10c4fd541d737 Mon Sep 17 00:00:00 2001 From: Talitha Pumar Date: Tue, 3 Apr 2018 12:33:56 -0300 Subject: [PATCH] 1763 escolha autor no cadastro materialegislativa (#1818) * autor no layout * autor no layout * Fix #1763 --- sapl/materia/forms.py | 19 ++++++++++++++++++- sapl/templates/materia/layouts.yaml | 1 + 2 files changed, 19 insertions(+), 1 deletion(-) diff --git a/sapl/materia/forms.py b/sapl/materia/forms.py index 7f9e8d114..54fdc328e 100644 --- a/sapl/materia/forms.py +++ b/sapl/materia/forms.py @@ -30,7 +30,7 @@ from sapl.compilacao.models import (STATUS_TA_IMMUTABLE_PUBLIC, STATUS_TA_PRIVATE) from sapl.crispy_layout_mixin import (SaplFormLayout, form_actions, to_column, to_row) -from sapl.materia.models import (AssuntoMateria, MateriaAssunto, +from sapl.materia.models import (AssuntoMateria, Autoria, MateriaAssunto, MateriaLegislativa, Orgao, RegimeTramitacao, TipoDocumento, TipoProposicao) from sapl.norma.models import (LegislacaoCitada, NormaJuridica, @@ -162,6 +162,11 @@ class MateriaSimplificadaForm(ModelForm): class MateriaLegislativaForm(ModelForm): + autor = forms.ModelChoiceField(required=False, + empty_label='------', + queryset=Autor.objects.all() + ) + class Meta: model = MateriaLegislativa exclude = ['texto_articulado', 'autores', 'proposicao', @@ -193,6 +198,18 @@ class MateriaLegislativaForm(ModelForm): return cleaned_data + def save(self, commit=False): + materia = super(MateriaLegislativaForm, self).save(commit) + materia.save() + + if self.cleaned_data['autor']: + autoria = Autoria() + autoria.primeiro_autor = True + autoria.materia = materia + autoria.autor = self.cleaned_data['autor'] + autoria.save() + + return materia class UnidadeTramitacaoForm(ModelForm): diff --git a/sapl/templates/materia/layouts.yaml b/sapl/templates/materia/layouts.yaml index 888a5e461..31cb7a346 100644 --- a/sapl/templates/materia/layouts.yaml +++ b/sapl/templates/materia/layouts.yaml @@ -21,6 +21,7 @@ TipoFimRelatoria: MateriaLegislativa: {% trans 'Identificação Básica' %}: + - autor - tipo ano numero - data_apresentacao numero_protocolo tipo_apresentacao - texto_original