Files
gzth/l10n_cnai_hr_payroll/models/hr_payslip.py
T

27 lines
1.1 KiB
Python

# -*- coding: utf-8 -*-
from odoo import models, fields, api, Command, _
class HrPayslip(models.Model):
_inherit = 'hr.payslip'
def action_print_payslip_cnai(self):
return self.env.ref('l10n_cnai_hr_payroll.action_report_payslip_cnai').report_action(self)
@api.depends('employee_id', 'contract_id', 'struct_id', 'date_from', 'date_to')
def _compute_input_line_ids(self):
res = super()._compute_input_line_ids()
for slip in self:
if slip.struct_id.input_line_type_ids:
lines_to_remove = slip.input_line_ids.filtered(lambda l: l.input_type_id.is_auto)
input_line_vals = [Command.unlink(line.id) for line in lines_to_remove]
for input_type in slip.struct_id.input_line_type_ids:
if input_type.is_auto:
input_line_vals.append(Command.create({
'name': input_type.name,
'input_type_id': input_type.id,
}))
slip.update({'input_line_ids': input_line_vals})