Browse Source

[FEAT][10.0]Cancelado no DANFE

pull/118/head
carcaroff 8 years ago
committed by Danimar Ribeiro
parent
commit
db083bfe59
  1. 12
      pytrustnfe/nfe/danfe.py
  2. 13
      pytrustnfe/utils.py
  3. 2
      setup.py

12
pytrustnfe/nfe/danfe.py

@ -181,6 +181,8 @@ class danfe(object):
".//{http://www.portalfiscal.inf.br/nfe}protNFe")
elem_emit = oXML.find(".//{http://www.portalfiscal.inf.br/nfe}emit")
elem_ide = oXML.find(".//{http://www.portalfiscal.inf.br/nfe}ide")
elem_evento = oXML.find(
".//{http://www.portalfiscal.inf.br/nfe}infEvento")
cChave = elem_infNFe.attrib.get('Id')[3:]
barcode128 = code128.Code128(
@ -308,6 +310,16 @@ class danfe(object):
self.string(self.nLeft + 65, 449, 'SEM VALOR FISCAL')
self.canvas.restoreState()
# Cancelado
if tagtext(oNode=elem_evento, cTag='xEvento') == \
'Cancelamento registrado':
self.canvas.saveState()
self.canvas.rotate(45)
self.canvas.setFont('NimbusSanL-Bold', 60)
self.canvas.setFillColorRGB(1, 0.2, 0.2)
self.string(self.nLeft + 80, 275, 'CANCELADO')
self.canvas.restoreState()
self.nlin += 48
def destinatario(self, oXML=None):

13
pytrustnfe/utils.py

@ -95,3 +95,16 @@ def gerar_nfeproc(envio, recibo):
root.append(nfe)
root.append(protocolo)
return ET.tostring(root)
def gerar_nfeproc_cancel(nfe_proc, cancelamento):
import ipdb
ipdb.set_trace()
docEnvio = ET.fromstring(nfe_proc)
docCancel = ET.fromstring(cancelamento)
ev_cancelamento = _find_node(docCancel, "retEvento")
if ev_cancelamento is None:
return ''
docEnvio.append(ev_cancelamento)
return ET.tostring(docEnvio)

2
setup.py

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

Loading…
Cancel
Save