Browse Source

Inserido parlamentarFrente e cargoFrente

pull/3043/head
ricardocanela 6 years ago
committed by João Rodrigues
parent
commit
ddbc2b75ac
  1. 39
      sapl/parlamentares/migrations/0037_auto_20191025_1140.py
  2. 26
      sapl/parlamentares/migrations/0038_auto_20191025_1142.py
  3. 34
      sapl/parlamentares/models.py
  4. 4
      sapl/parlamentares/urls.py
  5. 49
      sapl/parlamentares/views.py
  6. 3
      sapl/templates/menu_tabelas_auxiliares.yaml
  7. 8
      sapl/templates/parlamentares/layouts.yaml

39
sapl/parlamentares/migrations/0037_auto_20191025_1140.py

@ -0,0 +1,39 @@
# -*- coding: utf-8 -*-
# Generated by Django 1.11.25 on 2019-10-25 14:40
from __future__ import unicode_literals
from django.db import migrations, models
import django.db.models.deletion
class Migration(migrations.Migration):
dependencies = [
('parlamentares', '0036_parlamentarfrente'),
]
operations = [
migrations.CreateModel(
name='CargoFrente',
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',
'ordering': ('nome_cargo',),
'verbose_name_plural': 'Cargos de Frente Parlamentar',
},
),
migrations.AlterField(
model_name='parlamentarfrente',
name='frente',
field=models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, to='parlamentares.Frente', verbose_name='Frente'),
),
migrations.AlterField(
model_name='parlamentarfrente',
name='parlamentar',
field=models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, to='parlamentares.Parlamentar', verbose_name='Parlamentar'),
),
]

26
sapl/parlamentares/migrations/0038_auto_20191025_1142.py

@ -0,0 +1,26 @@
# -*- coding: utf-8 -*-
# Generated by Django 1.11.25 on 2019-10-25 14:42
from __future__ import unicode_literals
from django.db import migrations, models
import django.db.models.deletion
class Migration(migrations.Migration):
dependencies = [
('parlamentares', '0037_auto_20191025_1140'),
]
operations = [
migrations.AlterModelOptions(
name='parlamentarfrente',
options={'ordering': ('cargo',), 'verbose_name': 'Parlamentar', 'verbose_name_plural': 'Parlamentares'},
),
migrations.AddField(
model_name='parlamentarfrente',
name='cargo',
field=models.ForeignKey(default=1, on_delete=django.db.models.deletion.PROTECT, to='parlamentares.CargoFrente', verbose_name='Cargo'),
preserve_default=False,
),
]

34
sapl/parlamentares/models.py

