diff --git a/sapl/materia/urls.py b/sapl/materia/urls.py index f2c89c908..cfbfff591 100644 --- a/sapl/materia/urls.py +++ b/sapl/materia/urls.py @@ -24,7 +24,7 @@ from sapl.materia.views import (AcompanhamentoConfirmarView, TipoProposicaoCrud, TramitacaoCrud, TramitacaoEmLoteView, UnidadeTramitacaoCrud, proposicao_texto, recuperar_materia, - ExcluirTramitacaoEmLoteView) + ExcluirTramitacaoEmLoteView, RetornarProposicao) from sapl.norma.views import NormaPesquisaSimplesView from .apps import AppConfig @@ -120,6 +120,8 @@ urlpatterns_proposicao = [ url(r'^proposicao/texto/(?P\d+)$', proposicao_texto, name='proposicao_texto'), + url(r'^proposicao/(?P\d+)/retornar', RetornarProposicao.as_view(), + name='retornar-proposicao'), ] urlpatterns_sistema = [ diff --git a/sapl/materia/views.py b/sapl/materia/views.py index 1a7319288..ad14830f3 100644 --- a/sapl/materia/views.py +++ b/sapl/materia/views.py @@ -513,6 +513,31 @@ class ReceberProposicao(PermissionRequiredForAppCrudMixin, FormView): return context +class RetornarProposicao(UpdateView): + app_label = sapl.protocoloadm.apps.AppConfig.label + template_name = "materia/proposicao_confirm_return.html" + model = Proposicao + fields = ['data_envio', 'descricao' ] + permission_required = ('materia.detail_proposicao_enviada', ) + + def dispatch(self, request, *args, **kwargs): + + try: + p = Proposicao.objects.get(id=kwargs['pk']) + except: + raise Http404() + + if p.autor.user != request.user: + messages.error( + request, + 'Usuário sem acesso a esta opção.' % + request.user) + return redirect('/') + + return super(RetornarProposicao, self).dispatch( + request, *args, **kwargs) + + class ConfirmarProposicao(PermissionRequiredForAppCrudMixin, UpdateView): app_label = sapl.protocoloadm.apps.AppConfig.label template_name = "materia/confirmar_proposicao.html" diff --git a/sapl/templates/materia/proposicao_confirm_return.html b/sapl/templates/materia/proposicao_confirm_return.html new file mode 100644 index 000000000..8b5be7eee --- /dev/null +++ b/sapl/templates/materia/proposicao_confirm_return.html @@ -0,0 +1,27 @@ +{% extends "crud/detail.html" %} +{% load i18n %} + +{% block sections_nav %}{% endblock sections_nav %} + {% block title %} +

+ {{ object|safe|linebreaksbr }} +

+ {% endblock %} +{% block base_content %} +
{% csrf_token %} +
+
+
+ {% blocktrans %} + ATENÇÃO: Retornar a proposição cancela o envio da mesma para protocolo e invalida o recibo já emitido.
+ Será necessário novo envio e impressão de novo recibo para recebimento pela Casa Legislativa.
+ Confirma retorno da proposição para o Parlamentar/Gabinete? + {% endblocktrans %}
+
+ +
+
+{% endblock %} diff --git a/sapl/templates/materia/proposicao_detail.html b/sapl/templates/materia/proposicao_detail.html index 53d6e8620..e9779f2fd 100644 --- a/sapl/templates/materia/proposicao_detail.html +++ b/sapl/templates/materia/proposicao_detail.html @@ -21,7 +21,7 @@ {% endblock %}