From 97b06281deba56c5b14f33e4a0dab01f8060f3e9 Mon Sep 17 00:00:00 2001 From: Eduardo Calil Date: Fri, 12 Feb 2016 13:14:15 -0200 Subject: [PATCH] Corrige bugs e quebras em Relatoria --- materia/views.py | 37 ++++++++++++++++------ templates/materia/documento_acessorio.html | 2 +- templates/materia/relatoria.html | 2 +- 3 files changed, 29 insertions(+), 12 deletions(-) diff --git a/materia/views.py b/materia/views.py index f7041e91c..ada8cfe01 100644 --- a/materia/views.py +++ b/materia/views.py @@ -1325,27 +1325,36 @@ class RelatoriaView(FormMixin, GenericView): 'tipo_fim_relatoria': TipoFimRelatoria.objects.all() }) else: - if form.is_valid(): - relatorias = Relatoria.objects.filter( + relatorias = Relatoria.objects.filter( materia_id=kwargs['pk']).order_by( '-data_designacao_relator') - localizacao = Tramitacao.objects.filter( + localizacao = Tramitacao.objects.filter( materia=materia).last() - comissao = Comissao.objects.get( - id=localizacao.unidade_tramitacao_destino_id) + comissao = Comissao.objects.get( + id=localizacao.unidade_tramitacao_destino.comissao.id) + if form.is_valid(): relatoria = form.save(commit=False) relatoria.materia = materia relatoria.comissao = comissao relatoria.save() return self.form_valid(form) else: + try: + composicao = Composicao.objects.get(comissao=comissao) + except ObjectDoesNotExist: + msg = 'Não há composição nesta Comissão!' + messages.add_message(request, messages.INFO, msg) + return self.render_to_response( + {'object': materia, + 'form': form, + 'relatorias': relatorias, + 'comissao': comissao}) - composicao = Composicao.objects.get(comissao=comissao) parlamentares = composicao.participacao_set.all() return self.render_to_response( - {'materialegislativa': materia, + {'object': materia, 'form': form, 'relatorias': relatorias, 'comissao': comissao, @@ -1373,15 +1382,23 @@ class RelatoriaView(FormMixin, GenericView): else: try: comissao = Comissao.objects.get( - id=localizacao.unidade_tramitacao_destino_id) + id=localizacao.unidade_tramitacao_destino.comissao.id) composicao = Composicao.objects.filter( comissao=comissao).last() + if not composicao: + msg = 'Não há composição nesta Comissão!' + messages.add_message(request, messages.INFO, msg) + return self.render_to_response( + {'object': materia, + 'form': form, + 'relatorias': relatorias, + 'comissao': comissao}) parlamentares = composicao.participacao_set.all() except ObjectDoesNotExist: msg = 'O local atual deve ser uma Comissão!' messages.add_message(request, messages.INFO, msg) return self.render_to_response( - {'materialegislativa': materia, + {'object': materia, 'form': form, 'relatorias': relatorias}) else: @@ -1389,7 +1406,7 @@ class RelatoriaView(FormMixin, GenericView): comissao=comissao).last() parlamentares = composicao.participacao_set.all() return self.render_to_response( - {'materialegislativa': materia, + {'object': materia, 'form': form, 'relatorias': relatorias, 'comissao': comissao, diff --git a/templates/materia/documento_acessorio.html b/templates/materia/documento_acessorio.html index 790a5f4dc..d5da7b949 100644 --- a/templates/materia/documento_acessorio.html +++ b/templates/materia/documento_acessorio.html @@ -23,7 +23,7 @@ {% for d in docs %} - {{d.nome}} + {{d.nome}} {{d.tipo.descricao}} {{d.data|date:'d/m/Y'}} {{d.autor}} diff --git a/templates/materia/relatoria.html b/templates/materia/relatoria.html index 788d5becb..c70e55808 100644 --- a/templates/materia/relatoria.html +++ b/templates/materia/relatoria.html @@ -22,7 +22,7 @@ {% for r in relatorias %} - {{r.data_designacao_relator|date:'d/m/Y'}} + {{r.data_designacao_relator|date:'d/m/Y'}} {{r.comissao}} {{r.parlamentar}}