Interface ICatalogDependencyService
- Namespace
- KadicAuth.Application.Catalog.Abstractions
- Assembly
- KadicAuth.Application.dll
Responde "que se rompe si desactivo esto" para los tres niveles del catalogo de Auth.
Antes de esto no existia ninguna comprobacion: desactivar un modulo no miraba sus submodulos ni los tenants que lo tenian contratado, y los dejaba activos colgando de algo inactivo.
Se usa en dos sitios y por eso devuelve el detalle en vez de un booleano:
las guardas de los handlers (que construyen el 409) y los endpoints
GET .../dependencies, que permiten a la UI avisar antes de
que el usuario pulse.
Importante: todas las consultas ignoran los filtros globales de tenant. `AuthDbContext` aplica un filtro por `TenantId` a toda entidad que tenga esa propiedad, lo que incluye TenantModules, TenantSubModules y TenantRoles. Sin `IgnoreQueryFilters()` un PlatformAdmin solo veria las dependencias de SU tenant y la guarda diria "sin dependencias" en falso, que es justo el fallo que viene a evitar.
public interface ICatalogDependencyService
Methods
GetModuleDependenciesAsync(Guid, CancellationToken)
Task<ModuleDependencies> GetModuleDependenciesAsync(Guid moduleId, CancellationToken cancellationToken = default)
Parameters
moduleIdGuidcancellationTokenCancellationToken
Returns
- Task<ModuleDependencies>
GetPermissionDependenciesAsync(Guid, CancellationToken)
Task<PermissionDependencies> GetPermissionDependenciesAsync(Guid permissionId, CancellationToken cancellationToken = default)
Parameters
permissionIdGuidcancellationTokenCancellationToken
Returns
- Task<PermissionDependencies>
GetSubModuleDependenciesAsync(Guid, CancellationToken)
Task<SubModuleDependencies> GetSubModuleDependenciesAsync(Guid subModuleId, CancellationToken cancellationToken = default)
Parameters
subModuleIdGuidcancellationTokenCancellationToken
Returns
- Task<SubModuleDependencies>