From 702ab951a14aea1eb8e0782e56c4a5c44a8533e0 Mon Sep 17 00:00:00 2001 From: renekton Date: Thu, 22 Aug 2024 19:15:17 +0800 Subject: [PATCH 01/14] =?UTF-8?q?newui=E7=BC=A9=E6=94=BE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/fine/theme/utils/FineUIStyle.java | 1 + .../condition/DSColumnLiteConditionPane.java | 4 ++-- .../controlpane/UIListGroupControlPane.java | 3 ++- .../fr/design/gui/date/UICalendarPanel.java | 2 +- .../com/fr/design/gui/date/UIDayLabel.java | 4 +++- .../mainframe/theme/TemplateThemeBlock.java | 3 ++- .../theme/dialog/TemplateThemeDialog.java | 13 ++++++++----- .../dialog/TemplateThemeGridPagesDialog.java | 6 ++++-- .../theme/edit/chart/ChartFontPane.java | 2 +- .../style/color/ColorChooserPreview.java | 2 +- .../design/style/color/ColorSelectDialog.java | 4 +++- .../style/color/CustomChooserPanel.java | 19 ++++++++++--------- .../style/color/SwatchChooserPanel.java | 13 +++++++------ .../write/submit/DBManipulationPane.java | 8 ++++---- .../com/fine/theme/icon/icon_edit.svg | 5 +++++ .../fine/theme/light/ui/fine_light.icon.json | 3 ++- .../light/ui/laf/FineLightLaf.properties | 8 ++++++-- 17 files changed, 62 insertions(+), 38 deletions(-) create mode 100644 designer-base/src/main/resources/com/fine/theme/icon/icon_edit.svg diff --git a/designer-base/src/main/java/com/fine/theme/utils/FineUIStyle.java b/designer-base/src/main/java/com/fine/theme/utils/FineUIStyle.java index 925c0a438d..673e55b352 100644 --- a/designer-base/src/main/java/com/fine/theme/utils/FineUIStyle.java +++ b/designer-base/src/main/java/com/fine/theme/utils/FineUIStyle.java @@ -51,6 +51,7 @@ public interface FineUIStyle { String WHITE_BUTTON = "whiteButton"; String ORIGINAL_BUTTON = "originalButton"; String DETAIL_LABEL = "detailLabel"; + String WIDGET_EVENT_LABEL = "widgetEventLabel"; /** diff --git a/designer-base/src/main/java/com/fr/design/condition/DSColumnLiteConditionPane.java b/designer-base/src/main/java/com/fr/design/condition/DSColumnLiteConditionPane.java index cee0410a95..825be9e635 100644 --- a/designer-base/src/main/java/com/fr/design/condition/DSColumnLiteConditionPane.java +++ b/designer-base/src/main/java/com/fr/design/condition/DSColumnLiteConditionPane.java @@ -123,8 +123,8 @@ public class DSColumnLiteConditionPane extends LiteConditionPane extends JPanel { private final TemplateThemeProfilePane profilePane; private final Icon theme4currentTemplateMarkIcon = IOUtils.readIcon("/com/fr/design/form/images/theme4currentTemplate.png"); private final Icon theme4NewTemplateMarkIcon= IOUtils.readIcon("/com/fr/design/form/images/theme4newTemplate.png"); - private final Icon profileIcon = IOUtils.readIcon("/com/fr/design/icon/icon_edit.png"); + private final Icon profileIcon = new LazyIcon("icon_edit"); private final boolean displayTheme4NewTemplateMarker; private final ThumbnailPane thumbnailPane; diff --git a/designer-base/src/main/java/com/fr/design/mainframe/theme/dialog/TemplateThemeDialog.java b/designer-base/src/main/java/com/fr/design/mainframe/theme/dialog/TemplateThemeDialog.java index 1864a91b1f..def9c7d626 100644 --- a/designer-base/src/main/java/com/fr/design/mainframe/theme/dialog/TemplateThemeDialog.java +++ b/designer-base/src/main/java/com/fr/design/mainframe/theme/dialog/TemplateThemeDialog.java @@ -1,5 +1,6 @@ package com.fr.design.mainframe.theme.dialog; +import com.formdev.flatlaf.util.ScaledEmptyBorder; import com.fr.design.gui.ibutton.UIButton; import com.fr.design.layout.FRGUIPaneFactory; import com.fr.design.utils.gui.GUICoreUtils; @@ -14,17 +15,19 @@ import java.awt.Window; import java.awt.event.WindowAdapter; import java.awt.event.WindowEvent; +import static com.fine.theme.utils.FineUIScale.scale; + /** * @author Starryi * @version 1.0 * Created by Starryi on 2021/8/16 */ public abstract class TemplateThemeDialog extends JDialog { - public static final int DIALOG_TITLE_HEIGHT = 28; + public static final int DIALOG_TITLE_HEIGHT = scale(28); - public static final int DIALOG_BOTTOM_ACTION_BAR_HEIGHT = 30; - public static final int DIALOG_BOTTOM_ACTION_BUTTON_GAP = 10; - public static final int DIALOG_BOTTOM_ACTION_BUTTON_HEIGHT = 20; + public static final int DIALOG_BOTTOM_ACTION_BAR_HEIGHT = scale(30); + public static final int DIALOG_BOTTOM_ACTION_BUTTON_GAP = scale(10); + public static final int DIALOG_BOTTOM_ACTION_BUTTON_HEIGHT = scale(20); private final JPanel contentContainer; private final JPanel actionContainer; @@ -97,7 +100,7 @@ public abstract class TemplateThemeDialog extends JDialog { private JPanel createActionsContainer(int align, UIButton... buttons) { JPanel container = new JPanel(new FlowLayout(align, DIALOG_BOTTOM_ACTION_BUTTON_GAP, 0)); int paddingVertical = getPaddingVertical(); - container.setBorder(BorderFactory.createEmptyBorder(paddingVertical, 0, paddingVertical, 0)); + container.setBorder(new ScaledEmptyBorder(paddingVertical, 0, paddingVertical, 0)); if (buttons == null || buttons.length == 0) { return container; diff --git a/designer-base/src/main/java/com/fr/design/mainframe/theme/dialog/TemplateThemeGridPagesDialog.java b/designer-base/src/main/java/com/fr/design/mainframe/theme/dialog/TemplateThemeGridPagesDialog.java index bf65b9be28..d7e986c346 100644 --- a/designer-base/src/main/java/com/fr/design/mainframe/theme/dialog/TemplateThemeGridPagesDialog.java +++ b/designer-base/src/main/java/com/fr/design/mainframe/theme/dialog/TemplateThemeGridPagesDialog.java @@ -9,14 +9,16 @@ import com.fr.design.mainframe.theme.TemplateThemeGridPane; import javax.swing.JPanel; import java.awt.Window; +import static com.fine.theme.utils.FineUIScale.scale; + /** * @author Starryi * @version 1.0 * Created by Starryi on 2021/8/13 */ public class TemplateThemeGridPagesDialog extends TemplateThemeDialog implements TemplateThemeGridPagesPane.PageChangeListener { - public static final int CONTENT_WIDTH = TemplateThemeGridPane.CONTENT_WIDTH + 48; - public static final int CONTENT_HEIGHT = TemplateThemeGridPane.CONTENT_HEIGHT + 37; + public static final int CONTENT_WIDTH = TemplateThemeGridPane.CONTENT_WIDTH + scale(48); + public static final int CONTENT_HEIGHT = TemplateThemeGridPane.CONTENT_HEIGHT + scale(37); protected TemplateThemeGridPagesPane overallPane; diff --git a/designer-base/src/main/java/com/fr/design/mainframe/theme/edit/chart/ChartFontPane.java b/designer-base/src/main/java/com/fr/design/mainframe/theme/edit/chart/ChartFontPane.java index 1d1967ad3c..c87174c451 100644 --- a/designer-base/src/main/java/com/fr/design/mainframe/theme/edit/chart/ChartFontPane.java +++ b/designer-base/src/main/java/com/fr/design/mainframe/theme/edit/chart/ChartFontPane.java @@ -89,7 +89,7 @@ public class ChartFontPane extends BasicPane { new Component[]{null, buttonPane} }; - return TableLayoutHelper.createGapTableLayoutPane(components, rows, columnSize, 5, 0); + return TableLayoutHelper.createGapTableLayoutPane(components, rows, columnSize, 5, 10); } public String getUILabelText() { diff --git a/designer-base/src/main/java/com/fr/design/style/color/ColorChooserPreview.java b/designer-base/src/main/java/com/fr/design/style/color/ColorChooserPreview.java index 100feb2d35..349aa041a3 100644 --- a/designer-base/src/main/java/com/fr/design/style/color/ColorChooserPreview.java +++ b/designer-base/src/main/java/com/fr/design/style/color/ColorChooserPreview.java @@ -30,7 +30,7 @@ public class ColorChooserPreview extends JPanel { private String sampleText; - private static final int SWATH_WIDTH = 50; + private static final int SWATH_WIDTH = FineUIScale.scale(50); private Color oldColor = null; diff --git a/designer-base/src/main/java/com/fr/design/style/color/ColorSelectDialog.java b/designer-base/src/main/java/com/fr/design/style/color/ColorSelectDialog.java index 149ce1a17e..e9ee892bf0 100644 --- a/designer-base/src/main/java/com/fr/design/style/color/ColorSelectDialog.java +++ b/designer-base/src/main/java/com/fr/design/style/color/ColorSelectDialog.java @@ -16,6 +16,8 @@ import java.awt.Frame; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; +import static com.fine.theme.utils.FineUIScale.scale; + /** * 颜色选择器更多颜色对话框 @@ -85,7 +87,7 @@ public class ColorSelectDialog extends MiddleChartDialog{ private void initComponent() { this.setLayout(new BorderLayout()); this.add(pane,BorderLayout.NORTH); - this.setBasicDialogSize(545,500); + this.setBasicDialogSize(scale(545),scale(500)); this.setResizable(false); this.applyClosingAction(); diff --git a/designer-base/src/main/java/com/fr/design/style/color/CustomChooserPanel.java b/designer-base/src/main/java/com/fr/design/style/color/CustomChooserPanel.java index 48f5e5f2bf..d6b2df3023 100644 --- a/designer-base/src/main/java/com/fr/design/style/color/CustomChooserPanel.java +++ b/designer-base/src/main/java/com/fr/design/style/color/CustomChooserPanel.java @@ -38,6 +38,7 @@ import static com.fine.swing.ui.layout.Layouts.column; import static com.fine.swing.ui.layout.Layouts.fix; import static com.fine.swing.ui.layout.Layouts.flex; import static com.fine.swing.ui.layout.Layouts.row; +import static com.fine.theme.utils.FineUIScale.scale; /** @@ -124,17 +125,17 @@ class CustomChooserPanel extends AbstractColorChooserPanel implements ColorSelec /** * The default width of the gradient image. */ - private static final int IMG_WIDTH = 180; + private static final int IMG_WIDTH = scale(180); /** * The default height of the gradient image. */ - private static final int IMG_HEIGHT = 180; + private static final int IMG_HEIGHT = scale(180); /** * The default width of the track gradient. */ - private static final int TRACK_WIDTH = 12; + private static final int TRACK_WIDTH = scale(12); /** * The UILabel for Red. @@ -597,7 +598,7 @@ class CustomChooserPanel extends AbstractColorChooserPanel implements ColorSelec */ protected void buildChooser() { setLayout(new BorderLayout(10, 0)); - setPreferredSize(new Dimension((int) this.getPreferredSize().getWidth(), FineUIScale.scale(180))); + setPreferredSize(new Dimension((int) this.getPreferredSize().getWidth(), scale(180))); add(buildRightPanel(), BorderLayout.CENTER); JPanel container = new JPanel(); container.setLayout(new FlowLayout(FlowLayout.LEFT, 10, 0)); @@ -623,9 +624,9 @@ class CustomChooserPanel extends AbstractColorChooserPanel implements ColorSelec container.add(gradientPanel); container.add(layeredPane); - layeredPane.setPreferredSize(FineUIScale.scale(new Dimension(12, 180))); - slider.setSize(FineUIScale.scale(new Dimension(12, 180))); - trackPanel.setSize(FineUIScale.scale(new Dimension(12, 180))); + layeredPane.setPreferredSize(scale(new Dimension(12, 180))); + slider.setSize(scale(new Dimension(12, 180))); + trackPanel.setSize(scale(new Dimension(12, 180))); add(container, BorderLayout.WEST); slider.addChangeListener(new SliderChangeListener()); @@ -638,7 +639,7 @@ class CustomChooserPanel extends AbstractColorChooserPanel implements ColorSelec private JPanel createGradientPanel() { return new JPanel() { public Dimension getPreferredSize() { - return FineUIScale.scale(new Dimension(IMG_WIDTH, IMG_HEIGHT)); + return scale(new Dimension(IMG_WIDTH, IMG_HEIGHT)); } public void paint(Graphics g) { @@ -657,7 +658,7 @@ class CustomChooserPanel extends AbstractColorChooserPanel implements ColorSelec private JPanel createTrackPanel() { return new JPanel() { public Dimension getPreferredSize() { - return FineUIScale.scale(new Dimension(TRACK_WIDTH, IMG_HEIGHT)); + return scale(new Dimension(TRACK_WIDTH, IMG_HEIGHT)); } public void paint(Graphics g) { diff --git a/designer-base/src/main/java/com/fr/design/style/color/SwatchChooserPanel.java b/designer-base/src/main/java/com/fr/design/style/color/SwatchChooserPanel.java index 74f4b409a6..2d5addf82d 100644 --- a/designer-base/src/main/java/com/fr/design/style/color/SwatchChooserPanel.java +++ b/designer-base/src/main/java/com/fr/design/style/color/SwatchChooserPanel.java @@ -19,6 +19,7 @@ import javax.swing.JColorChooser; import javax.swing.JPanel; import javax.swing.colorchooser.AbstractColorChooserPanel; +import static com.fine.theme.utils.FineUIScale.scale; public class SwatchChooserPanel extends AbstractColorChooserPanel{ @@ -35,13 +36,13 @@ public class SwatchChooserPanel extends AbstractColorChooserPanel{ abstract static class SwatchPanel extends JPanel { /** The width of each block. */ - protected int cellWidth = 16; + protected int cellWidth = scale(16); /** The height of each block. */ - protected int cellHeight = 16; + protected int cellHeight = scale(16); /** The gap between blocks. */ - protected int gap = 1; + protected int gap = scale(1); /** The number of rows in the swatch panel. */ protected int numRows; @@ -70,7 +71,7 @@ public class SwatchChooserPanel extends AbstractColorChooserPanel{ int width = numCols * cellWidth + (numCols - 1) * gap; Insets insets = getInsets(); - return FineUIScale.scale(new Dimension(width + insets.left + insets.right, + return scale(new Dimension(width + insets.left + insets.right, height + insets.top + insets.bottom)); } @@ -511,8 +512,8 @@ public class SwatchChooserPanel extends AbstractColorChooserPanel{ Insets insets = parent.getInsets(); - return FineUIScale.scale(new Dimension(insets.left + insets.right + xmax, - insets.top + insets.bottom + ymax)); + return new Dimension(insets.left + insets.right + xmax, + insets.top + insets.bottom + ymax); } diff --git a/designer-base/src/main/java/com/fr/design/write/submit/DBManipulationPane.java b/designer-base/src/main/java/com/fr/design/write/submit/DBManipulationPane.java index 1aa1422f15..bf24b435a3 100644 --- a/designer-base/src/main/java/com/fr/design/write/submit/DBManipulationPane.java +++ b/designer-base/src/main/java/com/fr/design/write/submit/DBManipulationPane.java @@ -309,7 +309,7 @@ public class DBManipulationPane extends BasicBeanPane { conditionsTree = new JTree(new DefaultTreeModel(new ExpandMutableTreeNode())); conditionsTree.setRootVisible(false); conditionsTree.setShowsRootHandles(true); - conditionsTree.setBackground(UIConstants.NORMAL_BACKGROUND); + conditionsTree.setBackground(FineUIUtils.getUIColor("background.normal", "background.normal")); conditionsTree.setForeground(UIConstants.NORMAL_BACKGROUND); DefaultTreeCellRenderer cr = (DefaultTreeCellRenderer) conditionsTree.getCellRenderer(); cr.setForeground(UIConstants.NORMAL_BACKGROUND); @@ -740,7 +740,7 @@ public class DBManipulationPane extends BasicBeanPane { return super.stopCellEditing(); } }); - ((DefaultCellEditor) column1.getCellEditor()).setClickCountToStart(2); + ((DefaultCellEditor) column1.getCellEditor()).setClickCountToStart(1); //设置Column 2的Editor column2.setCellEditor(new ColumnValueEditor()); @@ -949,12 +949,12 @@ public class DBManipulationPane extends BasicBeanPane { } /* - * 双击以编辑 + * 单击以编辑 */ @Override public boolean isCellEditable(EventObject anEvent) { if (anEvent instanceof MouseEvent) { - return ((MouseEvent) anEvent).getClickCount() >= 2; + return ((MouseEvent) anEvent).getClickCount() >= 1; } return true; } diff --git a/designer-base/src/main/resources/com/fine/theme/icon/icon_edit.svg b/designer-base/src/main/resources/com/fine/theme/icon/icon_edit.svg new file mode 100644 index 0000000000..e0d5ef158d --- /dev/null +++ b/designer-base/src/main/resources/com/fine/theme/icon/icon_edit.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/designer-base/src/main/resources/com/fine/theme/light/ui/fine_light.icon.json b/designer-base/src/main/resources/com/fine/theme/light/ui/fine_light.icon.json index d73d090802..7a93ba1121 100644 --- a/designer-base/src/main/resources/com/fine/theme/light/ui/fine_light.icon.json +++ b/designer-base/src/main/resources/com/fine/theme/light/ui/fine_light.icon.json @@ -442,7 +442,8 @@ "layout_bottom": "layout/layout_bottom.svg", "layout_left": "layout/layout_left.svg", "layout_right": "layout/layout_right.svg", - "layout_top_right": "layout/layout_top_right.svg" + "layout_top_right": "layout/layout_top_right.svg", + "icon_edit": "icon_edit.svg" } } diff --git a/designer-base/src/main/resources/com/fine/theme/light/ui/laf/FineLightLaf.properties b/designer-base/src/main/resources/com/fine/theme/light/ui/laf/FineLightLaf.properties index f31bda6cf5..604c32e93b 100644 --- a/designer-base/src/main/resources/com/fine/theme/light/ui/laf/FineLightLaf.properties +++ b/designer-base/src/main/resources/com/fine/theme/light/ui/laf/FineLightLaf.properties @@ -305,7 +305,7 @@ ComboBox.maximumRowCount = 15 ComboBox.buttonStyle = auto ComboBox.background = #FFF ComboBox.buttonBackground = $ComboBox.background -ComboBox.buttonEditableBackground = darken($ComboBox.background,2%) +ComboBox.buttonEditableBackground = $ComboBox.background ComboBox.buttonSeparatorColor = $ComboBox.background ComboBox.buttonDisabledSeparatorColor = $Component.disabledBorderColor ComboBox.buttonArrowColor = @buttonArrowColor @@ -1396,4 +1396,8 @@ chart.selectedBorderColor = #2576EF [style]Label.detailLabel = \ foreground: fade(@foreground, 90%); \ - background: $fill.normal; \ No newline at end of file + background: $fill.normal; + +[style]Label.widgetEventLabel = \ + foreground: $List.wrapper.text.fontColor; \ + background: $fill.normal; From e5915202d4387cdf9524234f06ad7fc296f397f0 Mon Sep 17 00:00:00 2001 From: renekton Date: Thu, 22 Aug 2024 19:32:38 +0800 Subject: [PATCH 02/14] =?UTF-8?q?newui=E7=BC=A9=E6=94=BE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/fr/design/style/color/SwatchChooserPanel.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/designer-base/src/main/java/com/fr/design/style/color/SwatchChooserPanel.java b/designer-base/src/main/java/com/fr/design/style/color/SwatchChooserPanel.java index 2d5addf82d..5fb4143da8 100644 --- a/designer-base/src/main/java/com/fr/design/style/color/SwatchChooserPanel.java +++ b/designer-base/src/main/java/com/fr/design/style/color/SwatchChooserPanel.java @@ -71,8 +71,8 @@ public class SwatchChooserPanel extends AbstractColorChooserPanel{ int width = numCols * cellWidth + (numCols - 1) * gap; Insets insets = getInsets(); - return scale(new Dimension(width + insets.left + insets.right, - height + insets.top + insets.bottom)); + return new Dimension(width + insets.left + insets.right, + height + insets.top + insets.bottom); } /** From 3d585c092c47ee663c0e9f3984053a06be388df3 Mon Sep 17 00:00:00 2001 From: renekton Date: Fri, 23 Aug 2024 15:07:43 +0800 Subject: [PATCH 03/14] =?UTF-8?q?newui=E7=BC=A9=E6=94=BE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/fr/design/formula/JavaEditorPane.java | 12 +++--- .../fr/design/report/ReportEnginePane.java | 41 +++++++++---------- .../fr/design/report/WriteShortCutsPane.java | 26 ++++++------ 3 files changed, 39 insertions(+), 40 deletions(-) diff --git a/designer-base/src/main/java/com/fr/design/formula/JavaEditorPane.java b/designer-base/src/main/java/com/fr/design/formula/JavaEditorPane.java index a34762a1fd..c5902c3cdc 100644 --- a/designer-base/src/main/java/com/fr/design/formula/JavaEditorPane.java +++ b/designer-base/src/main/java/com/fr/design/formula/JavaEditorPane.java @@ -32,6 +32,9 @@ import java.io.InputStream; import java.util.ArrayList; import java.util.concurrent.ExecutionException; +import static com.fine.swing.ui.layout.Layouts.cell; +import static com.fine.swing.ui.layout.Layouts.row; + public class JavaEditorPane extends BasicPane { private RSyntaxTextArea javaText; @@ -83,13 +86,12 @@ public class JavaEditorPane extends BasicPane { } UIScrollPane jt = new UIScrollPane(javaText); - JPanel toolbarPane = new JPanel(new FlowLayout(FlowLayout.LEFT)); + JPanel toolbarPane = new JPanel(new BorderLayout()); UIButton saveButton = new UIButton(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Save")); saveButton.setAction(new SaveAction()); UIButton compileButton = new UIButton(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Compile")); compileButton.setAction(new CompilerAction()); - toolbarPane.add(saveButton); - toolbarPane.add(compileButton); + toolbarPane.add(row(8, cell(saveButton), cell(compileButton)).getComponent()); this.add(toolbarPane, BorderLayout.NORTH); this.add(jt, BorderLayout.CENTER); @@ -155,7 +157,7 @@ public class JavaEditorPane extends BasicPane { private void saveTextToFile(String text) { if (StringUtils.isEmpty(text)) { - return; + return; } if (StringUtils.isEmpty(className)) { return; @@ -180,7 +182,7 @@ public class JavaEditorPane extends BasicPane { @Override protected JavaCompileInfo doInBackground() throws Exception { - + return FRContext.getCommonOperator().compile(javaText.getText()); } diff --git a/designer-realize/src/main/java/com/fr/design/report/ReportEnginePane.java b/designer-realize/src/main/java/com/fr/design/report/ReportEnginePane.java index dfbab0e02e..56e2398b35 100644 --- a/designer-realize/src/main/java/com/fr/design/report/ReportEnginePane.java +++ b/designer-realize/src/main/java/com/fr/design/report/ReportEnginePane.java @@ -93,12 +93,11 @@ public class ReportEnginePane extends BasicBeanPane { outReportEnginePane.add(createReportEnginePane()); JPanel outAdvicePane = new JPanel(); outAdvicePane.setLayout(FRGUIPaneFactory.createBorderLayout()); - outAdvicePane.setPreferredSize(new Dimension(FineUIScale.scale(600), FineUIScale.scale(160))); outAdvicePane.add(createAdvicePane()); this.add(column(20, cell(wrapComponentWithTitle(outReportEnginePane, Toolkit.i18nText("Fine-Design_Report_Report_Engine_Attribute"))), - cell(wrapComponentWithTitle(outPagingEngineSelectPane, Toolkit.i18nText("Fine-Design_Report_Paging_Engine_Select"))).weight(1.0), + cell(wrapComponentWithTitle(outPagingEngineSelectPane, Toolkit.i18nText("Fine-Design_Report_Paging_Engine_Select"))), cell(wrapComponentWithTitle(outAdvicePane, Toolkit.i18nText("Fine-Design_Report_Advice")))) .getComponent()); } @@ -123,8 +122,6 @@ public class ReportEnginePane extends BasicBeanPane { createEngineXSettingPane(); createLineEngineSettingPane(); outLineEngineSettingPane.setVisible(false); - outEngineXSettingPane.setPreferredSize(new Dimension(scale(625), scale(220))); - outLineEngineSettingPane.setPreferredSize(new Dimension(scale(625), scale(220))); engineSettingPane.add(box(cell(outEngineXSettingPane), cell(outLineEngineSettingPane)).getComponent() , BorderLayout.WEST); @@ -157,18 +154,18 @@ public class ReportEnginePane extends BasicBeanPane { rowCountPanel.add(rowCountBox); JPanel tip = createTipPane(Toolkit.i18nText("Fine-Design_Report_Engine_X_tip")); engineXSettingPane.add(row(20, - column(10, - column(fix(6), cell(title)), - cell(new UILabel()), - cell(new UILabel()), - cell(new UILabel()) + column( + column(fix(6), cell(title)), + cell(new UILabel()), + cell(new UILabel()), + cell(new UILabel()) ), - column(10, - cell(pageQueryBoxPanel), - cell(engineXPageQueryPane), - cell(rowCountPanel), - cell(tip))) + column( + cell(pageQueryBoxPanel), + cell(engineXPageQueryPane), + cell(rowCountPanel), + cell(tip))) .getComponent()); outEngineXSettingPane.add(engineXSettingPane); } @@ -189,14 +186,14 @@ public class ReportEnginePane extends BasicBeanPane { lineEnginePageQueryBox.addActionListener(new SelectActionListener(lineEnginePageQueryBox, lineEnginePageQueryPane)); JPanel tipPane = createTipPane(Toolkit.i18nText("Fine-Design_Report_Line_Engine_tip")); lineEngineSettingPane.add(row(20, - column(10, - column(fix(6), cell(title)), - cell(new UILabel()), - cell(new UILabel())), - column(10, - cell(pageQueryBoxPanel), - cell(lineEnginePageQueryPane), - cell(tipPane))) + column( + column(fix(6), cell(title)), + cell(new UILabel()), + cell(new UILabel())), + column( + cell(pageQueryBoxPanel), + cell(lineEnginePageQueryPane), + cell(tipPane))) .getComponent()); outLineEngineSettingPane.add(lineEngineSettingPane); } diff --git a/designer-realize/src/main/java/com/fr/design/report/WriteShortCutsPane.java b/designer-realize/src/main/java/com/fr/design/report/WriteShortCutsPane.java index 232ebc2e1d..84348b9309 100644 --- a/designer-realize/src/main/java/com/fr/design/report/WriteShortCutsPane.java +++ b/designer-realize/src/main/java/com/fr/design/report/WriteShortCutsPane.java @@ -37,11 +37,11 @@ public class WriteShortCutsPane extends JPanel{ private UILabel nextRowHK; private UILabel preCol; private UILabel preRow; - + public WriteShortCutsPane(){ this.setLayout(new BorderLayout()); this.add(createContentPane(), BorderLayout.NORTH); - + if(!ServerPreferenceConfig.getInstance().isWriteShortCuts()){ nextColString = "Enter"; nextRowString = "Tab"; @@ -60,10 +60,10 @@ public class WriteShortCutsPane extends JPanel{ return contentPane; } - + private JPanel getFeatureNamePane(){ JPanel featureNamePane = new JPanel(new BorderLayout()); - featureNamePane.setBorder(BorderFactory.createEmptyBorder(16, 0, 0, 0)); + featureNamePane.setBorder(BorderFactory.createEmptyBorder(10, 0, 0, 0)); UILabel name = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Feature_Name"), SwingConstants.RIGHT); UILabel nextCol = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Cursor_To_Next_Column"), SwingConstants.CENTER); UILabel nextRow = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Cursor_To_Next_Row"), SwingConstants.CENTER); @@ -75,13 +75,13 @@ public class WriteShortCutsPane extends JPanel{ JPanel centerPane = new JPanel(new BorderLayout()); centerPane.setBorder(BorderFactory.createEmptyBorder(0, 20, 0, 0)); - centerPane.add(column(24, + centerPane.add(column(10, row(10, cell(name).weight(0.13), cell(nextCol).weight(0.15), cell(new JPanel()).weight(0.12), cell(nextRow).weight(0.15), flex(0.45)), row(10, cell(shortName).weight(0.13), cell(nextColHK).weight(0.15), cell(switchBtnPane).weight(0.12), cell(nextRowHK).weight(0.15), flex(0.45)) ).getComponent()); featureNamePane.add(centerPane, BorderLayout.CENTER); - + return featureNamePane; } @@ -96,7 +96,7 @@ public class WriteShortCutsPane extends JPanel{ private JPanel getHintsPane(){ JPanel hintsPane = new JPanel(new BorderLayout()); - hintsPane.setBorder(BorderFactory.createEmptyBorder(16, 0, 0, 0)); + hintsPane.setBorder(BorderFactory.createEmptyBorder(10, 0, 0, 0)); UILabel systemDefault = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_System_Default"), SwingConstants.RIGHT); UILabel preColText = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Cursor_To_Previous_Column"), SwingConstants.CENTER); @@ -107,19 +107,19 @@ public class WriteShortCutsPane extends JPanel{ JPanel centerPane = new JPanel(new BorderLayout()); centerPane.setBorder(BorderFactory.createEmptyBorder(0, 20, 0, 0)); - centerPane.add(column(24, + centerPane.add(column(10, row(10, cell(systemDefault).weight(0.13), cell(preColText).weight(0.24), cell(preCol).weight(0.14), flex(0.64)), row(10, cell(new JPanel()).weight(0.13), cell(preRowText).weight(0.24), cell(preRow).weight(0.14), flex(0.64)) ).getComponent()); hintsPane.add(centerPane, BorderLayout.CENTER); - + return hintsPane; } - + public ActionListener getListener(){ ActionListener actionListener = new ActionListener() { - + @Override public void actionPerformed(ActionEvent e) { String temp= nextColString; @@ -136,10 +136,10 @@ public class WriteShortCutsPane extends JPanel{ }); } }; - + return actionListener; } - + private void switchColRow(){ nextColHK.setText(nextColString); nextRowHK.setText(nextRowString); From cb1d74bc3d3a208aa2c4358ee34fa16eee52f00a Mon Sep 17 00:00:00 2001 From: "Destiny.Lin" Date: Mon, 26 Aug 2024 14:49:12 +0800 Subject: [PATCH 04/14] =?UTF-8?q?REPORT-130000=20fbp=E7=9A=84fr=E6=9C=8D?= =?UTF-8?q?=E5=8A=A1=E5=90=AF=E5=8A=A8=E5=A4=B1=E8=B4=A5=EF=BC=8C=E4=BD=86?= =?UTF-8?q?=E6=98=AFfbp=E8=AE=BE=E8=AE=A1=E5=99=A8=E6=B5=8B=E8=AF=95?= =?UTF-8?q?=E8=BF=9E=E6=8E=A5=E8=BF=98=E6=98=AF=E6=88=90=E5=8A=9F=E7=9A=84?= =?UTF-8?q?=EF=BC=8C=E7=82=B9=E5=87=BB=E7=A1=AE=E5=AE=9A=E8=AE=BE=E8=AE=A1?= =?UTF-8?q?=E5=99=A8=E9=A1=B5=E9=9D=A2=E5=8D=A1=E6=AD=BB=20&=20REPORT-1310?= =?UTF-8?q?68=20=E8=BF=9C=E7=A8=8B=E8=AE=BE=E8=AE=A1=E6=9D=83=E9=99=90?= =?UTF-8?q?=E6=A0=A1=E9=AA=8C=E4=B8=8D=E7=94=9F=E6=95=88?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../fr/design/env/HttpWorkspaceConnector.java | 32 +++++++++++++++++-- 1 file changed, 30 insertions(+), 2 deletions(-) diff --git a/designer-base/src/main/java/com/fr/design/env/HttpWorkspaceConnector.java b/designer-base/src/main/java/com/fr/design/env/HttpWorkspaceConnector.java index 3687735601..1c069bbb0e 100644 --- a/designer-base/src/main/java/com/fr/design/env/HttpWorkspaceConnector.java +++ b/designer-base/src/main/java/com/fr/design/env/HttpWorkspaceConnector.java @@ -4,8 +4,10 @@ import com.fanruan.workplace.http.HttpConstants; import com.fanruan.workplace.http.HttpServiceMap; import com.fanruan.workplace.http.RepositoryManager; import com.fanruan.workplace.http.info.Stub; +import com.fr.exception.RemoteDesignPermissionDeniedException; import com.fr.log.FineLoggerFactory; import com.fr.stable.StringUtils; +import com.fr.workspace.engine.exception.RemoteDesignConnectionException; import com.fr.workspace.server.repository.authority.RemoteAuthorityRepository; import com.fr.workspace.server.repository.compatible.register.CompatibleRegister; import com.fr.workspace.server.repository.connect.FineWorkspaceHttpClient; @@ -43,7 +45,18 @@ public class HttpWorkspaceConnector implements WorkspaceConnector { FineWorkspaceHttpClient client = FineWorkspaceHttpClient.create("Http-Client", connectionInfo); LoginResponseInfoBean bean; try { - bean = RemoteAuthorityRepository.getInstance().login(createLoginBean(connectionInfo)); + bean = RemoteAuthorityRepository.getInstance().login(createLoginBean(connectionInfo)); + WorkspaceConnection connection = new WorkspaceConnection( + UUID.randomUUID().toString(), + connectionInfo.getUserName(), + HttpConstants.AUTHORIZATION_PREFIX + bean.getAccessToken(), + InetAddress.getLocalHost().getHostAddress()); + client.updateConnection(connection); + // 检查远程权限 + if (!checkRemoteAuthority(connection)) { + // 无权限则抛出无权限的错 + throw new RemoteDesignPermissionDeniedException(); + } } finally { client.closePool(); } @@ -71,16 +84,31 @@ public class HttpWorkspaceConnector implements WorkspaceConnector { HttpConstants.AUTHORIZATION_PREFIX + bean.getAccessToken(), InetAddress.getLocalHost().getHostAddress()); client.updateConnection(connection); + // 检查远程权限 + if (!checkRemoteAuthority(connection)) { + // 无权限则抛出无权限的错 + throw new RemoteDesignPermissionDeniedException(); + } client.startHeartBeat(); } catch (Exception e) { client.closePool(); - throw e; + throw new RemoteDesignConnectionException(e, StringUtils.EMPTY); } CompatibleRegister.registerCompatibleEnv(); RepositoryManager.getInstance().clearLastPool(); return client; } + private boolean checkRemoteAuthority(WorkspaceConnection connection) { + try { + return RemoteAuthorityRepository.getInstance().isRoot(connection.getUserName()) || RemoteAuthorityRepository.getInstance().hasAuthority(connection.getUserName()); + } catch (Exception e) { + // 如果这里出现异常,就认为fr服务没启动 + throw new RemoteDesignConnectionException(e, StringUtils.EMPTY); + } + + } + private LoginRequestInfoBean createLoginBean(WorkspaceConnectionInfo connectionInfo) { LoginRequestInfoBean bean = new LoginRequestInfoBean(); bean.setUsername(connectionInfo.getUserName()); From 11b942ec7522d34c084d01d642da03a44bb9844e Mon Sep 17 00:00:00 2001 From: "Destiny.Lin" Date: Mon, 26 Aug 2024 16:17:07 +0800 Subject: [PATCH 05/14] =?UTF-8?q?REPORT-131067=20=E8=BF=9C=E7=A8=8B?= =?UTF-8?q?=E8=AE=BE=E8=AE=A1=E5=AF=86=E7=A0=81=E6=AC=A1=E6=95=B0=E8=BF=87?= =?UTF-8?q?=E5=A4=9A=E6=8A=9B=E9=94=99=E5=BC=82=E5=B8=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../fr/design/env/HttpWorkspaceConnector.java | 2 +- .../boot/init/DesignWorkContextComponent.java | 20 ++++++++++--------- 2 files changed, 12 insertions(+), 10 deletions(-) diff --git a/designer-base/src/main/java/com/fr/design/env/HttpWorkspaceConnector.java b/designer-base/src/main/java/com/fr/design/env/HttpWorkspaceConnector.java index 1c069bbb0e..e6a9720bc1 100644 --- a/designer-base/src/main/java/com/fr/design/env/HttpWorkspaceConnector.java +++ b/designer-base/src/main/java/com/fr/design/env/HttpWorkspaceConnector.java @@ -92,7 +92,7 @@ public class HttpWorkspaceConnector implements WorkspaceConnector { client.startHeartBeat(); } catch (Exception e) { client.closePool(); - throw new RemoteDesignConnectionException(e, StringUtils.EMPTY); + throw e; } CompatibleRegister.registerCompatibleEnv(); RepositoryManager.getInstance().clearLastPool(); diff --git a/designer-realize/src/main/java/com/fanruan/boot/init/DesignWorkContextComponent.java b/designer-realize/src/main/java/com/fanruan/boot/init/DesignWorkContextComponent.java index ee93d96369..51adb2fd57 100644 --- a/designer-realize/src/main/java/com/fanruan/boot/init/DesignWorkContextComponent.java +++ b/designer-realize/src/main/java/com/fanruan/boot/init/DesignWorkContextComponent.java @@ -11,6 +11,11 @@ import com.fanruan.workplace.conetxt.CompatiblePool; import com.fanruan.workplace.http.HttpConstants; import com.fanruan.workplace.http.RepositoryManager; import com.fanruan.workplace.http.WorkspaceHeartBeatShell; +import com.fr.workspace.engine.exception.RemoteDesignLoginLockHandler; +import com.fr.workspace.engine.exception.RemoteDesignNoAuthHandler; +import com.fr.workspace.engine.exception.RemoteDesignPasswordNeedUpdateHandler; +import com.fr.workspace.engine.exception.RemoteDesignPasswordStrengthHandler; +import com.fr.workspace.engine.exception.RemoteDesignUserPwdErrorHandler; import com.fanruan.workplace.http.exception.RemoteExceptionConvert; import com.fanruan.workplace.standard.ServerInfo; import com.fanruan.workplace.standard.ServerInfoOperator; @@ -43,10 +48,6 @@ import com.fr.workspace.engine.FineWorkspaceFactory; import com.fr.workspace.engine.base.FineObjectPool; import com.fr.workspace.engine.client.heartbeart.FineWorkspaceHeartbeat; import com.fr.workspace.engine.client.heartbeart.WorkspaceHeartbeat; -import com.fr.workspace.engine.exception.RemoteDesignNoAuthException; -import com.fr.workspace.engine.exception.RemoteDesignPasswordNeedUpdateException; -import com.fr.workspace.engine.exception.RemoteDesignPasswordStrengthException; -import com.fr.workspace.engine.exception.RemoteDesignUserPwdErrorException; import com.fr.workspace.engine.resource.FineWorkResource; import com.fr.workspace.engine.resource.FineWorkResourceAdaptor; import com.fr.workspace.pool.WorkRPCRegister; @@ -144,11 +145,12 @@ public class DesignWorkContextComponent { private void startErrorConvert() { - RemoteExceptionConvert.registerException(HttpConstants.USER_PWD_ERROR_CODE, new RemoteDesignUserPwdErrorException()); - RemoteExceptionConvert.registerException(HttpConstants.USER_PWD_NEED_UPDATE, new RemoteDesignPasswordNeedUpdateException()); - RemoteExceptionConvert.registerException(HttpConstants.PASSWORD_STRENGTH_ERROR_CODE, new RemoteDesignPasswordStrengthException()); - RemoteExceptionConvert.registerException(HttpConstants.REMOTE_AUTHORITY_ERROR_CODE, new RemoteDesignNoAuthException()); - RemoteExceptionConvert.registerException(HttpConstants.PASSWORD_EMPTY_ERROR_CODE, new RemoteDesignUserPwdErrorException()); + RemoteExceptionConvert.registerException(HttpConstants.USER_PWD_ERROR_CODE, new RemoteDesignUserPwdErrorHandler()); + RemoteExceptionConvert.registerException(HttpConstants.USER_PWD_NEED_UPDATE, new RemoteDesignPasswordNeedUpdateHandler()); + RemoteExceptionConvert.registerException(HttpConstants.PASSWORD_STRENGTH_ERROR_CODE, new RemoteDesignPasswordStrengthHandler()); + RemoteExceptionConvert.registerException(HttpConstants.REMOTE_AUTHORITY_ERROR_CODE, new RemoteDesignNoAuthHandler()); + RemoteExceptionConvert.registerException(HttpConstants.PASSWORD_EMPTY_ERROR_CODE, new RemoteDesignUserPwdErrorHandler()); + RemoteExceptionConvert.registerException(HttpConstants.LOGIN_LOCK, new RemoteDesignLoginLockHandler()); } private void supplementalCommon() { From 355d63e19104061d04ae9f63ab19cb8b4f178d61 Mon Sep 17 00:00:00 2001 From: "Destiny.Lin" Date: Mon, 26 Aug 2024 16:29:32 +0800 Subject: [PATCH 06/14] =?UTF-8?q?REPORT-131067=20=E8=BF=9C=E7=A8=8B?= =?UTF-8?q?=E8=AE=BE=E8=AE=A1=E5=AF=86=E7=A0=81=E6=AC=A1=E6=95=B0=E8=BF=87?= =?UTF-8?q?=E5=A4=9A=E6=8A=9B=E9=94=99=E5=BC=82=E5=B8=B8=20=E4=BC=98?= =?UTF-8?q?=E5=8C=96=E9=87=8D=E5=A4=8D=E4=BB=A3=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../fr/design/env/HttpWorkspaceConnector.java | 38 ++++++++----------- 1 file changed, 16 insertions(+), 22 deletions(-) diff --git a/designer-base/src/main/java/com/fr/design/env/HttpWorkspaceConnector.java b/designer-base/src/main/java/com/fr/design/env/HttpWorkspaceConnector.java index e6a9720bc1..d3d1d06176 100644 --- a/designer-base/src/main/java/com/fr/design/env/HttpWorkspaceConnector.java +++ b/designer-base/src/main/java/com/fr/design/env/HttpWorkspaceConnector.java @@ -46,17 +46,7 @@ public class HttpWorkspaceConnector implements WorkspaceConnector { LoginResponseInfoBean bean; try { bean = RemoteAuthorityRepository.getInstance().login(createLoginBean(connectionInfo)); - WorkspaceConnection connection = new WorkspaceConnection( - UUID.randomUUID().toString(), - connectionInfo.getUserName(), - HttpConstants.AUTHORIZATION_PREFIX + bean.getAccessToken(), - InetAddress.getLocalHost().getHostAddress()); - client.updateConnection(connection); - // 检查远程权限 - if (!checkRemoteAuthority(connection)) { - // 无权限则抛出无权限的错 - throw new RemoteDesignPermissionDeniedException(); - } + checkValidAndUpdateInfo(client, connectionInfo, bean); } finally { client.closePool(); } @@ -78,17 +68,7 @@ public class HttpWorkspaceConnector implements WorkspaceConnector { throw new RuntimeException("Empty token, try connect again and check server"); } FineLoggerFactory.getLogger().info("[connector] infos:{}", bean.getAccessToken()); - WorkspaceConnection connection = new WorkspaceConnection( - UUID.randomUUID().toString(), - connectionInfo.getUserName(), - HttpConstants.AUTHORIZATION_PREFIX + bean.getAccessToken(), - InetAddress.getLocalHost().getHostAddress()); - client.updateConnection(connection); - // 检查远程权限 - if (!checkRemoteAuthority(connection)) { - // 无权限则抛出无权限的错 - throw new RemoteDesignPermissionDeniedException(); - } + checkValidAndUpdateInfo(client, connectionInfo, bean); client.startHeartBeat(); } catch (Exception e) { client.closePool(); @@ -99,6 +79,20 @@ public class HttpWorkspaceConnector implements WorkspaceConnector { return client; } + private void checkValidAndUpdateInfo(FineWorkspaceHttpClient client, WorkspaceConnectionInfo connectionInfo, LoginResponseInfoBean bean) throws Exception { + WorkspaceConnection connection = new WorkspaceConnection( + UUID.randomUUID().toString(), + connectionInfo.getUserName(), + HttpConstants.AUTHORIZATION_PREFIX + bean.getAccessToken(), + InetAddress.getLocalHost().getHostAddress()); + client.updateConnection(connection); + // 检查远程权限 + if (!checkRemoteAuthority(connection)) { + // 无权限则抛出无权限的错 + throw new RemoteDesignPermissionDeniedException(); + } + } + private boolean checkRemoteAuthority(WorkspaceConnection connection) { try { return RemoteAuthorityRepository.getInstance().isRoot(connection.getUserName()) || RemoteAuthorityRepository.getInstance().hasAuthority(connection.getUserName()); From d963ee47e3a51e35bc55d5cc25d8b1503beb9807 Mon Sep 17 00:00:00 2001 From: vito Date: Mon, 26 Aug 2024 18:17:28 +0800 Subject: [PATCH 07/14] =?UTF-8?q?REPORT-131584=20=E5=88=A4=E9=87=8D?= =?UTF-8?q?=E6=95=B0=E6=8D=AE=E9=9B=86=E5=90=8D=E7=A7=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../datapane/TableDataCreatorProducer.java | 4 +- ...JSBridge.java => DCTableDataJSBridge.java} | 17 ++++---- ...acentersPane.java => DCTableDataPane.java} | 40 ++++++------------- .../tabledata/wrapper/TableDataFactory.java | 4 +- 4 files changed, 26 insertions(+), 39 deletions(-) rename designer-base/src/main/java/com/fr/design/data/tabledata/datacenter/{DatacentersJSBridge.java => DCTableDataJSBridge.java} (91%) rename designer-base/src/main/java/com/fr/design/data/tabledata/datacenter/{DatacentersPane.java => DCTableDataPane.java} (79%) diff --git a/designer-base/src/main/java/com/fr/design/data/datapane/TableDataCreatorProducer.java b/designer-base/src/main/java/com/fr/design/data/datapane/TableDataCreatorProducer.java index c1adf134a4..2dcaea1aaa 100644 --- a/designer-base/src/main/java/com/fr/design/data/datapane/TableDataCreatorProducer.java +++ b/designer-base/src/main/java/com/fr/design/data/datapane/TableDataCreatorProducer.java @@ -14,7 +14,7 @@ import com.fine.theme.icon.LazyIcon; import com.fr.data.impl.storeproc.StoreProcedure; import com.fr.datacenters.tabledata.DCTableData; import com.fr.design.ExtraDesignClassManager; -import com.fr.design.data.tabledata.datacenter.DatacentersPane; +import com.fr.design.data.tabledata.datacenter.DCTableDataPane; import com.fr.design.data.tabledata.tabledatapane.ClassTableDataPane; import com.fr.design.data.tabledata.tabledatapane.DBTableDataPane; import com.fr.design.data.tabledata.tabledatapane.EmbeddedTableDataPane; @@ -95,7 +95,7 @@ public class TableDataCreatorProducer { return new TableDataNameObjectCreator[]{ new TableDataNameObjectCreator(i18nText("Fine-Design_Basic_DS_Datacenters"), new LazyIcon("datacenter"), - DCTableData.class, DatacentersPane.class) { + DCTableData.class, DCTableDataPane.class) { @Override public boolean shouldInsertSeparator() { return true; diff --git a/designer-base/src/main/java/com/fr/design/data/tabledata/datacenter/DatacentersJSBridge.java b/designer-base/src/main/java/com/fr/design/data/tabledata/datacenter/DCTableDataJSBridge.java similarity index 91% rename from designer-base/src/main/java/com/fr/design/data/tabledata/datacenter/DatacentersJSBridge.java rename to designer-base/src/main/java/com/fr/design/data/tabledata/datacenter/DCTableDataJSBridge.java index f8e164dccf..c5f25d68aa 100644 --- a/designer-base/src/main/java/com/fr/design/data/tabledata/datacenter/DatacentersJSBridge.java +++ b/designer-base/src/main/java/com/fr/design/data/tabledata/datacenter/DCTableDataJSBridge.java @@ -4,6 +4,7 @@ import com.fr.base.BaseFormula; import com.fr.datacenters.tabledata.bean.DCFilterQueryBean; import com.fr.datacenters.tabledata.bean.DCTableDataBean; import com.fr.datacenters.tabledata.filter.DCFilter; +import com.fr.datacenters.tabledata.parameter.DCParameter; import com.fr.design.bridge.exec.JSBridge; import com.fr.design.dialog.DialogActionListener; import com.fr.design.dialog.UIDialog; @@ -37,7 +38,7 @@ import java.util.stream.Collectors; * Created on 2024/6/17 */ @JsAccessible -public class DatacentersJSBridge { +public class DCTableDataJSBridge { private static final String EVENT_FORMULA_UPDATE = "OK"; private static final String EVENT_FORMULA_CANCEL = "CANCEL"; @@ -47,25 +48,25 @@ public class DatacentersJSBridge { * @param window js环境的window对象 * @return 桥接实例 */ - public static DatacentersJSBridge getBridge(JsObject window) { - return new DatacentersJSBridge(window); + public static DCTableDataJSBridge getBridge(JsObject window) { + return new DCTableDataJSBridge(window); } private final JsObject window; - private DatacentersJSBridge(JsObject window) { + private DCTableDataJSBridge(JsObject window) { this.window = window; } - private static DatacentersPane relationPanel; + private static DCTableDataPane relationPanel; /** * 设置窗口,用于打开对话框的层级 * * @param panel 面板 */ - public static void relationPanel(DatacentersPane panel) { + public static void relationPanel(DCTableDataPane panel) { relationPanel = panel; } @@ -161,7 +162,9 @@ public class DatacentersJSBridge { JxUIPane.DEFAULT_EXECUTOR.submit(() -> { try { DCTableDataBean decoded = EmbedJson.decodeValue(tableData, DCTableDataBean.class); - DCFilter dcFilter = decoded.getFilter().evalValue(decoded.getParameters(), Calculator.createCalculator()); + DCParameter[] dcParameters = Arrays.stream(decoded.getParameters()) + .map(DCParameter::fromBean).toArray(DCParameter[]::new); + DCFilter dcFilter = decoded.getFilter().evalValue(dcParameters, Calculator.createCalculator()); DCFilterQueryBean queryBean = dcFilter.toQueryBean(); String encode = EmbedJson.encode(queryBean); callback.invoke(window, encode); diff --git a/designer-base/src/main/java/com/fr/design/data/tabledata/datacenter/DatacentersPane.java b/designer-base/src/main/java/com/fr/design/data/tabledata/datacenter/DCTableDataPane.java similarity index 79% rename from designer-base/src/main/java/com/fr/design/data/tabledata/datacenter/DatacentersPane.java rename to designer-base/src/main/java/com/fr/design/data/tabledata/datacenter/DCTableDataPane.java index 62679018d4..766e57ec20 100644 --- a/designer-base/src/main/java/com/fr/design/data/tabledata/datacenter/DatacentersPane.java +++ b/designer-base/src/main/java/com/fr/design/data/tabledata/datacenter/DCTableDataPane.java @@ -4,6 +4,7 @@ import com.fanruan.workplace.http.ServiceType; import com.fr.datacenters.tabledata.DCTableData; import com.fr.datacenters.tabledata.bean.DCNameBean; import com.fr.datacenters.tabledata.bean.DCTableDataBean; +import com.fr.design.data.DesignTableDataManager; import com.fr.design.data.tabledata.tabledatapane.AbstractTableDataPane; import com.fr.design.dialog.DialogActionListener; import com.fr.design.dialog.UIDialog; @@ -14,10 +15,15 @@ import com.fr.json.revise.EmbedJson; import com.fr.stable.StringUtils; import com.fr.third.guava.collect.ImmutableMap; import com.fr.workspace.WorkContext; +import com.teamdev.jxbrowser.browser.callback.InjectJsCallback; import javax.swing.SwingUtilities; import java.awt.BorderLayout; import java.awt.Window; +import java.util.Arrays; + +import static com.fr.design.ui.ModernUIConstants.DOT; +import static com.fr.design.ui.ModernUIConstants.WINDOW; /** * 数据中心数据集面板 @@ -26,7 +32,7 @@ import java.awt.Window; * @since 11.0 * Created on 2024/6/17 */ -public class DatacentersPane extends AbstractTableDataPane { +public class DCTableDataPane extends AbstractTableDataPane { private static final JxEngine JX_ENGINE = JxEngine.newInstance(false); @@ -37,31 +43,7 @@ public class DatacentersPane extends AbstractTableDataPane { // 用于复制粘贴场景 private DCTableData dcTableData; - /** - * 借用,只运行一次 - */ - private void addDialogActionListener() { - - // 保证在窗口加载完成后执行 - SwingUtilities.invokeLater(() -> { - Window ancestor = SwingUtilities.getWindowAncestor(DatacentersPane.this); - if (ancestor instanceof UIDialog) { - ((UIDialog) ancestor).addDialogActionListener(new DialogActionListener() { - @Override - public void doOk() { - dataCenterJxUIPane.disposeBrowser(); - } - - @Override - public void doCancel() { - dataCenterJxUIPane.disposeBrowser(); - } - }); - } - }); - } - - public DatacentersPane() { + public DCTableDataPane() { setLayout(new BorderLayout()); dataCenterJxUIPane = getJxUIPane(); add(dataCenterJxUIPane, BorderLayout.CENTER); @@ -73,7 +55,7 @@ public class DatacentersPane extends AbstractTableDataPane { return new JxUIPane.Builder() .engine(JX_ENGINE) .namespace(DATA_CENTER) - .bindWindow(DATA_CENTER_HELPER, DatacentersJSBridge::getBridge) + .bindWindow(DATA_CENTER_HELPER, DCTableDataJSBridge::getBridge) .withEMB("com/fr/design/data/tabledata/datacenter/web/data-choose.prod.html", ImmutableMap.of("fineServletURL", getDatacentersUrl())) .build(); @@ -96,9 +78,11 @@ public class DatacentersPane extends AbstractTableDataPane { @Override public void populateBean(DCTableData ob) { - DatacentersJSBridge.relationPanel(this); + DCTableDataJSBridge.relationPanel(this); dcTableData = ob; dataCenterJxUIPane.populate(EmbedJson.encode(ob.toBean())); + String[] allDSNames = DesignTableDataManager.getAllDSNames(DesignTableDataManager.getEditingTableDataSource()); + dataCenterJxUIPane.executeJS(DATA_CENTER + DOT + "datasetNames=" + EmbedJson.encode(allDSNames)); } diff --git a/designer-base/src/main/java/com/fr/design/data/tabledata/wrapper/TableDataFactory.java b/designer-base/src/main/java/com/fr/design/data/tabledata/wrapper/TableDataFactory.java index 096fcc420d..6d87a2c1bc 100644 --- a/designer-base/src/main/java/com/fr/design/data/tabledata/wrapper/TableDataFactory.java +++ b/designer-base/src/main/java/com/fr/design/data/tabledata/wrapper/TableDataFactory.java @@ -15,7 +15,7 @@ import com.fr.data.impl.storeproc.StoreProcedure; import com.fr.datacenters.tabledata.DCTableData; import com.fr.decision.webservice.bean.dataset.ServerDataSetBean; import com.fr.design.data.datapane.TableDataNameObjectCreator; -import com.fr.design.data.tabledata.datacenter.DatacentersPane; +import com.fr.design.data.tabledata.datacenter.DCTableDataPane; import com.fr.design.data.tabledata.tabledatapane.AbstractTableDataPane; import com.fr.design.data.tabledata.tabledatapane.ClassTableDataPane; import com.fr.design.data.tabledata.tabledatapane.DBTableDataPane; @@ -79,7 +79,7 @@ public abstract class TableDataFactory { i18nText("Fine-Design_Basic_DS_Datacenters"), new LazyIcon("datacenter"), DCTableData.class, - DatacentersPane.class)); + DCTableDataPane.class)); map.putAll(defaultMap); } From 376dfaee4279aa7ec41dd920f18a9dd60b5d43fa Mon Sep 17 00:00:00 2001 From: renekton Date: Mon, 26 Aug 2024 18:56:31 +0800 Subject: [PATCH 08/14] =?UTF-8?q?=E4=B8=BB=E9=A2=98=E7=BC=96=E8=BE=91?= =?UTF-8?q?=E5=9B=BE=E6=A0=87=E5=91=BD=E5=90=8D=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/fr/design/mainframe/theme/TemplateThemeBlock.java | 2 +- .../com/fine/theme/icon/{icon_edit.svg => theme_edit.svg} | 0 .../main/resources/com/fine/theme/light/ui/fine_light.icon.json | 2 +- 3 files changed, 2 insertions(+), 2 deletions(-) rename designer-base/src/main/resources/com/fine/theme/icon/{icon_edit.svg => theme_edit.svg} (100%) diff --git a/designer-base/src/main/java/com/fr/design/mainframe/theme/TemplateThemeBlock.java b/designer-base/src/main/java/com/fr/design/mainframe/theme/TemplateThemeBlock.java index 810c4ae362..27f09d9e0b 100644 --- a/designer-base/src/main/java/com/fr/design/mainframe/theme/TemplateThemeBlock.java +++ b/designer-base/src/main/java/com/fr/design/mainframe/theme/TemplateThemeBlock.java @@ -51,7 +51,7 @@ public class TemplateThemeBlock extends JPanel { private final TemplateThemeProfilePane profilePane; private final Icon theme4currentTemplateMarkIcon = IOUtils.readIcon("/com/fr/design/form/images/theme4currentTemplate.png"); private final Icon theme4NewTemplateMarkIcon= IOUtils.readIcon("/com/fr/design/form/images/theme4newTemplate.png"); - private final Icon profileIcon = new LazyIcon("icon_edit"); + private final Icon profileIcon = new LazyIcon("theme_edit"); private final boolean displayTheme4NewTemplateMarker; private final ThumbnailPane thumbnailPane; diff --git a/designer-base/src/main/resources/com/fine/theme/icon/icon_edit.svg b/designer-base/src/main/resources/com/fine/theme/icon/theme_edit.svg similarity index 100% rename from designer-base/src/main/resources/com/fine/theme/icon/icon_edit.svg rename to designer-base/src/main/resources/com/fine/theme/icon/theme_edit.svg diff --git a/designer-base/src/main/resources/com/fine/theme/light/ui/fine_light.icon.json b/designer-base/src/main/resources/com/fine/theme/light/ui/fine_light.icon.json index 7a93ba1121..1c63b2b363 100644 --- a/designer-base/src/main/resources/com/fine/theme/light/ui/fine_light.icon.json +++ b/designer-base/src/main/resources/com/fine/theme/light/ui/fine_light.icon.json @@ -443,7 +443,7 @@ "layout_left": "layout/layout_left.svg", "layout_right": "layout/layout_right.svg", "layout_top_right": "layout/layout_top_right.svg", - "icon_edit": "icon_edit.svg" + "theme_edit": "theme_edit.svg" } } From ce85eecff40140818cefd112da9a9e267eb57ff0 Mon Sep 17 00:00:00 2001 From: "Destiny.Lin" Date: Tue, 27 Aug 2024 15:26:39 +0800 Subject: [PATCH 09/14] =?UTF-8?q?REPORT-114392=20FR-FBP=E7=89=88=E6=9C=AC?= =?UTF-8?q?=E6=9C=AC=E5=9C=B0=E8=AE=BE=E8=AE=A1=E9=80=82=E9=85=8D=20?= =?UTF-8?q?=E4=BC=98=E5=8C=96=E5=85=B3=E9=97=AD=E6=A8=A1=E6=9D=BF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/java/com/fr/design/file/MultiTemplateTabPane.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/designer-base/src/main/java/com/fr/design/file/MultiTemplateTabPane.java b/designer-base/src/main/java/com/fr/design/file/MultiTemplateTabPane.java index c063bdd26b..1ac3f12ead 100644 --- a/designer-base/src/main/java/com/fr/design/file/MultiTemplateTabPane.java +++ b/designer-base/src/main/java/com/fr/design/file/MultiTemplateTabPane.java @@ -847,7 +847,7 @@ public class MultiTemplateTabPane extends Row { setIsCloseCurrent(true); } closeFormat(template); - closeSpecifiedTemplate(template); + DesignCacheManager.processByCacheTableData(() -> closeSpecifiedTemplate(template)); DesignerContext.getDesignerFrame().getContentFrame().repaint(); isShowList = false; } else { From ff0bc767f6da1c7157c9f88b27ca5ba0ab697a40 Mon Sep 17 00:00:00 2001 From: "Destiny.Lin" Date: Tue, 27 Aug 2024 16:46:00 +0800 Subject: [PATCH 10/14] =?UTF-8?q?REPORT-131068=20=E8=BF=9C=E7=A8=8B?= =?UTF-8?q?=E8=AE=BE=E8=AE=A1=E6=9D=83=E9=99=90=E6=A0=A1=E9=AA=8C=E4=B8=8D?= =?UTF-8?q?=E7=94=9F=E6=95=88?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/com/fr/design/env/HttpWorkspaceConnector.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/designer-base/src/main/java/com/fr/design/env/HttpWorkspaceConnector.java b/designer-base/src/main/java/com/fr/design/env/HttpWorkspaceConnector.java index d3d1d06176..ce2cdab889 100644 --- a/designer-base/src/main/java/com/fr/design/env/HttpWorkspaceConnector.java +++ b/designer-base/src/main/java/com/fr/design/env/HttpWorkspaceConnector.java @@ -4,10 +4,10 @@ import com.fanruan.workplace.http.HttpConstants; import com.fanruan.workplace.http.HttpServiceMap; import com.fanruan.workplace.http.RepositoryManager; import com.fanruan.workplace.http.info.Stub; -import com.fr.exception.RemoteDesignPermissionDeniedException; import com.fr.log.FineLoggerFactory; import com.fr.stable.StringUtils; import com.fr.workspace.engine.exception.RemoteDesignConnectionException; +import com.fr.workspace.engine.exception.RemoteDesignNoAuthException; import com.fr.workspace.server.repository.authority.RemoteAuthorityRepository; import com.fr.workspace.server.repository.compatible.register.CompatibleRegister; import com.fr.workspace.server.repository.connect.FineWorkspaceHttpClient; @@ -89,7 +89,7 @@ public class HttpWorkspaceConnector implements WorkspaceConnector { // 检查远程权限 if (!checkRemoteAuthority(connection)) { // 无权限则抛出无权限的错 - throw new RemoteDesignPermissionDeniedException(); + throw new RemoteDesignNoAuthException(); } } From c4e7452a3711b4db21d0049c211eacb69188f412 Mon Sep 17 00:00:00 2001 From: "Leo.Qin" Date: Tue, 27 Aug 2024 16:48:16 +0800 Subject: [PATCH 11/14] =?UTF-8?q?REPORT-131064=20=E8=AE=BE=E8=AE=A1?= =?UTF-8?q?=E5=99=A8=E5=AF=BC=E5=87=BA=E6=A8=A1=E6=9D=BF=E5=A4=B1=E8=B4=A5?= =?UTF-8?q?=EF=BC=8C=E6=8A=A5=E9=94=99=E6=A8=A1=E6=9D=BF=E8=A7=A3=E6=9E=90?= =?UTF-8?q?=E9=94=99=E8=AF=AF=20=20=E3=80=90=E9=97=AE=E9=A2=98=E5=8E=9F?= =?UTF-8?q?=E5=9B=A0=E3=80=911=E3=80=81=E5=AF=BC=E5=87=BA=E6=97=B6?= =?UTF-8?q?=EF=BC=8C=E6=A8=A1=E7=89=88=E8=B7=AF=E5=BE=84=E9=BB=98=E8=AE=A4?= =?UTF-8?q?=E4=BC=A0=E7=9A=84=E5=8F=82=E6=95=B0=E4=B8=BA=E4=BB=A5=E2=80=9C?= =?UTF-8?q?reportlets=E2=80=9D=E5=BC=80=E5=A7=8B=E7=9A=84=EF=BC=8C?= =?UTF-8?q?=E8=AF=BB=E5=8F=96=E6=A8=A1=E6=9D=BF=E6=97=B6=E4=BC=9A=E5=86=8D?= =?UTF-8?q?=E6=AC=A1=E6=8B=BC=E6=8E=A5=E2=80=9Creportlets=E2=80=9D?= =?UTF-8?q?=EF=BC=8C=E5=AF=BC=E8=87=B4=E6=89=BE=E4=B8=8D=E5=88=B0=E6=A8=A1?= =?UTF-8?q?=E6=9D=BF=E6=96=87=E4=BB=B6=E3=80=82=202=E3=80=81=E5=BD=93?= =?UTF-8?q?=E5=89=8D=E7=9A=84=E5=AF=BC=E5=87=BA=E7=BB=93=E6=9E=9C=E9=BB=98?= =?UTF-8?q?=E8=AE=A4=E6=98=AF=E8=BF=94=E5=9B=9E=E5=AD=97=E8=8A=82=E6=95=B0?= =?UTF-8?q?=E7=BB=84=EF=BC=8C=E8=AE=BE=E8=AE=A1=E5=99=A8=E5=90=AF=E5=8A=A8?= =?UTF-8?q?=E7=9A=84=E6=83=85=E5=86=B5=E4=B8=8B=EF=BC=8C=E6=9C=AA=E5=B0=86?= =?UTF-8?q?=E5=AD=97=E8=8A=82=E6=95=B0=E7=BB=84=E5=86=99=E5=85=A5=E5=88=B0?= =?UTF-8?q?=E6=B5=81=E4=B8=AD=E3=80=82=20=20=E3=80=90=E6=94=B9=E5=8A=A8?= =?UTF-8?q?=E6=80=9D=E8=B7=AF=E3=80=911=E3=80=81=E5=88=A4=E6=96=AD?= =?UTF-8?q?=E5=AD=98=E5=9C=A8=E2=80=9Creportlets=E2=80=9D=E6=97=B6?= =?UTF-8?q?=EF=BC=8C=E5=88=A0=E9=99=A4=E3=80=82=202=E3=80=81=E5=B0=86?= =?UTF-8?q?=E5=AD=97=E8=8A=82=E6=95=B0=E7=BB=84=E5=86=99=E5=85=A5=E5=88=B0?= =?UTF-8?q?=E6=B5=81=E4=B8=AD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../file/export/AbstractExportAction.java | 20 ++++++++----------- 1 file changed, 8 insertions(+), 12 deletions(-) diff --git a/designer-base/src/main/java/com/fr/design/actions/file/export/AbstractExportAction.java b/designer-base/src/main/java/com/fr/design/actions/file/export/AbstractExportAction.java index f62243a8c4..7dc25799f3 100644 --- a/designer-base/src/main/java/com/fr/design/actions/file/export/AbstractExportAction.java +++ b/designer-base/src/main/java/com/fr/design/actions/file/export/AbstractExportAction.java @@ -15,8 +15,8 @@ import com.fr.file.filter.ChooseFileFilter; import com.fr.io.exporter.DesignExportType; import com.fr.io.exporter.ExporterKey; import com.fr.log.FineLoggerFactory; -import com.fanruan.product.ProductConstants; import com.fr.stable.StringUtils; +import com.fr.stable.project.ProjectConstants; import com.fr.third.jodd.io.FileNameUtil; import com.fr.workspace.WorkContext; import com.fr.workspace.server.exporter.TemplateExportOperator; @@ -211,19 +211,15 @@ public abstract class AbstractExportAction> extends JT } private void dealExporter(OutputStream outputStream, String path, final Map para) throws Exception { + if (path.startsWith(ProjectConstants.REPORTLETS_NAME)) { + path = path.substring(ProjectConstants.REPORTLETS_NAME.length()); + } - // 没有办法处理这个 isLocal 判断,因为一个是修改参数传递结果,一个是返回值做结果 - // todo 后续想想办法 - if (WorkContext.getCurrent().isLocal()) { - WorkContext.getCurrent().get(TemplateExportOperator.class) - .export(exportKey(), exportType(), outputStream, path, para); - } else { - byte[] contents = - WorkContext.getCurrent().get(TemplateExportOperator.class) - .export(exportKey(), exportType(), null, path, para); + byte[] contents = + WorkContext.getCurrent().get(TemplateExportOperator.class) + .export(exportKey(), exportType(), null, path, para); - outputStream.write(contents); - } + outputStream.write(contents); } @Override From d10955927a8f315557787c3920228bffb32548c5 Mon Sep 17 00:00:00 2001 From: "Destiny.Lin" Date: Wed, 28 Aug 2024 10:06:52 +0800 Subject: [PATCH 12/14] =?UTF-8?q?REPORT-130034=20-=20=E9=82=AE=E4=BB=B6?= =?UTF-8?q?=E5=85=A5=E5=8F=A3=E5=B1=8F=E8=94=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/fanruan/boot/env/function/DesignComponent.java | 1 - .../src/main/java/com/fr/design/webattr/EditToolBar.java | 1 - .../com/fr/design/webattr/ReportWebWidgetConstants.java | 6 +++--- 3 files changed, 3 insertions(+), 5 deletions(-) diff --git a/designer-realize/src/main/java/com/fanruan/boot/env/function/DesignComponent.java b/designer-realize/src/main/java/com/fanruan/boot/env/function/DesignComponent.java index 8a31974196..bf51d9c395 100644 --- a/designer-realize/src/main/java/com/fanruan/boot/env/function/DesignComponent.java +++ b/designer-realize/src/main/java/com/fanruan/boot/env/function/DesignComponent.java @@ -335,7 +335,6 @@ public class DesignComponent { private static NameableCreator[] hyperlinkTypes() { return new NameableCreator[]{ new NameObjectCreator(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Hyperlink_Reportlet"), ReportletHyperlink.class, ReportletHyperlinkPane.ChartNoRename.class), - new NameObjectCreator(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Email"), EmailJavaScript.class, EmailPane.class), new NameObjectCreator(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Hyperlink_Web_Link"), WebHyperlink.class, WebHyperlinkPane.ChartNoRename.class), new NameObjectCreator(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_JavaScript_Dynamic_Parameters"), ParameterJavaScript.class, ParameterJavaScriptPane.ChartNoRename.class), new NameObjectCreator(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_JavaScript"), JavaScriptImpl.class, JavaScriptImplPane.ChartNoRename.class), diff --git a/designer-realize/src/main/java/com/fr/design/webattr/EditToolBar.java b/designer-realize/src/main/java/com/fr/design/webattr/EditToolBar.java index 336f1e8d9f..4c6af7698e 100644 --- a/designer-realize/src/main/java/com/fr/design/webattr/EditToolBar.java +++ b/designer-realize/src/main/java/com/fr/design/webattr/EditToolBar.java @@ -458,7 +458,6 @@ public class EditToolBar extends BasicPane { centerPane.setLayout(card); centerPane.add(CUSTOM, wrapComponentWithTitle(getCustomPane(), com.fr.design.i18n.Toolkit.i18nText(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Edit") + "JS"))); centerPane.add(EXPORT, wrapComponentWithTitle(getExport(), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Set_Form_Button_Property"))); - centerPane.add(EMAIL, wrapComponentWithTitle(getEmail(), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Set_Form_Button_Property"))); centerPane.add(NONE, FRGUIPaneFactory.createNormalFlowInnerContainer_S_Pane()); centerPane.add(APPEND_COUNT, column(LayoutConstants.VERTICAL_GAP,cell(getAppendCountPane())).getComponent()); centerPane.add(SUBMIT, wrapComponentWithTitle(getSubmitPane(), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Set_Form_Button_Property"))); diff --git a/designer-realize/src/main/java/com/fr/design/webattr/ReportWebWidgetConstants.java b/designer-realize/src/main/java/com/fr/design/webattr/ReportWebWidgetConstants.java index f8fe2ed6f1..564b06669e 100644 --- a/designer-realize/src/main/java/com/fr/design/webattr/ReportWebWidgetConstants.java +++ b/designer-realize/src/main/java/com/fr/design/webattr/ReportWebWidgetConstants.java @@ -46,16 +46,16 @@ public class ReportWebWidgetConstants { } public static WidgetOption[] getPageToolBarInstance() { - return new WidgetOption[]{FIRST, PREVIOUS, PAGENAVI, NEXT, LAST, SCALE, EMAIL, EXPORT, PDF, EXCELP, EXCELO, EXCELS, WORD, NEW_PRINT, PRINT, FLASHPRINT, APPLETPRINT, PDFPRINT, + return new WidgetOption[]{FIRST, PREVIOUS, PAGENAVI, NEXT, LAST, SCALE, EXPORT, PDF, EXCELP, EXCELO, EXCELS, WORD, NEW_PRINT, PRINT, FLASHPRINT, APPLETPRINT, PDFPRINT, SETPRINTEROFFSET, CUSTOM_BUTTON}; } public static WidgetOption[] getViewToolBarInstance() { - return new WidgetOption[]{PAGESETUP, EMAIL, EXPORT, PDF, EXCELP, EXCELO, EXCELS, WORD, NEW_PRINT, PRINT, FLASHPRINT, APPLETPRINT, PDFPRINT, SETPRINTEROFFSET, PRINTPREVIEW, CUSTOM_BUTTON}; + return new WidgetOption[]{PAGESETUP, EXPORT, PDF, EXCELP, EXCELO, EXCELS, WORD, NEW_PRINT, PRINT, FLASHPRINT, APPLETPRINT, PDFPRINT, SETPRINTEROFFSET, PRINTPREVIEW, CUSTOM_BUTTON}; } public static WidgetOption[] getWriteToolBarInstance() { - return new WidgetOption[]{SUBMIT, VERIFY, EMAIL, EXPORT, PDF, EXCELP, EXCELO, EXCELS, WORD, NEW_PRINT, PRINT, FLASHPRINT, APPLETPRINT, PDFPRINT, IMPORTEXCELDATA, SHOWCELLVALUE, + return new WidgetOption[]{SUBMIT, VERIFY, EXPORT, PDF, EXCELP, EXCELO, EXCELS, WORD, NEW_PRINT, PRINT, FLASHPRINT, APPLETPRINT, PDFPRINT, IMPORTEXCELDATA, SHOWCELLVALUE, APPENDCOLUMNROW, DELETECOLUMNROW, SETPRINTEROFFSET, CUSTOM_BUTTON, WRITESTASH, WRITESTASHCLEAR, IMPORTEXCELDATA_CUSTOMIZED, IMPORTEXCEL, IMPORTEXCEL_COVER, IMPORTEXCEL_CLEAN, IMPORTEXCEL_APPEND}; } From 84e4d58cab13f33eacf97e39d4a6e2d1d8f53110 Mon Sep 17 00:00:00 2001 From: "Destiny.Lin" Date: Wed, 28 Aug 2024 10:21:53 +0800 Subject: [PATCH 13/14] =?UTF-8?q?=20REPORT-114392=20FR-FBP=E7=89=88?= =?UTF-8?q?=E6=9C=AC=E6=9C=AC=E5=9C=B0=E8=AE=BE=E8=AE=A1=E9=80=82=E9=85=8D?= =?UTF-8?q?=20=E4=BC=98=E5=8C=96web=E8=B5=84=E6=BA=90=E8=AF=BB=E5=8F=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/java/com/fr/design/backup/DesignContext.java | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/designer-base/src/main/java/com/fr/design/backup/DesignContext.java b/designer-base/src/main/java/com/fr/design/backup/DesignContext.java index e2aebc14db..ef5f99e396 100644 --- a/designer-base/src/main/java/com/fr/design/backup/DesignContext.java +++ b/designer-base/src/main/java/com/fr/design/backup/DesignContext.java @@ -7,6 +7,7 @@ import com.fr.stable.StringUtils; import javax.servlet.ServletContext; +import java.io.File; import java.util.Properties; /** @@ -17,7 +18,7 @@ import java.util.Properties; * Created on 2024/5/14 */ public class DesignContext extends CarinaApplicationContext { - public static final String WEB_INF = "\\WEB-INF"; + public static final String WEB_INF = "WEB-INF"; private String designWebInfPath; private String designDataPath; @@ -39,7 +40,7 @@ public class DesignContext extends CarinaApplicationContext { public void setDesignWebInfPath(String designWebInfPath) { this.designWebInfPath = designWebInfPath; if (StringUtils.isNotEmpty(this.designWebInfPath)) { - this.designDataPath = this.designWebInfPath.replace(WEB_INF, StringUtils.EMPTY); + this.designDataPath = this.designWebInfPath.replace(File.separatorChar + WEB_INF, StringUtils.EMPTY); } FineLoggerFactory.getLogger().info("[DesignContext] designWebInfPath:{}, designDataPath:{}", this.designWebInfPath, this.designDataPath); } From 26fe0a0ab79e0aeb8ccecacb041bf02c6b9cad51 Mon Sep 17 00:00:00 2001 From: "Destiny.Lin" Date: Wed, 28 Aug 2024 10:51:48 +0800 Subject: [PATCH 14/14] =?UTF-8?q?REPORT-130034=20-=20=E9=82=AE=E4=BB=B6?= =?UTF-8?q?=E5=85=A5=E5=8F=A3=E5=B1=8F=E8=94=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/com/fr/design/javascript/JavaScriptActionPane.java | 1 - 1 file changed, 1 deletion(-) diff --git a/designer-base/src/main/java/com/fr/design/javascript/JavaScriptActionPane.java b/designer-base/src/main/java/com/fr/design/javascript/JavaScriptActionPane.java index f32fbe9d23..b72a451fa4 100644 --- a/designer-base/src/main/java/com/fr/design/javascript/JavaScriptActionPane.java +++ b/designer-base/src/main/java/com/fr/design/javascript/JavaScriptActionPane.java @@ -48,7 +48,6 @@ public abstract class JavaScriptActionPane extends UIComboBoxPane { contentDBManiPane = new ArrayList(); contentDBManiPane.add(createDBManipulationPane()); paneList.add(new Commit2DBJavaScriptPane(this, contentDBManiPane)); - paneList.add(initEmaiPane()); if (isWorkBookValid()) { paneList.add(new ExportJavaScriptPane()); }