diff --git a/AsbCloudApp/Services/IUserService.cs b/AsbCloudApp/Services/IUserService.cs index beb6e3d1..fe38eeb2 100644 --- a/AsbCloudApp/Services/IUserService.cs +++ b/AsbCloudApp/Services/IUserService.cs @@ -7,7 +7,7 @@ namespace AsbCloudApp.Services { IUserRoleService RoleService { get; } IEnumerable GetNestedPermissions(int idUser); - IEnumerable GetRolesByIdUser(int idUser); + IEnumerable GetRolesByIdUser(int idUser, int nestedLevel = 0); bool HasAnyRoleOf(int idUser, IEnumerable roleNames); bool HasAnyRoleOf(int idUser, IEnumerable roleIds); public bool HasPermission(int idUser, string permissionName); diff --git a/AsbCloudDb/UsefulQueries/timescale_restore_dump.sql b/AsbCloudDb/UsefulQueries/timescale_restore_dump.sql index daa347dd..c8dd8bf5 100644 --- a/AsbCloudDb/UsefulQueries/timescale_restore_dump.sql +++ b/AsbCloudDb/UsefulQueries/timescale_restore_dump.sql @@ -8,3 +8,4 @@ SELECT timescaledb_pre_restore(); SELECT timescaledb_post_restore(); +select * from t_telemetry_message ttm where id_event = 206; \ No newline at end of file diff --git a/AsbCloudInfrastructure/Services/UserService.cs b/AsbCloudInfrastructure/Services/UserService.cs index a4c06d17..a8512981 100644 --- a/AsbCloudInfrastructure/Services/UserService.cs +++ b/AsbCloudInfrastructure/Services/UserService.cs @@ -130,17 +130,17 @@ namespace AsbCloudInfrastructure.Services ?.Select(r => r.Caption) .Distinct(); - public IEnumerable GetRolesByIdUser(int idUser) + public IEnumerable GetRolesByIdUser(int idUser, int nestedLevel = 0) { var roles = cacheRelationUserToRoles.Where(r => r.IdUser == idUser); if (roles?.Any() != true) return null; - return roles.SelectMany(r => RoleService.GetNestedById(r.IdUserRole, 0)); + return roles.SelectMany(r => RoleService.GetNestedById(r.IdUserRole, nestedLevel)); } public IEnumerable GetNestedPermissions(int idUser) { - var roles = GetRolesByIdUser(idUser); + var roles = GetRolesByIdUser(idUser, 7); if(roles?.Any() != true) return null; var permissions = roles