From f1c2e12a436ce40c70820c351cbe7148ef5e2e4d Mon Sep 17 00:00:00 2001 From: "Leo.Qin" Date: Tue, 31 Jan 2023 14:10:05 +0800 Subject: [PATCH 01/10] =?UTF-8?q?REPORT-88365=20=E5=86=B3=E7=AD=96?= =?UTF-8?q?=E6=8A=A5=E8=A1=A8=EF=BC=8C=E5=8D=95=E5=85=83=E6=A0=BC=E6=8F=92?= =?UTF-8?q?=E5=85=A5=E6=95=B0=E6=8D=AE=E5=88=97=EF=BC=8C=E5=8D=95=E5=85=83?= =?UTF-8?q?=E6=A0=BC=E5=85=83=E7=B4=A0=E9=A1=B5=E9=9D=A2=E6=9C=89=E5=BC=82?= =?UTF-8?q?=E5=B8=B8=20=E3=80=90=E9=97=AE=E9=A2=98=E5=8E=9F=E5=9B=A0?= =?UTF-8?q?=E3=80=91=E5=8D=95=E9=80=89=E6=97=B6=E9=BB=98=E8=AE=A4=E5=B0=86?= =?UTF-8?q?cellDSColumnAdvancedPane=E7=9A=84visible=E8=AE=BE=E4=B8=BAtrue?= =?UTF-8?q?=EF=BC=8C=E5=AF=BC=E8=87=B4=E6=98=BE=E7=A4=BA=E5=BC=82=E5=B8=B8?= =?UTF-8?q?=20=E3=80=90=E6=94=B9=E5=8A=A8=E6=80=9D=E8=B7=AF=E3=80=91?= =?UTF-8?q?=E7=BB=93=E5=90=88cellDSColumnAdvancedPane=E7=9A=84=E5=8E=9F?= =?UTF-8?q?=E5=A7=8Bvisible=E7=8A=B6=E6=80=81=E5=8F=8A=E5=8D=95=E5=85=83?= =?UTF-8?q?=E6=A0=BC=E7=9A=84=E5=8D=95=E9=80=89=E5=A4=9A=E9=80=89=E7=8A=B6?= =?UTF-8?q?=E6=80=81=E5=86=8D=E8=BF=9B=E8=A1=8C=E8=AE=BE=E7=BD=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/fr/quickeditor/cellquick/CellDSColumnEditor.java | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/designer-realize/src/main/java/com/fr/quickeditor/cellquick/CellDSColumnEditor.java b/designer-realize/src/main/java/com/fr/quickeditor/cellquick/CellDSColumnEditor.java index 575f89fb07..e9917d2c21 100644 --- a/designer-realize/src/main/java/com/fr/quickeditor/cellquick/CellDSColumnEditor.java +++ b/designer-realize/src/main/java/com/fr/quickeditor/cellquick/CellDSColumnEditor.java @@ -162,6 +162,7 @@ public class CellDSColumnEditor extends CellQuickEditor { // 由于多选的时候修改了 cellDSColumnBasicPane 中组件的visiable属性,切换时需要将其设置为false cellDSColumnBasicPane.setVisible(false); + cellDSColumnAdvancedPane.setVisible(false); card.show(cardContainer, paneList.get(index).title4PopupWindow()); paneList.get(index).populate(); @@ -1064,7 +1065,10 @@ public class CellDSColumnEditor extends CellQuickEditor { @Override public void refreshMultipleDetails() { tabsHeaderIconPane.setVisible(tc.isSelectedOneCell()); - cellDSColumnAdvancedPane.setVisible(tc.isSelectedOneCell()); + + // 需要结合AdvancedPane的原始visible状态设置单选多选visible + boolean advancedPaneVisible = cellDSColumnAdvancedPane.isVisible(); + cellDSColumnAdvancedPane.setVisible(advancedPaneVisible && tc.isSelectedOneCell()); cellDSColumnBasicPane.setMultipleVisible(tc.isSelectedOneCell()); } From f418358d6cad2a366a1144ccdecbec5af882674f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?John=2EYing-=E5=BA=94=E5=BF=97=E6=B5=A9?= Date: Wed, 8 Feb 2023 10:35:02 +0800 Subject: [PATCH 02/10] =?UTF-8?q?REPORT-29522=20=E8=AE=BE=E8=AE=A1?= =?UTF-8?q?=E5=99=A8=E5=86=85=E5=AF=BC=E5=87=BA=E6=8C=89=E9=92=AE=E9=83=A8?= =?UTF-8?q?=E5=88=86=E6=96=87=E5=AD=97=E5=B8=A6=E6=9C=89"..."=20=E9=83=A8?= =?UTF-8?q?=E5=88=86=E6=96=87=E5=AD=97=E5=8F=88=E6=B2=A1=E6=9C=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/fr/design/actions/file/export/ExcelExportAction.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/designer-realize/src/main/java/com/fr/design/actions/file/export/ExcelExportAction.java b/designer-realize/src/main/java/com/fr/design/actions/file/export/ExcelExportAction.java index 171a68ce8d..0933387062 100644 --- a/designer-realize/src/main/java/com/fr/design/actions/file/export/ExcelExportAction.java +++ b/designer-realize/src/main/java/com/fr/design/actions/file/export/ExcelExportAction.java @@ -12,7 +12,7 @@ public class ExcelExportAction extends AbstractExcelExportAction { public ExcelExportAction(JWorkBook jwb) { super(jwb); this.setMenuKeySet(KeySetUtils.SIMPLE_EXCEL_EXPORT); - this.setName(getMenuKeySet().getMenuKeySetName()); + this.setName(getMenuKeySet().getMenuKeySetName() + "..."); this.setMnemonic(getMenuKeySet().getMnemonic()); this.setSmallIcon(BaseUtils.readIcon("/com/fr/design/images/m_file/excel.png")); } From d03ba95f17bb09eecfe8063c6c3825de9f914b29 Mon Sep 17 00:00:00 2001 From: "Leo.Qin" Date: Thu, 9 Feb 2023 09:40:10 +0800 Subject: [PATCH 03/10] =?UTF-8?q?REPORT-88826=20=E8=AE=BE=E8=AE=A1?= =?UTF-8?q?=E5=99=A8=E6=96=B0=E5=A2=9E=E4=B8=8D=E6=94=AF=E6=8C=81=E7=9A=84?= =?UTF-8?q?=E6=95=B0=E6=8D=AE=E5=BA=93=E7=B1=BB=E5=9E=8B=E6=9C=AA=E5=8F=97?= =?UTF-8?q?=E5=88=B0=E9=99=90=E5=88=B6=20=E3=80=90=E9=97=AE=E9=A2=98?= =?UTF-8?q?=E5=8E=9F=E5=9B=A0=E3=80=91=E6=9C=AA=E8=80=83=E8=99=91=E8=BF=9C?= =?UTF-8?q?=E7=A8=8B=E8=AE=BE=E8=AE=A1=E4=B8=8B=EF=BC=8C=E8=8E=B7=E5=8F=96?= =?UTF-8?q?=E6=9C=8D=E5=8A=A1=E5=99=A8=E7=9A=84lic=E4=BF=A1=E6=81=AF=20?= =?UTF-8?q?=E3=80=90=E6=94=B9=E5=8A=A8=E6=80=9D=E8=B7=AF=E3=80=91=E5=A2=9E?= =?UTF-8?q?=E5=8A=A0rpc=E6=8E=A5=E5=8F=A3=EF=BC=8C=E8=8E=B7=E5=8F=96?= =?UTF-8?q?=E6=9C=8D=E5=8A=A1=E5=99=A8lic=E6=98=AF=E5=90=A6=E9=99=90?= =?UTF-8?q?=E5=88=B6=E6=95=B0=E6=8D=AE=E5=BA=93=E7=B1=BB=E5=9E=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../fr/design/data/datapane/connect/ConnectionListPane.java | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/designer-base/src/main/java/com/fr/design/data/datapane/connect/ConnectionListPane.java b/designer-base/src/main/java/com/fr/design/data/datapane/connect/ConnectionListPane.java index eaa4c37d8d..8eb13afca0 100644 --- a/designer-base/src/main/java/com/fr/design/data/datapane/connect/ConnectionListPane.java +++ b/designer-base/src/main/java/com/fr/design/data/datapane/connect/ConnectionListPane.java @@ -30,6 +30,7 @@ import com.fr.stable.core.PropertyChangeAdapter; import com.fr.transaction.Configurations; import com.fr.transaction.WorkerFacade; import com.fr.workspace.WorkContext; +import com.fr.workspace.server.database.DataBaseTypeOperator; import java.awt.Window; import java.sql.SQLException; @@ -132,8 +133,8 @@ public class ConnectionListPane extends JListControlPane implements ConnectionSh DatabaseConnectionPane.JNDI.class ); NameableCreator[] creators; - if (FRCoreContext.getLicense().limitDatabaseType()) { - // 不支持JDNI,屏蔽接口 + if (WorkContext.getCurrent().get(DataBaseTypeOperator.class).limitDatabaseType()) { + // 不支持JNDI,屏蔽接口 creators = new NameableCreator[]{jdbc}; } else { creators = new NameableCreator[]{jdbc, jndi}; From ec630185df63bd1fc551211cb7ed788badadf649 Mon Sep 17 00:00:00 2001 From: "Leo.Qin" Date: Fri, 10 Feb 2023 10:24:35 +0800 Subject: [PATCH 04/10] =?UTF-8?q?REPORT-89171=20=E8=AE=BE=E8=AE=A1?= =?UTF-8?q?=E5=99=A8=E6=96=B0=E5=A2=9E=E4=B8=8D=E6=94=AF=E6=8C=81=E7=9A=84?= =?UTF-8?q?=E6=95=B0=E6=8D=AE=E5=BA=93=E7=B1=BB=E5=9E=8B=E6=9C=AA=E5=8F=97?= =?UTF-8?q?=E5=88=B0=E9=99=90=E5=88=B6=20=E3=80=90=E9=97=AE=E9=A2=98?= =?UTF-8?q?=E5=8E=9F=E5=9B=A0=E3=80=91=E6=9C=AA=E8=80=83=E8=99=91=E8=BF=9C?= =?UTF-8?q?=E7=A8=8B=E8=AE=BE=E8=AE=A1=E4=B8=8B=EF=BC=8C=E8=8E=B7=E5=8F=96?= =?UTF-8?q?=E6=9C=8D=E5=8A=A1=E5=99=A8=E7=9A=84lic=E4=BF=A1=E6=81=AF=20?= =?UTF-8?q?=E3=80=90=E6=94=B9=E5=8A=A8=E6=80=9D=E8=B7=AF=E3=80=91=E5=A2=9E?= =?UTF-8?q?=E5=8A=A0rpc=E6=8E=A5=E5=8F=A3=EF=BC=8C=E8=8E=B7=E5=8F=96?= =?UTF-8?q?=E6=9C=8D=E5=8A=A1=E5=99=A8lic=E6=98=AF=E5=90=A6=E9=99=90?= =?UTF-8?q?=E5=88=B6=E6=95=B0=E6=8D=AE=E5=BA=93=E7=B1=BB=E5=9E=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../data/datapane/connect/ConnectionListPane.java | 3 ++- .../datapane/connect/ConnectionManagerPane.java | 13 +++++++++++-- 2 files changed, 13 insertions(+), 3 deletions(-) diff --git a/designer-base/src/main/java/com/fr/design/data/datapane/connect/ConnectionListPane.java b/designer-base/src/main/java/com/fr/design/data/datapane/connect/ConnectionListPane.java index 8eb13afca0..0e0a655a08 100644 --- a/designer-base/src/main/java/com/fr/design/data/datapane/connect/ConnectionListPane.java +++ b/designer-base/src/main/java/com/fr/design/data/datapane/connect/ConnectionListPane.java @@ -22,7 +22,6 @@ import com.fr.file.ConnectionConfig; import com.fr.file.ConnectionOperator; import com.fr.general.NameObject; import com.fr.log.FineLoggerFactory; -import com.fr.regist.FRCoreContext; import com.fr.stable.ArrayUtils; import com.fr.stable.Nameable; import com.fr.stable.StringUtils; @@ -116,6 +115,8 @@ public class ConnectionListPane extends JListControlPane implements ConnectionSh /** * 创建菜单项 + *

+ * 方法中获取limitDatabaseType使用了远程rpc调用,可能会比较耗时 * * @return 菜单项 */ diff --git a/designer-base/src/main/java/com/fr/design/data/datapane/connect/ConnectionManagerPane.java b/designer-base/src/main/java/com/fr/design/data/datapane/connect/ConnectionManagerPane.java index 0c1d88022e..eb8171d353 100644 --- a/designer-base/src/main/java/com/fr/design/data/datapane/connect/ConnectionManagerPane.java +++ b/designer-base/src/main/java/com/fr/design/data/datapane/connect/ConnectionManagerPane.java @@ -1,14 +1,16 @@ package com.fr.design.data.datapane.connect; import com.fr.data.impl.Connection; +import com.fr.data.impl.JDBCDatabaseConnection; import com.fr.design.gui.frpane.LoadingBasicPane; import com.fr.design.gui.ilist.ListModelElement; import com.fr.design.layout.FRGUIPaneFactory; import com.fr.file.ConnectionConfig; import com.fr.general.NameObject; -import com.fr.license.database.DatabaseTypeValidateUtil; import com.fr.license.exception.DataBaseNotSupportedException; import com.fr.stable.Nameable; +import com.fr.workspace.WorkContext; +import com.fr.workspace.server.database.DataBaseTypeOperator; import javax.swing.JPanel; import java.awt.BorderLayout; @@ -75,7 +77,14 @@ public class ConnectionManagerPane extends LoadingBasicPane implements Connectio Nameable wrapper = selectedValue.wrapper; try { Connection connection = (Connection) ((NameObject) wrapper).getObject(); - DatabaseTypeValidateUtil.validateDatabaseType(connection.getDriver(), connection.feature()); + // 仅校验jdbc连接,其他插件数据连接不进行校验 + if (connection instanceof JDBCDatabaseConnection) { + DataBaseNotSupportedException exception = WorkContext.getCurrent().get(DataBaseTypeOperator.class).validateDatabaseType(connection.getDriver(), connection.feature()); + if (exception != null) { + throw exception; + } + } + } catch (DataBaseNotSupportedException e) { // 仅抛出数据库类型不支持异常 throw e; From af372c267fc88f335d388cd56ffaa545819542e3 Mon Sep 17 00:00:00 2001 From: "Leo.Qin" Date: Fri, 10 Feb 2023 11:25:18 +0800 Subject: [PATCH 05/10] =?UTF-8?q?REPORT-88826=20=E8=AE=BE=E8=AE=A1?= =?UTF-8?q?=E5=99=A8=E6=96=B0=E5=A2=9E=E4=B8=8D=E6=94=AF=E6=8C=81=E7=9A=84?= =?UTF-8?q?=E6=95=B0=E6=8D=AE=E5=BA=93=E7=B1=BB=E5=9E=8B=E6=9C=AA=E5=8F=97?= =?UTF-8?q?=E5=88=B0=E9=99=90=E5=88=B6=20=E5=B0=81=E8=A3=85DataBaseNotSupp?= =?UTF-8?q?ortedException=E7=94=A8=E4=BA=8Erpc=E8=B0=83=E7=94=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../data/datapane/connect/ConnectionManagerPane.java | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/designer-base/src/main/java/com/fr/design/data/datapane/connect/ConnectionManagerPane.java b/designer-base/src/main/java/com/fr/design/data/datapane/connect/ConnectionManagerPane.java index eb8171d353..c664438f0a 100644 --- a/designer-base/src/main/java/com/fr/design/data/datapane/connect/ConnectionManagerPane.java +++ b/designer-base/src/main/java/com/fr/design/data/datapane/connect/ConnectionManagerPane.java @@ -11,6 +11,7 @@ import com.fr.license.exception.DataBaseNotSupportedException; import com.fr.stable.Nameable; import com.fr.workspace.WorkContext; import com.fr.workspace.server.database.DataBaseTypeOperator; +import com.fr.workspace.server.database.DatabaseExceptionBean; import javax.swing.JPanel; import java.awt.BorderLayout; @@ -79,9 +80,9 @@ public class ConnectionManagerPane extends LoadingBasicPane implements Connectio Connection connection = (Connection) ((NameObject) wrapper).getObject(); // 仅校验jdbc连接,其他插件数据连接不进行校验 if (connection instanceof JDBCDatabaseConnection) { - DataBaseNotSupportedException exception = WorkContext.getCurrent().get(DataBaseTypeOperator.class).validateDatabaseType(connection.getDriver(), connection.feature()); - if (exception != null) { - throw exception; + DatabaseExceptionBean bean = WorkContext.getCurrent().get(DataBaseTypeOperator.class).validateDatabaseType(connection.getDriver(), connection.feature()); + if (bean != null) { + throw new DataBaseNotSupportedException(bean.getErrorMsg()); } } From 9c3d02995035cc6c84af517d7f2bf6c4339ca2fe Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?John=2EYing-=E5=BA=94=E5=BF=97=E6=B5=A9?= Date: Fri, 10 Feb 2023 13:47:08 +0800 Subject: [PATCH 06/10] =?UTF-8?q?REPORT-88426=20=E6=A8=A1=E6=9D=BF?= =?UTF-8?q?=E6=95=B0=E6=8D=AE=E9=9B=86=E5=92=8C=E6=9C=8D=E5=8A=A1=E5=99=A8?= =?UTF-8?q?=E6=95=B0=E6=8D=AE=E9=9B=86=E9=87=8D=E5=90=8D=E6=97=B6=EF=BC=8C?= =?UTF-8?q?=E4=BF=9D=E5=AD=98=E6=A8=A1=E6=9D=BF=E4=BC=9A=E9=94=99=E8=AF=AF?= =?UTF-8?q?=E6=A0=A1=E9=AA=8C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../fr/design/data/BasicTableDataTreePane.java | 8 ++------ .../fr/design/data/DesignTableDataManager.java | 17 +++++++++++++++++ 2 files changed, 19 insertions(+), 6 deletions(-) diff --git a/designer-base/src/main/java/com/fr/design/data/BasicTableDataTreePane.java b/designer-base/src/main/java/com/fr/design/data/BasicTableDataTreePane.java index fa1fe545ed..b3c090d549 100644 --- a/designer-base/src/main/java/com/fr/design/data/BasicTableDataTreePane.java +++ b/designer-base/src/main/java/com/fr/design/data/BasicTableDataTreePane.java @@ -378,12 +378,8 @@ public abstract class BasicTableDataTreePane extends DockingView implements Resp protected boolean isDsNameRepeaded(String name) { allDSNames = DesignTableDataManager.getAllDSNames(tc.getBook()); - for (int i = 0; i < allDSNames.length; i++) { - if (ComparatorUtils.equals(name, allDSNames[i])) { - return true; - } - } - return false; + Set allDSNamesWithoutPermissions = DesignTableDataManager.getAllDSNamesWithoutPermissions(tc.getBook()); + return allDSNamesWithoutPermissions.contains(name); } protected KeyAdapter getTableTreeNodeListener(final UpdateAction editAction, final UpdateAction previewTableDataAction, final UpdateAction removeAction, final TableDataSourceOP op, final TableDataTree dataTree) { diff --git a/designer-base/src/main/java/com/fr/design/data/DesignTableDataManager.java b/designer-base/src/main/java/com/fr/design/data/DesignTableDataManager.java index e18b2a47d3..536ce1f972 100644 --- a/designer-base/src/main/java/com/fr/design/data/DesignTableDataManager.java +++ b/designer-base/src/main/java/com/fr/design/data/DesignTableDataManager.java @@ -48,6 +48,7 @@ import java.text.Collator; import java.util.ArrayList; import java.util.Collections; import java.util.HashMap; +import java.util.HashSet; import java.util.Iterator; import java.util.LinkedHashMap; import java.util.LinkedHashSet; @@ -295,6 +296,22 @@ public abstract class DesignTableDataManager { return list.toArray(new String[0]); } + /** + * 获取所有的数据集名称,无论模板是不是有数据集的权限 + */ + public static Set getAllDSNamesWithoutPermissions(TableDataSource source) { + Set names = new HashSet<>(); + String[] allDSNames = getAllDSNames(source); + Map tableDatas = TableDataConfig.getInstance().getTableDatas(); + for (String dsName : allDSNames) { + names.add(dsName); + } + for (Map.Entry entry : tableDatas.entrySet()) { + names.add(entry.getKey()); + } + return names; + } + /** * 不根据过滤设置,返回当前模板数据集、服务器数据集、存储过程本身,是有顺序的 */ From fe9ba332303577e5e1fb515496be9ac58ef980db Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?John=2EYing-=E5=BA=94=E5=BF=97=E6=B5=A9?= Date: Fri, 10 Feb 2023 13:48:47 +0800 Subject: [PATCH 07/10] =?UTF-8?q?REPORT-88426=20=E6=A8=A1=E6=9D=BF?= =?UTF-8?q?=E6=95=B0=E6=8D=AE=E9=9B=86=E5=92=8C=E6=9C=8D=E5=8A=A1=E5=99=A8?= =?UTF-8?q?=E6=95=B0=E6=8D=AE=E9=9B=86=E9=87=8D=E5=90=8D=E6=97=B6=EF=BC=8C?= =?UTF-8?q?=E4=BF=9D=E5=AD=98=E6=A8=A1=E6=9D=BF=E4=BC=9A=E9=94=99=E8=AF=AF?= =?UTF-8?q?=E6=A0=A1=E9=AA=8C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/fr/design/actions/file/export/ExcelExportAction.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/designer-realize/src/main/java/com/fr/design/actions/file/export/ExcelExportAction.java b/designer-realize/src/main/java/com/fr/design/actions/file/export/ExcelExportAction.java index 0933387062..171a68ce8d 100644 --- a/designer-realize/src/main/java/com/fr/design/actions/file/export/ExcelExportAction.java +++ b/designer-realize/src/main/java/com/fr/design/actions/file/export/ExcelExportAction.java @@ -12,7 +12,7 @@ public class ExcelExportAction extends AbstractExcelExportAction { public ExcelExportAction(JWorkBook jwb) { super(jwb); this.setMenuKeySet(KeySetUtils.SIMPLE_EXCEL_EXPORT); - this.setName(getMenuKeySet().getMenuKeySetName() + "..."); + this.setName(getMenuKeySet().getMenuKeySetName()); this.setMnemonic(getMenuKeySet().getMnemonic()); this.setSmallIcon(BaseUtils.readIcon("/com/fr/design/images/m_file/excel.png")); } From ddafd1f39352af2f36578562991ec5dfd2346c25 Mon Sep 17 00:00:00 2001 From: "Leo.Qin" Date: Fri, 10 Feb 2023 14:33:19 +0800 Subject: [PATCH 08/10] =?UTF-8?q?REPORT-88826=20=E4=BF=AE=E6=94=B9?= =?UTF-8?q?=E7=B1=BB=E5=90=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../design/data/datapane/connect/ConnectionManagerPane.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/designer-base/src/main/java/com/fr/design/data/datapane/connect/ConnectionManagerPane.java b/designer-base/src/main/java/com/fr/design/data/datapane/connect/ConnectionManagerPane.java index c664438f0a..a79ec6edc0 100644 --- a/designer-base/src/main/java/com/fr/design/data/datapane/connect/ConnectionManagerPane.java +++ b/designer-base/src/main/java/com/fr/design/data/datapane/connect/ConnectionManagerPane.java @@ -11,7 +11,7 @@ import com.fr.license.exception.DataBaseNotSupportedException; import com.fr.stable.Nameable; import com.fr.workspace.WorkContext; import com.fr.workspace.server.database.DataBaseTypeOperator; -import com.fr.workspace.server.database.DatabaseExceptionBean; +import com.fr.workspace.server.database.ResultBean; import javax.swing.JPanel; import java.awt.BorderLayout; @@ -80,7 +80,7 @@ public class ConnectionManagerPane extends LoadingBasicPane implements Connectio Connection connection = (Connection) ((NameObject) wrapper).getObject(); // 仅校验jdbc连接,其他插件数据连接不进行校验 if (connection instanceof JDBCDatabaseConnection) { - DatabaseExceptionBean bean = WorkContext.getCurrent().get(DataBaseTypeOperator.class).validateDatabaseType(connection.getDriver(), connection.feature()); + ResultBean bean = WorkContext.getCurrent().get(DataBaseTypeOperator.class).validateDatabaseType(connection.getDriver(), connection.feature()); if (bean != null) { throw new DataBaseNotSupportedException(bean.getErrorMsg()); } From 071b96c7120458bc897a0147432dbb3c65caf7e2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?John=2EYing-=E5=BA=94=E5=BF=97=E6=B5=A9?= Date: Fri, 10 Feb 2023 14:44:49 +0800 Subject: [PATCH 09/10] =?UTF-8?q?REPORT-88426=20=E6=A8=A1=E6=9D=BF?= =?UTF-8?q?=E6=95=B0=E6=8D=AE=E9=9B=86=E5=92=8C=E6=9C=8D=E5=8A=A1=E5=99=A8?= =?UTF-8?q?=E6=95=B0=E6=8D=AE=E9=9B=86=E9=87=8D=E5=90=8D=E6=97=B6=EF=BC=8C?= =?UTF-8?q?=E4=BF=9D=E5=AD=98=E6=A8=A1=E6=9D=BF=E4=BC=9A=E9=94=99=E8=AF=AF?= =?UTF-8?q?=E6=A0=A1=E9=AA=8C--=E4=BF=AE=E6=94=B9=E4=B8=80=E4=B8=8B?= =?UTF-8?q?=EF=BC=8C=E9=81=BF=E5=85=8D=E9=87=8D=E5=A4=8D=E8=8E=B7=E5=8F=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/fr/design/data/DesignTableDataManager.java | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/designer-base/src/main/java/com/fr/design/data/DesignTableDataManager.java b/designer-base/src/main/java/com/fr/design/data/DesignTableDataManager.java index 536ce1f972..5134e88c8b 100644 --- a/designer-base/src/main/java/com/fr/design/data/DesignTableDataManager.java +++ b/designer-base/src/main/java/com/fr/design/data/DesignTableDataManager.java @@ -301,11 +301,16 @@ public abstract class DesignTableDataManager { */ public static Set getAllDSNamesWithoutPermissions(TableDataSource source) { Set names = new HashSet<>(); - String[] allDSNames = getAllDSNames(source); - Map tableDatas = TableDataConfig.getInstance().getTableDatas(); - for (String dsName : allDSNames) { - names.add(dsName); + Map resMap = new HashMap<>(); + // 模板数据集 + addTemplateData(resMap, source); + // 存储过程 + addStoreProcedureData(resMap); + for (Map.Entry entry : resMap.entrySet()) { + names.add(entry.getKey()); } + //服务器数据集 + Map tableDatas = TableDataConfig.getInstance().getTableDatas(); for (Map.Entry entry : tableDatas.entrySet()) { names.add(entry.getKey()); } From 4da40ee14d3532bdde8e57fb632ccb64f1f80e6b Mon Sep 17 00:00:00 2001 From: "Leo.Qin" Date: Fri, 10 Feb 2023 14:47:15 +0800 Subject: [PATCH 10/10] =?UTF-8?q?REPORT-88826=20=E4=BF=AE=E6=94=B9?= =?UTF-8?q?=E7=B1=BB=E5=AE=9E=E7=8E=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../connect/ConnectionManagerPane.java | 22 ++++++------------- 1 file changed, 7 insertions(+), 15 deletions(-) diff --git a/designer-base/src/main/java/com/fr/design/data/datapane/connect/ConnectionManagerPane.java b/designer-base/src/main/java/com/fr/design/data/datapane/connect/ConnectionManagerPane.java index a79ec6edc0..2641452218 100644 --- a/designer-base/src/main/java/com/fr/design/data/datapane/connect/ConnectionManagerPane.java +++ b/designer-base/src/main/java/com/fr/design/data/datapane/connect/ConnectionManagerPane.java @@ -11,7 +11,7 @@ import com.fr.license.exception.DataBaseNotSupportedException; import com.fr.stable.Nameable; import com.fr.workspace.WorkContext; import com.fr.workspace.server.database.DataBaseTypeOperator; -import com.fr.workspace.server.database.ResultBean; +import com.fr.workspace.server.database.DatabaseResultBean; import javax.swing.JPanel; import java.awt.BorderLayout; @@ -76,21 +76,13 @@ public class ConnectionManagerPane extends LoadingBasicPane implements Connectio ListModelElement selectedValue = this.connectionListPane.getSelectedValue(); if (selectedValue != null) { Nameable wrapper = selectedValue.wrapper; - try { - Connection connection = (Connection) ((NameObject) wrapper).getObject(); - // 仅校验jdbc连接,其他插件数据连接不进行校验 - if (connection instanceof JDBCDatabaseConnection) { - ResultBean bean = WorkContext.getCurrent().get(DataBaseTypeOperator.class).validateDatabaseType(connection.getDriver(), connection.feature()); - if (bean != null) { - throw new DataBaseNotSupportedException(bean.getErrorMsg()); - } + Connection connection = (Connection) ((NameObject) wrapper).getObject(); + // 仅校验jdbc连接,其他插件数据连接不进行校验 + if (connection instanceof JDBCDatabaseConnection) { + DatabaseResultBean bean = WorkContext.getCurrent().get(DataBaseTypeOperator.class).validateDatabaseType(connection.getDriver(), connection.feature()); + if (bean.equals(DatabaseResultBean.DefaultBean())) { + throw new DataBaseNotSupportedException(bean.getMsg()); } - - } catch (DataBaseNotSupportedException e) { - // 仅抛出数据库类型不支持异常 - throw e; - } catch (Exception e) { - // ignore } } }