pago_deuda_wizzard.py
2.43 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
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
# -*- 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',
)
# Formas de pago
pcw_che_recibidos = fields.Many2many(
comodel_name='asw.cheque',
relation='pago_cliente_chq_recibido2',
column1='asw_cheque_id',
column2='asw_cliente_id',
string='Cheques Recibidos'
)
pcw_chq_emitidos = fields.Many2many(
comodel_name='asw.cheque',
relation='pago_cliente_chq_emitido2',
column1='asw_cheque_id',
column2='asw_cliente_id',
string='Cheques Emitidos'
)
pcw_transferencias_recibidas = fields.Many2many(
comodel_name='asw.valores',
relation='pago_cliente_transferencia_recibida2',
column1='pago_cliente_id',
column2='asw_valores_id',
string='Transferencias Recibidas'
)
pcw_transferencias_emitidas = fields.Many2many(
comodel_name='asw.valores',
relation='pago_cliente_transferencia_emitida2',
column1='pago_cliente_id',
column2='asw_valores_id',
string='Transferencias Emitidas'
)
pcw_tarjetas = fields.Many2many(
comodel_name='asw.valores',
relation='pago_cliente_tarjeta2',
column1='pago_cliente_id',
column2='asw_valores_id',
string='Tarjetas'
)
@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
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")