From d925587a98ff489abc0cf402c103e5500127a540 Mon Sep 17 00:00:00 2001 From: El Mau Date: Wed, 24 Jan 2024 13:45:23 -0600 Subject: [PATCH] PDF from CE in version 2.0 --- CHANGELOG.md | 6 +++ VERSION | 2 +- source/app/controllers/util.py | 54 ++++++++++++++++++++- source/app/controllers/utils.py | 24 +++++++++ source/app/settings.py | 2 +- source/static/js/ui/admin.js | 1 + source/templates/plantilla_cce_4.0_2.0.ods | Bin 0 -> 40600 bytes 7 files changed, 86 insertions(+), 3 deletions(-) create mode 100644 source/templates/plantilla_cce_4.0_2.0.ods diff --git a/CHANGELOG.md b/CHANGELOG.md index 430daaa..1a38f42 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,9 @@ +v 2.2.0 [24-Ene-2024] + - Mejora: Soporte para complemento Comercio Exterior 2.0 + - **IMPORTANTE**: Aunque no lo uses, esto afecta al JS de facturación, por + lo que tienes que forzar el refresco (CTRL+F5) si tienes algún problema. + + v 2.1.0 [26-Dic-2023] - Mejora: Se agrega filtro por día en facturas. diff --git a/VERSION b/VERSION index 7ec1d6d..ccbccc3 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -2.1.0 +2.2.0 diff --git a/source/app/controllers/util.py b/source/app/controllers/util.py index 50d5405..f1cfb29 100644 --- a/source/app/controllers/util.py +++ b/source/app/controllers/util.py @@ -1022,6 +1022,51 @@ class LIBO(object): return + def _comercio_exterior(self, data): + if not data: + return + + emisor = data.pop('emisor') + receptor = data.pop('receptor') + mercancias = data.pop('mercancias') + + for k, v in data.items(): + self._set_cell(f'{{cce.{k}}}', v) + for k, v in emisor.items(): + self._set_cell(f'{{cce.emisor.{k}}}', v) + for k, v in receptor.items(): + self._set_cell(f'{{cce.receptor.{k}}}', v) + + first = True + count = len(mercancias) - 1 + for i, mercancia in enumerate(mercancias): + no_identificacion = mercancia['NoIdentificacion'] + fraccion = mercancia['FraccionArancelaria'] + unidad = mercancia['UnidadAduana'] + cantidad = mercancia['CantidadAduana'] + valor_unitario = mercancia['ValorUnitarioAduana'] + valor_dolares = mercancia['ValorDolares'] + if first: + first = False + cell_1 = self._set_cell('{cce.mercancia.noidentificacion}', no_identificacion) + cell_2 = self._set_cell('{cce.mercancia.fraccionarancelaria}', fraccion) + cell_3 = self._set_cell('{cce.mercancia.unidadaduana}', unidad) + cell_4 = self._set_cell('{cce.mercancia.cantidadaduana}', cantidad) + cell_5 = self._set_cell('{cce.mercancia.valorunitarioaduana}', valor_unitario) + cell_6 = self._set_cell('{cce.mercancia.valordolares}', valor_dolares) + if count > 0: + row = cell_1.CellAddress.Row + 1 + self._sheet.getRows().insertByIndex(row, count) + self._copy_paste_rows(cell_1, count) + else: + cell_1 = self._set_cell(v=no_identificacion, cell=cell_1) + cell_2 = self._set_cell(v=fraccion, cell=cell_2) + cell_3 = self._set_cell(v=unidad, cell=cell_3) + cell_4 = self._set_cell(v=cantidad, cell=cell_4) + cell_5 = self._set_cell(v=valor_unitario, cell=cell_5) + cell_6 = self._set_cell(v=valor_dolares, cell=cell_6) + return + def _nomina(self, data): if not data: return @@ -1258,6 +1303,7 @@ class LIBO(object): self._divisas(data.get('divisas', {})) self._leyendas(data.get('leyendas', '')) self._carta_porte(data.get('carta_porte', {})) + self._comercio_exterior(data.get('comercio_exterior', {})) self._timbre(data['timbre']) @@ -1655,8 +1701,13 @@ def to_pdf(data, emisor_rfc, ods=False, pdf_from='1'): default = f'plantilla_donatarias_{version}_{version_donatarias}.ods' version = f'{version}_cd_{version_donatarias}' + if 'comercio_exterior' in data: + version_cce = data['comercio_exterior']['version'] + default = f'plantilla_cce_{version}_{version_cce}.ods' + version = f'{version}_cce_{version_cce}' + template_name = f'{rfc.lower()}_{version}.ods' - # ~ print('T', template_name, default) + # ~ print('\nT', template_name, default) if APP_LIBO: app = LIBO() @@ -2370,6 +2421,7 @@ def upload_file(rfc, opt, file_obj): '_4.0_cp_2.0.ods', '_4.0_ccp_2.0.ods', '_4.0_cd_1.1.ods', + '_4.0_cce_2.0.ods', '_4.0.json', ) if opt in versions: diff --git a/source/app/controllers/utils.py b/source/app/controllers/utils.py index fbad39a..313a788 100644 --- a/source/app/controllers/utils.py +++ b/source/app/controllers/utils.py @@ -265,6 +265,7 @@ class CfdiToDict(object): 'leyendasFisc': 'http://www.sat.gob.mx/leyendasFiscales', 'cartaporte20': 'http://www.sat.gob.mx/CartaPorte20', 'nomina12': 'http://www.sat.gob.mx/nomina12', + 'cce20': 'http://www.sat.gob.mx/ComercioExterior20', } tipo_figura = { '01': '[01] Operador', @@ -513,6 +514,29 @@ class CfdiToDict(object): self._values['carta_porte'] = values + self._complemento_comercio_exterior(complemento) + + return + + def _complemento_comercio_exterior(self, complemento): + path = '//cce20:ComercioExterior' + comercio_exterior = complemento.xpath(path, namespaces=self.NS) + + if comercio_exterior: + values = CaseInsensitiveDict(comercio_exterior[0].attrib) + + for node in comercio_exterior[0]: + if 'Emisor' in node.tag: + values['emisor'] = CaseInsensitiveDict(node.attrib) + values['emisor'].update(CaseInsensitiveDict(node[0].attrib)) + elif 'Receptor' in node.tag: + values['receptor'] = CaseInsensitiveDict(node.attrib) + values['receptor'].update(CaseInsensitiveDict(node[0].attrib)) + elif 'Mercancias' in node.tag: + mercancias = [ + CaseInsensitiveDict(m.attrib) for m in node] + values['mercancias'] = mercancias + self._values['comercio_exterior'] = values return diff --git a/source/app/settings.py b/source/app/settings.py index 669bed2..a2458d9 100644 --- a/source/app/settings.py +++ b/source/app/settings.py @@ -39,7 +39,7 @@ except ImportError: DEBUG = DEBUG -VERSION = '2.1.0' +VERSION = '2.2.0' EMAIL_SUPPORT = ('soporte@empresalibre.mx',) TITLE_APP = '{} v{}'.format(TITLE_APP, VERSION) diff --git a/source/static/js/ui/admin.js b/source/static/js/ui/admin.js index 68d6c22..3c3f04c 100644 --- a/source/static/js/ui/admin.js +++ b/source/static/js/ui/admin.js @@ -605,6 +605,7 @@ var opt_templates_cfdi = [ {id: '_4.0_cp_2.0.ods', value: 'CFDI v4.0 - Pagos v2.0'}, {id: '_4.0_ccp_2.0.ods', value: 'CFDI v4.0 - Carta Porte v2.0'}, {id: '_4.0_cd_1.1.ods', value: 'CFDI v4.0 - Donativos v1.1'}, + {id: '_4.0_cce_2.0.ods', value: 'CFDI v4.0 - Comercio Exterior v2.0'}, {id: '_4.0.json', value: 'CFDI v4.0 - JSON'}, {id: '_3.3.ods', value: 'CFDI v3.3'}, {id: '_3.3_cn_1.2.ods', value: 'CFDI v3.3 - Nómina v1.2'}, diff --git a/source/templates/plantilla_cce_4.0_2.0.ods b/source/templates/plantilla_cce_4.0_2.0.ods new file mode 100644 index 0000000000000000000000000000000000000000..a71d80aace529ca05b8014e90766eb034f7c68c1 GIT binary patch literal 40600 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