19.0 vanilla

This commit is contained in:
Ernad Husremovic 2026-03-09 09:31:00 +01:00
parent a1137a1456
commit e1d89e11e3
2789 changed files with 1093187 additions and 605897 deletions

View file

@ -7,7 +7,7 @@ class MaintenanceEquipment(models.Model):
_inherit = 'maintenance.equipment'
employee_id = fields.Many2one('hr.employee', compute='_compute_equipment_assign',
store=True, readonly=False, string='Assigned Employee', tracking=True)
store=True, readonly=False, string='Assigned Employee', tracking=True, index='btree_not_null')
department_id = fields.Many2one('hr.department', compute='_compute_equipment_assign',
store=True, readonly=False, string='Assigned Department', tracking=True)
equipment_assign_to = fields.Selection(
@ -45,6 +45,7 @@ class MaintenanceEquipment(models.Model):
def create(self, vals_list):
equipments = super().create(vals_list)
for equipment in equipments:
# TDE FIXME: check if we can use suggested recipients for employee and department manager
# subscribe employee or department manager when equipment assign to him.
partner_ids = []
if equipment.employee_id and equipment.employee_id.user_id:
@ -80,7 +81,6 @@ class MaintenanceEquipment(models.Model):
class MaintenanceRequest(models.Model):
_inherit = 'maintenance.request'
@api.returns('self')
def _default_employee_get(self):
return self.env.user.employee_id
@ -100,6 +100,7 @@ class MaintenanceRequest(models.Model):
def create(self, vals_list):
requests = super().create(vals_list)
for request in requests:
# TDE FIXME: check default recipients (master)
if request.employee_id.user_id:
request.message_subscribe(partner_ids=[request.employee_id.user_id.partner_id.id])
return requests
@ -112,17 +113,14 @@ class MaintenanceRequest(models.Model):
return super(MaintenanceRequest, self).write(vals)
@api.model
def message_new(self, msg, custom_values=None):
""" Overrides mail_thread message_new that is called by the mailgateway
through message_process.
This override updates the document according to the email.
"""
def message_new(self, msg_dict, custom_values=None):
if custom_values is None:
custom_values = {}
email = tools.email_split(msg.get('from')) and tools.email_split(msg.get('from'))[0] or False
user = self.env['res.users'].search([('login', '=', email)], limit=1)
# TDE FIXME: check author_id, should be set (master-)
email = tools.email_normalize(msg_dict.get('from'), strict=False)
user = self.env['res.users'].search([('login', '=', email)], limit=1) if email else self.env['res.users']
if user:
employee = self.env.user.employee_id
if employee:
custom_values['employee_id'] = employee and employee[0].id
return super(MaintenanceRequest, self).message_new(msg, custom_values=custom_values)
return super().message_new(msg_dict, custom_values=custom_values)