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); }
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)); }