@ -605,12 +605,38 @@ class Frente(models.Model):
def __str__(self): def __str__(self):
return self.nome return self.nome
class CargoFrente(models.Model):
nome_cargo = models.CharField(max_length=80,
verbose_name=_('Cargo de Frente Parlamentar'))
cargo_unico = models.BooleanField(default=False,
choices=YES_NO_CHOICES,
verbose_name=_('Cargo Único ?'))
class Meta:
verbose_name = _('Cargo de Frente Parlamentar')
verbose_name_plural = _('Cargos de Frente Parlamentar')
ordering = ('nome_cargo',)
def __str__(self):
return self.nome_cargo
@reversion.register() @reversion.register()
class ParlamentarFrente(models.Model): class ParlamentarFrente(models.Model):
frente = models.ForeignKey(Frente, verbose_name=_('Frente')) frente = models.ForeignKey(Frente,
verbose_name=_('Frente'),
on_delete=models.PROTECT)
parlamentar = models.ForeignKey(Parlamentar, parlamentar = models.ForeignKey(Parlamentar,
verbose_name=_('Parlamentar')) verbose_name=_('Parlamentar'),
on_delete=models.PROTECT)
cargo = models.ForeignKey(CargoFrente,
verbose_name=_('Cargo'),
on_delete=models.PROTECT)
data_entrada = models.DateField(verbose_name=_('Data Entrada')) data_entrada = models.DateField(verbose_name=_('Data Entrada'))
@ -621,10 +647,12 @@ class ParlamentarFrente(models.Model):
class Meta: class Meta:
verbose_name = _('Parlamentar') verbose_name = _('Parlamentar')
verbose_name_plural = _('Parlamentares') verbose_name_plural = _('Parlamentares')
ordering = ('cargo',)
def __str__(self): def __str__(self):
return "%s - %s" % (self.frente, self.parlamentar) return "%s - %s" % (self.frente, self.parlamentar)
class Votante(models.Model): class Votante(models.Model):
parlamentar = models.ForeignKey( parlamentar = models.ForeignKey(
Parlamentar, verbose_name=_('Parlamentar'), Parlamentar, verbose_name=_('Parlamentar'),

4
sapl/parlamentares/urls.py

@ -2,7 +2,7 @@ from django.conf.urls import include, url
from sapl.parlamentares.views import (CargoMesaCrud, ColigacaoCrud, from sapl.parlamentares.views import (CargoMesaCrud, ColigacaoCrud,
ComposicaoColigacaoCrud, DependenteCrud, ComposicaoColigacaoCrud, DependenteCrud,
BancadaCrud, CargoBancadaCrud, BancadaCrud, CargoBancadaCrud, CargoFrenteCrud,
FiliacaoCrud, FrenteCrud, FrenteList, FiliacaoCrud, FrenteCrud, FrenteList,
LegislaturaCrud, MandatoCrud, LegislaturaCrud, MandatoCrud,
MesaDiretoraView, NivelInstrucaoCrud, MesaDiretoraView, NivelInstrucaoCrud,
@ -69,6 +69,8 @@ urlpatterns = [
include(BancadaCrud.get_urls())), include(BancadaCrud.get_urls())),
url(r'^sistema/cargo-bancada/', url(r'^sistema/cargo-bancada/',
include(CargoBancadaCrud.get_urls())), include(CargoBancadaCrud.get_urls())),
url(r'^sistema/cargo-frente/',
include(CargoFrenteCrud.get_urls())),
url(r'^sistema/bloco/', url(r'^sistema/bloco/',
include(BlocoCrud.get_urls())), include(BlocoCrud.get_urls())),

49
sapl/parlamentares/views.py

@ -45,10 +45,11 @@ from .models import (Bancada, CargoBancada, CargoMesa, Coligacao, ComposicaoColi
NivelInstrucao, Parlamentar, Partido, SessaoLegislativa, NivelInstrucao, Parlamentar, Partido, SessaoLegislativa,
SituacaoMilitar, TipoAfastamento, TipoDependente, Votante, SituacaoMilitar, TipoAfastamento, TipoDependente, Votante,
Bloco, CargoBlocoPartido, HistoricoPartido, CargoBloco, Bloco, CargoBlocoPartido, HistoricoPartido, CargoBloco,
ParlamentarFrente, AfastamentoParlamentar) ParlamentarFrente, AfastamentoParlamentar, CargoFrente)
CargoBancadaCrud = CrudAux.build(CargoBancada, '') CargoBancadaCrud = CrudAux.build(CargoBancada, '')
CargoFrenteCrud = CrudAux.build(CargoFrente, '')
CargoMesaCrud = CrudAux.build(CargoMesa, 'cargo_mesa') CargoMesaCrud = CrudAux.build(CargoMesa, 'cargo_mesa')
TipoDependenteCrud = CrudAux.build(TipoDependente, 'tipo_dependente') TipoDependenteCrud = CrudAux.build(TipoDependente, 'tipo_dependente')
NivelInstrucaoCrud = CrudAux.build(NivelInstrucao, 'nivel_instrucao') NivelInstrucaoCrud = CrudAux.build(NivelInstrucao, 'nivel_instrucao')
@ -420,15 +421,18 @@ class ParlamentarFrenteCrud(MasterDetailCrud):
help_topic = 'parlamentar_frente' help_topic = 'parlamentar_frente'
public = [RP_LIST, RP_DETAIL] public = [RP_LIST, RP_DETAIL]
class BaseMixin(MasterDetailCrud.BaseMixin):
list_field_names = ['parlamentar',
'frente',
'data_entrada',
'data_saida']
class CreateView(MasterDetailCrud.CreateView): class CreateView(MasterDetailCrud.CreateView):
form_class = ParlamentarFrenteForm form_class = ParlamentarFrenteForm
def get_context_data(self, **kwargs):
context = super().get_context_data(**kwargs)
context['subnav_template_name'] = ''
return context
def get_initial(self): def get_initial(self):
self.initial['frente'] = Frente.objects.get(pk=self.kwargs['pk']) self.initial['frente'] = Frente.objects.get(pk=self.kwargs['pk'])
return self.initial return self.initial
@ -436,13 +440,42 @@ class ParlamentarFrenteCrud(MasterDetailCrud):
class UpdateView(MasterDetailCrud.UpdateView): class UpdateView(MasterDetailCrud.UpdateView):
form_class = ParlamentarFrenteForm form_class = ParlamentarFrenteForm
def form_valid(self, form): def get_context_data(self, **kwargs):
return super(Crud.UpdateView, self).form_valid(form) context = super().get_context_data(**kwargs)
context['subnav_template_name'] = ''
return context
class DetailView(MasterDetailCrud.DetailView):
def get_context_data(self, **kwargs):
context = super().get_context_data(**kwargs)
context['subnav_template_name'] = ''
return context
class ListView(MasterDetailCrud.ListView): class ListView(MasterDetailCrud.ListView):
layout_key = 'ParlamentarFrenteList' layout_key = 'ParlamentarFrenteList'
def get_context_data(self, **kwargs):
context = super().get_context_data(**kwargs)
context['subnav_template_name'] = ''
rows = context['rows']
new_rows = []
for row in rows:
parlamentar = Parlamentar.objects.get(nome_parlamentar=row[1][0])
new_row = row
new_row[1] = (row[1][0], '/parlamentar/'+str(parlamentar.id))
new_rows.append(new_row)
context['rows'] = new_rows
return context
class MandatoCrud(MasterDetailCrud): class MandatoCrud(MasterDetailCrud):
model = Mandato model = Mandato

3
sapl/templates/menu_tabelas_auxiliares.yaml

@ -77,6 +77,9 @@
- title: {% trans 'Frente Parlamentar' %} - title: {% trans 'Frente Parlamentar' %}
url: sapl.parlamentares:frente_list url: sapl.parlamentares:frente_list
css_class: btn btn-link css_class: btn btn-link
- title: {% trans 'Cargo de Frente Parlamentar' %}
url: sapl.parlamentares:cargofrente_list
css_class: btn btn-link
- title: {% trans 'Bloco Parlamentar' %} - title: {% trans 'Bloco Parlamentar' %}
url: sapl.parlamentares:bloco_list url: sapl.parlamentares:bloco_list
css_class: btn btn-link css_class: btn btn-link

8
sapl/templates/parlamentares/layouts.yaml

@ -152,6 +152,11 @@ CargoBloco:
- unico - unico
- descricao - descricao
CargoFrente:
{% trans 'Cargo' %}:
- nome_cargo
- cargo_unico
AfastamentoParlamentar: AfastamentoParlamentar:
{% trans 'Afastamento' %}: {% trans 'Afastamento' %}:
- data_inicio data_fim - data_inicio data_fim
@ -162,11 +167,14 @@ ParlamentarFrente:
{% trans 'Parlamentar Frente'%}: {% trans 'Parlamentar Frente'%}:
- frente - frente
- parlamentar - parlamentar
- cargo
- data_entrada - data_entrada
- data_saida - data_saida
ParlamentarFrenteList: ParlamentarFrenteList:
{% trans 'Parlamentar Frente'%}: {% trans 'Parlamentar Frente'%}:
- id
- parlamentar - parlamentar
- cargo
- data_entrada - data_entrada
- data_saida - data_saida
Loading…
Cancel
Save