public Task <PagedGridResult <IEnumerable <EGMSPermissionRM> > > GetEGMSPermissionsForRole(int roleId) { ValidateRoleExists(roleId); IQueryable <RoleEGMSPermission> roleEGMSPermissions = _context.RoleEGMSPermissions.Where(rep => rep.RoleId == roleId); if (roleEGMSPermissions == null) { throw new InvalidOperationException("No EGMSPermissions found for role."); } List <EGMSPermission> egmsPermissions = new List <EGMSPermission>(); foreach (RoleEGMSPermission roleEGMSPermission in roleEGMSPermissions) { EGMSPermission egmsPermission = _context.EGMSPermissions.SingleOrDefault(ep => ep.Id == roleEGMSPermission.EGMSPermissionId); if (egmsPermission != null) { egmsPermissions.Add(egmsPermission); } } return(Task.FromResult(new PagedGridResult <IEnumerable <EGMSPermissionRM> > { Data = _mapper.Map <IEnumerable <EGMSPermissionRM> >(egmsPermissions), Total = egmsPermissions.Count })); }
// TO DO: No real reason other than to just return an ID public static EGMSPermissionRM GetEGMSPermissionRM(EGMSPermission permission) { return(new EGMSPermissionRM { Id = permission.Id, IsActive = permission.IsActive, PermissionName = permission.PermissionName, PermissionDescription = permission.PermissionDescription }); }
private EGMSPermissionRM CreateEGMSPermission(Commands.V1.EGMSPermission.Create cmd) { if (_repository.PermissionExists(cmd.PermissionName)) { throw new InvalidOperationException($"Permission with name {cmd.PermissionName} already exists"); } EGMSPermission permission = EGMSPermission.Create(_permissions++, PermissionName.Create(cmd.PermissionName), PermissionDescription.Create(cmd.PermissionDescription), cmd.IsActive); _repository.AddPermission(permission); return(Conversions.GetEGMSPermissionRM(permission)); }
public void AddPermission(EGMSPermission permission) { _context.EGMSPermissions.Add(permission); }