diff --git a/sapl/relatorios/views.py b/sapl/relatorios/views.py index 0d541ce52..272f6629a 100755 --- a/sapl/relatorios/views.py +++ b/sapl/relatorios/views.py @@ -508,6 +508,10 @@ def is_empty(value): return True if not txt.strip() else False +# Tipo de Votação +LEITURA = 4 + + def get_sessao_plenaria(sessao, casa): inf_basicas_dic = { "num_sessao_plen": str(sessao.numero), @@ -626,18 +630,37 @@ def get_sessao_plenaria(sessao, casa): else: dic_expediente_materia["nom_autor"] = 'Desconhecido' - resultados = expediente_materia.registrovotacao_set.all() - if resultados: - for i in resultados: + retirada_pauta = expediente_materia.retiradapauta_set.first() + resultado_votacao = expediente_materia.registrovotacao_set.first() + resultado_leitura = expediente_materia.registroleitura_set.first() + + if retirada_pauta: + dic_expediente_materia.update({ + "nom_resultado": retirada_pauta.tipo_de_retirada.descricao, + "votacao_observacao": retirada_pauta.observacao + }) + elif expediente_materia.tipo_votacao != LEITURA: + if resultado_votacao: dic_expediente_materia.update({ - "nom_resultado": i.tipo_resultado_votacao.nome, - "votacao_observacao": i.observacao + "nom_resultado": resultado_votacao.tipo_resultado_votacao.nome, + "votacao_observacao": resultado_votacao.observacao + }) + else: + dic_expediente_materia.update({ + "nom_resultado": 'Matéria não votada', + "votacao_observacao": ' ' }) else: - dic_expediente_materia.update({ - "nom_resultado": 'Matéria não votada', - "votacao_observacao": ' ' - }) + if resultado_leitura: + dic_expediente_materia.update({ + "nom_resultado": "Matéria Lida", + "votacao_observacao": resultado_leitura.observacao + }) + else: + dic_expediente_materia.update({ + "nom_resultado": 'Matéria não lida', + "votacao_observacao": ' ' + }) lst_expediente_materia.append(dic_expediente_materia) # Lista dos votos nominais das matérias do Expediente @@ -657,7 +680,8 @@ def get_sessao_plenaria(sessao, casa): lst_expediente_materia_vot_nom.append({ "titulo": titulo_materia, - "votos": votos_materia + # votos = 0 representa matéria retirada da pauta + "votos": votos_materia if not mevn.retiradapauta_set.first() else 0 }) # Lista dos oradores do Expediente @@ -724,14 +748,26 @@ def get_sessao_plenaria(sessao, casa): dic_votacao["nom_autor"] = 'Desconhecido' dic_votacao["votacao_observacao"] = ' ' - resultados = votacao.registrovotacao_set.all() - if resultados: - for i in resultados: - dic_votacao["nom_resultado"] = i.tipo_resultado_votacao.nome - if i.observacao: - dic_votacao["votacao_observacao"] = i.observacao + + retirada_pauta = votacao.retiradapauta_set.first() + resultado_votacao = votacao.registrovotacao_set.first() + resultado_leitura = votacao.registroleitura_set.first() + + if retirada_pauta: + dic_votacao["nom_resultado"] = retirada_pauta.tipo_de_retirada.descricao + dic_votacao["votacao_observacao"] = retirada_pauta.observacao + elif votacao.tipo_votacao != LEITURA: + if resultado_votacao: + dic_votacao["nom_resultado"] = resultado_votacao.tipo_resultado_votacao.nome + dic_votacao["votacao_observacao"] = resultado_votacao.observacao + else: + dic_votacao["nom_resultado"] = "Matéria não votada" else: - dic_votacao["nom_resultado"] = "Matéria não votada" + if resultado_leitura: + dic_votacao["nom_resultado"] = "Matéria Lida" + dic_votacao["votacao_observacao"] = resultado_leitura.observacao + else: + dic_votacao["nom_resultado"] = "Matéria não lida" lst_votacao.append(dic_votacao) # Lista dos votos nominais das matérias da Ordem do Dia @@ -751,7 +787,8 @@ def get_sessao_plenaria(sessao, casa): lst_votacao_vot_nom.append({ "titulo": t_materia, - "votos": votos_materia_od + # votos = 0 representa matéria retirada da pauta + "votos": votos_materia_od if not modvn.retiradapauta_set.first() else 0 }) # Lista dos oradores da Ordem do Dia diff --git a/sapl/sessao/views.py b/sapl/sessao/views.py index 7f67e82e8..2ba120fc5 100755 --- a/sapl/sessao/views.py +++ b/sapl/sessao/views.py @@ -200,6 +200,10 @@ def abrir_votacao(request, pk, spk): return HttpResponseRedirect(success_url) +# Tipo de Votação +LEITURA = 4 + + def customize_link_materia(context, pk, has_permission, is_expediente): for i, row in enumerate(context['rows']): materia = context['object_list'][i].materia @@ -243,8 +247,10 @@ def customize_link_materia(context, pk, has_permission, is_expediente): exist_retirada = obj.retiradapauta_set.filter(materia=obj.materia).exists() exist_leitura = obj.registroleitura_set.filter(materia=obj.materia).exists() - if (obj.tipo_votacao != 4 and not exist_resultado and not exist_retirada) or\ - (obj.tipo_votacao == 4 and not exist_leitura): + if ( + (obj.tipo_votacao != LEITURA and not exist_resultado and not exist_retirada) or + (obj.tipo_votacao == LEITURA and not exist_leitura and not exist_retirada) + ): if obj.votacao_aberta: url = '' if is_expediente: @@ -1928,17 +1934,27 @@ def get_materias_expediente(sessao_plenaria): tramitacao = aux_tramitacao break + rp = m.retiradapauta_set.first() rv = m.registrovotacao_set.first() - rp = m.retiradapauta_set.filter(materia=m.materia).first() - if rv: - resultado = rv.tipo_resultado_votacao.nome - resultado_observacao = rv.observacao - elif rp: + rl = m.registroleitura_set.first() + + if rp: resultado = rp.tipo_de_retirada.descricao resultado_observacao = rp.observacao + elif m.tipo_votacao != LEITURA: + if rv: + resultado = rv.tipo_resultado_votacao.nome + resultado_observacao = rv.observacao + else: + resultado = _('Matéria não votada') + resultado_observacao = _(' ') else: - resultado = _('Matéria lida') if m.tipo_votacao == 4 else _('Matéria não votada') - resultado_observacao = _(' ') + if rl: + resultado = _('Matéria Lida') + resultado_observacao = rl.observacao + else: + resultado = _('Matéria não lida') + resultado_observacao = _(' ') materia_em_tramitacao = m.materia.materiaemtramitacao_set.first() materias_expediente.append({ @@ -2033,17 +2049,27 @@ def get_materias_ordem_do_dia(sessao_plenaria): break # Verificar resultado - rv = o.registrovotacao_set.filter(materia=o.materia).first() - rp = o.retiradapauta_set.filter(materia=o.materia).first() - if rv: - resultado = rv.tipo_resultado_votacao.nome - resultado_observacao = rv.observacao - elif rp: + rp = o.retiradapauta_set.first() + rv = o.registrovotacao_set.first() + rl = o.registroleitura_set.first() + + if rp: resultado = rp.tipo_de_retirada.descricao resultado_observacao = rp.observacao + elif o.tipo_votacao != LEITURA: + if rv: + resultado = rv.tipo_resultado_votacao.nome + resultado_observacao = rv.observacao + else: + resultado = _('Matéria não votada') + resultado_observacao = _(' ') else: - resultado = _('Matéria lida') if o.tipo_votacao == 4 else _('Matéria não votada') - resultado_observacao = _(' ') + if rl: + resultado = _('Matéria Lida') + resultado_observacao = rl.observacao + else: + resultado = _('Matéria não lida') + resultado_observacao = _(' ') voto_nominal = [] if o.tipo_votacao == 2: @@ -2078,7 +2104,7 @@ def get_materias_ordem_do_dia(sessao_plenaria): 'voto_nao': voto_nao, 'voto_abstencoes': voto_abstencoes, 'voto_nominal': voto_nominal, - 'observacao': o.observacao + 'observacao': o.observacao }) return {'materias_ordem': materias_ordem} @@ -2161,7 +2187,8 @@ class ResumoView(DetailView): votacoes.append({ 'titulo': titulo_materia, - 'votos': votos_materia + # votos = 0 representa matéria retirada da pauta + 'votos': votos_materia if not mevn.retiradapauta_set.first() else 0 }) context.update({'votos_nominais_materia_expediente': votacoes}) @@ -2207,7 +2234,8 @@ class ResumoView(DetailView): votacoes_od.append({ 'titulo': t_materia, - 'votos': votos_materia_od + # votos = 0 representa matéria retirada da pauta + 'votos': votos_materia_od if not modvn.retiradapauta_set.first() else 0 }) context.update({'votos_nominais_materia_ordem_dia': votacoes_od}) diff --git a/sapl/templates/relatorios/blocos_sessao_plenaria/materias_expediente.html b/sapl/templates/relatorios/blocos_sessao_plenaria/materias_expediente.html index 2cdfd9f3b..972cfaec6 100644 --- a/sapl/templates/relatorios/blocos_sessao_plenaria/materias_expediente.html +++ b/sapl/templates/relatorios/blocos_sessao_plenaria/materias_expediente.html @@ -1,34 +1,31 @@ - {% load common_tags %} - -

