Browse Source

Incrementação da versão

pull/27/head
Alessandro Martini 9 years ago
parent
commit
834e091b79
  1. 14
      pytrustnfe/nfe/__init__.py
  2. 3
      pytrustnfe/nfe/assinatura.py
  3. 42
      pytrustnfe/nfe/templates/NfeAutorizacao.xml
  4. 2
      pytrustnfe/nfe/templates/RecepcaoEventoCancelamento.xml
  5. 2
      pytrustnfe/nfe/templates/RecepcaoEventoCarta.xml
  6. 2
      setup.py

14
pytrustnfe/nfe/__init__.py

@ -56,11 +56,15 @@ def _add_required_node(elemTree):
prods = elemTree.findall('ns:NFe/ns:infNFe/ns:det/ns:prod', namespaces=ns) prods = elemTree.findall('ns:NFe/ns:infNFe/ns:det/ns:prod', namespaces=ns)
for prod in prods: for prod in prods:
cEan = etree.Element('cEAN')
cEANTrib = etree.Element('cEANTrib')
prod.insert(1, cEan)
vProd = prod.find('ns:vProd', namespaces=ns)
prod.insert(prod.index(vProd) + 1, cEANTrib)
element = prod.find('ns:cEAN', namespaces=ns)
if element is None:
cEan = etree.Element('cEAN')
prod.insert(1, cEan)
element = prod.find('ns:cEANTrib', namespaces=ns)
if element is None:
cEANTrib = etree.Element('cEANTrib')
vProd = prod.find('ns:vProd', namespaces=ns)
prod.insert(prod.index(vProd) + 1, cEANTrib)
return elemTree return elemTree

3
pytrustnfe/nfe/assinatura.py

@ -36,7 +36,8 @@ class Assinatura(object):
element_signed = signed_root.find(".//*[@Id='%s']" % reference) element_signed = signed_root.find(".//*[@Id='%s']" % reference)
signature = signed_root.find( signature = signed_root.find(
".//{http://www.w3.org/2000/09/xmldsig#}Signature") ".//{http://www.w3.org/2000/09/xmldsig#}Signature")
if element_signed and signature:
if element_signed is not None and signature is not None:
parent = element_signed.getparent() parent = element_signed.getparent()
parent.append(signature) parent.append(signature)
return etree.tostring(signed_root) return etree.tostring(signed_root)

42
pytrustnfe/nfe/templates/NfeAutorizacao.xml

