From b36b79cfbcb732365606138bb55dde6dd9de5293 Mon Sep 17 00:00:00 2001 From: Denis Ledoux Date: Mon, 20 Feb 2017 12:47:09 +0100 Subject: [PATCH] [FIX] hr_expense: hook to allow override the payment values As it's done in https://github.com/odoo/odoo/blob/10.0/addons/account/models/account_payment.py#L149 This is to allow `hr_expense_sepa` to inject the bank account when creating the payment. opw-708451 --- .../wizard/hr_expense_register_payment.py | 24 +++++++++++-------- 1 file changed, 14 insertions(+), 10 deletions(-) diff --git a/addons/hr_expense/wizard/hr_expense_register_payment.py b/addons/hr_expense/wizard/hr_expense_register_payment.py index a84d47f7314..c8677b3bc35 100644 --- a/addons/hr_expense/wizard/hr_expense_register_payment.py +++ b/addons/hr_expense/wizard/hr_expense_register_payment.py @@ -53,15 +53,9 @@ class HrExpenseRegisterPaymentWizard(models.TransientModel): return {'domain': {'payment_method_id': [('payment_type', '=', 'outbound'), ('id', 'in', payment_methods.ids)]}} return {} - @api.multi - def expense_post_payment(self): - self.ensure_one() - context = dict(self._context or {}) - active_ids = context.get('active_ids', []) - expense_sheet = self.env['hr.expense.sheet'].browse(active_ids) - - # Create payment and post it - payment = self.env['account.payment'].create({ + def get_payment_vals(self): + """ Hook for extension """ + return { 'partner_type': 'supplier', 'payment_type': 'outbound', 'partner_id': self.partner_id.id, @@ -72,7 +66,17 @@ class HrExpenseRegisterPaymentWizard(models.TransientModel): 'currency_id': self.currency_id.id, 'payment_date': self.payment_date, 'communication': self.communication - }) + } + + @api.multi + def expense_post_payment(self): + self.ensure_one() + context = dict(self._context or {}) + active_ids = context.get('active_ids', []) + expense_sheet = self.env['hr.expense.sheet'].browse(active_ids) + + # Create payment and post it + payment = self.env['account.payment'].create(self.get_payment_vals()) payment.post() # Log the payment in the chatter