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. 32
      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,
),
]

32
sapl/parlamentares/models.py

@ -606,11 +606,37 @@ class Frente(models.Model):
def __str__(self):
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()
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,
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'))
@ -621,10 +647,12 @@ class ParlamentarFrente(models.Model):
class Meta:
verbose_name = _('Parlamentar')
verbose_name_plural = _('Parlamentares')
ordering = ('cargo',)
def __str__(self):
return "%s - %s" % (self.frente, self.parlamentar)
class Votante(models.Model):
parlamentar = models.ForeignKey(
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,
ComposicaoColigacaoCrud, DependenteCrud,
BancadaCrud, CargoBancadaCrud,
BancadaCrud, CargoBancadaCrud, CargoFrenteCrud,
FiliacaoCrud, FrenteCrud, FrenteList,
LegislaturaCrud, MandatoCrud,
MesaDiretoraView, NivelInstrucaoCrud,
@ -69,6 +69,8 @@ urlpatterns = [
include(BancadaCrud.get_urls())),
url(r'^sistema/cargo-bancada/',
include(CargoBancadaCrud.get_urls())),
url(r'^sistema/cargo-frente/',
include(CargoFrenteCrud.get_urls())),
url(r'^sistema/bloco/',
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,
SituacaoMilitar, TipoAfastamento, TipoDependente, Votante,
Bloco, CargoBlocoPartido, HistoricoPartido, CargoBloco,
ParlamentarFrente, AfastamentoParlamentar)
ParlamentarFrente, AfastamentoParlamentar, CargoFrente)
CargoBancadaCrud = CrudAux.build(CargoBancada, '')
CargoFrenteCrud = CrudAux.build(CargoFrente, '')
CargoMesaCrud = CrudAux.build(CargoMesa, 'cargo_mesa')
TipoDependenteCrud = CrudAux.build(TipoDependente, 'tipo_dependente')
NivelInstrucaoCrud = CrudAux.build(NivelInstrucao, 'nivel_instrucao')
@ -420,15 +421,18 @@ class ParlamentarFrenteCrud(MasterDetailCrud):
help_topic = 'parlamentar_frente'
public = [RP_LIST, RP_DETAIL]
class BaseMixin(MasterDetailCrud.BaseMixin):
list_field_names = ['parlamentar',
'frente',
'data_entrada',
'data_saida']
class CreateView(MasterDetailCrud.CreateView):
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):
self.initial['frente'] = Frente.objects.get(pk=self.kwargs['pk'])
return self.initial
@ -436,13 +440,42 @@ class ParlamentarFrenteCrud(MasterDetailCrud):
class UpdateView(MasterDetailCrud.UpdateView):
form_class = ParlamentarFrenteForm
def form_valid(self, form):
return super(Crud.UpdateView, self).form_valid(form)
def get_context_data(self, **kwargs):
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):
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):
model = Mandato

3
sapl/templates/menu_tabelas_auxiliares.yaml

@ -77,6 +77,9 @@
- title: {% trans 'Frente Parlamentar' %}
url: sapl.parlamentares:frente_list
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' %}
url: sapl.parlamentares:bloco_list
css_class: btn btn-link

8
sapl/templates/parlamentares/layouts.yaml

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