From cd11456ec35e8992899897ec05c71621d2c3a7a5 Mon Sep 17 00:00:00 2001 From: el Mau Date: Mon, 23 Jan 2023 16:05:22 -0600 Subject: [PATCH] Validate regimen fiscal in pay invoice --- source/app/models/main.py | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/source/app/models/main.py b/source/app/models/main.py index b1518aa..7ecf8d0 100644 --- a/source/app/models/main.py +++ b/source/app/models/main.py @@ -3144,6 +3144,21 @@ class SociosRegimenes(BaseModel): regimenes = [r[0] for r in regimenes] return regimenes + @classmethod + def get_by_socio_first(cls, socio, user=None): + fields = (SATRegimenes.key,) + where = (SociosRegimenes.socio == socio) + regimenes = (SociosRegimenes + .select(*fields) + .where(where) + .join(SATRegimenes).switch(SociosRegimenes) + .dicts() + ) + regimen = '' + if len(regimenes): + regimen = regimenes[0]['key'] + return regimen + @classmethod def _get_by_id(cls, filters, user): id = int(filters['id']) @@ -7431,6 +7446,9 @@ class CfdiPagos(BaseModel): partner_name = related[0].factura.cliente.nombre receptor_regimen = related[0].factura.receptor_regimen + if not receptor_regimen == '': + receptor_regimen = SociosRegimenes.get_by_socio_first(partner) + if not receptor_regimen: msg = 'El receptor no tiene establecido su Regimen Fiscal' data = {'ok': False, 'msg': msg}