Example #1
0
        public async Task <IActionResult> Review(AssignmentReviewInputModel input)
        {
            if (!this.ModelState.IsValid)
            {
                return(RedirectToAction("Results"));
            }

            var maxPoints = this.assignmentService.GetMaxPoints(input.AssignmentId);

            if (input.Points > maxPoints)
            {
                return(RedirectToAction("Results"));
            }

            await this.assignmentService.Review(input);

            return(RedirectToAction("Results"));
        }
Example #2
0
        public async Task Review(AssignmentReviewInputModel input)
        {
            var assignmentResult = this.context.AssignmentResults
                                   .FirstOrDefault(x => x.AssignmentId == input.AssignmentId && x.StudentId == input.StudentId);

            var assignment = this.context.Assignments
                             .FirstOrDefault(x => x.Id == input.AssignmentId);

            if (assignment == null)
            {
                return;
            }

            if (input.Points < 0 || input.Points > assignment.Points)
            {
                return;
            }

            assignmentResult.Points = input.Points;
            assignmentResult.Stage  = 3;

            this.context.AssignmentResults.Update(assignmentResult);
            await this.context.SaveChangesAsync();
        }