From 2c24621f18d658daefdac20739ef65d28e5f11bd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ses=C3=B3stris=20Vieira?= Date: Tue, 10 Jun 2025 11:26:08 -0300 Subject: [PATCH] =?UTF-8?q?Remove=20bot=C3=A3o=20Salvar=20e=20adicionar=20?= =?UTF-8?q?outro=20da=20tela=20de=20Casas=20para=20evitar=20confus=C3=B5es?= =?UTF-8?q?.=20Gertiq=20#219927?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- requirements/requirements.txt | 2 +- sigi/apps/casas/admin.py | 22 ++++++++++++++++++---- 2 files changed, 19 insertions(+), 5 deletions(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index f1bf7b5..b5f58d1 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -30,5 +30,5 @@ django-localflavor==4.0 django-tinymce==4.1.0 django-weasyprint==2.4.0 djangorestframework==3.16.0 -djbs-theme @ git+https://github.com/interlegis/djbs-theme.git@1.0.1 +djbs-theme @ git+https://github.com/interlegis/djbs-theme.git@1.0.2 django-dashboard @ git+https://github.com/interlegis/django-dashboard.git diff --git a/sigi/apps/casas/admin.py b/sigi/apps/casas/admin.py index 07f3f2c..7ef6cc4 100644 --- a/sigi/apps/casas/admin.py +++ b/sigi/apps/casas/admin.py @@ -191,6 +191,9 @@ class ListaFuncionarioInline(admin.TabularInline): qs = super().get_queryset(request) return qs.exclude(desativado=True) + def has_change_permission(self, request, obj): + return False + @admin.display(description=_("setor")) def get_setor(self, func): if func.setor == "contato_interlegis": @@ -469,8 +472,9 @@ class OrgaoAdmin(AsciifyQParameter, ExportActionMixin, admin.ModelAdmin): "bairro", "logradouro", "cep", - "municipio__nome", - "municipio__uf__nome", + "municipio__search_text", + "municipio__uf__search_text", + "municipio__uf__sigla", "municipio__codigo_ibge", "pagina_web", "observacoes", @@ -491,6 +495,15 @@ class OrgaoAdmin(AsciifyQParameter, ExportActionMixin, admin.ModelAdmin): queryset = super().get_queryset(request) return queryset.prefetch_related("gerentes_interlegis", "convenio_set") + def changeform_view( + self, request, object_id, form_url, extra_context=None + ): + extra_context = extra_context or {} + extra_context["show_save_and_add_another"] = False + return super().changeform_view( + request, object_id, form_url, extra_context + ) + def save_related(self, request, form, formsets, change): ocorrencia_formset = next( filter(lambda f: f.model == Ocorrencia, formsets), None @@ -501,13 +514,14 @@ class OrgaoAdmin(AsciifyQParameter, ExportActionMixin, admin.ModelAdmin): except Servidor.DoesNotExist: servidor = None if servidor is not None: - ocorrencia_formset.save(commit=False) - for obj in ocorrencia_formset.new_objects: + instances = ocorrencia_formset.save(commit=False) + for obj in instances: if ( not hasattr(obj, "servidor_registro") or obj.servidor_registro is None ): obj.servidor_registro = servidor + obj.save() return super().save_related(request, form, formsets, change) @admin.display(