From 3df8e353dd5df0a7f1309ff6b9fd2b9c854e71fa Mon Sep 17 00:00:00 2001 From: Mauricio Baeza Date: Wed, 31 Jan 2018 16:13:17 -0600 Subject: [PATCH] =?UTF-8?q?Importar=20n=C3=B3minas=20canceladas?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- source/app/models/main.py | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/source/app/models/main.py b/source/app/models/main.py index ae915c7..5fdb284 100644 --- a/source/app/models/main.py +++ b/source/app/models/main.py @@ -5939,7 +5939,9 @@ class CfdiNomina(BaseModel): (CfdiNomina.fecha_pago==values['fecha_pago']) & (CfdiNomina.fecha_inicial_pago==values['fecha_inicial_pago']) & (CfdiNomina.fecha_final_pago==values['fecha_final_pago']) & - (CfdiNomina.total==values['total'])) + (CfdiNomina.total==values['total']) & + (CfdiNomina.cancelada==False) + ) .exists()) return result @@ -6076,6 +6078,13 @@ class CfdiNomina(BaseModel): ) return {'ok': True, 'rows': tuple(rows)} + def _validate_timbrado(self, data): + receptor = data['receptor'] + if receptor['TipoContrato'] == '99': + del data['emisor']['RegistroPatronal'] + + return data + def _make_xml(self, cfdi, auth): emisor = Emisor.select()[0] empleado = cfdi.empleado @@ -6280,6 +6289,8 @@ class CfdiNomina(BaseModel): } incapacidades.append(n) + + nomina = { 'nomina': nomina, 'emisor': nomina_emisor, @@ -6289,6 +6300,7 @@ class CfdiNomina(BaseModel): 'otros_pagos': otros_pagos, 'incapacidades': incapacidades, } + nomina = self._validate_timbrado(self, nomina) data = { 'comprobante': comprobante,