source: publico/il.sapl/trunk/il/sapl/skins/relatorios/pdf_capa_processo_preparar_pysc.py @ 7878

Última Alteração nesse arquivo desde 7878 foi 7878, incluída por gustavolepri, 5 anos atrás

merge com as alterações da 2.5

  • Propriedade svn:executable mudada para *
File size: 5.3 KB
Linha 
1import os
2
3request=context.REQUEST
4response=request.RESPONSE
5session= request.SESSION
6
7data=DateTime().strftime('%d/%m/%Y')
8
9#Abaixo é gerada a string para o rodapé da página
10casa={}
11aux=context.sapl_documentos.props_sapl.propertyItems()
12for item in aux:
13    casa[item[0]]=item[1]
14localidade=context.zsql.localidade_obter_zsql(cod_localidade=casa["cod_localidade"])
15if len(casa["num_cep"])==8:
16    cep=casa["num_cep"][:4]+"-"+casa["num_cep"][5:]
17else:
18    cep=""
19
20linha1=casa["end_casa"]
21if cep!="":
22    if casa["end_casa"]!="" and casa["end_casa"]!=None:
23        linha1 = linha1 + " - "
24    linha1 = linha1 + "CEP "+cep
25if localidade[0].nom_localidade!="" and localidade[0].nom_localidade!=None:
26    linha1 = linha1 + " - "+localidade[0].nom_localidade+" "+localidade[0].sgl_uf
27if casa["num_tel"]!="" and casa["num_tel"]!=None:
28    linha1 = linha1 + " Tel.: "+ casa["num_tel"]
29
30linha2=casa["end_web_casa"]
31if casa["end_email_casa"]!="" and casa["end_email_casa"]!=None:
32    if casa["end_web_casa"]!="" and casa["end_web_casa"]!=None:
33        linha2 = linha2 + " - "
34    linha2 =  linha2 + "E-mail: "+casa["end_email_casa"]
35
36data_emissao=DateTime().strftime("%d/%m/%Y")
37rodape=[linha1,linha2,data_emissao]
38
39#Por fim, gera-se as entradas para o cabeçalho
40estados=context.zsql.localidade_obter_zsql(tip_localidade="u")
41for uf in estados:
42    if localidade[0].sgl_uf==uf.sgl_uf:
43        nom_estado=uf.nom_localidade
44        break
45cabecalho={}
46cabecalho["nom_casa"]=casa["nom_casa"]
47cabecalho["nom_estado"]="Estado de "+nom_estado
48
49# tenta buscar o logotipo da casa LOGO_CASA
50if hasattr(context.sapl_documentos.props_sapl,'logo_casa.gif'):
51    imagem = context.sapl_documentos.props_sapl['logo_casa.gif'].absolute_url()
52else:
53    imagem = context.imagens.absolute_url() + "/brasao_transp.gif"
54
55#Por fim, utiliza o PythonScript para pesquisar os protocolos e gerar os dados
56
57protocolos=[]
58REQUEST=context.REQUEST
59for protocolo in context.zsql.protocolo_pesquisar_zsql(tip_protocolo=REQUEST['rad_tip_protocolo'],
60    cod_protocolo=REQUEST['txt_num_protocolo'], ano_protocolo=REQUEST['txt_ano_protocolo'],
61    tip_documento=REQUEST['lst_tip_documento'], tip_processo=REQUEST['rad_tip_processo'],
62    tip_materia=REQUEST['lst_tip_materia'], des_assunto=REQUEST['txt_assunto'],
63    cod_autor=REQUEST['hdn_cod_autor'], des_interessado=REQUEST['txa_txt_interessado'],
64    dat_apres=REQUEST['dt_apres'], dat_apres2=REQUEST['dt_apres2']):
65    dic={}
66
67    dic['titulo']=str(protocolo.cod_protocolo)
68
69    dic['ano']=str(protocolo.ano_protocolo)
70
71    dic['data']=context.pysc.iso_to_port_pysc(protocolo.dat_protocolo)+' - '+protocolo.hor_protocolo
72
73    dic['txt_assunto']=protocolo.txt_assunto_ementa
74
75    dic['txt_interessado']=protocolo.txt_interessado
76
77    dic['nom_autor'] = " "
78    if protocolo.cod_autor!=None:
79        for autor in context.zsql.autor_obter_zsql(cod_autor=protocolo.cod_autor):
80            if autor.des_tipo_autor=='Parlamentar':
81                for parlamentar in context.zsql.parlamentar_obter_zsql(cod_parlamentar=autor.cod_parlamentar):
82                    dic['nom_autor']=parlamentar.nom_completo
83            elif autor.des_tipo_autor=='Comissao':
84                for comissao in context.zsql.comissao_obter_zsql(cod_comissao=autor.cod_comissao):
85                    dic['nom_autor']=comissao.nom_comissao
86            else:
87                dic['nom_autor']=autor.nom_autor
88    else:
89        dic['nom_autor']=protocolo.txt_interessado
90
91    dic['natureza']=''
92    if protocolo.tip_processo==0:
93        dic['natureza']='Administrativo'
94    if protocolo.tip_processo==1:
95        dic['natureza']='Legislativo'
96
97    dic['ident_processo']=protocolo.des_tipo_materia or protocolo.des_tipo_documento
98
99    dic['sgl_processo']=protocolo.sgl_tipo_materia or protocolo.sgl_tipo_documento
100
101    dic['num_materia']=''
102    for materia in context.zsql.materia_obter_zsql(num_protocolo=protocolo.cod_protocolo,ano_ident_basica=protocolo.ano_protocolo):
103        dic['num_materia']=str(materia.num_ident_basica)+'/'+ str(materia.ano_ident_basica)
104
105    dic['num_documento']=''
106    for documento in context.zsql.documento_administrativo_obter_zsql(num_protocolo=protocolo.cod_protocolo):
107        dic['num_documento']=str(documento.num_documento)+'/'+ str(documento.ano_documento)
108
109    dic['num_processo']=dic['num_materia'] or dic['num_documento']
110
111    dic['numeracao']=''
112    for materia_num in context.zsql.materia_obter_zsql(num_protocolo=protocolo.cod_protocolo,ano_ident_basica=protocolo.ano_protocolo):
113        for numera in context.zsql.numeracao_obter_zsql(cod_materia=materia_num.cod_materia,ind_excluido=0):
114            dic['numeracao']='PROCESSO N° ' +str(numera.num_materia)+'/'+ str(numera.ano_materia)
115
116    dic['anulado']=''
117    if protocolo.ind_anulado==1:
118        dic['anulado']='Nulo'
119
120    protocolos.append(dic)
121
122filtro={} # Dicionário que conterá os dados do filtro
123
124# Atribuições diretas do REQUEST
125filtro['numero']=REQUEST.txt_num_protocolo
126filtro['ano']=REQUEST.txt_ano_protocolo
127filtro['tipo_protocolo']=REQUEST.rad_tip_protocolo
128filtro['tipo_processo']=REQUEST.rad_tip_processo
129filtro['assunto']=REQUEST.txt_assunto
130filtro['autor']=REQUEST.hdn_cod_autor
131filtro['interessado']=REQUEST.txa_txt_interessado
132
133sessao=session.id
134caminho = context.pdf_capa_processo_gerar(sessao,imagem,data,protocolos,cabecalho,rodape,filtro)
135if caminho=='aviso':
136    return response.redirect('mensagem_emitir_proc')
137else:
138    response.redirect(caminho)
Note: Veja TracBrowser para ajuda no uso do navegador do trac.
 

The contents and data of this website are published under license:
Creative Commons 4.0 Brasil - Atribuir Fonte - Compartilhar Igual.