source: publico/ILSAPL/branches/2.5/skins/sk_sapl/relatorios/pdf_detalhe_materia_preparar_pysc.py @ 7861

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

corrige numero protocolo - Bento/RS

File size: 12.8 KB
Linha 
1import os
2
3request=context.REQUEST
4response=request.RESPONSE
5session= request.SESSION
6
7cabecalho={}
8
9# tenta buscar o logotipo da casa LOGO_CASA
10if hasattr(context.sapl_documentos.props_sapl,'logo_casa.gif'):
11  imagem = context.sapl_documentos.props_sapl['logo_casa.gif'].absolute_url()
12else:
13  imagem = context.imagens.absolute_url() + "/brasao_transp.gif"
14
15#Abaixo é gerado o dic do rodapé da página (linha 7)
16casa={}
17aux=context.sapl_documentos.props_sapl.propertyItems()
18for item in aux:
19  casa[item[0]]=item[1]
20localidade=context.zsql.localidade_obter_zsql(cod_localidade=casa["cod_localidade"])
21data_emissao= DateTime().strftime("%d/%m/%Y")
22rodape= casa
23rodape['data_emissao']= data_emissao
24
25inf_basicas_dic = {}
26inf_basicas_dic['nom_camara']= casa['nom_casa']
27REQUEST=context.REQUEST
28for local in context.zsql.localidade_obter_zsql(cod_localidade = casa['cod_localidade']):
29  rodape['nom_localidade']= "   "+local.nom_localidade
30  rodape['sgl_uf']= local.sgl_uf
31
32orig_externa_dic = {}
33
34for materia in context.zsql.materia_obter_zsql(cod_materia=REQUEST['cod_materia']):
35#Abaixo é gerado os dados para o bloco Informações Básicas (ln 23)
36 inf_basicas_dic['texto_projeto']= materia.txt_ementa
37 inf_basicas_dic['apresentada']= materia.dat_apresentacao
38 inf_basicas_dic['formato']= materia.tip_apresentacao
39 inf_basicas_dic['publicada']= materia.dat_publicacao
40 inf_basicas_dic['objeto']= materia.des_objeto
41 inf_basicas_dic['tramitacao']= materia.ind_tramitacao
42 inf_basicas_dic['cod_projeto']= materia.sgl_tipo_materia+"   "+ str(materia.num_ident_basica)+" de "+ str(materia.ano_ident_basica)
43 inf_basicas_dic['nom_projeto']= materia.des_tipo_materia
44 
45 for tramitacao in context.zsql.regime_tramitacao_obter_zsql(cod_regime_tramitacao=materia.cod_regime_tramitacao):
46#  """#tratando possíveis erros"""
47#  if tramitacao.des_regime_tramitacao==None: tramitacao.des_regime_tramitacao=""
48#  if materia.num_dias_prazo==None: materia.num_dias_prazo=""
49#  if materia.dat_fim_prazo==None: materia.dat_fim_prazo=""
50#  if materia.ind_complementar==None: materia.ind_complementar=""
51#  if materia.ind_polemica==None: materia.ind_polemica=""
52#  if materia.nom_apelido==None: materia.nom_apelido=""
53#  if materia.txt_indexacao==None: materia.txt_indexacao=""
54#  if materia.txt_observacao==None: materia.txt_observacao=""
55#  """#atribuindo valores"""
56  inf_basicas_dic['reg_tramitacao']= tramitacao.des_regime_tramitacao
57  if materia.num_dias_prazo!=None:
58     inf_basicas_dic['prazo']= materia.num_dias_prazo
59  else:
60     inf_basicas_dic['prazo']= "não informado"
61  if materia.dat_fim_prazo!=None:
62     inf_basicas_dic['fim_prazo']= materia.dat_fim_prazo
63  else:
64     inf_basicas_dic['fim_prazo']= "não informado"
65  inf_basicas_dic['mat_complementar']= materia.ind_complementar
66  inf_basicas_dic['polemica']= materia.ind_polemica
67  inf_basicas_dic['apelido']= materia.nom_apelido
68  inf_basicas_dic['indexacao']= materia.txt_indexacao
69  inf_basicas_dic['observacao']= materia.txt_observacao
70
71 
72# #o bloco abaixo gera o dicionario da origem externa (ln 47)
73 for origem in context.zsql.origem_obter_zsql(cod_origem = materia.cod_local_origem_externa):
74#  #tratando possíveis erros
75#  if origem.sgl_origem==None: origem.sgl_origem=""
76#  if origem.nom_origem==None: origem.nom_origem=""
77#  if materia.tip_origem_externa==None: materia.tip_origem_externa=""
78#  if materia.dat_origem_externa==None: materia.dat_origem_externa=""
79#  if materia.num_origem_externa==None: materia.num_origem_externa=""
80#  if materia.ano_origem_externa==None: materia.ano_origem_externa=""
81 
82  orig_externa_dic['local']= origem.sgl_origem+ "-"+ origem.nom_origem
83  orig_externa_dic['tipo']= materia.tip_origem_externa
84  orig_externa_dic['data']= materia.dat_origem_externa
85  orig_externa_dic['numero_ano']= str(materia.num_origem_externa)+ "/"+ str(materia.ano_origem_externa)
86 
87# #o bloco abaixo gera o dicionario das materias anexadas (ln 55)
88 lst_mat_anexadas = []
89 dic_mat = {}
90 for anexada in context.zsql.anexada_obter_zsql(cod_materia_principal=materia.cod_materia):
91  aux1 = context.zsql.materia_obter_zsql(cod_materia = anexada.cod_materia_anexada)
92  aux2 = context.zsql.tipo_materia_legislativa_obter_zsql(tip_materia = aux1[0].tip_id_basica)
93#  """#tratando possíveis erros"""
94#  if aux2.sgl_tipo_materia==None: aux2.sgl_tipo_materia=""
95#  if aux2.num_ident_basica==None: aux2.num_ident_basica=""
96#  if aux1.ano_ident_basica==None: aux1.ano_ident_basica=""
97#  if anexadas.dat_anexacao==None: anexadas.dat_anexacao=""
98#  if anexadas.dat_desanexacao==None: anexadas.dat_desanexacao=""
99#  """#"""
100  dic_mat['nom_mat']= aux2[0].sgl_tipo_materia+ "/"+ str(aux1[0].num_ident_basica)+ "/"+ str(aux1[0].ano_ident_basica)
101  dic_mat['data']= anexada.dat_anexacao
102  dic_mat['data_fim']= anexada.dat_desanexacao
103  lst_mat_anexadas.append(dic_mat)
104 
105# #o bloco abaixo gera o dicionario dos autores(ln 66)
106
107 lst_autoria = []
108# dic_autor = {}
109 for autoria in context.zsql.autoria_obter_zsql(cod_materia = materia.cod_materia):
110  dic_autor = {}
111  if autoria.ind_primeiro_autor=='1':
112     dic_autor['tipo']= "primeiro autor"
113  else:
114     dic_autor['tipo']= "co-autor"
115 
116  for autor in context.zsql.autor_obter_zsql(cod_autor = autoria.cod_autor):
117   dic_autor['cargo']= " "
118   if autor.des_tipo_autor=='Parlamentar':
119    for parlamentar in context.zsql.parlamentar_obter_zsql(cod_parlamentar=autor.cod_parlamentar):
120     dic_autor['nom_autor']=parlamentar.nom_completo
121     dic_autor['cargo']='Parlamentar'
122   elif autor.des_tipo_autor=='Comissao':
123    for comissao in context.zsql.comissao_obter_zsql(cod_comissao=autor.cod_comissao):
124     dic_autor['nom_autor']=comissao.nom_comissao
125     dic_autor['cargo']='Comissão'
126   else:
127    dic_autor['nom_autor']=autor.nom_autor
128    dic_autor['cargo']= autor.des_cargo
129   lst_autoria.append(dic_autor)
130
131#   """#tratando possíveis erros"""
132#   if autor.nom_autor==None: autor.nom_autor=""
133#   if autor.des_cargo==None: autor.des_cargo=""
134#   """#"""
135#   dic_autor['nom_autor']= autor.nom_autor
136#     dic_autor['cargo']= autor.des_cargo
137#     if autoria.ind_primeiro_autor:
138#       dic_autor['tipo']= "primeiro autor"
139#     else:
140#       dic_autor['tipo']= " "
141 
142# #o bloco abaixo gera o dicionario de despachos iniciais (ln 79)
143 lst_des_iniciais=[]
144 for despacho in context.zsql.despacho_inicial_obter_zsql(cod_materia = materia.cod_materia):
145   for comissao in context.zsql.comissao_obter_zsql(cod_comissao = despacho.cod_comissao_sel):
146     dic_dados={}
147     if comissao.nom_comissao==None:
148       comissao.nom_comissao=''
149     if comissao.sgl_comissao==None:
150       comissao.sgl_comissao=''
151     dic_dados['nom_comissao']=comissao.nom_comissao+ " - "+ comissao.sgl_comissao
152     lst_des_iniciais.append(dic_dados)
153 
154# #o bloco abaixo gera o dicionário de Tramitacoes(ln 87)
155 dic_tramitacoes = {}
156 for tramitacao in context.zsql.tramitacao_obter_zsql(cod_materia=REQUEST['cod_materia'], ind_ult_tramitacao=1):
157   dic_tramitacoes['data']= tramitacao.dat_tramitacao
158   dic_tramitacoes['data_enc']= tramitacao.dat_encaminha
159   dic_tramitacoes['turno']= tramitacao.sgl_turno
160   dic_tramitacoes['status']= tramitacao.des_status
161   dic_tramitacoes['urgente']= tramitacao.ind_urgencia
162   dic_tramitacoes['data_fim']= tramitacao.dat_fim_prazo
163   dic_tramitacoes['texto_acao']= tramitacao.txt_tramitacao
164
165   
166   for unidade in context.zsql.unidade_tramitacao_obter_zsql(cod_unid_tramitacao = tramitacao.cod_unid_tram_local):
167     #-----------------se unidade for comissao---------------------------------
168     if unidade.cod_orgao==None:
169       for comissao in context.zsql.comissao_obter_zsql(cod_comissao = unidade.cod_comissao):
170        if tramitacao.cod_unid_tram_dest!=None:
171         for unidade_dest in context.zsql.unidade_tramitacao_obter_zsql(cod_unid_tramitacao = tramitacao.cod_unid_tram_dest):
172            #se unidade destino for comissao 
173            if unidade_dest.cod_orgao==None:
174              for comissao_dest in context.zsql.comissao_obter_zsql(cod_comissao = unidade_dest.cod_comissao):
175                dic_tramitacoes['unidade']= comissao.nom_comissao
176                dic_tramitacoes['destino']= comissao_dest.nom_comissao
177            #se unidade destino for orgao
178            if unidade_dest.cod_comissao==None:
179              for orgao_dest in context.zsql.orgao_obter_zsql(cod_orgao = unidade_dest.cod_orgao):
180                dic_tramitacoes['unidade']= comissao.nom_comissao
181                dic_tramitacoes['destino']= orgao_dest.nom_orgao
182        else:
183         dic_tramitacoes['unidade']= comissao.nom_comissao
184         dic_tramitacoes['destino']= "None"
185     #---------------se unidade for orgao-----------------------------------------
186     if unidade.cod_comissao==None:
187       for orgao in context.zsql.orgao_obter_zsql(cod_orgao = unidade.cod_orgao):
188        if tramitacao.cod_unid_tram_dest!=None:
189         for unidade_dest in context.zsql.unidade_tramitacao_obter_zsql(cod_unid_tramitacao = tramitacao.cod_unid_tram_dest):
190            #se unidade destino for comissao
191            if unidade_dest.cod_orgao==None:
192              for comissao_dest in context.zsql.comissao_obter_zsql(cod_comissao = unidade_dest.cod_comissao):
193                dic_tramitacoes['unidade']= orgao.nom_orgao
194                dic_tramitacoes['destino']= comissao_dest.nom_comissao
195            #se unidade destino for orgao
196            if unidade_dest.cod_comissao==None:
197               for orgao_dest in context.zsql.orgao_obter_zsql(cod_orgao = unidade_dest.cod_orgao):
198                dic_tramitacoes['unidade']= orgao.nom_orgao
199                dic_tramitacoes['destino']= orgao_dest.nom_orgao 
200        else:
201         dic_tramitacoes['unidade']= orgao.nom_orgao
202         dic_tramitacoes['destino']= "None"     
203 
204# #o bloco abaixo gera o dicionario de relatorias(ln 106)
205 
206 lst_relatorias = []
207 dic_comissao = {}
208 for relatoria in context.zsql.relatoria_obter_zsql(cod_materia = materia.cod_materia):
209  for comissao in context.zsql.comissao_obter_zsql(cod_comissao = relatoria.cod_comissao):
210   for parlamentar in context.zsql.parlamentar_obter_zsql(cod_parlamentar = relatoria.cod_parlamentar):
211    dic_comissao['nom_comissao']= comissao.nom_comissao
212    dic_comissao['data_desig']= relatoria.dat_desig_relator
213    dic_comissao['parlamentar']= parlamentar.nom_completo
214    dic_comissao['data_dest']= relatoria.dat_destit_relator
215    if relatoria.tip_fim_relatoria==None or relatoria.tip_fim_relatoria=='0':
216     num = 0
217     dic_comissao['motivo']=""
218    else:
219     num=relatoria.tip_fim_relatoria
220     for tipo_fim in context.zsql.tipo_fim_relatoria_obter_zsql(tip_fim_relatoria = num):
221      dic_comissao['motivo']= tipo_fim.des_fim_relatoria
222   lst_relatorias.append(dic_comissao)
223   
224# #o bloco abaixo gera o dicionario de Numeracoes(ln 121)
225 
226 lst_numeracoes = []
227 dic_dados={}
228 for numeracao in context.zsql.numeracao_obter_zsql(cod_materia = materia.cod_materia):
229  for tipo_materia in context.zsql.tipo_materia_legislativa_obter_zsql(tip_materia = numeracao.tip_materia):
230   dic_dados['nome']= tipo_materia.sgl_tipo_materia+ "-"+ tipo_materia.des_tipo_materia+ "nº"+ numeracao.num_materia
231   dic_dados['ano']= numeracao.ano_materia
232  lst_numeracoes.append(dic_dados)
233 
234 
235# #o bloco abaixo gera o dicionário de legislacoes citadas(132)
236   
237 lst_legis_citadas = []
238 dic_dados = {}
239 for legislacao in context.zsql.legislacao_citada_obter_zsql(cod_materia = materia.cod_materia):
240  norma = context.zsql.norma_juridica_obter_zsql(cod_norma = legislacao.cod_norma_sel)
241  dic_dados['nome_lei']= str(norma[0].tip_norma_sel) + " nº"+ str(norma[0].num_norma) + " de"+ str(norma[0].ano_norma)
242  dic_dados['disposicao']= legislacao.des_disposicoes
243  dic_dados['parte']= legislacao.des_parte
244  dic_dados['livro']= legislacao.des_livro
245  dic_dados['titulo']= legislacao.des_titulo
246  dic_dados['capitulo']= legislacao.des_capitulo
247  dic_dados['secao']= legislacao.des_secao
248  dic_dados['subsecao']= legislacao.des_subsecao
249  dic_dados['artigo']= legislacao.des_artigo
250  dic_dados['paragrafo']= legislacao.des_paragrafo
251  dic_dados['inciso']= legislacao.des_inciso
252  dic_dados['alinea']= legislacao.des_alinea
253  dic_dados['item']= legislacao.des_item
254  lst_legis_citadas.append(dic_dados)
255
256
257# #o bloco abaixo gera o dicionario de Documentos Acessórios(153)
258 
259 lst_acessorios = []
260 for documento in context.zsql.documento_acessorio_obter_zsql(cod_materia = materia.cod_materia):
261  dic_dados = {}
262  dic_dados['tipo']= documento.tip_documento
263  dic_dados['nome']= documento.nom_documento
264  dic_dados['data']= documento.dat_documento
265  dic_dados['autor']= documento.nom_autor_documento
266  dic_dados['ementa']= documento.txt_ementa
267  dic_dados['indexacao']= documento.txt_indexacao
268  lst_acessorios.append(dic_dados)
269
270caminho=context.pdf_detalhe_materia_gerar(imagem, rodape,inf_basicas_dic,orig_externa_dic,lst_mat_anexadas,lst_autoria,
271                                          lst_des_iniciais,dic_tramitacoes,lst_relatorias,lst_numeracoes,
272                                          lst_legis_citadas,lst_acessorios,sessao=session.id)
273if caminho=='aviso':
274 return response.redirect('mensagem_emitir_proc')
275else:
276 response.redirect(caminho)
277
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.