From db731f5295118799d5e35bc6cbb46c2a47874a85 Mon Sep 17 00:00:00 2001 From: Livio Bieri Date: Thu, 1 Feb 2024 19:04:16 +0100 Subject: [PATCH] feat: send notification --- .../self_evaluation_feedback/views.py | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/server/vbv_lernwelt/self_evaluation_feedback/views.py b/server/vbv_lernwelt/self_evaluation_feedback/views.py index e6842b3f..2bb02376 100644 --- a/server/vbv_lernwelt/self_evaluation_feedback/views.py +++ b/server/vbv_lernwelt/self_evaluation_feedback/views.py @@ -8,6 +8,7 @@ from vbv_lernwelt.core.models import User from vbv_lernwelt.course.models import CourseCompletion from vbv_lernwelt.learning_mentor.models import LearningMentor from vbv_lernwelt.learnpath.models import LearningUnit +from vbv_lernwelt.notify.services import NotificationService from vbv_lernwelt.self_evaluation_feedback.models import ( CourseCompletionFeedback, SelfEvaluationFeedback, @@ -33,15 +34,16 @@ def start_self_evaluation_feedback(request, learning_unit_id): raise PermissionDenied() # calling start multiple times shall be a no-op - _, created = SelfEvaluationFeedback.objects.get_or_create( + feedback, created = SelfEvaluationFeedback.objects.get_or_create( feedback_requester_user=request.user, feedback_provider_user=feedback_provider_user, learning_unit=learning_unit, ) if created: - # TODO: Create notification for feedback_provider_user - ... + NotificationService.send_self_evaluation_feedback_request_feedback_notification( + self_evaluation_feedback=feedback + ) return Response({"success": True}) @@ -53,10 +55,15 @@ def release_provider_self_evaluation_feedback(request, feedback_id): SelfEvaluationFeedback, id=feedback_id, feedback_provider_user=request.user ) + if feedback.feedback_submitted: + return Response({"success": True}) + feedback.feedback_submitted = True feedback.save() - # TODO: Create notification for feedback_requester_user + NotificationService.send_self_evaluation_feedback_received_notification( + self_evaluation_feedback=feedback + ) return Response({"success": True})