diff --git a/relatorios/templates/pdf_capa_processo_gerar.py b/relatorios/templates/pdf_capa_processo_gerar.py index dcd2607c4..f147ccda6 100755 --- a/relatorios/templates/pdf_capa_processo_gerar.py +++ b/relatorios/templates/pdf_capa_processo_gerar.py @@ -7,7 +7,6 @@ versão: 1.0 """ import time -from cStringIO import StringIO from trml2pdf import parseString @@ -79,12 +78,14 @@ def principal(sessao,imagem,data,lst_protocolos,dic_cabecalho,lst_rodape,dic_fil tmp_data+='\n' tmp_pdf=parseString(tmp_data) - 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 temporário.',filedata=tmp_pdf,content_type='application/pdf') + return tmp_pdf - return "/temp_folder/"+arquivoPdf +# 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 temporário.',filedata=tmp_pdf,content_type='application/pdf') -return principal(sessao,imagem,data,lst_protocolos,dic_cabecalho,lst_rodape,dic_filtro) +# return "/temp_folder/"+arquivoPdf + +# return principal(sessao,imagem,data,lst_protocolos,dic_cabecalho,lst_rodape,dic_filtro) diff --git a/relatorios/urls.py b/relatorios/urls.py index f61a13901..b18e4fa98 100644 --- a/relatorios/urls.py +++ b/relatorios/urls.py @@ -1,7 +1,8 @@ from django.conf.urls import url -from .views import relatorio_materia +from .views import relatorio_materia, relatorio_processo urlpatterns = [ url(r'^relatorios/materia$', relatorio_materia, name='relatorio_materia'), + url(r'^relatorios/processo$', relatorio_processo, name='relatorio_processo'), ] diff --git a/relatorios/views.py b/relatorios/views.py index 6461f3222..e6c221663 100644 --- a/relatorios/views.py +++ b/relatorios/views.py @@ -6,7 +6,7 @@ from base.models import CasaLegislativa from base.views import ESTADOS from materia.models import Autoria, MateriaLegislativa, Tramitacao -from .templates import pdf_materia_gerar +from .templates import pdf_capa_processo_gerar, pdf_materia_gerar def get_cabecalho(casa): @@ -126,22 +126,20 @@ def get_materias(mats): def relatorio_materia(request): - # Create the HttpResponse object with the appropriate PDF headers. + ''' + pdf_materia_gerar.py + ''' + response = HttpResponse(content_type='application/pdf') response['Content-Disposition'] = 'attachment; filename="somefilename.pdf"' - # Create the PDF object, using the response object as its "file." - # p = canvas.Canvas(response) - - # Draw things on the PDF. Here's where the PDF generation happens. - # See the ReportLab documentation for the full list of functionality. - casa = CasaLegislativa.objects.first() cabecalho = get_cabecalho(casa) rodape = get_rodape(casa) imagem = get_imagem(casa) + # TODO pesquisar baseado em filtros mats = MateriaLegislativa.objects.all()[:50] materias = get_materias(mats) @@ -157,19 +155,90 @@ def relatorio_materia(request): return response - # p.drawString(100, 30, imagem) - # Close the PDF object cleanly, and we're done. - # p.showPage() - # p.save() +def get_processos(prot): + pass + + # protocolos = [] + + # for p in prot: + # dic={} + # dic['titulo']=str(protocolo.cod_protocolo) + # dic['ano']=str(protocolo.ano_protocolo) + # dic['data']=context.pysc.iso_to_port_pysc(protocolo.dat_protocolo)+' - '+protocolo.hor_protocolo + # dic['txt_assunto']=protocolo.txt_assunto_ementa + # dic['txt_interessado']=protocolo.txt_interessado + # dic['nom_autor'] = " " + # if protocolo.cod_autor!=None: +# for autor in context.zsql.autor_obter_zsql(cod_autor=protocolo.cod_autor): +# if autor.des_tipo_autor=='Parlamentar': +# for parlamentar in context.zsql.parlamentar_obter_zsql(cod_parlamentar=autor.cod_parlamentar): +# dic['nom_autor']=parlamentar.nom_completo +# elif autor.des_tipo_autor=='Comissao': +# for comissao in context.zsql.comissao_obter_zsql(cod_comissao=autor.cod_comissao): +# dic['nom_autor']=comissao.nom_comissao +# else: +# dic['nom_autor']=autor.nom_autor +# else: +# dic['nom_autor']=protocolo.txt_interessado + +# dic['natureza']='' +# if protocolo.tip_processo==0: +# dic['natureza']='Administrativo' +# if protocolo.tip_processo==1: +# dic['natureza']='Legislativo' + +# dic['ident_processo']=protocolo.des_tipo_materia or protocolo.des_tipo_documento + +# dic['sgl_processo']=protocolo.sgl_tipo_materia or protocolo.sgl_tipo_documento + +# dic['num_materia']='' +# for materia in context.zsql.materia_obter_zsql(num_protocolo=protocolo.cod_protocolo,ano_ident_basica=protocolo.ano_protocolo): +# dic['num_materia']=str(materia.num_ident_basica)+'/'+ str(materia.ano_ident_basica) + +# dic['num_documento']='' +# for documento in context.zsql.documento_administrativo_obter_zsql(num_protocolo=protocolo.cod_protocolo): +# dic['num_documento']=str(documento.num_documento)+'/'+ str(documento.ano_documento) + +# dic['num_processo']=dic['num_materia'] or dic['num_documento'] + +# dic['numeracao']='' +# for materia_num in context.zsql.materia_obter_zsql(num_protocolo=protocolo.cod_protocolo,ano_ident_basica=protocolo.ano_protocolo): +# for numera in context.zsql.numeracao_obter_zsql(cod_materia=materia_num.cod_materia,ind_excluido=0): +# dic['numeracao']='PROCESSO N° ' +str(numera.num_materia)+'/'+ str(numera.ano_materia) + +# dic['anulado']='' +# if protocolo.ind_anulado==1: +# dic['anulado']='Nulo' + +# protocolos.append(dic) + + +def relatorio_processo(request): + ''' + pdf_capa_processo_gerar.py + ''' + + response = HttpResponse(content_type='application/pdf') + response['Content-Disposition'] = 'attachment; filename="somefilename.pdf"' + + casa = CasaLegislativa.objects.first() + + cabecalho = get_cabecalho(casa) + rodape = get_rodape(casa) + imagem = get_imagem(casa) + + -# filename = "advert-%s.pdf" % id -# response = HttpResponse(mimetype='application/pdf') -# response['Content-Disposition'] = 'attachment; filename=%s' % filename + protocolos = get_processo(protocolos) + + pdf = pdf_materia_gerar.principal(None, + imagem, + None, + protocolos, + cabecalho, + rodape) + + response.write(pdf) -# t = loader.get_template('print/pdf/advert.rml') -# c = Context({ -# 'filename' : filename, -# 'advert' : advert, -# 'request' : request, -# }) + return response