Browse Source

ajustes layout

pull/3128/head
Edward Ribeiro 6 years ago
parent
commit
01d48708da
  1. 84
      sapl/relatorios/views.py

84
sapl/relatorios/views.py

@ -4,7 +4,6 @@ import logging
import re import re
import tempfile import tempfile
from django.core.exceptions import ObjectDoesNotExist from django.core.exceptions import ObjectDoesNotExist
from django.http import Http404, HttpResponse from django.http import Http404, HttpResponse
from django.utils import timezone from django.utils import timezone
@ -58,7 +57,6 @@ def get_kwargs_params(request, fields):
def get_cabecalho(casa): def get_cabecalho(casa):
cabecalho = {} cabecalho = {}
cabecalho["nom_casa"] = casa.nome cabecalho["nom_casa"] = casa.nome
uf_dict = dict(LISTA_DE_UFS) uf_dict = dict(LISTA_DE_UFS)
@ -74,7 +72,6 @@ def get_imagem(casa):
def get_rodape(casa): def get_rodape(casa):
if len(casa.cep) == 8: if len(casa.cep) == 8:
cep = casa.cep[:4] + "-" + casa.cep[5:] cep = casa.cep[:4] + "-" + casa.cep[5:]
else: else:
@ -110,7 +107,6 @@ def get_rodape(casa):
def get_materias(mats): def get_materias(mats):
materias = [] materias = []
for materia in mats: for materia in mats:
dic = {} dic = {}
@ -294,7 +290,6 @@ def relatorio_capa_processo(request):
def get_ordem_dia(ordem, sessao): def get_ordem_dia(ordem, sessao):
# TODO: fazer implementação de ordem dia # TODO: fazer implementação de ordem dia
pass pass
@ -361,7 +356,6 @@ def relatorio_documento_administrativo(request):
def get_documento_administrativo(docs): def get_documento_administrativo(docs):
documentos = [] documentos = []
for d in docs: for d in docs:
dic = {} dic = {}
@ -505,7 +499,6 @@ def remove_html_comments(text):
def get_sessao_plenaria(sessao, casa): def get_sessao_plenaria(sessao, casa):
inf_basicas_dic = {} inf_basicas_dic = {}
inf_basicas_dic["num_sessao_plen"] = str(sessao.numero) inf_basicas_dic["num_sessao_plen"] = str(sessao.numero)
inf_basicas_dic["nom_sessao"] = sessao.tipo.nome inf_basicas_dic["nom_sessao"] = sessao.tipo.nome
@ -742,7 +735,6 @@ def get_sessao_plenaria(sessao, casa):
numeracao = materia.numeracao_set.first() numeracao = materia.numeracao_set.first()
if numeracao: if numeracao:
dic_votacao["des_numeracao"] = ( dic_votacao["des_numeracao"] = (
str(numeracao.numero_materia) + str(numeracao.numero_materia) +
'/' + '/' +
@ -973,7 +965,6 @@ def relatorio_sessao_plenaria(request, pk):
def get_protocolos(prots): def get_protocolos(prots):
protocolos = [] protocolos = []
for protocolo in prots: for protocolo in prots:
dic = {} dic = {}
@ -1090,7 +1081,6 @@ def relatorio_etiqueta_protocolo(request, nro, ano):
def get_etiqueta_protocolos(prots): def get_etiqueta_protocolos(prots):
protocolos = [] protocolos = []
for p in prots: for p in prots:
dic = {} dic = {}
@ -1172,7 +1162,6 @@ def relatorio_pauta_sessao(request, pk):
def get_pauta_sessao(sessao, casa): def get_pauta_sessao(sessao, casa):
inf_basicas_dic = {} inf_basicas_dic = {}
inf_basicas_dic["nom_sessao"] = sessao.tipo.nome inf_basicas_dic["nom_sessao"] = sessao.tipo.nome
inf_basicas_dic["num_sessao_plen"] = sessao.numero inf_basicas_dic["num_sessao_plen"] = sessao.numero
@ -1280,7 +1269,8 @@ def get_pauta_sessao(sessao, casa):
inf_basicas_dic, inf_basicas_dic,
expedientes) expedientes)
def make_pdf(base_url,main_template,header_template,main_css='',header_css=''):
def make_pdf(base_url, main_template, header_template, main_css='', header_css=''):
html = HTML(base_url=base_url, string=main_template) html = HTML(base_url=base_url, string=main_template)
main_doc = html.render(stylesheets=[]) main_doc = html.render(stylesheets=[])
@ -1291,7 +1281,7 @@ def make_pdf(base_url,main_template,header_template,main_css='',header_css=''):
return get_page_body(box.all_children()) return get_page_body(box.all_children())
# Template of header # Template of header
html = HTML(base_url=base_url,string=header_template) html = HTML(base_url=base_url, string=header_template)
header = html.render(stylesheets=[CSS(string='@page {size:A4; margin:1cm;}')]) header = html.render(stylesheets=[CSS(string='@page {size:A4; margin:1cm;}')])
header_page = header.pages[0] header_page = header.pages[0]
@ -1307,7 +1297,7 @@ def make_pdf(base_url,main_template,header_template,main_css='',header_css=''):
return pdf_file return pdf_file
def resumo_ata_pdf(request,pk): def resumo_ata_pdf(request, pk):
base_url = request.build_absolute_uri() base_url = request.build_absolute_uri()
casa = CasaLegislativa.objects.first() casa = CasaLegislativa.objects.first()
rodape = ' '.join(get_rodape(casa)) rodape = ' '.join(get_rodape(casa))
@ -1330,12 +1320,12 @@ def resumo_ata_pdf(request,pk):
context.update({'object': sessao_plenaria}) context.update({'object': sessao_plenaria})
context.update({'data': dt.today().strftime('%d/%m/%Y')}) context.update({'data': dt.today().strftime('%d/%m/%Y')})
context.update({'rodape': rodape}) context.update({'rodape': rodape})
header_context = {"casa": casa, 'logotipo':casa.logotipo, 'MEDIA_URL': MEDIA_URL} header_context = {"casa": casa, 'logotipo': casa.logotipo, 'MEDIA_URL': MEDIA_URL}
html_template = render_to_string('relatorios/relatorio_ata.html', context) html_template = render_to_string('relatorios/relatorio_ata.html', context)
html_header = render_to_string('relatorios/header_ata.html', header_context) html_header = render_to_string('relatorios/header_ata.html', header_context)
pdf_file = make_pdf(base_url=base_url,main_template=html_template,header_template=html_header) pdf_file = make_pdf(base_url=base_url, main_template=html_template, header_template=html_header)
response = HttpResponse(content_type='application/pdf;') response = HttpResponse(content_type='application/pdf;')
response['Content-Disposition'] = 'inline; filename=relatorio.pdf' response['Content-Disposition'] = 'inline; filename=relatorio.pdf'
@ -1344,6 +1334,7 @@ def resumo_ata_pdf(request,pk):
return response return response
def cria_relatorio(request, context, html_string, header_info=""): def cria_relatorio(request, context, html_string, header_info=""):
base_url = request.build_absolute_uri() base_url = request.build_absolute_uri()
casa = CasaLegislativa.objects.first() casa = CasaLegislativa.objects.first()
@ -1366,62 +1357,80 @@ def cria_relatorio(request, context, html_string, header_info=""):
return response return response
def relatorio_doc_administrativos(request, context): def relatorio_doc_administrativos(request, context):
return cria_relatorio(request, context, 'relatorios/relatorio_doc_administrativos.html') return cria_relatorio(request, context, 'relatorios/relatorio_doc_administrativos.html')
def relatorio_materia_em_tramitacao(obj, request, context): def relatorio_materia_em_tramitacao(obj, request, context):
return cria_relatorio(request, context, 'relatorios/relatorio_materias_em_tramitacao.html') return cria_relatorio(request, context, 'relatorios/relatorio_materias_em_tramitacao.html')
def relatorio_materia_por_autor(obj, request, context): def relatorio_materia_por_autor(obj, request, context):
return cria_relatorio(request, context, 'relatorios/relatorio_materias_por_autor.html') return cria_relatorio(request, context, 'relatorios/relatorio_materias_por_autor.html')
def relatorio_materia_por_ano_autor(obj, request, context): def relatorio_materia_por_ano_autor(obj, request, context):
return cria_relatorio(request, context, 'relatorios/relatorio_materias_por_ano_autor.html') return cria_relatorio(request, context, 'relatorios/relatorio_materias_por_ano_autor.html')
def relatorio_presenca_sessao(obj, request, context): def relatorio_presenca_sessao(obj, request, context):
return cria_relatorio(request, context, 'relatorios/relatorio_presenca_sessao.html') return cria_relatorio(request, context, 'relatorios/relatorio_presenca_sessao.html')
def relatorio_atas(obj, request, context): def relatorio_atas(obj, request, context):
return cria_relatorio(request, context, 'relatorios/relatorio_atas.html') return cria_relatorio(request, context, 'relatorios/relatorio_atas.html')
def relatorio_historico_tramitacao(obj, request, context): def relatorio_historico_tramitacao(obj, request, context):
return cria_relatorio(request, context, 'relatorios/relatorio_historico_tramitacao.html') return cria_relatorio(request, context, 'relatorios/relatorio_historico_tramitacao.html')
def relatorio_fim_prazo_tramitacao(obj, request, context): def relatorio_fim_prazo_tramitacao(obj, request, context):
return cria_relatorio(request, context, 'relatorios/relatorio_fim_prazo_tramitacao.html') return cria_relatorio(request, context, 'relatorios/relatorio_fim_prazo_tramitacao.html')
def relatorio_reuniao(obj, request, context): def relatorio_reuniao(obj, request, context):
return cria_relatorio(request, context, 'relatorios/relatorio_reuniao.html') return cria_relatorio(request, context, 'relatorios/relatorio_reuniao.html')
def relatorio_audiencia(obj, request, context): def relatorio_audiencia(obj, request, context):
return cria_relatorio(request, context, 'relatorios/relatorio_audiencia.html') return cria_relatorio(request, context, 'relatorios/relatorio_audiencia.html')
def relatorio_normas_mes(obj, request, context): def relatorio_normas_mes(obj, request, context):
return cria_relatorio(request, context, 'relatorios/relatorio_normas_mes.html') return cria_relatorio(request, context, 'relatorios/relatorio_normas_mes.html')
def relatorio_normas_vigencia(obj, request, context): def relatorio_normas_vigencia(obj, request, context):
return cria_relatorio(request, context, 'relatorios/relatorio_normas_vigencia.html') return cria_relatorio(request, context, 'relatorios/relatorio_normas_vigencia.html')
def relatorio_historico_tramitacao_adm(obj, request, context): def relatorio_historico_tramitacao_adm(obj, request, context):
return cria_relatorio(request, context, 'relatorios/relatorio_historico_tramitacao_adm.html') return cria_relatorio(request, context, 'relatorios/relatorio_historico_tramitacao_adm.html')
def relatorio_estatisticas_acesso_normas(obj, request, context): def relatorio_estatisticas_acesso_normas(obj, request, context):
return cria_relatorio(request, context, 'relatorios/relatorio_estatisticas_acesso_normas.html') return cria_relatorio(request, context, 'relatorios/relatorio_estatisticas_acesso_normas.html')
def relatorio_documento_acessorio(obj, request, context): def relatorio_documento_acessorio(obj, request, context):
return cria_relatorio(request, context, 'relatorios/relatorio_documento_acessorio.html') return cria_relatorio(request, context, 'relatorios/relatorio_documento_acessorio.html')
def relatorio_normas_por_autor(obj, request, context): def relatorio_normas_por_autor(obj, request, context):
return cria_relatorio(request, context, 'relatorios/relatorio_normas_por_autor.html') return cria_relatorio(request, context, 'relatorios/relatorio_normas_por_autor.html')
def relatorio_pauta_sessao_weasy(obj, request, context): def relatorio_pauta_sessao_weasy(obj, request, context):
sessao = context['object'] sessao = context['object']
info = "Pauta da {} ({} - {}) Legislatura".format(sessao,sessao.legislatura.data_inicio.year,sessao.legislatura.data_fim.year) info = "Pauta da {} ({} - {}) Legislatura".format(sessao, sessao.legislatura.data_inicio.year,
return cria_relatorio(request, context, 'relatorios/relatorio_pauta_sessao.html',info) sessao.legislatura.data_fim.year)
return cria_relatorio(request, context, 'relatorios/relatorio_pauta_sessao.html', info)
def relatorio_sessao_plenaria_pdf(request, pk): def relatorio_sessao_plenaria_pdf(request, pk):
base_url=request.build_absolute_uri() base_url = request.build_absolute_uri()
logger = logging.getLogger(__name__) logger = logging.getLogger(__name__)
username = request.user.username username = request.user.username
casa = CasaLegislativa.objects.first() casa = CasaLegislativa.objects.first()
@ -1458,22 +1467,22 @@ def relatorio_sessao_plenaria_pdf(request, pk):
html_template = render_to_string('relatorios/relatorio_sessao_plenaria.html', html_template = render_to_string('relatorios/relatorio_sessao_plenaria.html',
{ {
"inf_basicas_dic":inf_basicas_dic, "inf_basicas_dic": inf_basicas_dic,
"cont_mult_dic":cont_mult_dic, "cont_mult_dic": cont_mult_dic,
"lst_mesa":lst_mesa, "lst_mesa": lst_mesa,
"lst_expediente_materia_vot_nom":lst_expediente_materia_vot_nom, "lst_expediente_materia_vot_nom": lst_expediente_materia_vot_nom,
"lst_presenca_sessao":lst_presenca_sessao, "lst_presenca_sessao": lst_presenca_sessao,
"lst_ausencia_sessao":lst_ausencia_sessao, "lst_ausencia_sessao": lst_ausencia_sessao,
"lst_expedientes":lst_expedientes, "lst_expedientes": lst_expedientes,
"lst_expediente_materia":lst_expediente_materia, "lst_expediente_materia": lst_expediente_materia,
"lst_oradores_expediente":lst_oradores_expediente, "lst_oradores_expediente": lst_oradores_expediente,
"lst_presenca_ordem_dia":lst_presenca_ordem_dia, "lst_presenca_ordem_dia": lst_presenca_ordem_dia,
"lst_votacao":lst_votacao, "lst_votacao": lst_votacao,
"lst_oradores_ordemdia":lst_oradores_ordemdia, "lst_oradores_ordemdia": lst_oradores_ordemdia,
"lst_votacao_vot_nom":lst_votacao_vot_nom, "lst_votacao_vot_nom": lst_votacao_vot_nom,
"lst_oradores":lst_oradores, "lst_oradores": lst_oradores,
"lst_ocorrencias":lst_ocorrencias, "lst_ocorrencias": lst_ocorrencias,
"rodape":rodape, "rodape": rodape,
"data": dt.today().strftime('%d/%m/%Y') "data": dt.today().strftime('%d/%m/%Y')
}) })
@ -1485,10 +1494,10 @@ def relatorio_sessao_plenaria_pdf(request, pk):
inf_basicas_dic['num_legislatura'] inf_basicas_dic['num_legislatura']
) )
html_header = render_to_string('relatorios/header_ata.html',{"casa":casa, html_header = render_to_string('relatorios/header_ata.html', {"casa": casa,
"MEDIA_URL": MEDIA_URL, "MEDIA_URL": MEDIA_URL,
"logotipo": casa.logotipo, "logotipo": casa.logotipo,
"info":info}) "info": info})
pdf_file = make_pdf(base_url=base_url, main_template=html_template, header_template=html_header) pdf_file = make_pdf(base_url=base_url, main_template=html_template, header_template=html_header)
@ -1498,4 +1507,3 @@ def relatorio_sessao_plenaria_pdf(request, pk):
response.write(pdf_file) response.write(pdf_file)
return response return response

Loading…
Cancel
Save