pago_deuda_wizzard.py
1.29 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
# -*- coding: utf-8 -*-
from odoo import models, fields, api
from odoo.exceptions import UserError
class asw_pago_deuda_wizzard(models.TransientModel):
_name = 'asw.pago_deuda_wizzard'
_inherit = 'asw.pago_cliente_wizzard'
pcw_totalcobrar = fields.Float(
string="Total a Cobrar",
readonly=True,
)
pcw_cliente = fields.Many2one(
string='Cliente',
comodel_name='asw.cliente',
readonly=True,
)
pcw_cobro_deu = fields.Many2one(
string='Cobro',
comodel_name='vnt.cobros',
)
@api.multi
def generar_recibo(self):
lista = []
self.chequear_montos()
self.armar_recibo()
self.validar_afectar(self.pcw_recibo)
self.pcw_recibo.eliminar_valores_cero()
self.pcw_recibo.comp_estado = 'p'
self.pcw_cobro_deu.co_estado = 'p'
lista.append(self.pcw_recibo.id)
self.pcw_cobro_deu.co_recibos = lista
for lin in self.pcw_cobro_deu.co_lin_deuda:
lin.pagar_facturas()
accion = self.get_action_navega('asw_recibos_list_action', self.pcw_recibo.id)
return accion
def chequear_montos(self):
if self.pcw_totalcobrar > self.pcw_total:
raise UserError("El monto adeudado aún no fue saldado")