From 483911c8cec10da15db0918bcb19b7861c139f1d Mon Sep 17 00:00:00 2001 From: Danimar Ribeiro Date: Sat, 7 Jan 2017 07:55:49 -0200 Subject: [PATCH] =?UTF-8?q?FIX=20-=20Adicionando=20tag=20EAN=20apenas=20qu?= =?UTF-8?q?ando=20a=20mesma=20n=C3=A3o=20existir?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pytrustnfe/nfe/__init__.py | 14 +++++++++----- pytrustnfe/nfe/assinatura.py | 3 ++- setup.py | 2 +- 3 files changed, 12 insertions(+), 7 deletions(-) diff --git a/pytrustnfe/nfe/__init__.py b/pytrustnfe/nfe/__init__.py index 0f1757e..4b8c0e5 100644 --- a/pytrustnfe/nfe/__init__.py +++ b/pytrustnfe/nfe/__init__.py @@ -55,11 +55,15 @@ def _add_required_node(elemTree): prods = elemTree.findall('ns:NFe/ns:infNFe/ns:det/ns:prod', namespaces=ns) 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 diff --git a/pytrustnfe/nfe/assinatura.py b/pytrustnfe/nfe/assinatura.py index 7104e9b..d4ef99c 100644 --- a/pytrustnfe/nfe/assinatura.py +++ b/pytrustnfe/nfe/assinatura.py @@ -36,7 +36,8 @@ class Assinatura(object): element_signed = signed_root.find(".//*[@Id='%s']" % reference) signature = signed_root.find( ".//{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.append(signature) return etree.tostring(signed_root) diff --git a/setup.py b/setup.py index 96f3de8..43dcbf5 100644 --- a/setup.py +++ b/setup.py @@ -1,7 +1,7 @@ # coding=utf-8 from setuptools import setup, find_packages -VERSION = "0.1.18" +VERSION = "0.1.19" setup( name="PyTrustNFe",