From c8705329e15b9fab6872f793cd9a5534e24af23c Mon Sep 17 00:00:00 2001 From: "alex.sung" Date: Thu, 13 Sep 2018 20:05:48 +0800 Subject: [PATCH] =?UTF-8?q?REPORT-10954&REPORT-10928=20=E2=80=9C=E6=A8=A1?= =?UTF-8?q?=E6=9D=BF=E5=86=85=E5=AE=B9=E2=80=9D=E8=BF=99=E4=B8=80=E9=A1=B9?= =?UTF-8?q?=E4=B8=8D=E8=A6=81=E6=94=AF=E6=8C=81=E5=88=86=E8=AF=8D=E6=90=9C?= =?UTF-8?q?=E7=B4=A2=EF=BC=9B=20=E9=9C=80=E5=88=86=E8=AF=8D=E7=9A=84?= =?UTF-8?q?=E5=9C=BA=E6=99=AF=E4=B8=8B=EF=BC=8C=E5=85=88=E6=90=9C=E7=B4=A2?= =?UTF-8?q?=E4=B8=8D=E5=88=86=E8=AF=8D=E7=9A=84=E7=BB=93=E6=9E=9C=E9=9B=86?= =?UTF-8?q?=EF=BC=8C=E4=BB=A5=E8=8E=B7=E5=8F=96=E5=8C=B9=E9=85=8D=E5=BA=A6?= =?UTF-8?q?=E6=9C=80=E9=AB=98=E7=9A=84=E7=BB=93=E6=9E=9C=E9=9B=86=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../alphafine/component/AlphaFineDialog.java | 12 ++++++------ .../search/manager/impl/FileSearchManager.java | 16 +++++++++++++++- .../search/manager/impl/SegmentationManager.java | 1 + 3 files changed, 22 insertions(+), 7 deletions(-) diff --git a/designer-realize/src/main/java/com/fr/design/mainframe/alphafine/component/AlphaFineDialog.java b/designer-realize/src/main/java/com/fr/design/mainframe/alphafine/component/AlphaFineDialog.java index 10a3387e81..de66ad3d56 100644 --- a/designer-realize/src/main/java/com/fr/design/mainframe/alphafine/component/AlphaFineDialog.java +++ b/designer-realize/src/main/java/com/fr/design/mainframe/alphafine/component/AlphaFineDialog.java @@ -490,11 +490,11 @@ public class AlphaFineDialog extends UIDialog { } else if (searchText.startsWith(DOCUMENT_MARK_SHORT) || searchText.startsWith(DOCUMENT_MARK)) { buildDocumentList(new String[]{getStoreText(searchText)}); } else if (searchText.startsWith(FILE_MARK_SHORT) || searchText.startsWith(FILE_MARK)) { - buildFileList(new String[]{getStoreText(searchText)}); + buildFileList(getStoreText(searchText), new String[]{getStoreText(searchText)}); } else if (searchText.startsWith(CPT_MARK) || searchText.startsWith(FRM_MARK)) { - buildFileList(new String[]{searchText}); + buildFileList(getStoreText(searchText), new String[]{searchText}); } else if (searchText.startsWith(DS_MARK)) { - buildFileList(new String[]{DS_NAME + getStoreText(searchText)}); + buildFileList(getStoreText(searchText), new String[]{DS_NAME + getStoreText(searchText)}); } else if (searchText.startsWith(PLUGIN_MARK_SHORT) || searchText.startsWith(PLUGIN_MARK)) { buildPluginList(new String[]{getStoreText(searchText)}); } else if (searchText.startsWith(SIMILAR_MARK)) { @@ -535,7 +535,7 @@ public class AlphaFineDialog extends UIDialog { buildRecentList(segmentationResult); buildRecommendList(segmentationResult); buildActionList(segmentationResult); - buildFileList(segmentationResult); + buildFileList(searchText, segmentationResult); buildDocumentList(segmentationResult); buildPluginList(segmentationResult); buildSimilarList(segmentationResult); @@ -547,8 +547,8 @@ public class AlphaFineDialog extends UIDialog { addSearchResult(DocumentSearchManager.getInstance().getLessSearchResult(searchText)); } - private void buildFileList(final String[] searchText) { - addSearchResult(FileSearchManager.getInstance().getLessSearchResult(searchText)); + private void buildFileList(String searchStr, final String[] searchText) { + addSearchResult(FileSearchManager.getInstance().getLessSearchResult(searchStr, searchText)); } private void buildActionList(final String[] searchText) { diff --git a/designer-realize/src/main/java/com/fr/design/mainframe/alphafine/search/manager/impl/FileSearchManager.java b/designer-realize/src/main/java/com/fr/design/mainframe/alphafine/search/manager/impl/FileSearchManager.java index 4e50fa9354..17c58998df 100644 --- a/designer-realize/src/main/java/com/fr/design/mainframe/alphafine/search/manager/impl/FileSearchManager.java +++ b/designer-realize/src/main/java/com/fr/design/mainframe/alphafine/search/manager/impl/FileSearchManager.java @@ -62,7 +62,8 @@ public class FileSearchManager implements AlphaFineSearchProvider { return new FileModel(name, filePath, searchCount); } - public SearchResult getLessSearchResult(String[] searchText) { + + public SearchResult getLessSearchResult(String searchStr, String[] searchText) { this.filterModelList = new SearchResult(); this.lessModelList = new SearchResult(); this.moreModelList = new SearchResult(); @@ -78,6 +79,7 @@ public class FileSearchManager implements AlphaFineSearchProvider { isContainFrm = true; doSearch(this.searchText); } + doFileContentSearch(searchStr); if (filterModelList.isEmpty()) { return new SearchResult(); @@ -93,6 +95,11 @@ public class FileSearchManager implements AlphaFineSearchProvider { return lessModelList; } + @Override + public SearchResult getLessSearchResult(String[] searchText) { + return null; + } + @Override public SearchResult getMoreSearchResult(String searchText) { return moreModelList; @@ -111,6 +118,13 @@ public class FileSearchManager implements AlphaFineSearchProvider { } } + } + + /** + * 搜索模板内容 + * @param searchText + */ + private void doFileContentSearch(String searchText) { if (DesignerEnvManager.getEnvManager().getAlphaFineConfigManager().isContainFileContent()) { FileNode[] fileNodes = FRContext.getFileNodes().filterFiles(searchText, ProjectConstants.REPORTLETS_NAME, new FileExtension[]{FileExtension.CPT, FileExtension.FRM}, true); for (FileNode node : fileNodes) { diff --git a/designer-realize/src/main/java/com/fr/design/mainframe/alphafine/search/manager/impl/SegmentationManager.java b/designer-realize/src/main/java/com/fr/design/mainframe/alphafine/search/manager/impl/SegmentationManager.java index 6f98039556..6f1e3850a0 100644 --- a/designer-realize/src/main/java/com/fr/design/mainframe/alphafine/search/manager/impl/SegmentationManager.java +++ b/designer-realize/src/main/java/com/fr/design/mainframe/alphafine/search/manager/impl/SegmentationManager.java @@ -66,6 +66,7 @@ public class SegmentationManager { return new String[]{searchText}; } List result = new ArrayList<>(); + result.add(searchText); BreakIterator itor = BreakIterator.getWordInstance(); itor.setText(searchText); int start = itor.first();