diff --git a/relatorios/templates/pdf_capa_processo_gerar.py b/relatorios/templates/pdf_capa_processo_gerar.py
index f147ccda6..32b06ca8e 100755
--- a/relatorios/templates/pdf_capa_processo_gerar.py
+++ b/relatorios/templates/pdf_capa_processo_gerar.py
@@ -1,4 +1,4 @@
-##parameters=sessao,imagem,data,lst_protocolos,dic_cabecalho,lst_rodape,dic_filtro
+# parameters=sessao,imagem,data,lst_protocolos,dic_cabecalho,lst_rodape,dic_filtro
"""relatorio_protocolo.py
External method para gerar o arquivo rml da etiqueta de protocolo
@@ -14,69 +14,78 @@ from trml2pdf import parseString
def paraStyle():
"""Gera o codigo rml que define o estilo dos paragrafos"""
- tmp_data=''
- tmp_data+='\t\n'
- tmp_data+='\t\t\n'
- tmp_data+='\t\t\t\n'
- tmp_data+='\t\t\t\n'
- tmp_data+='\t\t\n'
- tmp_data+='\t\t\n'
- tmp_data+='\t\t\t\n'
- tmp_data+='\t\t\n'
- tmp_data+='\t\t\n'
- tmp_data+='\t\t\n'
- tmp_data+='\t\t\n'
- tmp_data+='\t\n'
+ tmp_data = ''
+ tmp_data += '\t\n'
+ tmp_data += '\t\t\n'
+ tmp_data += '\t\t\t\n'
+ tmp_data += '\t\t\t\n'
+ tmp_data += '\t\t\n'
+ tmp_data += '\t\t\n'
+ tmp_data += '\t\t\t\n'
+ tmp_data += '\t\t\n'
+ tmp_data += '\t\t\n'
+ tmp_data += '\t\t\n'
+ tmp_data += '\t\t\n'
+ tmp_data += '\t\n'
return tmp_data
+
def protocolos(lst_protocolos):
"""Gera o codigo rml do conteudo da pesquisa de protocolos"""
- tmp_data=''
+ tmp_data = ''
- #inicio do bloco que contem os flowables
- tmp_data+='\t\n'
+ # inicio do bloco que contem os flowables
+ tmp_data += '\t\n'
for dic in lst_protocolos:
- #condicao para a quebra de pagina
- tmp_data+='\t\t\n'
-
- #protocolos
- tmp_data+='\t\t' +dic['titulo']+ '\n'
- tmp_data+='\t\tProtocolo: ' +dic['titulo']+ '\n'
- tmp_data+='\t\t'+ dic['data']+ '\n'
- tmp_data+='\t\t'+dic['numeracao']+'\n'
- tmp_data+='\t\t'+dic['sgl_processo']+' '+dic['ident_processo']+ ' '+dic['num_processo']+ '\n'
- tmp_data+='\t\tAutor: ' +dic['nom_autor']+ '\n'
- tmp_data+='\t\t\n'
- tmp_data+='\t\t\t \n'
- tmp_data+='\t\t\n'
- tmp_data+='\t\tEmenta: ' +dic['txt_assunto']+ '\n'
-
- tmp_data+='\t\n'
+ # condicao para a quebra de pagina
+ tmp_data += '\t\t\n'
+
+ # protocolos
+ tmp_data += '\t\t' + \
+ dic['titulo'] + '\n'
+ tmp_data += '\t\tProtocolo: ' + \
+ dic['titulo'] + '\n'
+ tmp_data += '\t\t' + dic['data'] + '\n'
+ tmp_data += '\t\t' + \
+ dic['numeracao'] + '\n'
+ tmp_data += '\t\t' + \
+ dic['sgl_processo'] + ' ' + dic['ident_processo'] + \
+ ' ' + dic['num_processo'] + '\n'
+ tmp_data += '\t\tAutor: ' + \
+ dic['nom_autor'] + '\n'
+ tmp_data += '\t\t\n'
+ tmp_data += '\t\t\t \n'
+ tmp_data += '\t\t\n'
+ tmp_data += '\t\tEmenta: ' + \
+ dic['txt_assunto'] + '\n'
+
+ tmp_data += '\t\n'
return tmp_data
-def principal(sessao,imagem,data,lst_protocolos,dic_cabecalho,lst_rodape,dic_filtro={}):
+
+def principal(sessao, imagem, data, lst_protocolos, dic_cabecalho, lst_rodape, dic_filtro={}):
"""Funcao pricipal que gera a estrutura global do arquivo rml"""
- arquivoPdf=str(int(time.time()*100))+".pdf"
-
- tmp_data=''
- tmp_data+='\n'
- tmp_data+='\n'
- tmp_data+='\n'
- tmp_data+='\t\n'
- tmp_data+='\t\t\n'
- tmp_data+='\t\t\n'
- tmp_data+='\t\t\n'
- tmp_data+='\t\t\t\n'
- tmp_data+='\t\t\n'
- tmp_data+='\t\n'
- tmp_data+=paraStyle()
- tmp_data+=protocolos(lst_protocolos)
- tmp_data+='\n'
- tmp_pdf=parseString(tmp_data)
+ arquivoPdf = str(int(time.time() * 100)) + ".pdf"
+
+ tmp_data = ''
+ tmp_data += '\n'
+ tmp_data += '\n'
+ tmp_data += '\n'
+ tmp_data += '\t\n'
+ tmp_data += '\t\t\n'
+ tmp_data += '\t\t\n'
+ tmp_data += '\t\t\n'
+ tmp_data += '\t\t\t\n'
+ tmp_data += '\t\t\n'
+ tmp_data += '\t\n'
+ tmp_data += paraStyle()
+ tmp_data += protocolos(lst_protocolos)
+ tmp_data += '\n'
+ tmp_pdf = parseString(tmp_data)
return tmp_pdf
@@ -88,4 +97,5 @@ def principal(sessao,imagem,data,lst_protocolos,dic_cabecalho,lst_rodape,dic_fil
# return "/temp_folder/"+arquivoPdf
-# return principal(sessao,imagem,data,lst_protocolos,dic_cabecalho,lst_rodape,dic_filtro)
+# return
+# principal(sessao,imagem,data,lst_protocolos,dic_cabecalho,lst_rodape,dic_filtro)
diff --git a/relatorios/templates/pdf_protocolo_gerar.py b/relatorios/templates/pdf_protocolo_gerar.py
index 62a1486a9..e0f9993eb 100755
--- a/relatorios/templates/pdf_protocolo_gerar.py
+++ b/relatorios/templates/pdf_protocolo_gerar.py
@@ -125,12 +125,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 b18e4fa98..3340b168e 100644
--- a/relatorios/urls.py
+++ b/relatorios/urls.py
@@ -4,5 +4,6 @@ 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'),
+ url(r'^relatorios/cap_processo$',
+ relatorio_processo, name='relatorio_cap_processo'),
]
diff --git a/relatorios/views.py b/relatorios/views.py
index e6c221663..e3d962bf4 100644
--- a/relatorios/views.py
+++ b/relatorios/views.py
@@ -1,10 +1,13 @@
from datetime import datetime
-from django.http import HttpResponse
-
from base.models import CasaLegislativa
from base.views import ESTADOS
-from materia.models import Autoria, MateriaLegislativa, Tramitacao
+from comissoes.models import Comissao
+from django.http import HttpResponse
+from materia.models import (Autor, Autoria, MateriaLegislativa, Tramitacao,
+ Numeracao)
+from parlamentares.models import Parlamentar
+from protocoloadm.models import Protocolo, DocumentoAdministrativo
from .templates import pdf_capa_processo_gerar, pdf_materia_gerar
@@ -156,62 +159,69 @@ def relatorio_materia(request):
return response
-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 get_capa_processo(prot):
+ protocolos = []
+ for p in prot:
+ dic = {}
+ dic['numero'] = str(p.numero)
+ dic['ano'] = str(p.ano)
+ dic['data'] = str(p.data) + ' - ' + str(p.hora)
+ dic['txt_assunto'] = p.assunto_ementa
+ dic['txt_interessado'] = p.interessado
+ dic['nom_autor'] = " "
+ dic['titulo'] = " "
+
+ if p.autor is not None:
+ for autor in Autor.objects.filter(id=p.autor.id):
+ if autor.tipo == 'Parlamentar':
+ for parlamentar in Parlamentar.objects.filter(
+ id=p.autor.parlamentar.id):
+ dic['nom_autor'] = parlamentar.nome_completo or ' '
+ elif autor.tipo == 'Comissao':
+ for comissao in Comissao.objects.filter(
+ id=p.autor.comissao.id):
+ dic['nom_autor'] = comissao.nome or ' '
+ else:
+ dic['nom_autor'] = autor.nome or ' '
+ else:
+ dic['nom_autor'] = p.interessado
+
+ dic['natureza'] = ''
+ if p.tipo_processo == 0:
+ dic['natureza'] = 'Administrativo'
+ if p.tipo_processo == 1:
+ dic['natureza'] = 'Legislativo'
+
+ dic['ident_processo'] = str(p.tipo_materia) or str(p.tipo_documento)
+
+ dic['sgl_processo'] = str(p.tipo_materia) or str(p.tipo_documento)
+
+ dic['num_materia'] = ''
+ for materia in MateriaLegislativa.objects.filter(
+ numero_protocolo=p.numero, ano=p.ano):
+ dic['num_materia'] = str(materia.numero) + '/' + str(materia.ano)
+
+ dic['num_documento'] = ''
+ for documento in DocumentoAdministrativo.objects.filter(
+ numero=p.numero):
+ dic['num_documento'] = str(
+ documento.numero) + '/' + str(documento.ano)
+
+ dic['num_processo'] = dic['num_materia'] or dic['num_documento']
+
+ dic['numeracao'] = ''
+ for materia_num in MateriaLegislativa.objects.filter(
+ numero_protocolo=p.numero, ano=p.ano):
+ for numera in Numeracao.objects.filter(materia=materia_num):
+ dic['numeracao'] = 'PROCESSO N° ' + \
+ str(numera.numero) + '/' + str(numera.ano)
+
+ dic['anulado'] = ''
+ if p.anulado == 1:
+ dic['anulado'] = 'Nulo'
+
+ protocolos.append(dic)
+ return protocolos
def relatorio_processo(request):
@@ -228,17 +238,16 @@ def relatorio_processo(request):
rodape = get_rodape(casa)
imagem = get_imagem(casa)
+ protocolos = Protocolo.objects.all()[:50]
+ protocolos_pdf = get_capa_processo(protocolos)
-
- protocolos = get_processo(protocolos)
-
- pdf = pdf_materia_gerar.principal(None,
- imagem,
- None,
- protocolos,
- cabecalho,
- rodape)
+ pdf = pdf_capa_processo_gerar.principal(None,
+ imagem,
+ None,
+ protocolos_pdf,
+ cabecalho,
+ rodape)
response.write(pdf)
- return response
+ return response