Browse Source

REPORT-86430 AlphaFine插件中心tab页显示内容有误

feature/10.0
Yann 2 years ago
parent
commit
8570e88822
  1. 16
      designer-realize/src/main/java/com/fr/design/mainframe/alphafine/search/manager/impl/PluginSearchManager.java

16
designer-realize/src/main/java/com/fr/design/mainframe/alphafine/search/manager/impl/PluginSearchManager.java

@ -27,6 +27,7 @@ import java.net.URLEncoder;
import java.text.ParseException; import java.text.ParseException;
import java.text.SimpleDateFormat; import java.text.SimpleDateFormat;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Comparator;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
import java.util.stream.Collectors; import java.util.stream.Collectors;
@ -204,7 +205,7 @@ public class PluginSearchManager implements AlphaFineSearchProvider {
if (!Collections.isEmpty(jsonObjects)) { if (!Collections.isEmpty(jsonObjects)) {
jsonObjects = jsonObjects.stream() jsonObjects = jsonObjects.stream()
.filter(o -> ((Integer) o.get(version)) == 1) .filter(o -> ((Integer) o.get(version)) == 1)
.sorted(PluginSearchManager::sortPluginByUploadTime) .sorted(Comparator.comparingLong(PluginSearchManager::parseTime).reversed())
.collect(Collectors.toList()); .collect(Collectors.toList());
int size = Math.min(DEFAULT_LIST_SIZE, jsonObjects.size()); int size = Math.min(DEFAULT_LIST_SIZE, jsonObjects.size());
for (int i = 0; i < size; i++) { for (int i = 0; i < size; i++) {
@ -214,20 +215,15 @@ public class PluginSearchManager implements AlphaFineSearchProvider {
return pluginModels; return pluginModels;
} }
private static int sortPluginByUploadTime(Map v1, Map v2) { private static long parseTime(Map value) {
SimpleDateFormat format = new SimpleDateFormat(TIME_FORMAT); SimpleDateFormat format = new SimpleDateFormat(TIME_FORMAT);
long t1 = 0L, t2 = 0L; long t = 0L;
try { try {
t1 = format.parse((String) v1.get(UPLOAD_TIME)).getTime(); t = format.parse((String) value.get(UPLOAD_TIME)).getTime();
} catch (ParseException e) { } catch (ParseException e) {
FineLoggerFactory.getLogger().error(e, e.getMessage()); FineLoggerFactory.getLogger().error(e, e.getMessage());
} }
try { return t;
t2 = format.parse((String) v2.get(UPLOAD_TIME)).getTime();
} catch (ParseException e) {
FineLoggerFactory.getLogger().error(e, e.getMessage());
}
return Long.compare(t2, t1);
} }
} }

Loading…
Cancel
Save