MaxKB/apps/tools/sql/list_tool.sql

43 lines
1.6 KiB
SQL

select *
from (select tool."id"::text,
tool."name",
tool."desc",
tool."tool_type",
tool."scope",
'tool' as "resource_type",
tool."workspace_id",
tool."folder_id",
tool."user_id",
"user".nick_name as "nick_name",
tool."icon",
tool.label,
tool."template_id"::text,
tool."create_time",
tool."update_time",
tool.init_field_list,
tool.input_field_list,
tool."is_active"
from tool
left join "user" on "user".id = user_id ${tool_scope_query_set}
UNION
select tool_folder."id",
tool_folder."name",
tool_folder."desc",
'folder' as "tool_type",
'' as scope,
'folder' as "resource_type",
tool_folder."workspace_id",
tool_folder."parent_id" as "folder_id",
tool_folder."user_id",
"user".nick_name as "nick_name",
'' as "icon",
'' as label,
'' as "template_id",
tool_folder."create_time",
tool_folder."update_time",
'[]'::jsonb as init_field_list,
'[]'::jsonb as input_field_list,
'true' as "is_active"
from tool_folder
left join "user" on "user".id = user_id ${folder_query_set}) temp
${tool_query_set}