Matérias do Expediente

- - - +{% load common_tags %} +

Matérias do Expediente

+
+ + + + + + + + + {% for materia in lst_expediente_materia %} - - - + + + - - - {% for materia in lst_expediente_materia%} - - - - - - {% endfor %} - - -
MatériaEmentaResultado da Votação
MatériaEmentaResultado da Votação +
+
{{ materia.num_ordem }} - {{ materia.id_materia }}
+
Turno: {{ materia.des_turno }}
+
{{ materia.num_autores }}: {{ materia.nom_autor }}
+
+
+
+ {{ materia.txt_ementa }} + {% if materia.ordem_observacao %}

Obs.: {{ materia.ordem_observacao }} {% endif %} +
+
 {{ materia.nom_resultado }}
-
-
{{materia.num_ordem}} - {{materia.id_materia}}
-
Turno: {{materia.des_turno}}
-
{{materia.num_autores}}: {{materia.nom_autor}}
-
-
-
- {{materia.txt_ementa}} - {% if materia.ordem_observacao %}

Obs.: {{materia.ordem_observacao}} {% endif %} -
-
 {{materia.nom_resultado}}
\ No newline at end of file + {% endfor %} + + diff --git a/sapl/templates/relatorios/blocos_sessao_plenaria/votos_nominais_expediente.html b/sapl/templates/relatorios/blocos_sessao_plenaria/votos_nominais_expediente.html index 065efa1f6..0c87d36cd 100644 --- a/sapl/templates/relatorios/blocos_sessao_plenaria/votos_nominais_expediente.html +++ b/sapl/templates/relatorios/blocos_sessao_plenaria/votos_nominais_expediente.html @@ -1,20 +1,22 @@ - {% if lst_votacao_vot_nom %} +{% if lst_votacao_vot_nom %}

