summaryrefslogtreecommitdiff
path: root/addons/hr_recruitment/models/hr_employee.py
diff options
context:
space:
mode:
authorstephanchrst <stephanchrst@gmail.com>2022-05-10 21:51:50 +0700
committerstephanchrst <stephanchrst@gmail.com>2022-05-10 21:51:50 +0700
commit3751379f1e9a4c215fb6eb898b4ccc67659b9ace (patch)
treea44932296ef4a9b71d5f010906253d8c53727726 /addons/hr_recruitment/models/hr_employee.py
parent0a15094050bfde69a06d6eff798e9a8ddf2b8c21 (diff)
initial commit 2
Diffstat (limited to 'addons/hr_recruitment/models/hr_employee.py')
-rw-r--r--addons/hr_recruitment/models/hr_employee.py34
1 files changed, 34 insertions, 0 deletions
diff --git a/addons/hr_recruitment/models/hr_employee.py b/addons/hr_recruitment/models/hr_employee.py
new file mode 100644
index 00000000..8640872d
--- /dev/null
+++ b/addons/hr_recruitment/models/hr_employee.py
@@ -0,0 +1,34 @@
+# Part of Odoo. See LICENSE file for full copyright and licensing details.
+
+from odoo import api, fields, models
+from odoo.tools.translate import _
+from datetime import timedelta
+
+
+class HrEmployee(models.Model):
+ _inherit = "hr.employee"
+
+ newly_hired_employee = fields.Boolean('Newly hired employee', compute='_compute_newly_hired_employee',
+ search='_search_newly_hired_employee')
+ applicant_id = fields.One2many('hr.applicant', 'emp_id', 'Applicant')
+
+ def _compute_newly_hired_employee(self):
+ now = fields.Datetime.now()
+ for employee in self:
+ employee.newly_hired_employee = bool(employee.create_date > (now - timedelta(days=90)))
+
+ def _search_newly_hired_employee(self, operator, value):
+ employees = self.env['hr.employee'].search([
+ ('create_date', '>', fields.Datetime.now() - timedelta(days=90))
+ ])
+ return [('id', 'in', employees.ids)]
+
+ @api.model
+ def create(self, vals):
+ new_employee = super(HrEmployee, self).create(vals)
+ if new_employee.applicant_id:
+ new_employee.applicant_id.message_post_with_view(
+ 'hr_recruitment.applicant_hired_template',
+ values={'applicant': new_employee.applicant_id},
+ subtype_id=self.env.ref("hr_recruitment.mt_applicant_hired").id)
+ return new_employee