public ParameterModel UpdateParameter(ParameterModel model) { if (model == null) throw new ArgumentNullException("model"); Parameter ParameterInDb; using (var unitOfWork = new UnitOfWork(_connectionString)) { bool userAuthorised = UserAuthorizedToAccessSuite(unitOfWork, model.UserId, model.SuiteId, new[] {RoleType.Admin}); if (!userAuthorised) throw new UnauthorizedUserException( "User does not have access or sufficient privileges for this action to suite: " + model.SuiteId); ParameterInDb = unitOfWork.Context.Parameters.FirstOrDefault( x => x.ParameterId == model.ParameterId && x.SuiteId == model.SuiteId); if (ParameterInDb != null) { ParameterInDb.ParameterValue = model.ParameterValue; ParameterInDb.ParameterName = model.ParameterName; unitOfWork.Update(ParameterInDb); } else { throw new InvalidOperationException("No Parameter exists with id:" + model.ParameterId + " and suite id: " + model.SuiteId); } } return ParameterInDb.ToModel(); }
public ParameterModel AddParameter(ParameterModel model) { if (model == null) throw new ArgumentNullException("model"); Parameter appToReturn; using (var unitOfWork = new UnitOfWork(_connectionString)) { bool userAuthorised = UserAuthorizedToAccessSuite(unitOfWork, model.UserId, model.SuiteId, new[] {RoleType.Admin}); if (!userAuthorised) throw new UnauthorizedUserException( "User does not have access or sufficient privileges for this action to suite: " + model.SuiteId); appToReturn = model.ToNewDbObject(); unitOfWork.Add(appToReturn); } if (appToReturn != null) return appToReturn.ToModel(); return null; }