public IActionResult EditLimit(int limitId) { Limit limit = limitService.FindLimitId(limitId); EditLimitViewModel model = new EditLimitViewModel { Limit = limit, LimitInfo = new LimitInfoViewModel { LimitName = limit.LimitName, LimitAmount = limit.LimitAmount.ToString() } }; return(View(model)); }
public IActionResult EditLimit(EditLimitViewModel model) { validationService.ValidateLimitEditing(model, ModelState); if (ModelState.IsValid) { limitService.EditLimit(model.Limit.Id, model.LimitInfo); return(RedirectToAction("Index", "LimitPaymentCode")); } else { return(View(model)); } }
public ModelStateDictionary ValidateLimitEditing(EditLimitViewModel model, ModelStateDictionary ModelState) { Limit limit = limitService.FindLimitName(model.LimitInfo.LimitName); decimal amount = 0; if (limit != null && limit.Id != model.Limit.Id) { ModelState.AddModelError("LimitInfo.LimitName", "Такой лимит уже существует"); } if (!limitService.AmountTryParse(model.LimitInfo.LimitAmount, out amount)) { ModelState.AddModelError("LimitInfo.LimitAmount", "Введите число в формате xxx,xx"); } else if (amount <= 0) { ModelState.AddModelError("LimitInfo.LimitAmount", "Сумма лимита должна быть больше нуля"); } return(ModelState); }