private async Task HandleCourseAchievement(int userId, List <Achievement> achievementsForUser, Course course)
        {
            List <Course> coursesForUser = await courseRepo.GetCompletedCoursesForUser(userId);

            if (!coursesForUser.Contains(course))
            {
                await InsertUserCourse(userId, course.CourseId);

                Achievement achievementForCourseCompleted = await achievementService.GetAchievementForCourseCompleted(course.CourseId);

                if (achievementForCourseCompleted != null && !achievementsForUser.Contains(achievementForCourseCompleted))
                {
                    await achievementService.InsertUserAchievement(userId, achievementForCourseCompleted.AchievementId);
                }
            }
        }