Votações Nominais - Matérias do Expediente

- - - - - - - {% for expediente_materia_vot_nom in lst_expediente_materia_vot_nom %} + - + + + + + {% for expediente_materia_vot_nom in lst_expediente_materia_vot_nom %} + + - {% endfor %} -
MatériaVotos
{{expediente_materia_vot_nom.titulo}}MatériaVotos
{{ expediente_materia_vot_nom.titulo }} - {% if expediente_materia_vot_nom.votos %} + {% if expediente_materia_vot_nom.votos == 0 %} +

Matéria retirada

+ {% elif expediente_materia_vot_nom.votos %}
{% for v in expediente_materia_vot_nom.votos %} -
 {{v.parlamentar}} {{v.voto}}
+
 {{ v.parlamentar }} {{ v.voto }}
{% endfor %}
{% else %} @@ -22,6 +24,6 @@ {% endif %}
- {% endif %} \ No newline at end of file + {% endfor %} + +{% endif %} diff --git a/sapl/templates/relatorios/blocos_sessao_plenaria/votos_nominais_ordemdia.html b/sapl/templates/relatorios/blocos_sessao_plenaria/votos_nominais_ordemdia.html index 30a949922..a59a0ec09 100644 --- a/sapl/templates/relatorios/blocos_sessao_plenaria/votos_nominais_ordemdia.html +++ b/sapl/templates/relatorios/blocos_sessao_plenaria/votos_nominais_ordemdia.html @@ -1,20 +1,22 @@ - {% if lst_votacao_vot_nom %} +{% if lst_votacao_vot_nom %}

