Skip to content

Commit 64109c7

Browse files
committed
Add completed_by_user
1 parent 0f74649 commit 64109c7

File tree

2 files changed

+21
-4
lines changed

2 files changed

+21
-4
lines changed

galahad/models.py

Lines changed: 17 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -360,7 +360,16 @@ class Task(models.Model):
360360
assignees = models.ManyToManyField(
361361
settings.AUTH_USER_MODEL,
362362
verbose_name=t('assignees'),
363-
related_name='galahad_task_set',
363+
related_name='galahad_assignee_task_set',
364+
)
365+
366+
completed_by_user = models.ForeignKey(
367+
settings.AUTH_USER_MODEL,
368+
verbose_name=t('completed by'),
369+
related_name='galahad_completed_by_task_set',
370+
on_delete=models.SET_NULL,
371+
blank=True,
372+
null=True,
364373
)
365374

366375
created = models.DateTimeField(auto_now_add=True, db_index=True)
@@ -409,11 +418,16 @@ def get_absolute_url(self):
409418
def node(self):
410419
return getattr(self.process, self.node_name)
411420

412-
def finish(self):
421+
def finish(self, user=None):
413422
self.completed = timezone.now()
414423
self.status = self.SUCCEEDED
424+
self.completed_by_user = user
415425
if self.pk:
416-
self.save(update_fields=['status', 'completed'])
426+
self.save(update_fields=[
427+
'status',
428+
'completed',
429+
'completed_by_user'
430+
])
417431
else:
418432
self.save()
419433

galahad/views.py

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,10 @@ def post(self, request, *args, **kwargs):
5656
response = super().post(request, *args, **kwargs)
5757
task = self.get_task()
5858
task.process = self.object
59-
task.finish()
59+
if request.user.is_authenticated:
60+
task.finish(request.user)
61+
else:
62+
task.finish()
6063
task.start_next_tasks()
6164
return response
6265

0 commit comments

Comments
 (0)