예제 #1
0
        public async Task AssignExerciseToUsers(int GroupId, int ExerciseId, AssignExerciseVM assignExerciseVM)
        {
            var assignments = await groupRepository.getMembers(GroupId);

            var exercise = await context.Exercises.FirstOrDefaultAsync(x => x.ExerciseId == ExerciseId);

            foreach (var item in assignments)
            {
                if (userService.CheckIfUserHasPermission("Wykonanie zadania", GroupId, item.UserId) == true)
                {
                    var newSolving = new Solving()
                    {
                        AssignmentId        = item.AssignmentId,
                        Status              = "Do wykonania",
                        CreatedAt           = DateTime.Now,
                        ProgrammingLanguage = "Not now",
                        Exercise            = exercise,
                        ExerciseId          = ExerciseId,
                        DeadLine            = DateTime.ParseExact(assignExerciseVM.DeadLineString, "dd-MM-yyyy HH:mm", System.Globalization.CultureInfo.InvariantCulture),
                        SentAt              = DateTime.MinValue,
                        Configuration       = assignExerciseVM.Configuration
                    };
                    await context.Solvings.AddAsync(newSolving);

                    await context.SaveChangesAsync();
                }
            }
        }
예제 #2
0
        public async Task <IActionResult> AssignExerciseToUsers(int GroupId, int ExerciseId)
        {
            AssignExerciseVM assignExerciseVM = new AssignExerciseVM();

            assignExerciseVM.Exercise = await exerciseRepository.GetExerciseById(ExerciseId);

            return(View(assignExerciseVM));
        }
예제 #3
0
 public async Task <IActionResult> AssignExerciseToUsers(int GroupId, int ExerciseId, AssignExerciseVM assignExerciseVM)
 {
     if (ModelState.IsValid)
     {
         await exerciseRepository.AssignExerciseToUsers(GroupId, ExerciseId, assignExerciseVM);
     }
     return(RedirectToAction("Index"));
 }