Conjunto de mudanças 7618 no repositório publico


Ignorar:
Timestamp:
05/08/2014 16:59:30 (5 anos atrás)
Autor:
gustavolepri
Mensagem:

gerador de documentos atualizados

Localização:
ILSAPL/trunk
Arquivos:
1 adicionado
2 editados
1 movido

Legenda:

Não Modificado
Adicionado
Removido
  • ILSAPL/trunk/SAPLTool.py

    r7615 r7618  
    452452        return brasao
    453453
    454     def gerar_ata_odt(self, inf_basicas_dic, lst_mesa, lst_presenca_sessao, lst_materia_apresentada, lst_reqplen, lst_reqpres, lst_indicacao, lst_presenca_ordem_dia, lst_votacao, lst_oradores, lst_presidente, lst_psecretario, lst_ssecretario):        # Criacao ODT
     454    def gerar_ata_odt(self, inf_basicas_dic, lst_mesa, lst_presenca_sessao, lst_materia_apresentada, lst_reqplen, lst_reqpres, lst_indicacao, lst_presenca_ordem_dia, lst_votacao, lst_oradores, lst_presidente, lst_psecretario, lst_ssecretario):
     455        # Criacao ODT
    455456        url = self.sapl_documentos.modelo.sessao_plenaria.absolute_url() + "/ata.odt"
    456457        template_file = cStringIO.StringIO(urllib.urlopen(url).read())
     
    613614            self.sapl_documentos.emenda.manage_addFile(id=nom_arquivo,file=data)
    614615
    615 
     616    def gerar_materia_odt(self, inf_basicas_dic, num_proposicao, nom_arquivo, des_tipo_materia, num_ident_basica, ano_ident_basica, txt_ementa, materia_vinculada, dat_apresentacao, nom_autor, apelido_autor, modelo_proposicao):
     617        # Criacao ODT
     618        url = self.sapl_documentos.modelo.materia.absolute_url() + "/%s" % modelo_proposicao
     619        template_file = cStringIO.StringIO(urllib.urlopen(url).read())
     620        brasao_file = self.get_brasao()
     621
     622        # atribui o brasao no locals
     623        exec 'brasao = brasao_file'
     624
     625        output_file_odt = "%s" % nom_arquivo
     626        renderer = Renderer(template_file, locals(), output_file_odt, pythonWithUnoPath='/usr/bin/python',forceOoCall=True)
     627        renderer.run()
     628        data = open(output_file_odt, "rb").read()
     629        for file in [output_file_odt]:
     630            os.unlink(file)
     631            self.sapl_documentos.materia_odt.manage_addFile(id=nom_arquivo,file=data)
     632
     633    def gerar_materia_pdf(self, cod_materia):
     634        # Conversao para PDF
     635        nom_arquivo_odt = "%s"%cod_materia+'_texto_integral.odt'
     636        nom_arquivo_pdf = "%s"%cod_materia+'_texto_integral.pdf'
     637        url = self.sapl_documentos.materia_odt.absolute_url() + "/%s"%nom_arquivo_odt
     638        odtFile = cStringIO.StringIO(urllib.urlopen(url).read())
     639        output_file_pdf = os.path.normpath(nom_arquivo_pdf)
     640        renderer = Renderer(odtFile,locals(),output_file_pdf,pythonWithUnoPath='/usr/bin/python',forceOoCall=True)
     641        import pdb;pdb.set_trace()
     642        renderer.run()
     643        data = open(output_file_pdf, "rb").read()
     644        for file in [output_file_pdf]:
     645            self.sapl_documentos.materia.manage_addFile(id=nom_arquivo_pdf, file=data)
     646            os.unlink(file)
     647
     648    def gerar_norma_odt(self, inf_basicas_dic, nom_arquivo, des_tipo_norma, num_norma, ano_norma, dat_norma, data_norma, txt_ementa, modelo_norma):
     649        # Criacao ODT
     650        url = self.sapl_documentos.modelo.norma.absolute_url() + "/%s" % modelo_norma
     651        template_file = cStringIO.StringIO(urllib.urlopen(url).read())
     652        brasao_file = self.get_brasao()
     653
     654        # atribui o brasao no locals
     655        exec 'brasao = brasao_file'
     656
     657        output_file_odt = "%s" % nom_arquivo
     658        renderer = Renderer(template_file, locals(), output_file_odt, pythonWithUnoPath='/usr/bin/python',forceOoCall=True)
     659        renderer.run()
     660        data = open(output_file_odt, "rb").read()
     661        for file in [output_file_odt]:
     662            os.unlink(file)
     663            self.sapl_documentos.norma_juridica.manage_addFile(id=nom_arquivo,file=data)
     664
     665    def gerar_norma_pdf(self, cod_norma):
     666        # Conversao para PDF
     667        nom_arquivo_odt = "%s"%cod_norma+'_texto_integral.odt'
     668        nom_arquivo_pdf = "%s"%cod_norma+'_texto_consolidado.pdf'
     669        url = self.sapl_documentos.norma_juridica.absolute_url() + "/%s"%nom_arquivo_odt
     670        odtFile = cStringIO.StringIO(urllib.urlopen(url).read())
     671        output_file_pdf = os.path.normpath(nom_arquivo_pdf)
     672        renderer = Renderer(odtFile,locals(),output_file_pdf,pythonWithUnoPath='/usr/bin/python',forceOoCall=True)
     673        renderer.run()
     674        data = open(output_file_pdf, "rb").read()
     675        for file in [output_file_pdf]:
     676            self.sapl_documentos.norma_juridica.manage_addFile(id=nom_arquivo_pdf, file=data)
     677            os.unlink(file)
     678
     679    def gerar_oficio_odt(self, inf_basicas_dic, nom_arquivo, sgl_tipo_documento, num_documento, ano_documento, txt_ementa, dat_documento, dia_documento, nom_autor, modelo_documento):
     680        # Criacao ODT
     681        url = self.sapl_documentos.modelo.documento_administrativo.absolute_url() + "/%s" % modelo_documento
     682        template_file = cStringIO.StringIO(urllib.urlopen(url).read())
     683        brasao_file = self.get_brasao()
     684
     685        # atribui o brasao no locals
     686        exec 'brasao = brasao_file'
     687
     688        output_file_odt = "%s" % nom_arquivo
     689        renderer = Renderer(template_file, locals(), output_file_odt, pythonWithUnoPath='/usr/bin/python',forceOoCall=True)
     690        renderer.run()
     691        data = open(output_file_odt, "rb").read()
     692        for file in [output_file_odt]:
     693            os.unlink(file)
     694            self.sapl_documentos.administrativo.manage_addFile(id=nom_arquivo,file=data)
     695
     696    def gerar_oficio_moc_odt(self, inf_basicas_dic, num_ident_basica, nom_autor):
     697        # Criacao ODT
     698        url = self.sapl_documentos.modelo.documento_administrativo.absolute_url() + "/oficio_mocao.odt"
     699        template_file = cStringIO.StringIO(urllib.urlopen(url).read())
     700        brasao_file = self.get_brasao()
     701
     702        # atribui o brasao no locals
     703        exec 'brasao = brasao_file'
     704
     705        output_file_odt = "oficio_mocao.odt"
     706        renderer = Renderer(template_file, locals(), output_file_odt, pythonWithUnoPath='/usr/bin/python',forceOoCall=True)
     707        renderer.run()
     708        data = open(output_file_odt, "rb").read()
     709        for file in [output_file_odt]:
     710            os.unlink(file)
     711        self.REQUEST.RESPONSE.headers['Content-Type'] = 'application/vnd.oasis.opendocument.text'
     712        self.REQUEST.RESPONSE.headers['Content-Disposition'] = 'attachment; filename="%s"'%output_file_odt
     713        return data
     714
     715    def gerar_oficio_req_pres_odt(self, inf_basicas_dic, num_ident_basica, nom_autor):
     716        # Criacao ODT
     717        url = self.sapl_documentos.modelo.documento_administrativo.absolute_url() + "/oficio_requerimento_pres.odt"
     718        template_file = cStringIO.StringIO(urllib.urlopen(url).read())
     719        brasao_file = self.get_brasao()
     720
     721        # atribui o brasao no locals
     722        exec 'brasao = brasao_file'
     723
     724        output_file_odt = "oficio_req_presidencia.odt"
     725        renderer = Renderer(template_file, locals(), output_file_odt, pythonWithUnoPath='/usr/bin/python',forceOoCall=True)
     726        renderer.run()
     727        data = open(output_file_odt, "rb").read()
     728        for file in [output_file_odt]:
     729            os.unlink(file)
     730        self.REQUEST.RESPONSE.headers['Content-Type'] = 'application/vnd.oasis.opendocument.text'
     731        self.REQUEST.RESPONSE.headers['Content-Disposition'] = 'attachment; filename="%s"'%output_file_odt
     732        return data
     733
     734    def gerar_parecer_odt(self, inf_basicas_dic,nom_arquivo,nom_comissao, materia, nom_autor, txt_ementa, tip_apresentacao, tip_conclusao, data_parecer, nom_relator, lst_composicao):
     735        # Criacao ODT
     736        url = self.sapl_documentos.modelo.materia.parecer.absolute_url() + "/parecer.odt"
     737        template_file = cStringIO.StringIO(urllib.urlopen(url).read())
     738        brasao_file = self.get_brasao()
     739
     740        # atribui o brasao no locals
     741        exec 'brasao = brasao_file'
     742
     743        output_file_odt = "%s"%nom_arquivo
     744        renderer = Renderer(template_file, locals(), output_file_odt, pythonWithUnoPath='/usr/bin/python',forceOoCall=True)
     745        renderer.run()
     746        data = open(output_file_odt, "rb").read()
     747        for file in [output_file_odt]:
     748            os.unlink(file)
     749            self.sapl_documentos.parecer_comissao.manage_addFile(id=nom_arquivo,file=data)
     750
     751    def gerar_proposicao_odt(self, inf_basicas_dic, num_proposicao,nom_arquivo,des_tipo_materia,num_ident_basica,ano_ident_basica,txt_ementa,materia_vinculada,dat_apresentacao,nom_autor,apelido_autor,modelo_proposicao):
     752        # Criacao ODT
     753        url = self.sapl_documentos.modelo.materia.absolute_url() + "/%s"%modelo_proposicao
     754        template_file = cStringIO.StringIO(urllib.urlopen(url).read())
     755        brasao_file = self.get_brasao()
     756
     757        # atribui o brasao no locals
     758        exec 'brasao = brasao_file'
     759
     760        output_file_odt = "%s"%nom_arquivo
     761        renderer = Renderer(template_file, locals(), output_file_odt, pythonWithUnoPath='/usr/bin/python',forceOoCall=True)
     762        renderer.run()
     763        data = open(output_file_odt, "rb").read()
     764        for file in [output_file_odt]:
     765            os.unlink(file)
     766            self.sapl_documentos.proposicao.manage_addFile(id=nom_arquivo,file=data)
     767
     768    def gerar_substitutivo_odt(self,inf_basicas_dic, num_proposicao,nom_arquivo,des_tipo_materia,num_ident_basica,ano_ident_basica,txt_ementa,materia_vinculada,dat_apresentacao,nom_autor,apelido_autor,modelo_proposicao):
     769        # Criacao ODT
     770        url = self.sapl_documentos.modelo.materia.substitutivo.absolute_url() + "/%s"%modelo_proposicao
     771        template_file = cStringIO.StringIO(urllib.urlopen(url).read())
     772        brasao_file = self.get_brasao()
     773
     774        # atribui o brasao no locals
     775        exec 'brasao = brasao_file'
     776
     777        output_file_odt = "%s"%nom_arquivo
     778        renderer = Renderer(template_file, locals(), output_file_odt, pythonWithUnoPath='/usr/bin/python',forceOoCall=True)
     779        renderer.run()
     780        data = open(output_file_odt, "rb").read()
     781        for file in [output_file_odt]:
     782            os.unlink(file)
     783            self.sapl_documentos.substitutivo.manage_addFile(id=nom_arquivo,file=data)
    616784
    617785InitializeClass(SAPLTool)
  • ILSAPL/trunk/skins/sk_sapl/cadastros/materia/materia_form.dtml

    r7568 r7618  
    146146    function texto_pdf_gerar(){
    147147        if (confirm("Confirma a geração do arquivo PDF?")) {
    148             location.href="&dtml-portal_url;/modelo_proposicao/materia_gerar_pdf?cod_materia=<dtml-var cod_materia missing>";
     148            location.href="&dtml-portal_url;/documentos/gerar_materia_pdf?cod_materia=<dtml-var cod_materia missing>";
    149149            setTimeout(function(){window.location.reload(true)},2500);
    150150            return true;
  • ILSAPL/trunk/skins/sk_sapl/documentos/gerar_materia_pdf.py

    r7616 r7618  
     1## Script (Python) "gerar_materia_pdf"
     2##bind container=container
     3##bind context=context
     4##bind namespace=
     5##bind script=script
     6##bind subpath=traverse_subpath
     7##parameters=cod_materia
     8##title=
     9##
     10
    111from Products.CMFCore.utils import getToolByName
    2 
    3 REQUEST = context.REQUEST
    4 RESPONSE =  REQUEST.RESPONSE
    5 session = REQUEST.SESSION
    612
    713st = getToolByName(context, 'portal_sapl')
    814
    9 inf_basicas_dic = {}
    10 casa={}
    11 aux=context.sapl_documentos.props_sapl.propertyItems()
    12 for item in aux:
    13     casa[item[0]]=item[1]
    14 localidade=context.zsql.localidade_obter_zsql(cod_localidade=casa["cod_localidade"])
    15 estado = context.zsql.localidade_obter_zsql(tip_localidade="U")
    16 for uf in estado:
    17     if localidade[0].sgl_uf == uf.sgl_uf:
    18         nom_estado = uf.nom_localidade
    19         break
    20 inf_basicas_dic['nom_camara']= casa['nom_casa']
    21 inf_basicas_dic["nom_estado"] = nom_estado
    22 for local in context.zsql.localidade_obter_zsql(cod_localidade = casa['cod_localidade']):
    23     inf_basicas_dic['nom_localidade']= local.nom_localidade
    24     inf_basicas_dic['sgl_uf']= local.sgl_uf
    25 
    26 for emenda in context.zsql.emenda_obter_zsql(cod_emenda=cod_emenda):
    27     num_proposicao = " "
    28     des_tipo_materia = emenda.tip_emenda
    29     num_ident_basica = emenda.num_emenda
    30     ano_ident_basica = DateTime().strftime("%Y")
    31     txt_ementa = emenda.txt_ementa
    32     dat_apresentacao = context.pysc.data_converter_por_extenso_pysc(data=emenda.dat_apresentacao)
    33 
    34     for materia_vinculada in context.zsql.materia_obter_zsql(cod_materia = emenda.cod_materia):
    35         materia_vinculada = 'AO ' +materia_vinculada.des_tipo_materia.upper()  + '  ' + str(materia_vinculada.num_ident_basica) + '/' + str(materia_vinculada.ano_ident_basica)
    36         nom_arquivo = str(emenda.cod_emenda)+ '_emenda.odt'
    37 
    38     for autor in context.zsql.autor_obter_zsql(cod_autor = emenda.cod_autor):
    39         nom_autor = " "
    40         apelido_autor = " "
    41         if autor.des_tipo_autor=='Parlamentar':
    42             for parlamentar in context.zsql.parlamentar_obter_zsql(cod_parlamentar=autor.cod_parlamentar):
    43                 nom_autor = parlamentar.nom_completo
    44                 if parlamentar.nom_parlamentar != parlamentar.nom_completo:
    45                     apelido_autor = "'"+parlamentar.nom_parlamentar +"'"
    46                 else:
    47                     apelido_autor = " "
    48         elif autor.des_tipo_autor=='Comissao':
    49             for comissao in context.zsql.comissao_obter_zsql(cod_comissao=autor.cod_comissao):
    50                 nom_autor = comissao.nom_comissao
    51                 apelido_autor = " "
    52         elif autor.des_tipo_autor=='Bancada':
    53             for bancada in context.zsql.bancada_obter_zsql(cod_bancada=autor.cod_bancada):
    54                 nom_autor = bancada.nom_bancada
    55                 apelido_autor = " "
    56         else:
    57             nom_autor=autor.nom_autor
    58             apelido_autor = " "
    59 
    60 return st.gerar_emenda_odt(inf_basicas_dic,num_proposicao,nom_arquivo,des_tipo_materia,num_ident_basica,ano_ident_basica,txt_ementa,materia_vinculada,dat_apresentacao,nom_autor,apelido_autor,modelo_proposicao)
    61 
    62 
    63 
     15return st.gerar_materia_pdf(cod_materia)
Note: Veja TracChangeset para ajuda no uso do visualizador de conjunto de mudanças.
 

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