From 2c04f71115ad14bda04e0abe056dcc89f5e791c1 Mon Sep 17 00:00:00 2001 From: taojinlong Date: Mon, 24 Mar 2025 17:28:06 +0800 Subject: [PATCH] Pr@dev v2@fixpg (#15470) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * fix:抽取数据类型 * fix: 数据源插件里实现获取飞书token * fix: 【数据源】PostgreSql 数据源,可获取视图 、实体化视图 #15429 --------- Co-authored-by: taojinlong --- .../datasource/provider/CalciteProvider.java | 23 +++++++++++++++++++ .../datasource/server/DatasourceServer.java | 2 +- 2 files changed, 24 insertions(+), 1 deletion(-) diff --git a/core/core-backend/src/main/java/io/dataease/datasource/provider/CalciteProvider.java b/core/core-backend/src/main/java/io/dataease/datasource/provider/CalciteProvider.java index 56a149702c..d6a665e0da 100644 --- a/core/core-backend/src/main/java/io/dataease/datasource/provider/CalciteProvider.java +++ b/core/core-backend/src/main/java/io/dataease/datasource/provider/CalciteProvider.java @@ -1242,6 +1242,29 @@ public class CalciteProvider extends Provider { DEException.throwException(Translator.get("i18n_schema_is_empty")); } tableSqls.add("SELECT \n" + " relname AS TableName, \n" + " obj_description(relfilenode::regclass, 'pg_class') AS TableDescription \n" + "FROM \n" + " pg_class \n" + "WHERE \n" + " relkind in ('r','p', 'f') \n" + " AND relnamespace = (SELECT oid FROM pg_namespace WHERE nspname = 'SCHEMA') ".replace("SCHEMA", configuration.getSchema())); + tableSqls.add("SELECT \n" + + " c.relname AS view_name,\n" + + " COALESCE(d.description, 'No description provided') AS view_description\n" + + "FROM \n" + + " pg_class c\n" + + "JOIN \n" + + " pg_namespace n ON c.relnamespace = n.oid\n" + + "LEFT JOIN \n" + + " pg_description d ON c.oid = d.objoid\n" + + "WHERE \n" + + " c.relkind = 'v' \n" + + " AND n.nspname = 'SCHEMA'".replace("SCHEMA", configuration.getSchema())); + tableSqls.add("SELECT \n" + + " c.relname AS materialized_view_name,\n" + + " COALESCE(d.description, '') AS view_description\n" + + "FROM \n" + + " pg_class c\n" + + "JOIN \n" + + " pg_namespace n ON c.relnamespace = n.oid\n" + + "LEFT JOIN \n" + + " pg_description d ON c.oid = d.objoid\n" + + "WHERE \n" + + " c.relkind = 'm' and n.nspname ='SCHEMA'; ".replace("SCHEMA", configuration.getSchema())); break; case redshift: configuration = JsonUtil.parseObject(datasourceRequest.getDatasource().getConfiguration(), CK.class); diff --git a/core/core-backend/src/main/java/io/dataease/datasource/server/DatasourceServer.java b/core/core-backend/src/main/java/io/dataease/datasource/server/DatasourceServer.java index 55298a560c..a9d48af41b 100644 --- a/core/core-backend/src/main/java/io/dataease/datasource/server/DatasourceServer.java +++ b/core/core-backend/src/main/java/io/dataease/datasource/server/DatasourceServer.java @@ -644,7 +644,7 @@ public class DatasourceServer implements DatasourceApi { @Override @XpackInteract(value = "datasourceResourceTree", before = false) public void delete(Long datasourceId) throws DEException { - Objects.requireNonNull(CommonBeanFactory.getBean(DatasourceServer.class)).recursionDel(datasourceId); + Objects.requireNonNull(io.dataease.utils.CommonBeanFactory.getBean(DatasourceServer.class)).recursionDel(datasourceId); } public void recursionDel(Long datasourceId) throws DEException {