@ -35,6 +35,9 @@
{% if ref.refNFe is defined -%} {% if ref.refNFe is defined -%}
<refNFe>{{ ref.refNFe }}</refNFe> <refNFe>{{ ref.refNFe }}</refNFe>
{% endif %} {% endif %}
{% if ref.refCTe is defined -%}
<refCTe>{{ ref.refCTe }}</refCTe>
{% endif %}
{% if ref.refNF is defined -%} {% if ref.refNF is defined -%}
<refNF> <refNF>
<cUF>{{ ref.refNF.cUF }}</cUF> <cUF>{{ ref.refNF.cUF }}</cUF>
@ -55,7 +58,6 @@
<mod>{{ ref.refNFP.mod }}</mod> <mod>{{ ref.refNFP.mod }}</mod>
<serie>{{ ref.refNFP.serie }}</serie> <serie>{{ ref.refNFP.serie }}</serie>
<nNF>{{ ref.refNFP.nNF }}</nNF> <nNF>{{ ref.refNFP.nNF }}</nNF>
<refCTe>{{ ref.refNFP.nNF }}</refCTe>
</refNFP> </refNFP>
{% endif %} {% endif %}
{% if ref.refECF is defined -%} {% if ref.refECF is defined -%}
@ -81,9 +83,10 @@
<xNome>{{ emit.xNome|normalize|escape }}</xNome> <xNome>{{ emit.xNome|normalize|escape }}</xNome>
<xFant>{{ emit.xFant|normalize|escape }}</xFant> <xFant>{{ emit.xFant|normalize|escape }}</xFant>
<enderEmit> <enderEmit>
<xLgr>{{ emit.enderEmit.xLgr|normalize }}</xLgr>
<xLgr>{{ emit.enderEmit.xLgr|normalize|escape }}</xLgr>
<nro>{{ emit.enderEmit.nro }}</nro> <nro>{{ emit.enderEmit.nro }}</nro>
<xBairro>{{ emit.enderEmit.xBairro|normalize }}</xBairro>
<xCpl>{{ emit.enderEmit.xCpl|normalize|escape }}</xCpl>
<xBairro>{{ emit.enderEmit.xBairro|normalize|escape }}</xBairro>
<cMun>{{ emit.enderEmit.cMun }}</cMun> <cMun>{{ emit.enderEmit.cMun }}</cMun>
<xMun>{{ emit.enderEmit.xMun|normalize }}</xMun> <xMun>{{ emit.enderEmit.xMun|normalize }}</xMun>
<UF>{{ emit.enderEmit.UF }}</UF> <UF>{{ emit.enderEmit.UF }}</UF>
@ -115,9 +118,10 @@
{% endif %} {% endif %}
<xNome>{{ dest.xNome|normalize|escape }}</xNome> <xNome>{{ dest.xNome|normalize|escape }}</xNome>
<enderDest> <enderDest>
<xLgr>{{ dest.enderDest.xLgr|normalize }}</xLgr>
<xLgr>{{ dest.enderDest.xLgr|normalize|escape }}</xLgr>
<nro>{{ dest.enderDest.nro }}</nro> <nro>{{ dest.enderDest.nro }}</nro>
<xBairro>{{ dest.enderDest.xBairro|normalize }}</xBairro>
<xCpl>{{ dest.enderDest.xCpl|normalize|escape }}</xCpl>
<xBairro>{{ dest.enderDest.xBairro|normalize|escape }}</xBairro>
<cMun>{{ dest.enderDest.cMun }}</cMun> <cMun>{{ dest.enderDest.cMun }}</cMun>
<xMun>{{ dest.enderDest.xMun|normalize }}</xMun> <xMun>{{ dest.enderDest.xMun|normalize }}</xMun>
<UF>{{ dest.enderDest.UF }}</UF> <UF>{{ dest.enderDest.UF }}</UF>
@ -138,12 +142,12 @@
<retirada> <retirada>
<CNPJ>{{ NFe.infNFe.retirada.CNPJ }}</CNPJ> <CNPJ>{{ NFe.infNFe.retirada.CNPJ }}</CNPJ>
<CPF>{{ NFe.infNFe.retirada.CPF }}</CPF> <CPF>{{ NFe.infNFe.retirada.CPF }}</CPF>
<xLgr>{{ NFe.infNFe.retirada.xLgr }}</xLgr>
<xLgr>{{ NFe.infNFe.retirada.xLgr|normalize|escape }}</xLgr>
<nro>{{ NFe.infNFe.retirada.nro }}</nro> <nro>{{ NFe.infNFe.retirada.nro }}</nro>
<xCpl>{{ NFe.infNFe.retirada.xCpl }}</xCpl>
<xBairro>{{ NFe.infNFe.retirada.xBairro }}</xBairro>
<xCpl>{{ NFe.infNFe.retirada.xCpl|normalize|escape }}</xCpl>
<xBairro>{{ NFe.infNFe.retirada.xBairro|normalize|escape }}</xBairro>
<cMun>{{ NFe.infNFe.retirada.cMun }}</cMun> <cMun>{{ NFe.infNFe.retirada.cMun }}</cMun>
<xMun>{{ NFe.infNFe.retirada.xMun }}</xMun>
<xMun>{{ NFe.infNFe.retirada.xMun|normalize }}</xMun>
<UF>{{ NFe.infNFe.retirada.UF }}</UF> <UF>{{ NFe.infNFe.retirada.UF }}</UF>
</retirada> </retirada>
{% endif %} {% endif %}
@ -151,10 +155,10 @@
<entrega> <entrega>
<CNPJ>{{ NFe.infNFe.entrega.CNPJ }}</CNPJ> <CNPJ>{{ NFe.infNFe.entrega.CNPJ }}</CNPJ>
<CPF>{{ NFe.infNFe.entrega.CPF }}</CPF> <CPF>{{ NFe.infNFe.entrega.CPF }}</CPF>
<xLgr>{{ NFe.infNFe.entrega.xLgr }}</xLgr>
<xLgr>{{ NFe.infNFe.entrega.xLgr|normalize|escape }}</xLgr>
<nro>{{ NFe.infNFe.entrega.nro }}</nro> <nro>{{ NFe.infNFe.entrega.nro }}</nro>
<xCpl>{{ NFe.infNFe.entrega.xCpl }}</xCpl>
<xBairro>{{ NFe.infNFe.entrega.xBairro }}</xBairro>
<xCpl>{{ NFe.infNFe.entrega.xCpl|normalize|escape }}</xCpl>
<xBairro>{{ NFe.infNFe.entrega.xBairro|normalize|escape }}</xBairro>
<cMun>{{ NFe.infNFe.entrega.cMun }}</cMun> <cMun>{{ NFe.infNFe.entrega.cMun }}</cMun>
<xMun>{{ NFe.infNFe.entrega.xMun }}</xMun> <xMun>{{ NFe.infNFe.entrega.xMun }}</xMun>
<UF>{{ NFe.infNFe.entrega.UF }}</UF> <UF>{{ NFe.infNFe.entrega.UF }}</UF>
@ -168,9 +172,8 @@
</autXML> </autXML>
{% endfor %} {% endfor %}
{% endif %} {% endif %}
{% set count = 1 %}
{% for det in NFe.infNFe.detalhes %} {% for det in NFe.infNFe.detalhes %}
<det nItem="{{ count }}">
<det nItem="{{ loop.index }}">
<prod> <prod>
{% with prod = det.prod %} {% with prod = det.prod %}
<cProd>{{ prod.cProd }}</cProd> <cProd>{{ prod.cProd }}</cProd>
@ -199,7 +202,7 @@
<DI> <DI>
<nDI>{{ di.nDI }}</nDI> <nDI>{{ di.nDI }}</nDI>
<dDI>{{ di.dDI }}</dDI> <dDI>{{ di.dDI }}</dDI>
<xLocDesemb>{{ di.xLocDesemb }}</xLocDesemb>
<xLocDesemb>{{ di.xLocDesemb|normalize|escape }}</xLocDesemb>
<UFDesemb>{{ di.UFDesemb }}</UFDesemb> <UFDesemb>{{ di.UFDesemb }}</UFDesemb>
<dDesemb>{{ di.dDesemb }}</dDesemb> <dDesemb>{{ di.dDesemb }}</dDesemb>
<tpViaTransp>{{ di.tpViaTransp }}</tpViaTransp> <tpViaTransp>{{ di.tpViaTransp }}</tpViaTransp>
@ -625,7 +628,6 @@
{% if det.infAdProd %} {% if det.infAdProd %}
<infAdProd>{{ det.infAdProd|normalize|escape }}</infAdProd> <infAdProd>{{ det.infAdProd|normalize|escape }}</infAdProd>
{% endif %} {% endif %}
{% set count = count + 1 %}
</det> </det>
{% endfor %} {% endfor %}
<total> <total>
@ -687,9 +689,9 @@
<transporta> <transporta>
<CNPJ>{{ NFe.infNFe.transp.transporta.CNPJ }}</CNPJ> <CNPJ>{{ NFe.infNFe.transp.transporta.CNPJ }}</CNPJ>
<CPF>{{ NFe.infNFe.transp.transporta.CPF }}</CPF> <CPF>{{ NFe.infNFe.transp.transporta.CPF }}</CPF>
<xNome>{{ NFe.infNFe.transp.transporta.xNome }}</xNome>
<xNome>{{ NFe.infNFe.transp.transporta.xNome|normalize|escape }}</xNome>
<IE>{{ NFe.infNFe.transp.transporta.IE }}</IE> <IE>{{ NFe.infNFe.transp.transporta.IE }}</IE>
<xEnder>{{ NFe.infNFe.transp.transporta.xEnder }}</xEnder>
<xEnder>{{ NFe.infNFe.transp.transporta.xEnder|normalize|escape }}</xEnder>
<xMun>{{ NFe.infNFe.transp.transporta.xMun }}</xMun> <xMun>{{ NFe.infNFe.transp.transporta.xMun }}</xMun>
<UF>{{ NFe.infNFe.transp.transporta.UF }}</UF> <UF>{{ NFe.infNFe.transp.transporta.UF }}</UF>
</transporta> </transporta>
@ -782,8 +784,8 @@
{% if NFe.infNFe.exporta is defined %} {% if NFe.infNFe.exporta is defined %}
<exporta> <exporta>
<UFSaidaPais>{{ NFe.infNFe.exporta.UFSaidaPais }}</UFSaidaPais> <UFSaidaPais>{{ NFe.infNFe.exporta.UFSaidaPais }}</UFSaidaPais>
<xLocExporta>{{ NFe.infNFe.exporta.xLocExporta }}</xLocExporta>
<xLocDespacho>{{ NFe.infNFe.exporta.xLocDespacho }}</xLocDespacho>
<xLocExporta>{{ NFe.infNFe.exporta.xLocExporta|normalize|escape }}</xLocExporta>
<xLocDespacho>{{ NFe.infNFe.exporta.xLocDespacho|normalize|escape }}</xLocDespacho>
</exporta> </exporta>
{% endif %} {% endif %}
{% if NFe.infNFe.compra is defined %} {% if NFe.infNFe.compra is defined %}

