Refactor default value for bank account

This commit is contained in:
Sergi Almacellas Abellana 2015-07-24 16:18:11 +02:00
parent 22171fa4d4
commit 01348bfa4a

View file

@ -185,12 +185,11 @@ class Invoice(BankMixin):
return res
@classmethod
def create(cls, vlist):
def compute_default_bank_account(cls, values):
pool = Pool()
PaymentType = pool.get('account.payment.type')
Party = pool.get('party.party')
vlist = [x.copy() for x in vlist]
for values in vlist:
changes = {}
if (not 'bank_account' in values and 'payment_type' in values
and 'party' in values):
party = Party(values['party'])
@ -200,8 +199,15 @@ class Invoice(BankMixin):
payment_type = PaymentType(values['payment_type'])
bank_account = cls._get_bank_account(payment_type, party,
company)
values['bank_account'] = (bank_account and bank_account.id
changes['bank_account'] = (bank_account and bank_account.id
or None)
return changes
@classmethod
def create(cls, vlist):
vlist = [x.copy() for x in vlist]
for values in vlist:
values.update(cls.compute_default_bank_account(values))
return super(Invoice, cls).create(vlist)
@classmethod