public ActionResult Create(SpecialNumberDetailView specialNumberDetailView) { specialNumberDetailView.EmployeeView = GetEmployee(); #region Access Check bool hasPermission = GetEmployee().IsGuaranteed("SpecialNumbers_Insert"); if (!hasPermission) { ModelState.AddModelError("", "AccessDenied"); return(View(specialNumberDetailView)); } #endregion if (ModelState.IsValid) { try { AddSpecialNumberRequestOld request = new AddSpecialNumberRequestOld(); request.CreateEmployeeID = GetEmployee().ID; request.FromNumber = specialNumberDetailView.SpecialNumberView.FromNumber; request.ToNumber = specialNumberDetailView.SpecialNumberView.ToNumber; request.Note = specialNumberDetailView.SpecialNumberView.Note; GeneralResponse response = this._specialNumberService.AddSpecialNumber(request); if (response.success) { return(RedirectToAction("Index")); } else { foreach (string error in response.ErrorMessages) { ModelState.AddModelError("", error); } return(View(specialNumberDetailView)); } } catch (Exception ex) { ModelState.AddModelError("", ex.Message); return(View(specialNumberDetailView)); } } return(View(specialNumberDetailView)); }
public GeneralResponse AddSpecialNumber(AddSpecialNumberRequestOld request) { GeneralResponse response = new GeneralResponse(); try { SpecialNumber specialNumber = new SpecialNumber(); specialNumber.ID = Guid.NewGuid(); specialNumber.CreateDate = PersianDateTime.Now; specialNumber.CreateEmployee = _employeeRepository.FindBy(request.CreateEmployeeID); specialNumber.FromNumber = request.FromNumber; specialNumber.Note = request.Note; specialNumber.ToNumber = request.ToNumber; specialNumber.RowVersion = 1; _specialNumberRepository.Add(specialNumber); _uow.Commit(); ////response.success = true; // Validation if (specialNumber.GetBrokenRules().Count() > 0) { ////response.success = false; foreach (BusinessRule businessRule in specialNumber.GetBrokenRules()) { response.ErrorMessages.Add(businessRule.Rule); } return(response); } } catch (Exception ex) { ////response.success = false; response.ErrorMessages.Add(ex.Message); } return(response); }