diff --git a/sapl/relatorios/templates/pdf_sessao_plenaria_gerar.py b/sapl/relatorios/templates/pdf_sessao_plenaria_gerar.py index bdbce554e..5932c4811 100644 --- a/sapl/relatorios/templates/pdf_sessao_plenaria_gerar.py +++ b/sapl/relatorios/templates/pdf_sessao_plenaria_gerar.py @@ -144,7 +144,7 @@ def mesa(lst_mesa): return tmp -def presenca(lst_presenca_sessao): +def presenca(lst_presenca_sessao,lst_ausencia_sessao): """ """ @@ -157,6 +157,19 @@ def presenca(lst_presenca_sessao): tmp += '\t\t' + \ str(presenca['nom_parlamentar']) + '/' + \ str(presenca['sgl_partido']) + '\n' + + tmp += '\t\tJustificativas de Ausência da Sessão\n' + tmp += '\t\t\n' + tmp += '\t\t\t
\n' + tmp += '\t\t
\n' + tmp += '\n' + tmp += 'ParlamentarJustificativaAusente em\n' + for ausencia in lst_ausencia_sessao: + tmp += '' + \ + str(ausencia['parlamentar']) + ' ' + \ + str(ausencia['justificativa']) + '' + \ + str(ausencia['tipo']) + '\n' + tmp += '' return tmp @@ -305,7 +318,7 @@ def ocorrencias(lst_ocorrencias): return tmp -def principal(cabecalho_dic, rodape_dic, imagem, sessao, inf_basicas_dic, lst_mesa, lst_presenca_sessao, lst_expedientes, lst_expediente_materia, lst_oradores_expediente, lst_presenca_ordem_dia, lst_votacao, lst_oradores, lst_ocorrencias): +def principal(cabecalho_dic, rodape_dic, imagem, sessao, inf_basicas_dic, lst_mesa, lst_presenca_sessao,lst_ausencia_sessao, lst_expedientes, lst_expediente_materia, lst_oradores_expediente, lst_presenca_ordem_dia, lst_votacao, lst_oradores, lst_ocorrencias): """ """ arquivoPdf = str(int(time.time() * 100)) + ".pdf" @@ -331,7 +344,7 @@ def principal(cabecalho_dic, rodape_dic, imagem, sessao, inf_basicas_dic, lst_me 'cont_mult': '', 'exp': expedientes(lst_expedientes), 'id_basica': inf_basicas(inf_basicas_dic), - 'lista_p': presenca(lst_presenca_sessao), + 'lista_p': presenca(lst_presenca_sessao,lst_ausencia_sessao), 'lista_p_o_d': presenca_ordem_dia(lst_presenca_ordem_dia), 'mat_exp': expediente_materia(lst_expediente_materia), 'mat_o_d': votacao(lst_votacao), @@ -357,7 +370,7 @@ def principal(cabecalho_dic, rodape_dic, imagem, sessao, inf_basicas_dic, lst_me else: tmp += inf_basicas(inf_basicas_dic) tmp += mesa(lst_mesa) - tmp += presenca(lst_presenca_sessao) + tmp += presenca(lst_presenca_sessao,lst_ausencia_sessao) tmp += expedientes(lst_expedientes) tmp += expediente_materia(lst_expediente_materia) tmp += oradores_expediente(lst_oradores_expediente) diff --git a/sapl/relatorios/views.py b/sapl/relatorios/views.py index 3b7ab6957..65455c0ca 100755 --- a/sapl/relatorios/views.py +++ b/sapl/relatorios/views.py @@ -16,7 +16,8 @@ from sapl.parlamentares.models import CargoMesa, Filiacao, Parlamentar from sapl.protocoloadm.models import (DocumentoAdministrativo, Protocolo, TramitacaoAdministrativo) from sapl.sessao.models import (ExpedienteMateria, ExpedienteSessao, - IntegranteMesa, Orador, OradorExpediente, + IntegranteMesa, JustificativaAusencia, + Orador, OradorExpediente, OrdemDia, PresencaOrdemDia, SessaoPlenaria, SessaoPlenariaPresenca, OcorrenciaSessao) from sapl.settings import STATIC_ROOT @@ -538,6 +539,20 @@ def get_sessao_plenaria(sessao, casa): dic_presenca['sgl_partido'] = partido_sigla lst_presenca_sessao.append(dic_presenca) + # Lista de ausencias na sessão + lst_ausencia_sessao = [] + ausencia = JustificativaAusencia.objects.filter( + sessao_plenaria=sessao).order_by('parlamentar__nome_parlamentar') + for ausente in ausencia: + dic_ausencia = {} + dic_ausencia['parlamentar'] = ausente.parlamentar + dic_ausencia['justificativa'] = ausente.tipo_ausencia + if ausente.ausencia == 1: + dic_ausencia['tipo'] = 'Matéria' + else: + dic_ausencia['tipo'] = 'Sessão' + + lst_ausencia_sessao.append(dic_ausencia) # Exibe os Expedientes lst_expedientes = [] @@ -779,6 +794,7 @@ def get_sessao_plenaria(sessao, casa): return (inf_basicas_dic, lst_mesa, lst_presenca_sessao, + lst_ausencia_sessao, lst_expedientes, lst_expediente_materia, lst_oradores_expediente, @@ -833,6 +849,7 @@ def relatorio_sessao_plenaria(request, pk): (inf_basicas_dic, lst_mesa, lst_presenca_sessao, + lst_ausencia_sessao, lst_expedientes, lst_expediente_materia, lst_oradores_expediente, @@ -856,6 +873,7 @@ def relatorio_sessao_plenaria(request, pk): inf_basicas_dic, lst_mesa, lst_presenca_sessao, + lst_ausencia_sessao, lst_expedientes, lst_expediente_materia, lst_oradores_expediente, diff --git a/sapl/sessao/views.py b/sapl/sessao/views.py index 2af2b9805..d3ed0209c 100755 --- a/sapl/sessao/views.py +++ b/sapl/sessao/views.py @@ -1349,7 +1349,12 @@ class ResumoView(DetailView): parlamentares_sessao = [p.parlamentar for p in presencas] - context.update({'presenca_sessao': parlamentares_sessao}) + ausentes_sessao = JustificativaAusencia.objects.filter( + sessao_plenaria_id=self.object.id + ).order_by('parlamentar__nome_parlamentar') + + context.update({'presenca_sessao': parlamentares_sessao, + 'justificativa_ausencia': ausentes_sessao}) # ===================================================================== diff --git a/sapl/templates/sessao/blocos_ata/lista_presenca.html b/sapl/templates/sessao/blocos_ata/lista_presenca.html index c6456f2c4..621a4783c 100644 --- a/sapl/templates/sessao/blocos_ata/lista_presenca.html +++ b/sapl/templates/sessao/blocos_ata/lista_presenca.html @@ -2,9 +2,15 @@

