Files
enterprise-addons/pos_blackbox_be/models/hr_employee.py
T

43 lines
1.5 KiB
Python

# -*- coding: utf-8 -*-
# Part of Odoo. See LICENSE file for full copyright and licensing details.
from odoo import models, fields, api
from odoo.exceptions import ValidationError
from odoo.tools.translate import _
class HrEmployee(models.Model):
_inherit = "hr.employee"
insz_or_bis_number = fields.Char(
"National Register Number",
groups="hr.group_hr_manager",
store=True,
compute="_compute_insz_or_bis_number",
inverse="_set_insz_or_bis_number",
)
clocked_session_ids = fields.Many2many(
"pos.session",
"employees_session_clocking_info",
string="Users Clocked In",
groups="hr.group_hr_user",
help="This is a technical field used for tracking the status of the session for each employees.",
)
@api.depends("user_id.insz_or_bis_number")
def _compute_insz_or_bis_number(self):
for emp in self:
emp.insz_or_bis_number = emp.user_id.insz_or_bis_number if emp.user_id else False
def _set_insz_or_bis_number(self):
for emp in self:
if emp.user_id:
emp.user_id.insz_or_bis_number = emp.insz_or_bis_number
@api.constrains("insz_or_bis_number")
def _check_insz_or_bis_number(self):
for emp in self:
insz_number = emp.insz_or_bis_number
if insz_number and not self.env['res.users'].is_valid_insz_or_bis_number(insz_number):
raise ValidationError(_("The National Register Number is not valid."))