[IMP] project: Update date_end on create and write and stage_id is folded

This commit is contained in:
Yannick Tivisse
2017-08-07 11:25:03 +02:00
parent 82ca3d3f5f
commit eccbf1d067
+10
View File
@@ -593,6 +593,9 @@ class Task(models.Model):
# user_id change: update date_assign
if vals.get('user_id'):
vals['date_assign'] = fields.Datetime.now()
# Stage change: Update date_end if folded stage
if vals.get('stage_id'):
vals.update(self.update_date_end(vals['stage_id']))
task = super(Task, self.with_context(context)).create(vals)
return task
@@ -601,6 +604,7 @@ class Task(models.Model):
now = fields.Datetime.now()
# stage change: update date_last_stage_update
if 'stage_id' in vals:
vals.update(self.update_date_end(vals['stage_id']))
vals['date_last_stage_update'] = now
# reset kanban state when changing stage
if 'kanban_state' not in vals:
@@ -613,6 +617,12 @@ class Task(models.Model):
return result
def update_date_end(self, stage_id):
project_task_type = self.env['project.task.type'].browse(stage_id)
if project_task_type.fold:
return {'date_end': fields.Datetime.now()}
return {'date_end': False}
# ---------------------------------------------------
# Mail gateway
# ---------------------------------------------------