权限查询

This commit is contained in:
tanglong 2026-06-12 10:13:17 +08:00
parent 060c1a5d1f
commit 4598c11a89

View File

@ -3,6 +3,7 @@ package com.company.agentfoundation.directory;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.stereotype.Service;
import java.util.Collections;
import java.util.List;
import java.util.Optional;
@ -45,21 +46,29 @@ public class EmployeeDirectoryService {
return Optional.empty();
}
List<EmployeeDataPermission> permissions = jdbcTemplate.query("""
SELECT source_system, permission_type, scope_path, scope_name
FROM employee_data_permission
WHERE employee_id = ?
ORDER BY source_system, permission_type, scope_path
""",
(rs, rowNum) -> new EmployeeDataPermission(
rs.getString("source_system"),
rs.getString("permission_type"),
rs.getString("scope_path"),
rs.getString("scope_name")
),
accounts.get(0).id()
);
List<EmployeeDataPermission> permissions = findPermissions(accounts.get(0).id());
return Optional.of(new EmployeeDirectoryResponse(accounts.get(0), permissions));
}
private List<EmployeeDataPermission> findPermissions(Long employeeId) {
try {
return jdbcTemplate.query("""
SELECT source_system, permission_type, scope_path, scope_name
FROM employee_data_permission
WHERE employee_id = ?
ORDER BY source_system, permission_type, scope_path
""",
(rs, rowNum) -> new EmployeeDataPermission(
rs.getString("source_system"),
rs.getString("permission_type"),
rs.getString("scope_path"),
rs.getString("scope_name")
),
employeeId
);
} catch (Exception ignored) {
return Collections.emptyList();
}
}
}