From 4598c11a895aa8efd8140722d01601dffa067666 Mon Sep 17 00:00:00 2001 From: tanglong <842690096@qq.com> Date: Fri, 12 Jun 2026 10:13:17 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9D=83=E9=99=90=E6=9F=A5=E8=AF=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../directory/EmployeeDirectoryService.java | 37 ++++++++++++------- 1 file changed, 23 insertions(+), 14 deletions(-) diff --git a/src/main/java/com/company/agentfoundation/directory/EmployeeDirectoryService.java b/src/main/java/com/company/agentfoundation/directory/EmployeeDirectoryService.java index cd5aac6..9995217 100644 --- a/src/main/java/com/company/agentfoundation/directory/EmployeeDirectoryService.java +++ b/src/main/java/com/company/agentfoundation/directory/EmployeeDirectoryService.java @@ -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 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 permissions = findPermissions(accounts.get(0).id()); return Optional.of(new EmployeeDirectoryResponse(accounts.get(0), permissions)); } + + private List 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(); + } + } }