public HttpResponse Create(CreateProblemViewModel model)
        {
            var errors = this.validatorService.ProblemValidation(model);

            if (errors.Any())
            {
                return(this.Error(errors));
            }

            this.problemService.CreateProblem(model);
            return(this.Redirect("/Home/IndexLoggedIn"));
        }
        public void CreateProblem(CreateProblemViewModel model)
        {
            var problem = new Problem()
            {
                Name   = model.Name,
                Points = model.Points,
            };

            this.db.Problems.Add(problem);

            this.db.SaveChanges();
        }
        public IEnumerable <string> ProblemValidation(CreateProblemViewModel model)
        {
            if (model.Name == null)
            {
                this.errors.Add("Error");
            }
            else if (model.Name.Length < 5 || model.Name.Length > 20)
            {
                this.errors.Add("error");
            }

            if (model.Points == 0)
            {
                this.errors.Add("Error");
            }
            else if (model.Points < 50 || model.Points > 300)
            {
                this.errors.Add("error");
            }

            return(this.errors);
        }
Esempio n. 4
0
        public CreateProblemResponseViewModel CreateProblem(CreateProblemViewModel createProblemViewModel)
        {
            var newProblem = new Problem
            {
                AuthorId    = new Guid(createProblemViewModel.AuthorId),
                Title       = createProblemViewModel.Title,
                Description = createProblemViewModel.Description,
            };

            foreach (var attachements in createProblemViewModel.Attachments)
            {
                newProblem.ProblemAttachments.Add(new ProblemAttachment
                {
                    FileId = attachements.FileId
                });
            }

            _problemService.InsertProblem(newProblem);

            return(new CreateProblemResponseViewModel
            {
                CreatedProblem = (_problemService.GetProblemById(newProblem.Id))
            });
        }
 public CreateProblemResponseViewModel CreateProblem([FromBody] CreateProblemViewModel createProblemViewModel)
 {
     return(_createProblemService.CreateProblem(createProblemViewModel));
 }