From 0a5f342de82b7af79d0c07bc46c7fb5526da3ba7 Mon Sep 17 00:00:00 2001 From: Edward Date: Tue, 31 Oct 2017 13:11:39 -0200 Subject: [PATCH] Fixes #1559 (#1565) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Fixes #1559 * Insere informações de processo e número de protocolo em Resumo * Hot fix --- .../templates/pdf_sessao_plenaria_gerar.py | 4 +- sapl/relatorios/views.py | 110 ++++++------------ sapl/sessao/views.py | 24 +++- .../blocos_resumo/materias_expediente.html | 10 +- .../blocos_resumo/materias_ordem_dia.html | 3 +- 5 files changed, 66 insertions(+), 85 deletions(-) diff --git a/sapl/relatorios/templates/pdf_sessao_plenaria_gerar.py b/sapl/relatorios/templates/pdf_sessao_plenaria_gerar.py index e659d169e..a8677c5e1 100644 --- a/sapl/relatorios/templates/pdf_sessao_plenaria_gerar.py +++ b/sapl/relatorios/templates/pdf_sessao_plenaria_gerar.py @@ -243,8 +243,8 @@ def votacao(lst_votacao): tmp += '\n' tmp += 'MatériaEmentaResultado da Votação\n' for votacao in lst_votacao: - tmp += '' + str(votacao['num_ordem']) + ' - ' + votacao['id_materia'] + '\n' + 'Turno: ' + votacao[ - 'des_turno'] + '\n' + 'Autor: ' + votacao['nom_autor'] + '\n' + tmp += '' + str(votacao['num_ordem']) + ' - ' + votacao['id_materia'] + '\n' + 'Turno: ' + str(votacao[ + 'des_turno']) + '\n' + 'Autor: ' + str(votacao['nom_autor']) + '\n' txt_ementa = votacao['txt_ementa'].replace('&', '&') tmp += '' + txt_ementa + '\n' tmp += '' + \ diff --git a/sapl/relatorios/views.py b/sapl/relatorios/views.py index 7719e6d2d..b5e0b4de2 100644 --- a/sapl/relatorios/views.py +++ b/sapl/relatorios/views.py @@ -563,21 +563,9 @@ def get_sessao_plenaria(sessao, casa): str(numeracao.numero_materia) + '/' + str( numeracao.ano_materia)) - dic_expediente_materia["des_turno"] = ' ' - tram = Tramitacao.objects.filter( - materia=materia).first() - if tram is not None: - if tram.turno != '': - for turno in [("P", _("Primeiro")), - ("S", _("Segundo")), - ("U", _("Único")), - ("L", _("Suplementar")), - ("A", _("Votação Única em Regime de Urgência")), - ("B", _("1ª Votação")), - ("C", _("2ª e 3ª Votações")), - ("F", "Final")]: - if tram.turno == turno[0]: - dic_expediente_materia["des_turno"] = turno[1] + turno, _ = get_turno(dic_expediente_materia, materia) + + dic_expediente_materia["des_turno"] = turno dic_expediente_materia["txt_ementa"] = str(materia.ementa) dic_expediente_materia["ordem_observacao"] = ' ' # TODO @@ -615,8 +603,8 @@ def get_sessao_plenaria(sessao, casa): dic_expediente_materia["votacao_observacao"] = ( i.observacao) else: - dic_expediente_materia["nom_resultado"] = _("Matéria não votada") - dic_expediente_materia["votacao_observacao"] = _(" ") + dic_expediente_materia["nom_resultado"] = 'Matéria não votada' + dic_expediente_materia["votacao_observacao"] = ' ' lst_expediente_materia.append(dic_expediente_materia) # Lista dos oradores do Expediente @@ -677,22 +665,10 @@ def get_sessao_plenaria(sessao, casa): str(numeracao.numero_materia) + '/' + str(numeracao.ano_materia)) - dic_votacao["des_turno"] = ' ' - - tramitacao = Tramitacao.objects.filter( - materia=materia).first() - if tramitacao is not None: - if not tramitacao.turno: - for turno in [("P", _("Primeiro")), - ("S", _("Segundo")), - ("U", _("Único")), - ("L", _("Suplementar")), - ("F", _("Final")), - ("A", _("Votação Única em Regime de Urgência")), - ("B", _("1ª Votação")), - ("C", _("2ª e 3ª Votações"))]: - if tramitacao.turno == turno[0]: - dic_votacao["des_turno"] = turno[1] + + turno, _ = get_turno(dic_votacao, materia) + + dic_votacao["des_turno"] = turno # https://github.com/interlegis/sapl/issues/1009 dic_votacao["txt_ementa"] = html.unescape(materia.ementa) @@ -728,8 +704,8 @@ def get_sessao_plenaria(sessao, casa): if votacao.observacao: dic_votacao["votacao_observacao"] = i.observacao else: - dic_votacao["nom_resultado"] = _("Matéria não votada") - dic_votacao["votacao_observacao"] = _(" ") + dic_votacao["nom_resultado"] = "Matéria não votada" + dic_votacao["votacao_observacao"] = " " lst_votacao.append(dic_votacao) # Lista dos oradores nas Explicações Pessoais @@ -761,6 +737,20 @@ def get_sessao_plenaria(sessao, casa): lst_oradores) +def get_turno(dic, materia): + descricao_turno = ' ' + descricao_tramitacao = ' ' + tramitacao = Tramitacao.objects.filter(materia=materia).order_by( + '-data_tramitacao').first() + if tramitacao is not None: + for t in Tramitacao.TURNO_CHOICES: + if t[0] == tramitacao.turno: + descricao_turno = t[1] + break + descricao_tramitacao = tramitacao.status.descricao if tramitacao.status else ' ' + return (descricao_turno, descricao_tramitacao) + + def relatorio_sessao_plenaria(request, pk): ''' pdf_sessao_plenaria_gerar.py @@ -1064,28 +1054,12 @@ def get_pauta_sessao(sessao, casa): elif autoria is None: dic_expediente_materia["nom_autor"] = 'Desconhecido' - dic_expediente_materia["des_turno"] = ' ' - dic_expediente_materia["des_situacao"] = ' ' - - tramitacao = Tramitacao.objects.filter(materia=materia) - if tramitacao is not None: - tramitacao = tramitacao.first() - - if tramitacao.turno != '': - for turno in [("P", _("Primeiro")), - ("S", _("Segundo")), - ("U", _("Único")), - ("F", _("Final")), - ("L", _("Suplementar")), - ("A", _("Votação Única em Regime de Urgência")), - ("B", _("1ª Votação")), - ("C", _("2ª e 3ª Votações"))]: - if tramitacao.turno == turno.first(): - dic_expediente_materia["des_turno"] = turno.first() - - dic_expediente_materia["des_situacao"] = tramitacao.status - if dic_expediente_materia["des_situacao"] is None: - dic_expediente_materia["des_situacao"] = ' ' + turno, tramitacao = get_turno(dic_expediente_materia, materia) + + dic_expediente_materia["des_turno"] = turno + dic_expediente_materia["des_situacao"] = tramitacao + + lst_expediente_materia.append(dic_expediente_materia) lst_votacao = [] @@ -1129,25 +1103,9 @@ def get_pauta_sessao(sessao, casa): elif autoria is None: dic_votacao["nom_autor"] = 'Desconhecido' - dic_votacao["des_turno"] = ' ' - dic_votacao["des_situacao"] = ' ' - tramitacao = Tramitacao.objects.filter(materia=materia) - if tramitacao is not None: - tramitacao = tramitacao.first() - if tramitacao.turno != '': - for turno in [("P", _("Primeiro")), - ("S", _("Segundo")), - ("U", _("Único")), - ("L", _("Suplementar")), - ("A", _("Votação Única em Regime de Urgência")), - ("B", _("1ª Votação")), - ("C", _("2ª e 3ª Votações"))]: - if tramitacao.turno == turno.first(): - dic_votacao["des_turno"] = turno.first() - - dic_votacao["des_situacao"] = tramitacao.status - if dic_votacao["des_situacao"] is None: - dic_votacao["des_situacao"] = ' ' + turno, tramitacao = get_turno(dic_expediente_materia, materia) + dic_votacao["des_turno"] = turno + dic_votacao["des_situacao"] = tramitacao lst_votacao.append(dic_votacao) return (lst_expediente_materia, diff --git a/sapl/sessao/views.py b/sapl/sessao/views.py index 9a1ef6d5e..b691415ea 100644 --- a/sapl/sessao/views.py +++ b/sapl/sessao/views.py @@ -168,15 +168,25 @@ def customize_link_materia(context): autor = autoria.autor if autoria else None num_protocolo = materia.numero_protocolo + tramitacao = Tramitacao.objects.filter(materia=materia).last() + turno = ' ' + if tramitacao is not None: + for t in Tramitacao.TURNO_CHOICES: + if t[0] == tramitacao.turno: + turno = t[1] + break + title_materia = '''%s
- Número de Processo: %s
+ Processo: %s
Autor: %s
- Número de Protocolo: %s
+ Protocolo: %s
+ Turno: %s
''' % (url_materia, row[1][0], numeracao if numeracao else '', autor if autor else '', - num_protocolo if num_protocolo else '') + num_protocolo if num_protocolo else '', + turno) # Na linha abaixo, o segundo argumento é None para não colocar # url em toda a string de title_materia @@ -1242,7 +1252,9 @@ class ResumoView(DetailView): 'turno': turno, 'resultado': resultado, 'resultado_observacao': resultado_observacao, - 'autor': autor + 'autor': autor, + 'numero_protocolo': m.materia.numero_protocolo, + 'numero_processo': m.materia.numeracao_set.last() } materias_expediente.append(mat) @@ -1308,7 +1320,9 @@ class ResumoView(DetailView): 'turno': turno, 'resultado': resultado, 'resultado_observacao': resultado_observacao, - 'autor': autor + 'autor': autor, + 'numero_protocolo': o.materia.numero_protocolo, + 'numero_processo': o.materia.numeracao_set.last() } materias_ordem.append(mat) diff --git a/sapl/templates/sessao/blocos_resumo/materias_expediente.html b/sapl/templates/sessao/blocos_resumo/materias_expediente.html index 2d1281b7c..e50b7129b 100644 --- a/sapl/templates/sessao/blocos_resumo/materias_expediente.html +++ b/sapl/templates/sessao/blocos_resumo/materias_expediente.html @@ -11,7 +11,7 @@ {% for m in materia_expediente %} - +
{{m.numero}} - {{m.titulo}}
{% if m.turno %} @@ -19,6 +19,14 @@
{% endif %} Autor{{ m.autor|length|pluralize:"es" }}: {{ m.autor|join:', ' }} + {% if m.numero_protocolo %} +
+ Número de Protocolo: {{ m.numero_protocolo }} + {% endif %} + {% if m.numero_processo %} +
+ Processo: {{ m.numero_processo }} + {% endif %} {{m.ementa|safe}} {{m.resultado}}
{{m.resultado_observacao}} diff --git a/sapl/templates/sessao/blocos_resumo/materias_ordem_dia.html b/sapl/templates/sessao/blocos_resumo/materias_ordem_dia.html index 58dd7988f..9951e5436 100644 --- a/sapl/templates/sessao/blocos_resumo/materias_ordem_dia.html +++ b/sapl/templates/sessao/blocos_resumo/materias_ordem_dia.html @@ -18,7 +18,8 @@ Turno: {{m.turno}}
{% endif %} - Autor{{ m.autor|length|pluralize:"es" }}: {{ m.autor|join:', ' }} + Autor: {{ m.autor|length|pluralize:"es" }}: {{ m.autor|join:', ' }} + Protocolo: {{ m.autor|length|pluralize:"es" }} {{m.ementa|safe}} {{m.resultado}}
{{m.resultado_observacao}}