private static IFlyRepository CreateFlyRepository() { var flyRepo = new Mock<IFlyRepository>(); var flys = new List<Fly> { new Fly{Id = 1, Description = "First Fly", DateOfFly = DateTime.Now, Owner = new FlyOwner{Id = 1, Name = "Paulo" } }, new Fly{Id = 2, Description = "Second Fly", DateOfFly = DateTime.Now, Owner = new FlyOwner{Id = 1, Name = "Paulo" } }, new Fly{Id = 3, Description = "Third Fly", DateOfFly = DateTime.Now, Owner = new FlyOwner{Id = 1, Name = "Paulo" } } }; flyRepo.Setup(s => s.GetAll()).Returns(flys.AsQueryable()); return flyRepo.Object; }
private List<RolePermissionModel> GetRolePermissionsQuery(Guid id, [FromUri] JqGridSearchModel searchModel, out int totalNumber, int maxRecords = Constants.DEFAULT_MAX_RECORDS_RETURN) { if (id == default(Guid)) throw new ArgumentNullException("Role id cannot be empty."); int startRow = (searchModel.page * searchModel.rows) + 1; int skip = (searchModel.page > 0 ? searchModel.page - 1 : 0) * searchModel.rows; Role role = _roleService.GetById(id); List<Permission> allPermission = _permissionService.GetAllPermissions(); List<RolePermissionModel> rolePermissions = new List<RolePermissionModel>(); foreach (var permission in allPermission) { bool hasPermission = role.Permissions.AsQueryable().Any(x => x.Id == permission.Id); rolePermissions.Add(new RolePermissionModel { Id = permission.Id, Name = permission.Name, Description = permission.Description, HasPermission = hasPermission }); } //note - these queries require "using System.Dynamic.Linq" library IQueryable<RolePermissionModel> query = rolePermissions.AsQueryable(); var data = Web.Infrastructure.Util.GetGridData<RolePermissionModel>(searchModel, query); totalNumber=data.TotalNumber; return data.Items.ToList(); }
private Web.Infrastructure.GridModel<UserRoleModel> GetUserRolesQuery(Guid id, [FromUri] JqGridSearchModel searchModel) { if (id == default(Guid)) throw new ArgumentNullException("User id cannot be empty."); int startRow = (searchModel.page * searchModel.rows) + 1; int skip = (searchModel.page > 0 ? searchModel.page - 1 : 0) * searchModel.rows; //if (!HasPermission(id, Constants.ROLE_ADMIN)) // throw new Exception("Unauthorized"); NhUserAccount user = _userService.GetById(id); List<Role> allRoles = _roleService.GetAllRoles(); if (!User.IsInRole(Constants.ROLE_ADMIN)) allRoles = allRoles.Where(x => x.Name != Constants.ROLE_ADMIN).ToList(); List<UserRoleModel> userRoles = new List<UserRoleModel>(); foreach (Role role in allRoles) { bool hasRole = user.Roles.AsQueryable().Any(x => x.Id == role.Id); //userRoleEditModel.Roles.Add(new UserRoleModel { UserId=id, Role = role, HasRole = hasRole }); userRoles.Add(new UserRoleModel { Id = role.Id, Name = role.Name, Description = role.Description, HasRole = hasRole }); } var query = userRoles.AsQueryable(); var data = Web.Infrastructure.Util.GetGridData<UserRoleModel>(searchModel, query); return data; }