From 1ca3b3df3421961caec3b747a364071c80f5c7da Mon Sep 17 00:00:00 2001 From: stephanchrst Date: Tue, 10 May 2022 17:14:58 +0700 Subject: initial commit --- hr_payroll_community/models/hr_employee.py | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) create mode 100644 hr_payroll_community/models/hr_employee.py (limited to 'hr_payroll_community/models/hr_employee.py') diff --git a/hr_payroll_community/models/hr_employee.py b/hr_payroll_community/models/hr_employee.py new file mode 100644 index 0000000..6d33a8b --- /dev/null +++ b/hr_payroll_community/models/hr_employee.py @@ -0,0 +1,21 @@ +# -*- coding:utf-8 -*- + +from odoo import api, fields, models + + +class HrEmployee(models.Model): + _inherit = 'hr.employee' + _description = 'Employee' + + slip_ids = fields.One2many('hr.payslip', 'employee_id', string='Payslips', readonly=True, help="payslip") + payslip_count = fields.Integer(compute='_compute_payslip_count', string='Payslip Count') + + def _compute_payslip_count(self): + + payslip_data = self.env['hr.payslip'].sudo().read_group([('employee_id', 'in', self.ids)], + ['employee_id'], ['employee_id']) + result = dict((data['employee_id'][0], data['employee_id_count']) for data in payslip_data) + for employee in self: + employee.payslip_count = result.get(employee.id, 0) + + -- cgit v1.2.3