Files
AuthServer/src/main/java/ru/copperside/service/DebugAuthService.java
2025-11-27 14:24:10 +03:00

50 lines
1.8 KiB
Java

package ru.copperside.service;
import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Service;
import ru.copperside.model.authinfo.SecretData;
import ru.copperside.model.dto.RolePermissionDto;
import ru.copperside.model.enums.AuthenticationType;
import ru.copperside.model.permission.Permission;
import ru.copperside.model.session.SessionSettings;
import ru.copperside.repository.PermissionsRepository;
import ru.copperside.repository.SecretRepository;
import ru.copperside.repository.SettingsRepository;
import java.util.List;
@Service
@RequiredArgsConstructor
public class DebugAuthService {
private final SecretRepository secretRepository;
private final PermissionsRepository permissionsRepository;
private final SettingsRepository settingsRepository;
public SecretData getSecretData(String dataId, String type) {
// если не указали type — считаем Secret
String resolvedType = (type == null || type.isBlank())
? AuthenticationType.Secret.name()
: type;
return secretRepository.findByDataIdAndType(dataId, resolvedType)
.orElseThrow(() ->
new IllegalArgumentException("Secret not found: dataId=" + dataId + ", type=" + resolvedType));
}
public List<RolePermissionDto> byHierarchy(Long hierarchyId) {
return permissionsRepository.findRoleByHierarchyId(hierarchyId);
}
public List<RolePermissionDto> PersonalbyHierarchy(Long hierarchyId) {
return permissionsRepository.findPersonalByHierarchyId(hierarchyId);
}
public List<Permission> getPermissions(Long hierarchyId) {
return permissionsRepository.findCompiledByHierarchyId(hierarchyId);
}
public SessionSettings getMerged(Long authId) {
return settingsRepository.loadMerged(authId);
}
}