Eliminar factura de pago cuando no esta timbrada
This commit is contained in:
parent
6d3625caf7
commit
12d26e01f9
|
@ -5383,6 +5383,36 @@ class CfdiPagos(BaseModel):
|
|||
opt = values.pop('opt')
|
||||
return getattr(cls, '_{}'.format(opt))(cls, values)
|
||||
|
||||
def _delete(self, values):
|
||||
id_mov = int(values['id_mov'])
|
||||
|
||||
filters = (
|
||||
(CfdiPagos.movimiento==id_mov)
|
||||
)
|
||||
last = CfdiPagos.select().where(filters)
|
||||
if not last:
|
||||
msg = 'El depósito no tiene facturas de pago'
|
||||
data = {'ok': False, 'msg': msg}
|
||||
return data
|
||||
|
||||
if len(last) > 1:
|
||||
msg = 'Hay más de una factura activa para este depósito'
|
||||
data = {'ok': False, 'msg': msg}
|
||||
return data
|
||||
|
||||
last = last[0]
|
||||
if last.uuid:
|
||||
msg = 'La factura esta timbrada, no se puede eliminar'
|
||||
data = {'ok': False, 'msg': msg}
|
||||
return data
|
||||
|
||||
q = CfdiPagos.delete().where(CfdiPagos.id==last.id)
|
||||
q.execute()
|
||||
|
||||
msg = 'Factura de pago eliminada correctamente'
|
||||
data = {'ok': True, 'msg': msg}
|
||||
return data
|
||||
|
||||
def _cancel(self, values):
|
||||
id_mov = int(values['id_mov'])
|
||||
|
||||
|
|
|
@ -41,6 +41,7 @@ var bancos_controllers = {
|
|||
|
||||
$$('cmd_pay_stamp').attachEvent('onItemClick', cmd_pay_stamp_click)
|
||||
$$('cmd_pay_cancel').attachEvent('onItemClick', cmd_pay_cancel_click)
|
||||
$$('cmd_pay_delete').attachEvent('onItemClick', cmd_pay_delete_click)
|
||||
$$('grid_cfdi_pay').attachEvent('onItemClick', grid_cfdi_pay_click)
|
||||
$$('grid_cfdi_por_pagar').attachEvent('onItemDblClick', grid_cfdi_por_pagar_double_click)
|
||||
$$('grid_cfdi_este_deposito').attachEvent('onItemDblClick', grid_cfdi_este_deposito_double_click)
|
||||
|
@ -948,6 +949,48 @@ function cmd_pay_cancel_click(){
|
|||
}
|
||||
|
||||
|
||||
function cmd_pay_delete_click(){
|
||||
var form = $$('form_bank_pay')
|
||||
var values = form.getValues()
|
||||
var data = {'opt': 'delete', 'id_mov': values.id_mov}
|
||||
|
||||
var grid = $$('grid_cfdi_pay')
|
||||
if(grid.count() == 0){
|
||||
msg_error('El depósito no tiene facturas de pago')
|
||||
return
|
||||
}
|
||||
|
||||
msg = '¿Estás seguro de eliminar esta factura?<BR><BR>ASEGURATE QUE NO ESTE TIMBRADA<BR><BR>ESTA ACCIÓN NO SE PUEDE DESHACER'
|
||||
webix.confirm({
|
||||
title: 'Eliminar Factura',
|
||||
ok: 'Si',
|
||||
cancel: 'No',
|
||||
type: 'confirm-error',
|
||||
text: msg,
|
||||
callback:function(result){
|
||||
if(result){
|
||||
webix.ajax().post('/cfdipay', data, {
|
||||
error:function(text, data, XmlHttpRequest){
|
||||
msg = 'Ocurrio un error, consulta a soporte técnico'
|
||||
msg_error(msg)
|
||||
},
|
||||
success:function(text, data, XmlHttpRequest){
|
||||
values = data.json();
|
||||
if(values.ok){
|
||||
grid.remove(grid.getFirstId())
|
||||
msg_ok(values.msg)
|
||||
}else{
|
||||
msg_error(values.msg)
|
||||
}
|
||||
}
|
||||
})
|
||||
}
|
||||
}
|
||||
})
|
||||
|
||||
}
|
||||
|
||||
|
||||
function send_cfdi_email(row){
|
||||
if(!row.uuid){
|
||||
msg_error('La factura no esta timbrada')
|
||||
|
|
|
@ -270,6 +270,8 @@ var toolbar_bank_pay = [
|
|||
{view: 'button', id: 'cmd_pay_stamp', label: 'Timbrar',
|
||||
type: 'iconButton', autowidth: true, icon: 'ticket'},
|
||||
{view: 'button', id: 'cmd_pay_cancel', label: 'Cancelar',
|
||||
type: 'iconButton', autowidth: true, icon: 'minus'},
|
||||
{view: 'button', id: 'cmd_pay_delete', label: 'Eliminar',
|
||||
type: 'iconButton', autowidth: true, icon: 'ban'},
|
||||
{},
|
||||
{view: 'icon', click: '$$("multi_bancos").setValue("banco_home")',
|
||||
|
|
Loading…
Reference in New Issue