Browse Source

Adiciona tipo em relatório de presença em sessão plenária (#2884)

* Adiciona tipo em relatório de presença em sessão plenária

* Fix queryset de obter presença
pull/2888/head
Edward 6 years ago
committed by GitHub
parent
commit
4c66d4a01c
No known key found for this signature in database GPG Key ID: 4AEE18F83AFDEB23
  1. 6
      sapl/base/forms.py
  2. 19
      sapl/base/views.py
  3. 1
      sapl/templates/base/RelatorioPresencaSessao_filter.html

6
sapl/base/forms.py

@ -874,6 +874,7 @@ class RelatorioPresencaSessaoFilterSet(django_filters.FilterSet):
model = SessaoPlenaria model = SessaoPlenaria
fields = ['data_inicio', fields = ['data_inicio',
'sessao_legislativa', 'sessao_legislativa',
'tipo',
'legislatura'] 'legislatura']
def __init__(self, *args, **kwargs): def __init__(self, *args, **kwargs):
@ -883,8 +884,9 @@ class RelatorioPresencaSessaoFilterSet(django_filters.FilterSet):
self.filters['data_inicio'].label = 'Período (Inicial - Final)' self.filters['data_inicio'].label = 'Período (Inicial - Final)'
row1 = to_row([('data_inicio', 12)]) row1 = to_row([('data_inicio', 12)])
row2 = to_row([('legislatura', 6), row2 = to_row([('legislatura', 4),
('sessao_legislativa', 6)]) ('sessao_legislativa', 4),
('tipo', 4)])
self.form.helper = SaplFormHelper() self.form.helper = SaplFormHelper()
self.form.helper.form_method = 'GET' self.form.helper.form_method = 'GET'

19
sapl/base/views.py

@ -43,7 +43,7 @@ from sapl.protocoloadm.models import (Protocolo, TipoDocumentoAdministrativo,
StatusTramitacaoAdministrativo, StatusTramitacaoAdministrativo,
DocumentoAdministrativo, Anexado) DocumentoAdministrativo, Anexado)
from sapl.sessao.models import (PresencaOrdemDia, SessaoPlenaria, from sapl.sessao.models import (PresencaOrdemDia, SessaoPlenaria,
SessaoPlenariaPresenca, Bancada) SessaoPlenariaPresenca, Bancada, TipoSessaoPlenaria)
from sapl.utils import (parlamentares_ativos, gerar_hash_arquivo, SEPARADOR_HASH_PROPOSICAO, from sapl.utils import (parlamentares_ativos, gerar_hash_arquivo, SEPARADOR_HASH_PROPOSICAO,
show_results_filter_set, mail_service_configured, show_results_filter_set, mail_service_configured,
intervalos_tem_intersecao, remover_acentos) intervalos_tem_intersecao, remover_acentos)
@ -346,19 +346,17 @@ class RelatorioPresencaSessaoView(FilterView):
cd = self.filterset.form.cleaned_data cd = self.filterset.form.cleaned_data
if not cd['data_inicio'] and not cd['sessao_legislativa'] \ if not cd['data_inicio'] and not cd['sessao_legislativa'] \
and not cd['legislatura']: and not cd['legislatura']:
msg = _("Formulário inválido! Preencha pelo menos algum dos campos.") msg = _("Formulário inválido! Preencha pelo menos algum dos campos Período, Legislatura ou Sessão Legislativa.")
messages.error(self.request, msg) messages.error(self.request, msg)
return context return context
# Caso a data tenha sido preenchida, verifica se foi preenchida corretamente # Caso a data tenha sido preenchida, verifica se foi preenchida corretamente
if ('data_inicio_0' in self.request.GET) and self.request.GET['data_inicio_0'] and \ if self.request.GET.get('data_inicio_0') and not self.request.GET.get('data_inicio_1'):
not(('data_inicio_1' in self.request.GET) and self.request.GET['data_inicio_1']):
msg = _("Formulário inválido! Preencha a data do Período Final.") msg = _("Formulário inválido! Preencha a data do Período Final.")
messages.error(self.request, msg) messages.error(self.request, msg)
return context return context
if not(('data_inicio_0' in self.request.GET) and self.request.GET['data_inicio_0']) and \ if not self.request.GET.get('data_inicio_0') and self.request.GET.get('data_inicio_1'):
('data_inicio_1' in self.request.GET) and self.request.GET['data_inicio_1']:
msg = _("Formulário inválido! Preencha a data do Período Inicial.") msg = _("Formulário inválido! Preencha a data do Período Inicial.")
messages.error(self.request, msg) messages.error(self.request, msg)
return context return context
@ -377,6 +375,12 @@ class RelatorioPresencaSessaoView(FilterView):
sessao_legislativa = SessaoLegislativa.objects.get(id=sessao_legislativa_pk) sessao_legislativa = SessaoLegislativa.objects.get(id=sessao_legislativa_pk)
context['sessao_legislativa'] = sessao_legislativa context['sessao_legislativa'] = sessao_legislativa
tipo_sessao_plenaria_pk = self.request.GET.get('tipo')
context['tipo'] = ''
if tipo_sessao_plenaria_pk:
param0['sessao_plenaria__tipo_id'] = tipo_sessao_plenaria_pk
context['tipo'] = TipoSessaoPlenaria.objects.get(id=tipo_sessao_plenaria_pk)
_range = [] _range = []
if ('data_inicio_0' in self.request.GET) and self.request.GET['data_inicio_0'] and \ if ('data_inicio_0' in self.request.GET) and self.request.GET['data_inicio_0'] and \
@ -390,7 +394,7 @@ class RelatorioPresencaSessaoView(FilterView):
elif sessao_legislativa_pk: elif sessao_legislativa_pk:
_range = [sessao_legislativa.data_inicio, sessao_legislativa.data_fim] _range = [sessao_legislativa.data_inicio, sessao_legislativa.data_fim]
param0 = {'sessao_plenaria__data_inicio__range': _range} param0.update({'sessao_plenaria__data_inicio__range': _range})
# Parlamentares com Mandato no intervalo de tempo (Ativos) # Parlamentares com Mandato no intervalo de tempo (Ativos)
@ -474,6 +478,7 @@ class RelatorioPresencaSessaoView(FilterView):
' - ' + self.request.GET['data_inicio_1']) ' - ' + self.request.GET['data_inicio_1'])
context['sessao_legislativa'] = '' context['sessao_legislativa'] = ''
context['legislatura'] = '' context['legislatura'] = ''
if sessao_legislativa_pk: if sessao_legislativa_pk:
context['sessao_legislativa'] = SessaoLegislativa.objects.get(id=sessao_legislativa_pk) context['sessao_legislativa'] = SessaoLegislativa.objects.get(id=sessao_legislativa_pk)
if legislatura_pk: if legislatura_pk:

1
sapl/templates/base/RelatorioPresencaSessao_filter.html

@ -22,6 +22,7 @@
<b>PERÍODO: {{periodo}}</b><br /> <b>PERÍODO: {{periodo}}</b><br />
<b>Legislatura: {{legislatura}}</b><br /> <b>Legislatura: {{legislatura}}</b><br />
<b>Sessão Legislativa: {{sessao_legislativa}}</b><br /> <b>Sessão Legislativa: {{sessao_legislativa}}</b><br />
<b>Tipo Sessão Plenária: {{tipo}}<br /> </b>
<b>TOTAIS NO PERÍODO - SESSÕES: {{total_sessao}} - ORDENS DO DIA: {{total_ordemdia}}</b> <b>TOTAIS NO PERÍODO - SESSÕES: {{total_sessao}} - ORDENS DO DIA: {{total_ordemdia}}</b>
<table class="table table-bordered table-hover presenca_table"> <table class="table table-bordered table-hover presenca_table">
<thead class="thead-default" align="center"> <thead class="thead-default" align="center">

Loading…
Cancel
Save