Browse Source

Adidiona informações de extinção de convênios. Gertiq #181036

pull/173/head
Sesóstris Vieira 9 months ago
parent
commit
dbd3161614
  1. 2
      sigi/apps/casas/admin.py
  2. 11
      sigi/apps/convenios/admin.py
  3. 29
      sigi/apps/convenios/migrations/0035_convenio_data_extincao_convenio_motivo_extincao.py
  4. 12
      sigi/apps/convenios/models.py

2
sigi/apps/casas/admin.py

@ -210,7 +210,7 @@ class ConveniosInline(admin.TabularInline):
if obj.pk is None: if obj.pk is None:
return "" return ""
status = obj.get_status() status = obj.get_status()
if status in ["Vencido", "Desistência", "Cancelado"]: if status in ["Vencido", "Desistência", "Cancelado", "Extinto"]:
label = r"danger" label = r"danger"
elif status == "Vigente": elif status == "Vigente":
label = r"success" label = r"success"

11
sigi/apps/convenios/admin.py

@ -159,6 +159,15 @@ class ConvenioAdmin(
) )
}, },
), ),
(
_("Extinção / desistência"),
{
"fields": (
"data_extincao",
"motivo_extincao",
)
},
),
( (
_("Gescon"), _("Gescon"),
{ {
@ -235,7 +244,7 @@ class ConvenioAdmin(
return "" return ""
status = obj.get_status() status = obj.get_status()
if status in ["Vencido", "Desistência", "Cancelado"]: if status in ["Vencido", "Desistência", "Cancelado", "Extinto"]:
label = r"danger" label = r"danger"
elif status == "Vigente": elif status == "Vigente":
label = r"success" label = r"success"

29
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"
),
),
]

12
sigi/apps/convenios/models.py

@ -316,6 +316,12 @@ class Convenio(models.Model):
blank=True, blank=True,
help_text=_("Data do retorno do convênio sem assinatura"), 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) conveniada = models.BooleanField(default=False)
equipada = models.BooleanField(default=False) equipada = models.BooleanField(default=False)
atualizacao_gescon = models.DateTimeField( atualizacao_gescon = models.DateTimeField(
@ -329,6 +335,9 @@ class Convenio(models.Model):
if self.status and self.status.cancela: if self.status and self.status.cancela:
return _("Cancelado") return _("Cancelado")
if self.data_extincao:
return _("Extinto")
if self.data_retorno_assinatura is not None: if self.data_retorno_assinatura is not None:
if self.data_termino_vigencia is not None: if self.data_termino_vigencia is not None:
if timezone.localdate() >= self.data_termino_vigencia: if timezone.localdate() >= self.data_termino_vigencia:
@ -407,6 +416,9 @@ class Convenio(models.Model):
SDF = settings.SHORT_DATE_FORMAT SDF = settings.SHORT_DATE_FORMAT
number = self.num_convenio number = self.num_convenio
project = self.projeto.sigla project = self.projeto.sigla
if self.data_extincao:
date = date_format(self.data_extincao, SDF)
return _(f"{project}{number} extinto em {date}")
if (self.data_retorno_assinatura is None) and ( if (self.data_retorno_assinatura is None) and (
self.equipada and self.data_termo_aceite is not None self.equipada and self.data_termo_aceite is not None
): ):

Loading…
Cancel
Save