diff --git a/source/app/models/main.py b/source/app/models/main.py index 4eb9a91..9751da9 100644 --- a/source/app/models/main.py +++ b/source/app/models/main.py @@ -3108,6 +3108,15 @@ class Facturas(BaseModel): @classmethod def cancel(cls, id): + obj = Facturas.get(Facturas.id==id) + if obj.uuid is None: + obj.estatus = 'Cancelada' + obj.cancelada = True + obj.fecha_cancelacion = util.now() + obj.save() + msg = 'Factura cancelada correctamente' + return {'ok': True, 'msg': msg, 'row': {'estatus': 'Cancelada'}} + if CANCEL_SIGNATURE: return cls._cancel_signature(cls, id) return cls._cancel_xml(cls, id) diff --git a/source/static/js/controller/invoices.js b/source/static/js/controller/invoices.js index 0d90077..18e7b38 100644 --- a/source/static/js/controller/invoices.js +++ b/source/static/js/controller/invoices.js @@ -1233,18 +1233,17 @@ function cmd_invoice_cancelar_click(){ return } - if(!row.uuid){ - msg_error('La factura no esta timbrada, solo es posible cancelar \ - facturas timbradas') - return - } - if(row.estatus == 'Cancelada'){ msg_error('La factura ya esta cancelada') return } - msg = '¿Estás seguro de enviar a cancelar esta factura?

\ + msg = '' + if(!row.uuid){ + msg = 'La factura NO esta timbrada, asegurate de que efectivamente NO este timbrada.

' + } + + msg += '¿Estás seguro de enviar a cancelar esta factura?

\ ESTA ACCIÓN NO SE PUEDE DESHACER' webix.confirm({ title: 'Cancelar Factura',