##parameters=rodape_dic, sessao='', imagem, inf_basicas_dic, lst_votacao, lst_expediente_materia """Script para geração do PDF das pautas das sessoes plenarias Autor Luciano De Fázio - 06/11/2012 versão: 1.0 """ import time from trml2pdf import parseString def cabecalho(inf_basicas_dic, imagem): """ """ tmp = '' tmp += '\t\t\t\t\n' tmp += '\t\t\t\t2cm 25.4cm 19cm 25.4cm\n' tmp += '\t\t\t\t\n' tmp += '\t\t\t\t' + \ str(inf_basicas_dic["nom_camara"]) + '\n' tmp += '\t\t\t\t\n' tmp += '\t\t\t\tSistema de Apoio ao Processo Legislativo\n' tmp += '\t\t\t\t\n' tmp += '\t\t\t\tPauta da ' + str(inf_basicas_dic['num_sessao_plen']) + 'ª Reunião ' + str(inf_basicas_dic['nom_sessao']) + ' da ' + str( inf_basicas_dic['num_sessao_leg']) + 'ª Sessão Legislativa da ' + str(inf_basicas_dic['num_legislatura']) + 'ª Legislatura \n' return tmp def rodape(lst_rodape): """Gera o codigo rml do rodape""" tmp_data = '' tmp_data += '\t\t\t\t2cm 3.2cm 19cm 3.2cm\n' tmp_data += '\t\t\t\t\n' tmp_data += '\t\t\t\t' + \ lst_rodape[2] + '\n' tmp_data += '\t\t\t\t' + \ lst_rodape[0] + '\n' tmp_data += '\t\t\t\t' + \ lst_rodape[1] + '\n' return tmp_data def paraStyle(): """ """ tmp = '' tmp += '\t\n' tmp += '\t\t\n' tmp += '\t\t\t\n' tmp += '\t\t\t\n' tmp += '\t\t\t\n' tmp += '\t\t\t\n' tmp += '\t\t\t\n' tmp += '\t\t\t\n' tmp += '\t\t\t\n' tmp += '\t\t\t\n' tmp += '\t\t\t\n' tmp += '\t\t\t\n' tmp += '\t\t\t\n' tmp += '\t\t\n' tmp += '\t\t\n' tmp += '\t\t\t\n' tmp += '\t\t\t\n' tmp += '\t\t\t\n' tmp += '\t\t\t\n' tmp += '\t\t\t\n' tmp += '\t\t\t\n' tmp += '\t\t\n' tmp += '\t\t\n' tmp += '\t\t\t\n' tmp += '\t\t\n' tmp += '\t\t\n' tmp += '\t\t\n' tmp += '\t\t\n' tmp += '\t\t\n' tmp += '\t\t\n' tmp += '\t\t\n' tmp += '\t\t\n' tmp += '\t\n' return tmp def inf_basicas(inf_basicas_dic): """ """ tmp = "" nom_sessao = inf_basicas_dic['nom_sessao'] num_sessao_plen = inf_basicas_dic["num_sessao_plen"] num_sessao_leg = inf_basicas_dic["num_sessao_leg"] num_legislatura = inf_basicas_dic["num_legislatura"] dat_inicio_sessao = inf_basicas_dic["dat_inicio_sessao"] hr_inicio_sessao = inf_basicas_dic["hr_inicio_sessao"] dat_fim_sessao = inf_basicas_dic["dat_fim_sessao"] hr_fim_sessao = inf_basicas_dic["hr_fim_sessao"] tmp += '\t\tInformações Básicas\n' tmp += '\t\t\n' tmp += '\t\t\t \n' tmp += '\t\t\n' tmp += '\t\tTipo da Sessão: ' + \ nom_sessao + '\n' tmp += '\t\tAbertura: ' + \ dat_inicio_sessao.strftime( "%d/%m/%Y") + ' - ' + hr_inicio_sessao + '\n' return tmp def expediente_materia(lst_expediente_materia): """ """ tmp = '' tmp += 'Matérias do Expediente\n\n' tmp += '\t\t\n' tmp += '\t\t\t \n' tmp += '\t\t\n' tmp += '\n' tmp += 'MatériaEmentaSituação\n' for expediente_materia in lst_expediente_materia: tmp += '' + str(expediente_materia['num_ordem']) + ' - ' + expediente_materia[ 'id_materia'] + '\n' + 'Autor: ' + expediente_materia['nom_autor'] + '\n' txt_ementa = expediente_materia['txt_ementa'].replace('&', '&') tmp += '' + txt_ementa + '\n' tmp += '' + \ str(expediente_materia['des_situacao']) + '\n' tmp += '\t\t\n' return tmp def votacao(lst_votacao): """ """ tmp = '' tmp += 'Matérias da Ordem do Dia\n\n' tmp += '\t\t\n' tmp += '\t\t\t \n' tmp += '\t\t\n' tmp += '\n' tmp += 'MatériaEmentaSituação\n' for votacao in lst_votacao: tmp += '' + str(votacao['num_ordem']) + ' - ' + votacao['id_materia'] + '\n' + 'Processo: ' + votacao[ 'des_numeracao'] + '\n' + 'Turno: ' + votacao['des_turno'] + '\n' + 'Autor: ' + votacao['nom_autor'] + '\n' tmp += '' + \ votacao['txt_ementa'] + '\n' tmp += '' + \ str(votacao['des_situacao']) + '\n' tmp += '\t\t\n' return tmp def principal(cabecalho_dic, rodape_dic, sessao, imagem, inf_basicas_dic, lst_expediente_materia, lst_votacao): """ """ arquivoPdf = str(int(time.time() * 100)) + ".pdf" tmp = '' tmp += '\n' tmp += '\n' tmp += '\n' tmp += '\t\n' tmp += paraStyle() tmp += '\t\n' tmp += inf_basicas(inf_basicas_dic) tmp += expediente_materia(lst_expediente_materia) tmp += votacao(lst_votacao) tmp += '\t\n' tmp += '\n' tmp_pdf = parseString(tmp) return tmp_pdf # if hasattr(context.temp_folder,arquivoPdf): # context.temp_folder.manage_delObjects(ids=arquivoPdf) # context.temp_folder.manage_addFile(arquivoPdf) # arq=context.temp_folder[arquivoPdf] # arq.manage_edit(title='Arquivo PDF temporario.',filedata=tmp_pdf,content_type='application/pdf') # return "/temp_folder/"+arquivoPdf # return principal(cabecalho, rodape, sessao, imagem, inf_basicas_dic)