Browse Source

Init crud composição

pull/471/head
Eduardo Edson Batista Cordeiro Alves 10 years ago
parent
commit
68a8d0fef2
  1. 4
      comissoes/layouts.yaml
  2. 7
      comissoes/urls.py
  3. 51
      comissoes/views.py
  4. 2
      templates/comissoes/subnav.yaml

4
comissoes/layouts.yaml

@ -24,3 +24,7 @@ Comissao:
Temporária:
- apelido_temp:8 data_instalacao_temp
- data_final_prevista_temp data_prorrogada_temp data_fim_comissao
Composicao:
Composição:
- periodo

7
comissoes/urls.py

@ -2,7 +2,7 @@ from django.conf.urls import include, url
from comissoes.views import (CargoCrud, ComissaoCrud,
ComissaoParlamentarEditView,
ComissaoParlamentarIncluirView, ComposicaoView,
ComissaoParlamentarIncluirView, ComposicaoCrud,
MateriasTramitacaoListView, PeriodoComposicaoCrud,
TipoComissaoCrud)
@ -11,10 +11,9 @@ from .apps import AppConfig
app_name = AppConfig.name
urlpatterns = [
url(r'^comissao/', include(ComissaoCrud.get_urls())),
url(r'^comissao/', include(ComissaoCrud.get_urls() +
ComposicaoCrud.get_urls())),
url(r'^comissao/(?P<pk>\d+)/composicao$',
ComposicaoView.as_view(), name='composicao'),
url(r'^comissao/(?P<pk>\d+)/materias-em-tramitacao$',
MateriasTramitacaoListView.as_view(), name='materias_em_tramitacao'),

51
comissoes/views.py

@ -4,7 +4,9 @@ from django.utils.translation import ugettext_lazy as _
from django.views.generic import FormView, ListView
import crud.base
import crud.masterdetail
from crud.base import Crud
from crud.masterdetail import MasterDetailCrud
from materia.models import Tramitacao
from parlamentares.models import Filiacao
@ -17,6 +19,14 @@ PeriodoComposicaoCrud = Crud.build(Periodo, 'periodo_composicao_comissao')
TipoComissaoCrud = Crud.build(TipoComissao, 'tipo_comissao')
class ComposicaoCrud(MasterDetailCrud):
model = Composicao
parent_field = 'comissao'
help_path = ''
# class ListView(MasterDetailCrud.ListView):
class ComissaoCrud(Crud):
model = Comissao
help_path = 'modulo_comissoes'
@ -25,47 +35,6 @@ class ComissaoCrud(Crud):
list_field_names = ['nome', 'sigla', 'tipo', 'data_criacao']
class ComposicaoView(FormView):
template_name = 'comissoes/composicao.html'
def get(self, request, *args, **kwargs):
form = ComposicaoForm()
composicoes = Composicao.objects.filter(
comissao_id=self.kwargs['pk']).order_by('-periodo')
participacoes = Participacao.objects.all().order_by('parlamentar')
if composicoes:
composicao_id = composicoes.first().id
msg = ''
else:
composicao_id = 0
msg = _('Ainda não há uma composição formada!')
messages.add_message(request, messages.INFO, msg)
return self.render_to_response({
'participacoes': participacoes,
'composicoes': composicoes,
'composicao_id': composicao_id,
'form': form,
'pk': self.kwargs['pk'],
'object': Comissao.objects.get(id=self.kwargs['pk'])})
def post(self, request, *args, **kwargs):
form = ComposicaoForm(request.POST)
composicoes = Composicao.objects.filter(
comissao_id=self.kwargs['pk']).order_by('-periodo')
participacoes = Participacao.objects.all()
return self.render_to_response({
'participacoes': participacoes,
'composicoes': composicoes,
'composicao_id': int(form.data['periodo']),
'form': form,
'pk': self.kwargs['pk'],
'object': Comissao.objects.get(id=self.kwargs['pk'])})
class ComissaoParlamentarIncluirView(FormView):
template_name = "comissoes/comissao_parlamentar.html"

2
templates/comissoes/subnav.yaml

@ -1,6 +1,6 @@
- title: Início
url: comissao_detail
- title: Composição
url: composicao
url: composicao_list
- title: Matérias em Tramitação
url: materias_em_tramitacao

Loading…
Cancel
Save