mirror of
https://github.com/OCA/manufacture.git
synced 2025-01-28 16:37:15 +02:00
Improve extensibility
* Add method to subscribe assigned to user * Make sequence creation easier to extend
This commit is contained in:
committed by
Chandresh Thakkar
parent
d19101ebaf
commit
e632b4225f
@@ -21,24 +21,33 @@ class MrpProductionRequest(models.Model):
|
|||||||
def _get_default_requested_by(self):
|
def _get_default_requested_by(self):
|
||||||
return self.env.user
|
return self.env.user
|
||||||
|
|
||||||
|
@api.multi
|
||||||
|
def _subscribe_assigned_user(self, vals):
|
||||||
|
self.ensure_one()
|
||||||
|
if vals.get('assigned_to'):
|
||||||
|
self.message_subscribe_users(user_ids=[self.assigned_to.id])
|
||||||
|
|
||||||
|
@api.model
|
||||||
|
def _create_sequence(self, vals):
|
||||||
|
if not vals.get('name') or vals.get('name') == '/':
|
||||||
|
vals['name'] = self.env['ir.sequence'].next_by_code(
|
||||||
|
'mrp.production.request') or '/'
|
||||||
|
return vals
|
||||||
|
|
||||||
@api.model
|
@api.model
|
||||||
def create(self, vals):
|
def create(self, vals):
|
||||||
"""Add sequence if name is not defined and subscribe to the thread
|
"""Add sequence if name is not defined and subscribe to the thread
|
||||||
the user assigned to the request."""
|
the user assigned to the request."""
|
||||||
if not vals.get('name') or vals.get('name') == '/':
|
vals = self._create_sequence(vals)
|
||||||
vals['name'] = self.env['ir.sequence'].next_by_code(
|
|
||||||
'mrp.production.request') or '/'
|
|
||||||
res = super(MrpProductionRequest, self).create(vals)
|
res = super(MrpProductionRequest, self).create(vals)
|
||||||
if vals.get('assigned_to'):
|
res._subscribe_assigned_user(vals)
|
||||||
res.message_subscribe_users(user_ids=[res.assigned_to.id])
|
|
||||||
return res
|
return res
|
||||||
|
|
||||||
@api.multi
|
@api.multi
|
||||||
def write(self, vals):
|
def write(self, vals):
|
||||||
res = super(MrpProductionRequest, self).write(vals)
|
res = super(MrpProductionRequest, self).write(vals)
|
||||||
for request in self:
|
for request in self:
|
||||||
if vals.get('assigned_to'):
|
request._subscribe_assigned_user(vals)
|
||||||
self.message_subscribe_users(user_ids=[request.assigned_to.id])
|
|
||||||
return res
|
return res
|
||||||
|
|
||||||
@api.onchange('product_id')
|
@api.onchange('product_id')
|
||||||
|
|||||||
Reference in New Issue
Block a user