Votações Nominais - Matérias da Ordem do Dia

- - - - - - - {% for votacao_vot_nom in lst_votacao_vot_nom %} + - + + + + + {% for votacao_vot_nom in lst_votacao_vot_nom %} + + - {% endfor %} -
MatériaVotos
{{votacao_vot_nom.titulo}}MatériaVotos
{{ votacao_vot_nom.titulo }} - {% if votacao_vot_nom.votos %} + {% if votacao_vot_nom.votos == 0 %} +

Matéria retirada

+ {% elif votacao_vot_nom.votos %}
{% for v in votacao_vot_nom.votos %} -
 {{v.parlamentar}} {{v.voto}}
+
 {{ v.parlamentar }} {{ v.voto }}
{% endfor %}
{% else %} @@ -22,6 +24,6 @@ {% endif %}
- {% endif %} \ No newline at end of file + {% endfor %} + +{% endif %} diff --git a/sapl/templates/sessao/blocos_resumo/votos_nominais_materias_expediente.html b/sapl/templates/sessao/blocos_resumo/votos_nominais_materias_expediente.html index ab96c98d9..c6729bafa 100644 --- a/sapl/templates/sessao/blocos_resumo/votos_nominais_materias_expediente.html +++ b/sapl/templates/sessao/blocos_resumo/votos_nominais_materias_expediente.html @@ -1,31 +1,33 @@ {% if votos_nominais_materia_expediente %} -
- Votações Nominais - Matérias do Expediente -
- - - - - - - - - {% for m in votos_nominais_materia_expediente %} +
+ Votações Nominais - Matérias do Expediente +
+
MatériaVotos
+ - - {% if m.votos %} - - {% else %} - - {% endif %} + + - {% endfor %} - -
{{ m.titulo }} - {% for v in m.votos %} -
  • {{v.parlamentar}} - {{v.voto}}
  • - {% endfor %} -
    Matéria não votadaMatériaVotos
    -
    -


    -{% endif %} \ No newline at end of file + + + {% for m in votos_nominais_materia_expediente %} + + {{ m.titulo }} + {% if m.votos == 0 %} + Matéria retirada + {% elif m.votos %} + + {% for v in m.votos %} +
  • {{ v.parlamentar }} - {{ v.voto }}
  • + {% endfor %} + + {% else %} + Matéria não votada + {% endif %} + + {% endfor %} + + + +


    +{% endif %} diff --git a/sapl/templates/sessao/blocos_resumo/votos_nominais_materias_ordem_dia.html b/sapl/templates/sessao/blocos_resumo/votos_nominais_materias_ordem_dia.html index 3297ea386..8e68d99ef 100644 --- a/sapl/templates/sessao/blocos_resumo/votos_nominais_materias_ordem_dia.html +++ b/sapl/templates/sessao/blocos_resumo/votos_nominais_materias_ordem_dia.html @@ -1,31 +1,33 @@ {% if votos_nominais_materia_ordem_dia %} -
    - Votações Nominais - Matérias da Ordem do Dia -
    - - - - - - - - - {% for m in votos_nominais_materia_ordem_dia %} +
    + Votações Nominais - Matérias da Ordem do Dia +
    +
    MatériaVotos
    + - - {% if m.votos %} - - {% else %} - - {% endif %} + + - {% endfor %} - -
    {{ m.titulo }} - {% for v in m.votos %} -
  • {{v.parlamentar}} - {{v.voto}}
  • - {% endfor %} -
    Matéria não votadaMatériaVotos
    -
    -


    -{% endif %} \ No newline at end of file + + + {% for m in votos_nominais_materia_ordem_dia %} + + {{ m.titulo }} + {% if m.votos == 0 %} + Matéria retirada + {% elif m.votos %} + + {% for v in m.votos %} +
  • {{ v.parlamentar }} - {{ v.voto }}
  • + {% endfor %} + + {% else %} + Matéria não votada + {% endif %} + + {% endfor %} + + + +


    +{% endif %}