From 010ef2a907e66efd4702443c06cdd18f8a7ffa5b Mon Sep 17 00:00:00 2001 From: admin <weikou2014> Date: 星期三, 30 十月 2024 14:08:53 +0800 Subject: [PATCH] IP归属地查询接口集成 --- src/main/java/com/yeshi/buwan/job/RankJob.java | 61 ++++++++++++++++++++++++++---- 1 files changed, 53 insertions(+), 8 deletions(-) diff --git a/src/main/java/com/yeshi/buwan/job/RankJob.java b/src/main/java/com/yeshi/buwan/job/RankJob.java index 3aefe9d..3e35723 100644 --- a/src/main/java/com/yeshi/buwan/job/RankJob.java +++ b/src/main/java/com/yeshi/buwan/job/RankJob.java @@ -6,11 +6,13 @@ import com.yeshi.buwan.service.inter.system.SystemConfigService; import com.yeshi.buwan.util.rank.IqiyiRankUtil; import com.yeshi.buwan.util.rank.TencentRankUtil; +import org.json.JSONArray; +import org.json.JSONObject; import org.springframework.stereotype.Component; import javax.annotation.Resource; -import java.util.List; -import java.util.Map; +import java.io.IOException; +import java.util.*; //10409568 @Component @@ -20,18 +22,57 @@ @Resource private SystemConfigService systemConfigService; + private static List<String> concatRank(int count, List<String>... ranks) { + List<String> flist = new ArrayList<>(); + Set<String> keys=new HashSet<>(); + for (int i = 0; i < count; i++) { + for (List<String> rank : ranks) { + if (rank == null) { + continue; + } + if (rank.size() > i) { + if (!keys.contains(rank.get(i).replace(" ",""))) { + flist.add(rank.get(i)); + keys.add(rank.get(i).replace(" ","")); + } + } + if (flist.size() >= count) { + break; + } + } + if (flist.size() >= count) { + break; + } + } + return flist; + } + //鐖卞鑹烘帓琛� @XxlJob("rank-iqiyi-update") - public ReturnT<String> updateIqiyiRank(String params) throws Exception { + public ReturnT<String> updateRank(String params) throws Exception { Map<String, List<String>> map = IqiyiRankUtil.getRank(10); Map<String, List<String>> tencentMap = TencentRankUtil.getRank(10); - if(tencentMap.get("鎬绘鍗�")!=null) { - map.put("鐑悳", tencentMap.get("鎬绘鍗�")); - } - map.put("鍔ㄦ极", tencentMap.get("鍔ㄦ极")); + Map<String,Integer> typeRank=new HashMap<>(); + typeRank.put("鐑悳",0); + typeRank.put("鐢佃鍓�",1); + typeRank.put("鍔ㄦ极",2); + typeRank.put("鐢靛奖",3); + typeRank.put("缁艰壓",4); + + Map<String,List<String>> fmap=new TreeMap<>(new Comparator<String>() { + @Override + public int compare(String o1, String o2) { + return typeRank.get(o1) - typeRank.get(o2); + } + }); + fmap.put("鐑悳", concatRank(10, map.get("鎬绘"), tencentMap.get("鐑悳"))); + fmap.put("鐢佃鍓�", concatRank(10, map.get("鐢佃鍓�"), tencentMap.get("鐢佃鍓�"))); + fmap.put("鍔ㄦ极", tencentMap.get("鍔ㄦ极")); + fmap.put("鐢靛奖", concatRank(10, map.get("鐢靛奖"), tencentMap.get("鐢靛奖"))); + fmap.put("缁艰壓", concatRank(10, map.get("缁艰壓"), tencentMap.get("缁艰壓"))); if (map != null && map.size() > 0) { - String json = new Gson().toJson(map); + String json = new Gson().toJson(fmap); systemConfigService.setValue("searchRank", json); } return ReturnT.SUCCESS; @@ -49,5 +90,9 @@ return ReturnT.SUCCESS; } + public static void main(String[] args) throws Exception { + new RankJob().updateRank(""); + } + } -- Gitblit v1.8.0