Browse Source

Pull request #11180: REPORT-87013 设计器11.0.11更新日志显示的信息是重复的

Merge in DESIGN/design from ~DESTINY.LIN/design:final/11.0 to final/11.0

* commit 'c99cbf02485fb17183ed168feb64449e71f84ceb':
  REPORT-87013 设计器11.0.11更新日志显示的信息是重复的
new-design
Destiny.Lin-林锦龙 2 years ago
parent
commit
75d3792225
  1. 11
      designer-base/src/main/java/com/fr/design/update/ui/dialog/UpdateMainDialog.java

11
designer-base/src/main/java/com/fr/design/update/ui/dialog/UpdateMainDialog.java

@ -118,6 +118,8 @@ public class UpdateMainDialog extends UIDialog {
private ArrayList<Object[]> updateInfoList; private ArrayList<Object[]> updateInfoList;
private Set<String> titleSet;
private boolean getUpdateInfoSuccess; private boolean getUpdateInfoSuccess;
private UpdateInfoCachePropertyManager cacheProperty; private UpdateInfoCachePropertyManager cacheProperty;
@ -267,6 +269,7 @@ public class UpdateMainDialog extends UIDialog {
String keyword = searchUpdateInfoKeyword.getText(); String keyword = searchUpdateInfoKeyword.getText();
if (ComparatorUtils.equals(keyword, StringUtils.EMPTY) && getUpdateInfoSuccess) { if (ComparatorUtils.equals(keyword, StringUtils.EMPTY) && getUpdateInfoSuccess) {
updateInfoList.clear(); updateInfoList.clear();
titleSet.clear();
getUpdateInfo(keyword).execute(); getUpdateInfo(keyword).execute();
} }
} }
@ -281,6 +284,7 @@ public class UpdateMainDialog extends UIDialog {
public void actionPerformed(ActionEvent e) { public void actionPerformed(ActionEvent e) {
if (getUpdateInfoSuccess) { if (getUpdateInfoSuccess) {
updateInfoList.clear(); updateInfoList.clear();
titleSet.clear();
getUpdateInfo(searchUpdateInfoKeyword.getText()).execute(); getUpdateInfo(searchUpdateInfoKeyword.getText()).execute();
} }
} }
@ -388,6 +392,7 @@ public class UpdateMainDialog extends UIDialog {
private SwingWorker<JSONArray, Void> getUpdateInfo(final String keyword) { private SwingWorker<JSONArray, Void> getUpdateInfo(final String keyword) {
updateInfoList = new ArrayList<>(); updateInfoList = new ArrayList<>();
titleSet = new HashSet<>();
lastUpdateCacheTime = UpdateConstants.CHANGELOG_X_START; lastUpdateCacheTime = UpdateConstants.CHANGELOG_X_START;
String cacheConfigPath = getUpdateCacheConfig(); String cacheConfigPath = getUpdateCacheConfig();
cacheProperty = new UpdateInfoCachePropertyManager(StableUtils.pathJoin(WorkContext.getCurrent().getPath(), "resources", "offlineres", cacheConfigPath)); cacheProperty = new UpdateInfoCachePropertyManager(StableUtils.pathJoin(WorkContext.getCurrent().getPath(), "resources", "offlineres", cacheConfigPath));
@ -489,6 +494,7 @@ public class UpdateMainDialog extends UIDialog {
} }
} }
if (isValid(updateInfo, GeneralUtils.objectToString(curJarDate))) { if (isValid(updateInfo, GeneralUtils.objectToString(curJarDate))) {
titleSet.add(updateInfo[UpdateInfoTable.UPDATE_TITLE_INDEX]);
updateInfoList.add(new Object[]{UPDATELOG_FORMAT.format(updateTime), updateInfo[UpdateInfoTable.UPDATE_VERSION_INDEX], updateInfo[UpdateInfoTable.UPDATE_TITLE_INDEX], updateTime.after(curJarDate)}); updateInfoList.add(new Object[]{UPDATELOG_FORMAT.format(updateTime), updateInfo[UpdateInfoTable.UPDATE_VERSION_INDEX], updateInfo[UpdateInfoTable.UPDATE_TITLE_INDEX], updateTime.after(curJarDate)});
} }
} }
@ -501,7 +507,7 @@ public class UpdateMainDialog extends UIDialog {
private boolean isValid(String[] updateInfo, String curJarDate) { private boolean isValid(String[] updateInfo, String curJarDate) {
return isValidLogInfo(updateInfo[UpdateInfoTable.UPDATE_TITLE_INDEX]) && curJarDate != null && curJarDate.compareTo(updateInfo[UpdateInfoTable.UPDATE_DATE_INDEX]) <= 0; return isValidLogInfo(updateInfo[UpdateInfoTable.UPDATE_TITLE_INDEX]) && curJarDate != null && curJarDate.compareTo(updateInfo[UpdateInfoTable.UPDATE_DATE_INDEX]) <= 0 && !titleSet.contains(updateInfo[UpdateInfoTable.UPDATE_TITLE_INDEX]);
} }
private void updateCachedInfoFile(JSONArray jsonArray) throws Exception { private void updateCachedInfoFile(JSONArray jsonArray) throws Exception {
@ -561,6 +567,7 @@ public class UpdateMainDialog extends UIDialog {
} }
Date curDate = UPDATE_INFO_TABLE_FORMAT.parse(currentNO, new ParsePosition(currentNO.indexOf("-") + 1)); Date curDate = UPDATE_INFO_TABLE_FORMAT.parse(currentNO, new ParsePosition(currentNO.indexOf("-") + 1));
if (isValid4GenerateInfo(updateTitle, GeneralUtils.objectToString(curDate), updateTimeStr)) { if (isValid4GenerateInfo(updateTitle, GeneralUtils.objectToString(curDate), updateTimeStr)) {
titleSet.add(updateTitle);
updateInfoList.add(new Object[]{updateTimeStr, updateVersionStr, updateTitle, updateTime.after(curJarDate)}); updateInfoList.add(new Object[]{updateTimeStr, updateVersionStr, updateTitle, updateTime.after(curJarDate)});
} }
} }
@ -568,7 +575,7 @@ public class UpdateMainDialog extends UIDialog {
} }
private boolean isValid4GenerateInfo(String updateTitle, String curDate, String updateTimeStr) { private boolean isValid4GenerateInfo(String updateTitle, String curDate, String updateTimeStr) {
return isValidLogInfo(updateTitle) && curDate.compareTo(updateTimeStr) <= 0; return isValidLogInfo(updateTitle) && curDate.compareTo(updateTimeStr) <= 0 && !titleSet.contains(updateTitle);
} }
private boolean containsKeyword(String str, String keyword) { private boolean containsKeyword(String str, String keyword) {

Loading…
Cancel
Save