mirror of https://github.com/interlegis/sigi.git
Sesóstris Vieira
1 year ago
5 changed files with 435 additions and 172 deletions
@ -0,0 +1,104 @@ |
|||
# Generated by Django 4.2.4 on 2023-09-13 22:15 |
|||
|
|||
from django.db import migrations, models |
|||
import django.db.models.deletion |
|||
import django.utils.timezone |
|||
|
|||
|
|||
class Migration(migrations.Migration): |
|||
dependencies = [ |
|||
("servidores", "0013_servidor_moodle_userid"), |
|||
("eventos", "0040_alter_itemsolicitado_data_analise_and_more"), |
|||
] |
|||
|
|||
operations = [ |
|||
migrations.AddField( |
|||
model_name="solicitacao", |
|||
name="data_analise", |
|||
field=models.DateTimeField( |
|||
blank=True, |
|||
editable=False, |
|||
null=True, |
|||
verbose_name="data de autorização/rejeição", |
|||
), |
|||
), |
|||
migrations.AddField( |
|||
model_name="solicitacao", |
|||
name="justificativa", |
|||
field=models.TextField(blank=True, verbose_name="Justificativa"), |
|||
), |
|||
migrations.AddField( |
|||
model_name="solicitacao", |
|||
name="servidor", |
|||
field=models.ForeignKey( |
|||
blank=True, |
|||
editable=False, |
|||
help_text="Servidor que autorizou ou rejeitou a realização do evento", |
|||
limit_choices_to={"externo": False}, |
|||
null=True, |
|||
on_delete=django.db.models.deletion.PROTECT, |
|||
to="servidores.servidor", |
|||
verbose_name="servidor analisador", |
|||
), |
|||
), |
|||
migrations.AddField( |
|||
model_name="solicitacao", |
|||
name="status", |
|||
field=models.CharField( |
|||
choices=[ |
|||
("S", "Solicitado"), |
|||
("A", "Autorizado"), |
|||
("R", "Rejeitado"), |
|||
("C", "Concluído"), |
|||
], |
|||
default="S", |
|||
max_length=1, |
|||
verbose_name="Status", |
|||
), |
|||
), |
|||
migrations.CreateModel( |
|||
name="AnexoSolicitacao", |
|||
fields=[ |
|||
( |
|||
"id", |
|||
models.BigAutoField( |
|||
auto_created=True, |
|||
primary_key=True, |
|||
serialize=False, |
|||
verbose_name="ID", |
|||
), |
|||
), |
|||
( |
|||
"arquivo", |
|||
models.FileField( |
|||
max_length=500, |
|||
upload_to="apps/eventos/solicitacao/anexo/arquivo", |
|||
), |
|||
), |
|||
( |
|||
"descricao", |
|||
models.CharField(max_length=70, verbose_name="descrição"), |
|||
), |
|||
( |
|||
"data_pub", |
|||
models.DateTimeField( |
|||
default=django.utils.timezone.localtime, |
|||
verbose_name="data da publicação do anexo", |
|||
), |
|||
), |
|||
( |
|||
"solicitacao", |
|||
models.ForeignKey( |
|||
on_delete=django.db.models.deletion.CASCADE, |
|||
to="eventos.solicitacao", |
|||
verbose_name="evento", |
|||
), |
|||
), |
|||
], |
|||
options={ |
|||
"verbose_name": "Anexo", |
|||
"verbose_name_plural": "Anexos", |
|||
"ordering": ("-data_pub",), |
|||
}, |
|||
), |
|||
] |
@ -0,0 +1,38 @@ |
|||
# Generated by Django 4.2.4 on 2023-09-13 22:20 |
|||
|
|||
from django.db import migrations |
|||
|
|||
|
|||
def forwards(apps, schema_editor): |
|||
Solicitacao = apps.get_model("eventos", "Solicitacao") |
|||
|
|||
for s in Solicitacao.objects.all(): |
|||
statuses = list( |
|||
s.itemsolicitado_set.values_list("status", flat=True).distinct( |
|||
"status" |
|||
) |
|||
) |
|||
if statuses == ["S"]: |
|||
s.status = "S" |
|||
elif statuses == ["A"]: |
|||
s.status = "C" |
|||
elif statuses == ["R"]: |
|||
s.status = "R" |
|||
elif "S" in statuses and ("A" in statuses or "R" in statuses): |
|||
s.status = "A" |
|||
s.save() |
|||
|
|||
|
|||
class Migration(migrations.Migration): |
|||
dependencies = [ |
|||
( |
|||
"eventos", |
|||
"0041_solicitacao_data_analise_solicitacao_justificativa_and_more", |
|||
), |
|||
] |
|||
|
|||
operations = [ |
|||
migrations.RunPython( |
|||
forwards, |
|||
) |
|||
] |
Loading…
Reference in new issue