protected bool ValidateHolidayWorkEditModel(HolidayWorkEditModel model) { if (model.IsTypeEditable) { //if (!string.IsNullOrEmpty(model.Rate)) //{ // int rate; // if (!Int32.TryParse(model.Rate, out rate)) // ModelState.AddModelError("Rate", "Неправильное поле 'Часовая тарифная ставка'."); // else if (rate <= 0) // ModelState.AddModelError("Rate", // "Поле 'Часовая тарифная ставка' должно быть положительным числом."); //} if (!string.IsNullOrEmpty(model.Hours)) { int hours; if (!Int32.TryParse(model.Hours, out hours)) ModelState.AddModelError("Hours", "Неправильное поле 'Кол-во отработанных часов'."); else if (hours <= 0 || hours > 24) ModelState.AddModelError("Hours", "Поле 'Кол-во отработанных часов' должно быть положительным числом меньшим 25."); } } return ModelState.IsValid; }
public ActionResult HolidayWorkEdit(HolidayWorkEditModel model) { CorrectCheckboxes(model); CorrectDropdowns(model); if (!ValidateHolidayWorkEditModel(model)) { RequestBl.ReloadDictionariesToModel(model); return View(model); } string error; if (!RequestBl.SaveHolidayWorkEditModel(model, out error)) { if (model.ReloadPage) { ModelState.Clear(); if (!string.IsNullOrEmpty(error)) ModelState.AddModelError("", error); return View(RequestBl.GetHolidayWorkEditModel(model.Id, model.UserId)); } if (!string.IsNullOrEmpty(error)) ModelState.AddModelError("", error); } return View(model); }
protected void CorrectDropdowns(HolidayWorkEditModel model) { if (!model.IsTypeEditable) model.TypeId = model.TypeIdHidden; if (!model.IsTimesheetStatusEditable) model.TimesheetStatusId = model.TimesheetStatusIdHidden; }