From 37ba402c5be46d682215d8498f912bd157b5ccf4 Mon Sep 17 00:00:00 2001 From: VictorFabreF Date: Mon, 5 Nov 2018 10:28:50 -0200 Subject: [PATCH] Fix #2351 --- sapl/protocoloadm/views.py | 28 ++++++++++--------- .../protocoloadm/protocolo_mostrar.html | 7 +++-- 2 files changed, 19 insertions(+), 16 deletions(-) diff --git a/sapl/protocoloadm/views.py b/sapl/protocoloadm/views.py index 87e82cb7c..327e64baf 100755 --- a/sapl/protocoloadm/views.py +++ b/sapl/protocoloadm/views.py @@ -563,19 +563,21 @@ class ProtocoloMostrarView(PermissionRequiredMixin, TemplateView): username = self.request.user.username if protocolo.tipo_materia: - try: - self.logger.debug("user=" + username + ". Tentando obter objeto MateriaLegislativa com numero_protocolo={} e ano={}." - .format(protocolo.numero, protocolo.ano)) - materia = MateriaLegislativa.objects.get( - numero_protocolo=protocolo.numero, ano=protocolo.ano) - except ObjectDoesNotExist: - self.logger.error("user=" + username + ". Objeto MateriaLegislativa com numero_protocolo={} e ano={} não encontrado." - " Definido como None.".format(protocolo.numero, protocolo.ano)) - context['materia'] = None - else: - self.logger.info("user=" + username + ". Objeto MateriaLegislativa com numero_protocolo={} e ano={} encontrado" - "com sucesso.".format(protocolo.numero, protocolo.ano)) - context['materia'] = materia + self.logger.debug( + "user=" + username + ". Tentando obter objeto MateriaLegislativa com numero_protocolo={} e ano={}." + .format(protocolo.numero, protocolo.ano)) + materia = MateriaLegislativa.objects.filter( + numero_protocolo=protocolo.numero, ano=protocolo.ano) + context['materia'] = materia + if len(materia) > 1: + msg = _('Foi encontrada mais de uma matéria com o mesmo número de protocolo e ano.' + ' Isso é um erro de uso!' + ' Reporte isso ao suporte para que seja corrigido.') + messages.add_message(self.request, messages.ERROR, msg) + self.logger.error( + "user=" + username + ". Objeto MateriaLegislativa com numero_protocolo={} e ano={}" + " encontrado mais de um registro." + " Erro relatado ao usuário.".format(protocolo.numero, protocolo.ano)) if protocolo.tipo_documento: context[ diff --git a/sapl/templates/protocoloadm/protocolo_mostrar.html b/sapl/templates/protocoloadm/protocolo_mostrar.html index 09884f582..2cac987f3 100644 --- a/sapl/templates/protocoloadm/protocolo_mostrar.html +++ b/sapl/templates/protocoloadm/protocolo_mostrar.html @@ -38,9 +38,10 @@
{% if not protocolo.anulado %} Criar Documento{% endif %} {% elif protocolo.tipo_materia %} - {% if materia %} - {{materia}} - {% endif %} + {% for m in materia%} +      + {{m}}
+ {% endfor %}
{% if not protocolo.anulado%}{% if not materia %}Criar Matéria    {% endif %}{% endif %} {% endif %}