- Lista de Presença na Sessão: + Lista de Presença na Sessão: {% for p in presenca_sessao %} - {{p.nome_parlamentar}} / {{ p|filiacao_data_filter:object.data_inicio }} ; + {{p.nome_parlamentar}} / {{ p|filiacao_data_filter:object.data_inicio }} ; {% endfor %}

-
\ No newline at end of file +

+ Justificativas de Ausências na Sessão: + {% for j in justificativa_ausencia %} + {{j.parlamentar}} / {{ j.tipo_ausencia }} ; + {% endfor %} +

+ diff --git a/sapl/templates/sessao/blocos_resumo/lista_presenca.html b/sapl/templates/sessao/blocos_resumo/lista_presenca.html index 56ecf9c17..8f5ac10e2 100644 --- a/sapl/templates/sessao/blocos_resumo/lista_presenca.html +++ b/sapl/templates/sessao/blocos_resumo/lista_presenca.html @@ -7,4 +7,29 @@
{{p.nome_parlamentar}} / {{ p|filiacao_data_filter:object.data_inicio }}
{% endfor %} - \ No newline at end of file +


+
+ Justificativas de Ausência na Sessão + + + + + + + + + + {% for j in justificativa_ausencia %} + + + + {% if j.ausencia == 1 %} + + {% else %} + + {% endif %} + {% endfor %} + +
ParlamentarJustificativaAusente em
{{ j.parlamentar }} {{ j.tipo_ausencia }} Matéria Sessão
+
+