Sistema de Apoio ao Processo Legislativo
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 

68 lines
3.1 KiB

# -*- coding: utf-8 -*-
# Generated by Django 1.11.29 on 2020-08-07 12:50
from __future__ import unicode_literals
from django.db import migrations, models
import django.db.models.deletion
def cria_parlamentar_em_frente(apps, schema_editor):
Frente = apps.get_model("parlamentares", "Frente")
FrenteCargo = apps.get_model("parlamentares", "FrenteCargo")
FrenteParlamentar = apps.get_model("parlamentares", "FrenteParlamentar")
cargo_membro = FrenteCargo.objects.create(nome_cargo="membro", cargo_unico=False)
parlamentares_frente = []
for frente in Frente.objects.all().prefetch_related("parlamentares"):
for parlamentar in frente.parlamentares.all():
parlamentares_frente.append(
FrenteParlamentar(
frente=frente,
parlamentar=parlamentar,
cargo=cargo_membro,
data_entrada=frente.data_criacao))
FrenteParlamentar.objects.bulk_create(parlamentares_frente)
class Migration(migrations.Migration):
dependencies = [
('parlamentares', '0031_auto_20200407_1406'),
]
operations = [
migrations.CreateModel(
name='FrenteCargo',
fields=[
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('nome_cargo', models.CharField(max_length=80, verbose_name='Cargo de frente parlamentar')),
('cargo_unico', models.BooleanField(choices=[(True, 'Sim'), (False, 'Não')], default=False, verbose_name='Cargo único?')),
],
options={
'verbose_name': 'Cargo de Frente Parlamentar',
'verbose_name_plural': 'Cargos de Frente Parlamentar',
'ordering': ('cargo_unico', 'nome_cargo'),
},
),
migrations.CreateModel(
name='FrenteParlamentar',
fields=[
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('frente', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='parlamentares.Frente',verbose_name='Frente parlamentar')),
('parlamentar', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='parlamentares.Parlamentar', verbose_name='Parlamentar')),
('cargo', models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, to='parlamentares.FrenteCargo', verbose_name='Cargo na frente parlamentar')),
('data_entrada', models.DateField(verbose_name='Data Entrada')),
('data_saida', models.DateField(blank=True, null=True, verbose_name='Data Saída')),
],
options={
'verbose_name': 'Parlamentar de frente parlamentar',
'verbose_name_plural': 'Parlamentares de frente parlamentar',
'ordering': ('frente', 'parlamentar', 'cargo'),
},
),
migrations.RunPython(cria_parlamentar_em_frente),
migrations.RemoveField(
model_name='frente',
name='parlamentares',
),
]