Mostrar CFDI relacionados en PDF
This commit is contained in:
parent
a9dcc07427
commit
a5f8b62929
|
@ -864,8 +864,17 @@ def get_qr(data):
|
|||
return path
|
||||
|
||||
|
||||
def _comprobante(values, options):
|
||||
data = CaseInsensitiveDict(values)
|
||||
def _get_relacionados(doc, version):
|
||||
node = doc.find('{}CfdiRelacionados'.format(PRE[version]))
|
||||
if node is None:
|
||||
return ''
|
||||
|
||||
uuids = ['UUID: {}'.format(n.attrib['UUID']) for n in node.getchildren()]
|
||||
return '\n'.join(uuids)
|
||||
|
||||
|
||||
def _comprobante(doc, options):
|
||||
data = CaseInsensitiveDict(doc.attrib.copy())
|
||||
del data['certificado']
|
||||
|
||||
data['totalenletras'] = to_letters(float(data['total']), data['moneda'])
|
||||
|
@ -884,6 +893,8 @@ def _comprobante(values, options):
|
|||
data['condicionesdepago'] = \
|
||||
'Condiciones de pago: {}'.format(data['condicionesdepago'])
|
||||
data['moneda'] = options['moneda']
|
||||
data['tiporelacion'] = options.get('tiporelacion', '')
|
||||
data['relacionados'] = _get_relacionados(doc, data['version'])
|
||||
else:
|
||||
fields = {
|
||||
'formaDePago': 'Forma de Pago: {}\n',
|
||||
|
@ -1052,7 +1063,7 @@ def _timbre(doc, version, values):
|
|||
def get_data_from_xml(invoice, values):
|
||||
data = {'cancelada': invoice.cancelada}
|
||||
doc = parse_xml(invoice.xml)
|
||||
data['comprobante'] = _comprobante(doc.attrib.copy(), values)
|
||||
data['comprobante'] = _comprobante(doc, values)
|
||||
version = data['comprobante']['version']
|
||||
data['emisor'] = _emisor(doc, version, values)
|
||||
data['receptor'] = _receptor(doc, version, values)
|
||||
|
|
|
@ -1309,6 +1309,12 @@ class Facturas(BaseModel):
|
|||
obj = SATMonedas.get(SATMonedas.key==invoice.moneda)
|
||||
values['moneda'] = str(obj)
|
||||
|
||||
if invoice.tipo_relacion:
|
||||
obj = SATTipoRelacion.get(SATTipoRelacion.key==invoice.tipo_relacion)
|
||||
values['tiporelacion'] = str(obj)
|
||||
|
||||
print ('\nTR', invoice.tipo_relacion)
|
||||
|
||||
return values
|
||||
|
||||
@classmethod
|
||||
|
|
Loading…
Reference in New Issue