public ActionResult Edit(int id, ProblemEditPe pe) { var problem = _problemRepository.GetById(id); problem.Status = pe.status; problem.Description = pe.description; problem.FixedInVersion = pe.fixedInVersion; problem.ShortDescription = pe.shortDescription; _problemRepository.Save(problem); return(Json("ok")); }
public IActionResult Add([FromForm] ProblemViewModel problem) { if (ModelState.IsValid) { var problemNew = new Problem { ProblemId = Guid.NewGuid(), ProblemName = problem.ProblemName, ProblemContent = problem.ProblemContent, Dificulty = problem.Dificulty, Visible = problem.Visible, MemoryLimit = problem.MemoryLimit, TimeLimit = problem.TimeLimit }; //create problem directory via api (linux hosted) _problemRepository.Create(problemNew); _problemRepository.Save(); return(RedirectToAction("Index")); } return(View()); }
public GeneralResponse EditProblem(EditProblemRequest request) { GeneralResponse response = new GeneralResponse(); Problem problem = new Problem(); problem = _problemRepository.FindBy(request.ID); if (problem != null) { try { problem.ModifiedDate = PersianDateTime.Now; problem.ModifiedEmployee = _employeeRepository.FindBy(request.ModifiedEmployeeID); problem.Priority = request.Priority; problem.ProblemDescription = request.ProblemDescription; problem.ProblemTitle = request.ProblemTitle; problem.State = request.State; #region RowVersion if (problem.RowVersion != request.RowVersion) { response.ErrorMessages.Add("EditConcurrencyKey"); return(response); } else { problem.RowVersion += 1; } #endregion #region Validation if (problem.GetBrokenRules().Count() > 0) { foreach (BusinessRule businessRule in problem.GetBrokenRules()) { response.ErrorMessages.Add(businessRule.Rule); } return(response); } #endregion _problemRepository.Save(problem); _uow.Commit(); ////response.success = true; } catch (Exception ex) { response.ErrorMessages.Add(ex.Message); } } else { response.ErrorMessages.Add("NoItemToEditKey"); } return(response); }