private void FillRoleData(GroupViewModel model) { var groupId = model.Id == Guid.Empty ? ApplicationHelper.GetMainGroupId(this._dataSource) : model.Id; var mainGroupId = model.Id == Guid.Empty ? groupId : ApplicationHelper.GetMainGroupId(this._dataSource); model.Roles = this._roleManager.Query().Where(r => r.Name.ToLower() != PlatformConstants.ADMINROLE.ToLower() && (r.GroupId == groupId || r.GroupId == mainGroupId)).Select(r => new AssignRoleModel { Id = r.Id, Name = r.Name }).ToList(); model.Permissions = this._roleManager.PermissionQuery().Map <AssignPermissionModel>().ToList(); var permissionSet = this._roleManager.GetPermissionSetForGroup(StrixPlatform.User.GroupId).Map <AssignRoleModel>(); if (permissionSet != null) { this.SetPermissionSetSettings(model, permissionSet); } if (model.Id != Guid.Empty) { var groupRoles = this._roleManager.QueryForGroup(model.Id).Where(g => g.Name.ToLower() != Resources.DefaultValues.PermissionSetName.ToLower()).ToList(); foreach (var role in model.Roles) { var groupRole = groupRoles.FirstOrDefault(r => r.Id == role.Id); if (groupRole != null) { role.StartDate = groupRole.StartDate; role.EndDate = groupRole.EndDate; role.MaxNumberOfUsers = groupRole.MaxNumberOfUsers; role.CurrentNumberOfUsers = groupRole.CurrentNumberOfUsers; role.Selected = true; } } } var index = 0; foreach (var role in model.Roles) { role.Index = index; index++; } }
public IEnumerable List(FilterOptions filter) { var groupId = ApplicationHelper.GetMainGroupId(this._dataSource); return(this._groupManager.Query().Where(g => g.Id != groupId).Filter(filter).Map <GroupListModel>().ToList()); }