2
pytrustnfe/nfe/templates/RecepcaoEventoCancelamento.xml

@ -14,7 +14,7 @@
<detEvento versao="1.00"> <detEvento versao="1.00">
<descEvento>Cancelamento</descEvento> <descEvento>Cancelamento</descEvento>
<nProt>{{ evento.nProt }}</nProt> <nProt>{{ evento.nProt }}</nProt>
<xJust>{{ evento.xJust|normalize }}</xJust>
<xJust>{{ evento.xJust|normalize|escape }}</xJust>
</detEvento> </detEvento>
</infEvento> </infEvento>
</evento> </evento>

2
pytrustnfe/nfe/templates/RecepcaoEventoCarta.xml

@ -13,7 +13,7 @@
<verEvento>1.00</verEvento> <verEvento>1.00</verEvento>
<detEvento versao="1.00"> <detEvento versao="1.00">
<descEvento>Carta de Correção</descEvento> <descEvento>Carta de Correção</descEvento>
<xCorrecao>{{ xCorrecao|normalize }}</xCorrecao>
<xCorrecao>{{ xCorrecao|normalize|escape }}</xCorrecao>
<xCondUso>A Carta de Correção é disciplinada pelo § 1º-A do art. 7º do Convênio S/N, de 15 de dezembro de 1970 e pode ser utilizada para regularização de erro ocorrido na emissão de documento fiscal, desde que o erro não esteja relacionado com: I - as variáveis que determinam o valor do imposto tais como: base de cálculo, alíquota, diferença de preço, quantidade, valor da operação ou da prestação; II - a correção de dados cadastrais que implique mudança do remetente ou do destinatário; III - a data de emissão ou de saída.</xCondUso> <xCondUso>A Carta de Correção é disciplinada pelo § 1º-A do art. 7º do Convênio S/N, de 15 de dezembro de 1970 e pode ser utilizada para regularização de erro ocorrido na emissão de documento fiscal, desde que o erro não esteja relacionado com: I - as variáveis que determinam o valor do imposto tais como: base de cálculo, alíquota, diferença de preço, quantidade, valor da operação ou da prestação; II - a correção de dados cadastrais que implique mudança do remetente ou do destinatário; III - a data de emissão ou de saída.</xCondUso>
</detEvento> </detEvento>
</infEvento> </infEvento>

2
setup.py

@ -1,7 +1,7 @@
# coding=utf-8 # coding=utf-8
from setuptools import setup, find_packages from setuptools import setup, find_packages
VERSION = "0.1.17"
VERSION = "0.1.24"
setup( setup(
name="PyTrustNFe", name="PyTrustNFe",

Loading…
Cancel
Save