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: Temporária:
- apelido_temp:8 data_instalacao_temp - apelido_temp:8 data_instalacao_temp
- data_final_prevista_temp data_prorrogada_temp data_fim_comissao - 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, from comissoes.views import (CargoCrud, ComissaoCrud,
ComissaoParlamentarEditView, ComissaoParlamentarEditView,
ComissaoParlamentarIncluirView, ComposicaoView, ComissaoParlamentarIncluirView, ComposicaoCrud,
MateriasTramitacaoListView, PeriodoComposicaoCrud, MateriasTramitacaoListView, PeriodoComposicaoCrud,
TipoComissaoCrud) TipoComissaoCrud)
@ -11,10 +11,9 @@ from .apps import AppConfig
app_name = AppConfig.name app_name = AppConfig.name
urlpatterns = [ 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$', url(r'^comissao/(?P<pk>\d+)/materias-em-tramitacao$',
MateriasTramitacaoListView.as_view(), name='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 from django.views.generic import FormView, ListView
import crud.base import crud.base
import crud.masterdetail
from crud.base import Crud from crud.base import Crud
from crud.masterdetail import MasterDetailCrud
from materia.models import Tramitacao from materia.models import Tramitacao
from parlamentares.models import Filiacao from parlamentares.models import Filiacao
@ -17,6 +19,14 @@ PeriodoComposicaoCrud = Crud.build(Periodo, 'periodo_composicao_comissao')
TipoComissaoCrud = Crud.build(TipoComissao, 'tipo_comissao') TipoComissaoCrud = Crud.build(TipoComissao, 'tipo_comissao')
class ComposicaoCrud(MasterDetailCrud):
model = Composicao
parent_field = 'comissao'
help_path = ''
# class ListView(MasterDetailCrud.ListView):
class ComissaoCrud(Crud): class ComissaoCrud(Crud):
model = Comissao model = Comissao
help_path = 'modulo_comissoes' help_path = 'modulo_comissoes'
@ -25,47 +35,6 @@ class ComissaoCrud(Crud):
list_field_names = ['nome', 'sigla', 'tipo', 'data_criacao'] 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): class ComissaoParlamentarIncluirView(FormView):
template_name = "comissoes/comissao_parlamentar.html" template_name = "comissoes/comissao_parlamentar.html"

2
templates/comissoes/subnav.yaml

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

Loading…
Cancel
Save