diff --git a/sapl/materia/forms.py b/sapl/materia/forms.py index 2d16a914a..1bd594ab0 100644 --- a/sapl/materia/forms.py +++ b/sapl/materia/forms.py @@ -370,6 +370,10 @@ class RelatoriaForm(ModelForm): label=_('Composição') ) + tipo_unidade_tramitacao_destino = forms.CharField(required=False) + + unidade_tramitacao_destino = forms.CharField(required=False) + class Meta: model = Relatoria fields = [ @@ -381,7 +385,11 @@ class RelatoriaForm(ModelForm): 'parlamentar' ] - widgets = {'comissao': forms.Select(attrs={'disabled': 'disabled'})} + widgets = { + 'comissao': forms.Select(attrs={'disabled': 'disabled'}), + 'tipo_unidade_tramitacao_destino': forms.HiddenInput(), + 'unidade_tramitacao_destino': forms.HiddenInput(), + } def __init__(self, *args, **kwargs): row1 = to_row([('comissao', 12)]) diff --git a/sapl/materia/views.py b/sapl/materia/views.py index 504ce2f2a..2545064ad 100644 --- a/sapl/materia/views.py +++ b/sapl/materia/views.py @@ -1152,13 +1152,25 @@ class RelatoriaCrud(MasterDetailCrud): filter(materia=materia).order_by('-data_tramitacao', '-id').first() if loc_atual is None: - localizacao = 0 + localizacao = -1 else: comissao = loc_atual.unidade_tramitacao_destino.comissao if comissao: localizacao = comissao.pk else: localizacao = 0 + if loc_atual.unidade_tramitacao_destino.orgao: + # 0 = Orgão + tipo_unidade_tramitacao_destino = "Orgão" + elif loc_atual.unidade_tramitacao_destino.parlamentar: + # 1 = Parlamentar + tipo_unidade_tramitacao_destino = "Parlamentar" + + unidade_tramitacao_destino = loc_atual.unidade_tramitacao_destino + return { + 'comissao': localizacao, 'tipo_unidade_tramitacao_destino': tipo_unidade_tramitacao_destino, + 'unidade_tramitacao_destino': unidade_tramitacao_destino + } return {'comissao': localizacao} diff --git a/sapl/templates/materia/relatoria_form.html b/sapl/templates/materia/relatoria_form.html index 02f9a904a..45b5534c1 100644 --- a/sapl/templates/materia/relatoria_form.html +++ b/sapl/templates/materia/relatoria_form.html @@ -4,9 +4,16 @@ {% load common_tags %} {% block base_content %} - {% if form.comissao.value == 0 %} + {% if form.comissao.value == -1 %} + {% elif form.comissao.value == 0 %} + {% else %} {% crispy form %}