mirror of
https://github.com/bringout/oca-ocb-hr.git
synced 2026-04-26 11:52:05 +02:00
19.0 vanilla
This commit is contained in:
parent
a1137a1456
commit
e1d89e11e3
2789 changed files with 1093187 additions and 605897 deletions
|
|
@ -1,6 +1,4 @@
|
|||
# -*- coding: utf-8 -*-
|
||||
|
||||
from odoo import models, fields, api, _
|
||||
from odoo import models, api
|
||||
|
||||
|
||||
class AccountPaymentRegister(models.TransientModel):
|
||||
|
|
@ -14,9 +12,13 @@ class AccountPaymentRegister(models.TransientModel):
|
|||
def _get_line_batch_key(self, line):
|
||||
# OVERRIDE to set the bank account defined on the employee
|
||||
res = super()._get_line_batch_key(line)
|
||||
expense_sheet = self.env['hr.expense.sheet'].search([('payment_mode', '=', 'own_account'), ('account_move_id', 'in', line.move_id.ids)])
|
||||
if expense_sheet and not line.move_id.partner_bank_id:
|
||||
res['partner_bank_id'] = expense_sheet.employee_id.sudo().bank_account_id.id or line.partner_id.bank_ids and line.partner_id.bank_ids.ids[0]
|
||||
expense = line.move_id.expense_ids.filtered(lambda expense: expense.payment_mode == 'own_account')
|
||||
if expense and not line.move_id.partner_bank_id:
|
||||
res['partner_bank_id'] = (
|
||||
expense.employee_id.sudo().primary_bank_account_id.id
|
||||
or line.partner_id.bank_ids
|
||||
and line.partner_id.bank_ids.ids[0]
|
||||
)
|
||||
return res
|
||||
|
||||
def _init_payments(self, to_process, edit_mode=False):
|
||||
|
|
@ -25,15 +27,5 @@ class AccountPaymentRegister(models.TransientModel):
|
|||
for payment, vals in zip(payments, to_process):
|
||||
expenses = vals['batch']['lines'].expense_id
|
||||
if expenses:
|
||||
payment.line_ids.write({'expense_id': expenses[0].id})
|
||||
payment.move_id.line_ids.write({'expense_id': expenses[0].id})
|
||||
return payments
|
||||
|
||||
def _reconcile_payments(self, to_process, edit_mode=False):
|
||||
# OVERRIDE
|
||||
res = super()._reconcile_payments(to_process, edit_mode=edit_mode)
|
||||
for vals in to_process:
|
||||
expense_sheets = vals['batch']['lines'].expense_id.sheet_id
|
||||
for expense_sheet in expense_sheets:
|
||||
if expense_sheet.currency_id.is_zero(expense_sheet.amount_residual):
|
||||
expense_sheet.state = 'done'
|
||||
return res
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue