diff --git a/designer-base/src/main/java/com/fr/design/actions/file/PreferencePane.java b/designer-base/src/main/java/com/fr/design/actions/file/PreferencePane.java index 1779ef20c1..a12586e60a 100644 --- a/designer-base/src/main/java/com/fr/design/actions/file/PreferencePane.java +++ b/designer-base/src/main/java/com/fr/design/actions/file/PreferencePane.java @@ -231,6 +231,7 @@ public class PreferencePane extends BasicPane { private UICheckBox autoPushUpdateCheckBox; private UICheckBox imageCompressPanelCheckBox; private UICheckBox cloudAnalyticsDelayCheckBox; + private UICheckBox useRemoteAuthControlCheckBox; private UICheckBox vcsEnableCheckBox; private UICheckBox useVcsAutoSaveScheduleCheckBox; @@ -319,7 +320,9 @@ public class PreferencePane extends BasicPane { // 模板预览性能 cell(createTplPreviewPane()), // 设计器启动选项 - cell(createDesignerStartupPane()) + cell(createDesignerStartupPane()), + // 远程权限控制 + cell(createRemoteAuthControlPane()).with(it -> it.setVisible(WorkContext.getCurrent().isRoot())) ).weight(1).getComponent(); useUniverseDBMCheckbox = new UICheckBox(i18nText("Fine-Design_Basic_Use_Universe_Database_Manager")); JPanel adviceScrollPane = patchScroll(advancePane); @@ -354,6 +357,12 @@ public class PreferencePane extends BasicPane { i18nText("Fine-Design_Startup_Option")); } + private Component createRemoteAuthControlPane() { + useRemoteAuthControlCheckBox = new UICheckBox(i18nText("Fine-Design_Use_Remote_Auth_Control")); + return FineUIUtils.wrapComponentWithTitle(column(10, cell(useRemoteAuthControlCheckBox)).getComponent(), + i18nText("Fine-Design_Use_Remote_Auth")); + } + private Component createTplPreviewPane() { imageCompressPanelCheckBox = new UICheckBox(i18nText("Fine-Design_Image_Compress")); return FineUIUtils.wrapComponentWithTitle(column(10, @@ -966,6 +975,9 @@ public class PreferencePane extends BasicPane { if (useOptimizedUPMCheckbox != null) { useOptimizedUPMCheckbox.setSelected(true); } + if (useRemoteAuthControlCheckBox != null) { + useRemoteAuthControlCheckBox.setSelected(ServerPreferenceConfig.getInstance().getUseRemoteAuthControl()); + } useUniverseDBMCheckbox.setSelected(ServerPreferenceConfig.getInstance().isUseUniverseDBM()); @@ -1001,6 +1013,7 @@ public class PreferencePane extends BasicPane { this.cloudAnalyticsDelayCheckBox.setSelected(designerEnvManager.isCloudAnalyticsDelay()); this.startupPageEnabledCheckBox.setSelected(designerEnvManager.isStartupPageEnabled()); + this.useRemoteAuthControlCheckBox.setSelected(ServerPreferenceConfig.getInstance().getUseRemoteAuthControl()); } private int chooseCase(int sign) { @@ -1136,6 +1149,9 @@ public class PreferencePane extends BasicPane { if (useOptimizedUPMCheckbox != null) { ServerPreferenceConfig.getInstance().setUseOptimizedUPM(useOptimizedUPMCheckbox.isSelected()); } + if (useRemoteAuthControlCheckBox != null) { + ServerPreferenceConfig.getInstance().setUseRemoteAuthControl(useRemoteAuthControlCheckBox.isSelected()); + } ServerPreferenceConfig.getInstance().setUseUniverseDBM(useUniverseDBMCheckbox.isSelected()); }