2025-05-06 10:35:11 +00:00
|
|
|
SELECT app_or_knowledge.*,
|
|
|
|
|
COALESCE(workspace_user_resource_permission.permission_list,'{}')::varchar[] as permission_list,
|
|
|
|
|
COALESCE(workspace_user_resource_permission.auth_type,'ROLE') as auth_type
|
|
|
|
|
FROM (SELECT "id",
|
|
|
|
|
"name",
|
|
|
|
|
'KNOWLEDGE' AS "auth_target_type",
|
|
|
|
|
user_id,
|
|
|
|
|
workspace_id,
|
2025-06-12 09:10:33 +00:00
|
|
|
"type"::varchar AS "icon",
|
|
|
|
|
folder_id
|
2025-05-06 10:35:11 +00:00
|
|
|
FROM knowledge
|
|
|
|
|
${knowledge_query_set}
|
2025-06-04 05:05:39 +00:00
|
|
|
UNION
|
|
|
|
|
SELECT "id",
|
|
|
|
|
"name",
|
|
|
|
|
'APPLICATION' AS "auth_target_type",
|
|
|
|
|
user_id,
|
|
|
|
|
workspace_id,
|
2025-06-12 09:10:33 +00:00
|
|
|
icon,
|
|
|
|
|
folder_id
|
2025-06-04 05:05:39 +00:00
|
|
|
FROM application
|
|
|
|
|
${application_query_set}
|
2025-06-26 06:20:57 +00:00
|
|
|
UNION
|
|
|
|
|
SELECT "id",
|
|
|
|
|
"name",
|
|
|
|
|
'TOOL' AS "auth_target_type",
|
|
|
|
|
user_id,
|
|
|
|
|
workspace_id,
|
|
|
|
|
icon,
|
|
|
|
|
folder_id
|
|
|
|
|
FROM tool
|
|
|
|
|
${tool_query_set}
|
|
|
|
|
UNION
|
|
|
|
|
SELECT "id",
|
|
|
|
|
"name",
|
|
|
|
|
'MODEL' AS "auth_target_type",
|
|
|
|
|
user_id,
|
|
|
|
|
workspace_id,
|
|
|
|
|
provider as icon,
|
|
|
|
|
'default' as folder_id
|
|
|
|
|
FROM model
|
|
|
|
|
${model_query_set}
|
2025-05-06 10:35:11 +00:00
|
|
|
) app_or_knowledge
|
|
|
|
|
LEFT JOIN (SELECT *
|
|
|
|
|
FROM workspace_user_resource_permission
|
|
|
|
|
${workspace_user_resource_permission_query_set}) workspace_user_resource_permission
|
|
|
|
|
ON workspace_user_resource_permission.target = app_or_knowledge."id";
|