diff --git a/sapl/comissoes/forms.py b/sapl/comissoes/forms.py index 6a296ebcc..fa7f6b862 100644 --- a/sapl/comissoes/forms.py +++ b/sapl/comissoes/forms.py @@ -127,7 +127,20 @@ class CargosComissaoOrdenacaoForm(forms.Form): cleaned_data = self.cleaned_data cargo = cleaned_data['cargo'] - cargo.id_ordenacao = cleaned_data['posicao'] + posicao = cleaned_data['posicao'] + + if posicao == '0': + cargo.id_ordenacao = "Não definido" + else: + if CargoComissao.objects.filter(id_ordenacao=posicao): + outro_cargo = CargoComissao.objects.get(id_ordenacao=posicao) + outro_cargo.id_ordenacao = cargo.id_ordenacao + outro_cargo.save() + + cargo.id_ordenacao = posicao + else: + cargo.id_ordenacao = posicao + cargo.save() diff --git a/sapl/comissoes/views.py b/sapl/comissoes/views.py index d3a198b3c..4f71142e7 100644 --- a/sapl/comissoes/views.py +++ b/sapl/comissoes/views.py @@ -112,8 +112,8 @@ class CargosComissaoOrdenacaoView(PermissionRequiredMixin, FormView): tabela_ordenacao = [] for posicao in posicoes: if cargos.filter(id_ordenacao=posicao): - cargo = cargos.filter(id_ordenacao=posicao) - tabela_ordenacao.append((posicao, cargo[0])) + cargo = cargos.get(id_ordenacao=posicao) + tabela_ordenacao.append((posicao, cargo)) else: tabela_ordenacao.append((posicao, "-")) @@ -178,7 +178,7 @@ class ComposicaoCrud(MasterDetailCrud): context['participacao_set'] = Participacao.objects.filter( composicao__pk=context['composicao_pk'] - ).order_by('id') + ).order_by('-titular', 'cargo__id_ordenacao', 'id') return context diff --git a/sapl/templates/comissoes/cargos_ordenacao.html b/sapl/templates/comissoes/cargos_ordenacao.html index 19e417ffe..dd962c6a3 100644 --- a/sapl/templates/comissoes/cargos_ordenacao.html +++ b/sapl/templates/comissoes/cargos_ordenacao.html @@ -13,8 +13,7 @@ {% crispy form %}
-
-

Ordenação Atual


+

Ordenação Atual