diff --git a/sapl/parlamentares/legacy.yaml b/sapl/parlamentares/legacy.yaml index a4c6b9d12..acaca47de 100644 --- a/sapl/parlamentares/legacy.yaml +++ b/sapl/parlamentares/legacy.yaml @@ -28,11 +28,6 @@ ComposicaoColigacao: coligacao: cod_coligacao partido: cod_partido -Municipio (Localidade): - nome: nom_localidade - regiao: sgl_regiao - uf: sgl_uf - NivelInstrucao: descricao: des_nivel_instrucao @@ -52,7 +47,6 @@ Parlamentar: fax: num_fax_parlamentar fax_residencia: num_fax_resid locais_atuacao: des_local_atuacao - municipio_residencia: cod_localidade_resid nivel_instrucao: cod_nivel_instrucao nome_completo: nom_completo nome_parlamentar: nom_parlamentar diff --git a/sapl/parlamentares/migrations/0014_auto_20180131_1014.py b/sapl/parlamentares/migrations/0014_auto_20180131_1014.py new file mode 100644 index 000000000..e6ed4ea6c --- /dev/null +++ b/sapl/parlamentares/migrations/0014_auto_20180131_1014.py @@ -0,0 +1,46 @@ +# -*- coding: utf-8 -*- +# Generated by Django 1.9.13 on 2018-01-31 12:14 +from __future__ import unicode_literals + +from django.db import migrations, models + +from sapl.utils import LISTA_DE_UFS + + +def migrate_municipio_e_uf_como_charfields(apps, schema_editor): + Parlamentar = apps.get_model('parlamentares', 'Parlamentar') + for parlamentar in Parlamentar.objects.all(): + municipio = parlamentar.municipio_residencia_old + if municipio: + parlamentar.municipio_residencia = municipio.nome + parlamentar.uf_residencia = municipio.uf + parlamentar.save() + + +class Migration(migrations.Migration): + + dependencies = [ + ('parlamentares', '0013_auto_20180130_1425'), + ] + + operations = [ + migrations.RenameField( + model_name='parlamentar', + old_name='municipio_residencia', + new_name='municipio_residencia_old', + ), + + migrations.AddField( + model_name='parlamentar', + name='municipio_residencia', + field=models.CharField(blank=True, max_length=50, + verbose_name='Município'), + ), + migrations.AddField( + model_name='parlamentar', + name='uf_residencia', + field=models.CharField(blank=True, choices=LISTA_DE_UFS, + max_length=2, verbose_name='UF'), + ), + migrations.RunPython(migrate_municipio_e_uf_como_charfields), + ] diff --git a/sapl/parlamentares/migrations/0015_auto_20180131_1629.py b/sapl/parlamentares/migrations/0015_auto_20180131_1629.py new file mode 100644 index 000000000..334e88edf --- /dev/null +++ b/sapl/parlamentares/migrations/0015_auto_20180131_1629.py @@ -0,0 +1,22 @@ +# -*- coding: utf-8 -*- +# Generated by Django 1.9.13 on 2018-01-31 18:29 +from __future__ import unicode_literals + +from django.db import migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ('parlamentares', '0014_auto_20180131_1014'), + ] + + operations = [ + migrations.RemoveField( + model_name='parlamentar', + name='municipio_residencia_old', + ), + migrations.DeleteModel( + name='Municipio', + ), + ] diff --git a/sapl/parlamentares/models.py b/sapl/parlamentares/models.py index c790dd874..d58102e87 100644 --- a/sapl/parlamentares/models.py +++ b/sapl/parlamentares/models.py @@ -140,35 +140,6 @@ class ComposicaoColigacao(models.Model): } -@reversion.register() -class Municipio(models.Model): # Localidade - # TODO filter on migration leaving only cities - - REGIAO_CHOICES = ( - ('CO', 'Centro-Oeste'), - ('NE', 'Nordeste'), - ('NO', 'Norte'), - ('SE', 'Sudeste'), # TODO convert on migrate SD => SE - ('SL', 'Sul'), - ('EX', 'Exterior'), - ) - - nome = models.CharField(max_length=50, blank=True) - uf = models.CharField( - max_length=2, blank=True, choices=LISTA_DE_UFS) - regiao = models.CharField( - max_length=2, blank=True, choices=REGIAO_CHOICES) - - class Meta: - verbose_name = _('Município') - verbose_name_plural = _('Municípios') - - def __str__(self): - return _('%(nome)s - %(uf)s (%(regiao)s)') % { - 'nome': self.nome, 'uf': self.uf, 'regiao': self.regiao - } - - @reversion.register() class NivelInstrucao(models.Model): descricao = models.CharField( @@ -256,9 +227,10 @@ class Parlamentar(models.Model): max_length=100, blank=True, verbose_name=_('Endereço Residencial')) - municipio_residencia = models.ForeignKey( - Municipio, blank=True, null=True, - on_delete=models.PROTECT, verbose_name=_('Município')) + municipio_residencia = models.CharField( + max_length=50, blank=True, verbose_name=_('Município')) + uf_residencia = models.CharField( + max_length=2, blank=True, choices=LISTA_DE_UFS, verbose_name=_('UF')) cep_residencia = models.CharField( max_length=9, blank=True, verbose_name=_('CEP')) telefone_residencia = models.CharField( diff --git a/sapl/parlamentares/urls.py b/sapl/parlamentares/urls.py index 552257c61..e383421c4 100644 --- a/sapl/parlamentares/urls.py +++ b/sapl/parlamentares/urls.py @@ -17,7 +17,7 @@ from sapl.parlamentares.views import (CargoMesaCrud, ColigacaoCrud, frente_atualiza_lista_parlamentares, insere_parlamentar_composicao, parlamentares_frente_selected, - remove_parlamentar_composicao, MunicipioCrud) + remove_parlamentar_composicao) from .apps import AppConfig @@ -60,7 +60,6 @@ urlpatterns = [ url(r'^sistema/parlamentar/tipo-militar/', include(TipoMilitarCrud.get_urls())), url(r'^sistema/parlamentar/partido/', include(PartidoCrud.get_urls())), - url(r'^sistema/parlamentar/municipio/', include(MunicipioCrud.get_urls())), url(r'^sistema/mesa-diretora/sessao-legislativa/', include(SessaoLegislativaCrud.get_urls())), diff --git a/sapl/parlamentares/views.py b/sapl/parlamentares/views.py index 90c3e72d6..3e79770a3 100644 --- a/sapl/parlamentares/views.py +++ b/sapl/parlamentares/views.py @@ -31,7 +31,7 @@ from .forms import (FiliacaoForm, LegislaturaForm, MandatoForm, from .models import (CargoMesa, Coligacao, ComposicaoColigacao, ComposicaoMesa, Dependente, Filiacao, Frente, Legislatura, Mandato, NivelInstrucao, Parlamentar, Partido, SessaoLegislativa, - SituacaoMilitar, TipoAfastamento, TipoDependente, Votante, Municipio) + SituacaoMilitar, TipoAfastamento, TipoDependente, Votante) CargoMesaCrud = CrudAux.build(CargoMesa, 'cargo_mesa') PartidoCrud = CrudAux.build(Partido, 'partidos') @@ -40,7 +40,6 @@ TipoDependenteCrud = CrudAux.build(TipoDependente, 'tipo_dependente') NivelInstrucaoCrud = CrudAux.build(NivelInstrucao, 'nivel_instrucao') TipoAfastamentoCrud = CrudAux.build(TipoAfastamento, 'tipo_afastamento') TipoMilitarCrud = CrudAux.build(SituacaoMilitar, 'tipo_situa_militar') -MunicipioCrud = CrudAux.build(Municipio, 'municipio') DependenteCrud = MasterDetailCrud.build( Dependente, 'parlamentar', 'dependente') @@ -85,7 +84,6 @@ class FrenteList(MasterDetailCrud): @classmethod def url_name(cls, suffix): return '%s_parlamentar_%s' % (cls.model._meta.model_name, suffix) - class RelatoriaParlamentarCrud(CrudBaseForListAndDetailExternalAppView): @@ -668,7 +666,8 @@ class MesaDiretoraView(FormView): year = timezone.now().year month = timezone.now().month - sessao_atual = sessoes.filter(data_inicio__year__lte=year).exclude(data_inicio__gt=timezone.now()).order_by('-data_inicio').first() + sessao_atual = sessoes.filter(data_inicio__year__lte=year).exclude( + data_inicio__gt=timezone.now()).order_by('-data_inicio').first() mesa = sessao_atual.composicaomesa_set.all() if sessao_atual else [] @@ -691,13 +690,13 @@ class MesaDiretoraView(FormView): return self.render_to_response( {'legislaturas': Legislatura.objects.all( ).order_by('-numero'), - 'legislatura_selecionada': legislatura, - 'sessoes': sessoes, - 'sessao_selecionada': sessao_atual, - 'composicao_mesa': mesa, - 'parlamentares': parlamentares_vagos, - 'cargos_vagos': cargos_vagos - }) + 'legislatura_selecionada': legislatura, + 'sessoes': sessoes, + 'sessao_selecionada': sessao_atual, + 'composicao_mesa': mesa, + 'parlamentares': parlamentares_vagos, + 'cargos_vagos': cargos_vagos + }) def altera_field_mesa(request): diff --git a/sapl/rules/map_rules.py b/sapl/rules/map_rules.py index 02c6c0dfa..415c7beca 100644 --- a/sapl/rules/map_rules.py +++ b/sapl/rules/map_rules.py @@ -232,7 +232,6 @@ rules_group_geral = { (parlamentares.Coligacao, __base__), (parlamentares.ComposicaoColigacao, __base__), (parlamentares.Partido, __base__), - (parlamentares.Municipio, __base__), (parlamentares.NivelInstrucao, __base__), (parlamentares.SituacaoMilitar, __base__), (parlamentares.Parlamentar, __base__), diff --git a/sapl/templates/parlamentares/layouts.yaml b/sapl/templates/parlamentares/layouts.yaml index 583835bfd..49d769dd9 100644 --- a/sapl/templates/parlamentares/layouts.yaml +++ b/sapl/templates/parlamentares/layouts.yaml @@ -39,7 +39,7 @@ Parlamentar: - email - numero_gab_parlamentar telefone fax - endereco_residencia cep_residencia - - municipio_residencia + - municipio_residencia uf_residencia - telefone_residencia fax_residencia - locais_atuacao - fotografia