public GeneralResponse EditLevelLevel(EditLevelLevelRequest request) { GeneralResponse response = new GeneralResponse(); LevelLevel levelLevel = new LevelLevel(); levelLevel = _levelLevelRepository.FindBy(request.ID); if (levelLevel != null) { try { levelLevel.ModifiedDate = PersianDateTime.Now; levelLevel.ModifiedEmployee = _employeeRepository.FindBy(request.ModifiedEmployeeID); if (request.LevelID != levelLevel.Level.ID) { levelLevel.Level = this._levelRepository.FindBy(request.LevelID); } if (request.NextLevelID != levelLevel.RelatedLevel.ID) { levelLevel.RelatedLevel = this._levelRepository.FindBy(request.NextLevelID); } if (levelLevel.RowVersion != request.RowVersion) { response.ErrorMessages.Add("EditConcurrencyKey"); return(response); } else { levelLevel.RowVersion += 1; } if (levelLevel.GetBrokenRules().Count() > 0) { foreach (BusinessRule businessRule in levelLevel.GetBrokenRules()) { response.ErrorMessages.Add(businessRule.Rule); } return(response); } _levelLevelRepository.Save(levelLevel); _uow.Commit(); ////response.success = true; } catch (Exception ex) { response.ErrorMessages.Add(ex.Message); } } else { response.ErrorMessages.Add("NoItemToEditKey"); } return(response); }
public GeneralResponse AddLevelLevels(IEnumerable <AddLevelLevelRequest> requests) { GeneralResponse response = new GeneralResponse(); try { foreach (var request in requests) { LevelLevel levelLevel = new LevelLevel(); levelLevel.Level = this._levelRepository.FindBy(request.LevelID); levelLevel.RelatedLevel = this._levelRepository.FindBy(request.NextLevelID); #region Validation if (levelLevel.GetBrokenRules().Count() > 0) { foreach (BusinessRule businessRule in levelLevel.GetBrokenRules()) { response.ErrorMessages.Add(businessRule.Rule); } return(response); } #endregion // ارتباط قبلا ثبت نشده باشد if (GetLevelLevel(request.LevelID, request.NextLevelID).LevelLevelView.LevelID != Guid.Empty) { response.ErrorMessages.Add("RelationAlreadStored"); return(response); } // خود مرحله به عنوان مرحله بعد انتخاب نشود if (request.LevelID == request.NextLevelID) { response.ErrorMessages.Add("MainAndNextAreTheSame"); } _levelLevelRepository.Add(levelLevel); } _uow.Commit(); } catch (Exception ex) { response.ErrorMessages.Add(ex.Message); } return(response); }
public GeneralResponse AddLevelLevel(AddLevelLevelRequest request) { GeneralResponse response = new GeneralResponse(); try { LevelLevel levelLevel = new LevelLevel(); levelLevel.Level = this._levelRepository.FindBy(request.LevelID); levelLevel.RelatedLevel = this._levelRepository.FindBy(request.NextLevelID); #region Validation if (levelLevel.GetBrokenRules().Count() > 0) { foreach (BusinessRule businessRule in levelLevel.GetBrokenRules()) { response.ErrorMessages.Add(businessRule.Rule); } return(response); } #endregion if (GetLevelLevel(request.LevelID, request.NextLevelID).LevelLevelView.LevelID != Guid.Empty) { response.ErrorMessages.Add("ThisComminicutionAllreadysavedkey"); return(response); } _levelLevelRepository.Add(levelLevel); _uow.Commit(); ////response.success = true; } catch (Exception ex) { response.ErrorMessages.Add(ex.Message); } return(response); }