Example #1
0
        public async Task <IActionResult> Post([FromBody] GradeViewModel viewModel)
        {
            if (!ModelState.IsValid)
            {
                var excpetion = new
                {
                    error = ResultFormatter.FormatErrorMessage(ModelState)
                };
                return(new BadRequestObjectResult(excpetion));
            }
            try
            {
                VerifyUser();
                ValidateService.Validate(viewModel);
                var result = await _service.Create(viewModel);

                return(Created(HttpContext.Request.Path, result));
            }
            catch (ServiceValidationException ex)
            {
                var Result = new
                {
                    error      = ResultFormatter.Fail(ex),
                    apiVersion = "1.0.0",
                    statusCode = HttpStatusCode.BadRequest,
                    message    = "Data does not pass validation"
                };

                return(new BadRequestObjectResult(Result));
            }
            catch (Exception ex)
            {
                return(StatusCode((int)HttpStatusCode.InternalServerError, ex.Message));
            }
        }
Example #2
0
        public IActionResult Create(GradeCreateViewModel gradeCreateViewModel)
        {
            if (ModelState.IsValid)
            {
                var createGradeResponse = _gradeService.Create(new CreateGradeRequest
                {
                    CourseID    = gradeCreateViewModel.GradeView.CourseID,
                    GradeNumber = gradeCreateViewModel.GradeView.GradeNumber,
                    Value       = gradeCreateViewModel.GradeView.Value,
                    Note        = gradeCreateViewModel.GradeView.Note,
                });

                if (createGradeResponse.IsSuccess == true)
                {
                    return(RedirectToAction("Index"));
                }
                else
                {
                    ModelState.AddModelError(string.Empty, "Create Grade Error");
                    gradeCreateViewModel.SelectListItems = PopulateCoursesDropDownList();
                    return(View("Create", gradeCreateViewModel));
                }
            }
            else
            {
                gradeCreateViewModel.SelectListItems = PopulateCoursesDropDownList();
                ModelState.AddModelError(string.Empty, "Invalid Input Error");
                return(View("Create", gradeCreateViewModel));
            }
        }
Example #3
0
        public ActionResult Work(List <AnswersVM> resultQuiz)
        {
            List <AnswersVM> finalResultQuiz = new List <AnswersVM>();

            foreach (AnswersVM answser in resultQuiz)
            {
                if (answser.Answer != null)
                {
                    AnswersVM result = questionService.GetAll().Where(x => x.ID == answser.QuestionID)
                                       .FirstOrDefault().Answers.Where(d => d.Correct).Select(a => new AnswersVM
                    {
                        QuestionID = answser.QuestionID,
                        Answer     = a.Desctiption,
                        IsCorrect  = a.Desctiption.ToLower().Equals(answser.Answer.ToLower())
                    }).FirstOrDefault();

                    finalResultQuiz.Add(result);
                }
                else
                {
                    AnswersVM result = questionService.GetAll().Where(x => x.ID == answser.QuestionID)
                                       .FirstOrDefault().Answers.Where(d => d.Correct).Select(a => new AnswersVM
                    {
                        QuestionID = answser.QuestionID,
                        Answer     = a.Desctiption,
                        IsCorrect  = false
                    }).FirstOrDefault();

                    finalResultQuiz.Add(result);
                }
            }
            int count = 0, correct = 0;

            foreach (var item in finalResultQuiz)
            {
                ++count;
                if (item.IsCorrect)
                {
                    ++correct;
                }
            }
            var question = questionService.GetAll().Where(x => x.ID == finalResultQuiz[0].QuestionID).FirstOrDefault();

            if (question != null)
            {
                var    identity = (ClaimsIdentity)User.Identity;
                var    id       = identity.Claims.FirstOrDefault(x => x.Type == ClaimTypes.NameIdentifier).Value;
                var    user     = userService.Get(int.Parse(id));
                double mark     = (double)correct / count;
                var    grade    = new Grade
                {
                    TestID = question.TestID,
                    UserID = user.ID,
                    Value  = mark
                };

                gradeService.Create(grade);
            }
            return(Json(new { result = finalResultQuiz }, JsonRequestBehavior.AllowGet));
        }
        public ActionResult Create([Bind(Include = "ID,Value,UserID,TestID")] Grade grade)
        {
            if (ModelState.IsValid)
            {
                gradeService.Create(grade);
                return(RedirectToAction("Index"));
            }

            ViewBag.TestID = new SelectList(testService.GetAll(), "ID", "Title", grade.TestID);
            ViewBag.UserID = new SelectList(userService.GetAll().Where(x => x.Role.Value.Equals("Студент")), "ID", "Name");
            return(View(grade));
        }
Example #5
0
        public IActionResult Create([FromBody] GradeCreateModel model, int studentId)
        {
            var grade = _mapper.Map <Grade>(model);

            try
            {
                _gradeService.Create(grade, studentId);
                return(Ok());
            }
            catch (AppException ex)
            {
                return(BadRequest(new { message = ex.Message }));
            }
        }
Example #6
0
        public IActionResult Create([FromBody] GradeDto gradeDto)
        {
            // map dto to entity and set id
            Grade c = _mapper.Map <Grade>(gradeDto);

            try
            {
                // save
                c = _gradeService.Create(c);
                return(Ok(_mapper.Map <GradeDto>(c)));
            }
            catch (AppException ex)
            {
                // return error message if there was an exception
                return(BadRequest(ex.Message));
            }
        }
Example #7
0
        public async Task <IActionResult> CreateGrade([FromBody] GradeCreationDto gradeCreationDto)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            try
            {
                var grade = await gradeService.Create(gradeCreationDto);

                return(Ok(grade));
            }
            catch (ExamNotFoundException examNotFoundException)
            {
                return(NotFound(examNotFoundException.Message));
            }
            catch (StudentNotFoundException studentNotFoundException)
            {
                return(NotFound(studentNotFoundException.Message));
            }
        }
Example #8
0
 public ActionResult <Grade> Create(Grade grade)
 {
     _gradeService.Create(grade);
     return(CreatedAtRoute("GetGrade", new { id = grade.Id.ToString() }, grade));
 }