From dbe95d11c414b60e093b7051432201a4ba002bb0 Mon Sep 17 00:00:00 2001 From: Eduardo Edson Batista Cordeiro Alves Date: Tue, 9 Aug 2016 13:50:46 -0300 Subject: [PATCH] =?UTF-8?q?Cria=20materia=20a=20partir=20dos=20dados=20da?= =?UTF-8?q?=20proposi=C3=A7=C3=A3o?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- sapl/materia/views.py | 33 ++++++++++++++----- .../templates/materia/receber_proposicao.html | 2 +- 2 files changed, 26 insertions(+), 9 deletions(-) diff --git a/sapl/materia/views.py b/sapl/materia/views.py index cda6626e4..50160ed0c 100644 --- a/sapl/materia/views.py +++ b/sapl/materia/views.py @@ -54,6 +54,25 @@ TipoProposicaoCrud = Crud.build(TipoProposicao, 'tipo_proposicao') StatusTramitacaoCrud = Crud.build(StatusTramitacao, 'status_tramitacao') +def criar_materia_proposicao(proposicao): + tipo_materia = TipoMateriaLegislativa.objects.get( + descricao=proposicao.tipo.descricao) + numero = MateriaLegislativa.objects.filter( + ano=datetime.now().year).order_by('numero').last().numero + 1 + regime = RegimeTramitacao.objects.get(descricao='Normal') + + return MateriaLegislativa.objects.create( + tipo=tipo_materia, + ano=datetime.now().year, + numero=numero, + data_apresentacao=datetime.now(), + regime_tramitacao=regime, + em_tramitacao=True, + ementa=proposicao.descricao, + texto_original=proposicao.texto_original + ) + + class UnidadeTramitacaoCrud(Crud): model = UnidadeTramitacao help_path = 'unidade_tramitacao' @@ -76,7 +95,6 @@ class ReceberProposicao(CreateView): return context def post(self, request, *args, **kwargs): - flag = 0 form = ReceberProposicaoForm(request.POST) if form.is_valid(): @@ -86,14 +104,13 @@ class ReceberProposicao(CreateView): str(proposicao.pk)) if hasher == form.cleaned_data['cod_hash']: proposicao.data_recebimento = datetime.now() + materia = criar_materia_proposicao(proposicao) + proposicao.materia = materia proposicao.save() - flag = 1 - - if flag == 0: - msg = 'Proposição não encontrada!' - return self.render_to_response({'form': form, 'msg': msg}) - - msg = 'Proposição recebida!' + return HttpResponseRedirect( + reverse('sapl.materia:materialegislativa_update', + kwargs={'pk': materia.pk})) + msg = 'Proposição não encontrada!' return self.render_to_response({'form': form, 'msg': msg}) else: return self.render_to_response({'form': form}) diff --git a/sapl/templates/materia/receber_proposicao.html b/sapl/templates/materia/receber_proposicao.html index 6ae55a24d..e327bb6d5 100644 --- a/sapl/templates/materia/receber_proposicao.html +++ b/sapl/templates/materia/receber_proposicao.html @@ -2,5 +2,5 @@ {% load i18n %} {% load crispy_forms_tags %} {% block extra_msg %} -

{{msg}}

+

{{msg}}

{% endblock %}