From c9346460d59b9c1107b3317e03473853dcc81637 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vin=C3=ADcius=20Cantu=C3=A1ria?= Date: Mon, 28 Sep 2020 15:48:57 -0300 Subject: [PATCH] =?UTF-8?q?Corrige=20Mat=C3=A9ria=20Legislativa=20em=20Aud?= =?UTF-8?q?i=C3=AAncia=20(#3282)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Conserta bug em listagem de audiência * Adiciona verificação para numeração existente Co-authored-by: eribeiro --- sapl/audiencia/forms.py | 4 +++- sapl/audiencia/views.py | 10 ++++------ 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/sapl/audiencia/forms.py b/sapl/audiencia/forms.py index 26bca409a..72f3e9c35 100755 --- a/sapl/audiencia/forms.py +++ b/sapl/audiencia/forms.py @@ -115,12 +115,14 @@ class AudienciaForm(FileFieldCheckMixin, forms.ModelForm): raise ValidationError(msg) if not cleaned_data['numero']: - ultima_audiencia = AudienciaPublica.objects.all().order_by('numero').last() if ultima_audiencia: cleaned_data['numero'] = ultima_audiencia.numero + 1 else: cleaned_data['numero'] = 1 + else: + if AudienciaPublica.objects.filter(numero=cleaned_data['numero']).exclude(pk=self.instance.pk).exists(): + raise ValidationError(f"Já existe uma audiência com a numeração {cleaned_data['numero']}.") if self.cleaned_data['hora_inicio'] and self.cleaned_data['hora_fim']: if self.cleaned_data['hora_fim'] < self.cleaned_data['hora_inicio']: diff --git a/sapl/audiencia/views.py b/sapl/audiencia/views.py index 281075df1..b186fef50 100755 --- a/sapl/audiencia/views.py +++ b/sapl/audiencia/views.py @@ -29,15 +29,13 @@ class AudienciaCrud(Crud): def get_context_data(self, **kwargs): context = super().get_context_data(**kwargs) - audiencia_materia = {} - for o in context['object_list']: - # indexado pelo numero da audiencia - audiencia_materia[str(o.numero)] = o.materia + audiencia_materia = {str(a.id): a.materia for a in context['object_list']} for row in context['rows']: - coluna_materia = row[3] # se mudar a ordem de listagem mudar aqui + coluna_materia = row[3] # se mudar a ordem de listagem mudar aqui if coluna_materia[0]: - materia = audiencia_materia[row[0][0]] + audiencia_id = row[0][1].split('/')[-1] + materia = audiencia_materia[audiencia_id] if materia: url_materia = reverse('sapl.materia:materialegislativa_detail', kwargs={'pk': materia.id})