From dbd31616141bb2a4bd51eae0d45971223319e50d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ses=C3=B3stris=20Vieira?= Date: Fri, 5 Apr 2024 09:57:28 -0300 Subject: [PATCH] =?UTF-8?q?Adidiona=20informa=C3=A7=C3=B5es=20de=20extin?= =?UTF-8?q?=C3=A7=C3=A3o=20de=20conv=C3=AAnios.=20Gertiq=20#181036?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- sigi/apps/casas/admin.py | 2 +- sigi/apps/convenios/admin.py | 11 ++++++- ..._data_extincao_convenio_motivo_extincao.py | 29 +++++++++++++++++++ sigi/apps/convenios/models.py | 12 ++++++++ 4 files changed, 52 insertions(+), 2 deletions(-) create mode 100644 sigi/apps/convenios/migrations/0035_convenio_data_extincao_convenio_motivo_extincao.py diff --git a/sigi/apps/casas/admin.py b/sigi/apps/casas/admin.py index c008716..b210c72 100644 --- a/sigi/apps/casas/admin.py +++ b/sigi/apps/casas/admin.py @@ -210,7 +210,7 @@ class ConveniosInline(admin.TabularInline): if obj.pk is None: return "" status = obj.get_status() - if status in ["Vencido", "Desistência", "Cancelado"]: + if status in ["Vencido", "Desistência", "Cancelado", "Extinto"]: label = r"danger" elif status == "Vigente": label = r"success" diff --git a/sigi/apps/convenios/admin.py b/sigi/apps/convenios/admin.py index 693d980..c522b40 100644 --- a/sigi/apps/convenios/admin.py +++ b/sigi/apps/convenios/admin.py @@ -159,6 +159,15 @@ class ConvenioAdmin( ) }, ), + ( + _("Extinção / desistência"), + { + "fields": ( + "data_extincao", + "motivo_extincao", + ) + }, + ), ( _("Gescon"), { @@ -235,7 +244,7 @@ class ConvenioAdmin( return "" status = obj.get_status() - if status in ["Vencido", "Desistência", "Cancelado"]: + if status in ["Vencido", "Desistência", "Cancelado", "Extinto"]: label = r"danger" elif status == "Vigente": label = r"success" diff --git a/sigi/apps/convenios/migrations/0035_convenio_data_extincao_convenio_motivo_extincao.py b/sigi/apps/convenios/migrations/0035_convenio_data_extincao_convenio_motivo_extincao.py new file mode 100644 index 0000000..fdc48de --- /dev/null +++ b/sigi/apps/convenios/migrations/0035_convenio_data_extincao_convenio_motivo_extincao.py @@ -0,0 +1,29 @@ +# Generated by Django 4.2.11 on 2024-04-05 12:40 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ("convenios", "0034_gescon_checksums"), + ] + + operations = [ + migrations.AddField( + model_name="convenio", + name="data_extincao", + field=models.DateField( + blank=True, + null=True, + verbose_name="data de extinção/desistência", + ), + ), + migrations.AddField( + model_name="convenio", + name="motivo_extincao", + field=models.TextField( + blank=True, verbose_name="motivo da extinção/desistência" + ), + ), + ] diff --git a/sigi/apps/convenios/models.py b/sigi/apps/convenios/models.py index 6dd5806..8e48118 100644 --- a/sigi/apps/convenios/models.py +++ b/sigi/apps/convenios/models.py @@ -316,6 +316,12 @@ class Convenio(models.Model): blank=True, help_text=_("Data do retorno do convênio sem assinatura"), ) + data_extincao = models.DateField( + _("data de extinção/desistência"), null=True, blank=True + ) + motivo_extincao = models.TextField( + _("motivo da extinção/desistência"), blank=True + ) conveniada = models.BooleanField(default=False) equipada = models.BooleanField(default=False) atualizacao_gescon = models.DateTimeField( @@ -329,6 +335,9 @@ class Convenio(models.Model): if self.status and self.status.cancela: return _("Cancelado") + if self.data_extincao: + return _("Extinto") + if self.data_retorno_assinatura is not None: if self.data_termino_vigencia is not None: if timezone.localdate() >= self.data_termino_vigencia: @@ -407,6 +416,9 @@ class Convenio(models.Model): SDF = settings.SHORT_DATE_FORMAT number = self.num_convenio project = self.projeto.sigla + if self.data_extincao: + date = date_format(self.data_extincao, SDF) + return _(f"{project} nº {number} extinto em {date}") if (self.data_retorno_assinatura is None) and ( self.equipada and self.data_termo_aceite is not None ):