select [Id], [UserName] AS [Login], [Password] AS [Password], [Name] AS [Nombre],
[Surname] AS [Apellidos], [Huella],Roles.Permiso,Roles.Tipo
from dbo.[Empleado] INNER JOIN (select PermisoUsuario.UserID, CASE WHEN RolVendedor.RoleId IS NULL THEN 1 ELSE 2 END AS [Tipo], sum(case when Name = 'Tickets' then POWER(2,1) when Name = 'Panel' then POWER(2,2) when Name = 'Notificaciones' then POWER(2,3) when Name = 'TieneEmpleadosACargo ' then POWER(2,4) else 0 end) as Permiso from (SELECT DISTINCT AbpUserRoles.UserId,dbo.AbpPermissions.Name as Name FROM dbo.AbpUserRoles INNER JOIN dbo.AbpRoles ON dbo.AbpUserRoles.RoleId = dbo.AbpRoles.Id INNER JOIN dbo.AbpPermissions ON AbpRoles.Id = AbpPermissions.RoleId ) as PermisoUsuario LEFT JOIN (SELECT UserId, RoleId From dbo.AbpUserRoles INNER JOIN dbo.AbpRoles ON dbo.AbpUserRoles.RoleId = dbo.AbpRoles.Id WHERE Name = 'Vendedor') As RolVendedor ON PermisoUsuario.UserID=RolVendedor.User_ID group by PermisoUsuario.UserID,CASE WHEN RolVendedor.RoleId IS NULL THEN 1 ELSE 2 END) as Roles ON Empleado.Id=RolesUserId