From dc5be7d38446f70e6ff86df311119c32b41fe7f8 Mon Sep 17 00:00:00 2001 From: admin <weikou2014> Date: 星期六, 28 十一月 2020 16:37:05 +0800 Subject: [PATCH] 大淘客搜索接口升级 --- fanli/src/main/java/com/yeshi/fanli/util/jd/JDUtil.java | 25 +++++++++++++++++++++---- 1 files changed, 21 insertions(+), 4 deletions(-) diff --git a/fanli/src/main/java/com/yeshi/fanli/util/jd/JDUtil.java b/fanli/src/main/java/com/yeshi/fanli/util/jd/JDUtil.java index 269f84c..0b0218d 100644 --- a/fanli/src/main/java/com/yeshi/fanli/util/jd/JDUtil.java +++ b/fanli/src/main/java/com/yeshi/fanli/util/jd/JDUtil.java @@ -15,6 +15,8 @@ import java.util.Iterator; import java.util.List; import java.util.Map; +import java.util.regex.Matcher; +import java.util.regex.Pattern; import javax.script.Invocable; import javax.script.ScriptEngine; @@ -40,8 +42,8 @@ import com.yeshi.fanli.dto.jd.JDShopInfo; import com.yeshi.fanli.entity.jd.JDGoods; import com.yeshi.fanli.log.LogHelper; -import com.yeshi.fanli.tag.PageEntity; -import com.yeshi.fanli.util.MoneyBigDecimalUtil; +import com.yeshi.common.entity.PageEntity; +import org.yeshi.utils.MoneyBigDecimalUtil; import com.yeshi.fanli.util.StringUtil; import net.sf.json.JSONArray; @@ -636,7 +638,7 @@ * @return */ public static String getJDGoodsIdByWeiXin(String url) { - if (StringUtil.isNullOrEmpty(url)) + if (StringUtil.isNullOrEmpty(url) || url.indexOf("jd.com") < 0) return null; try { @@ -727,6 +729,10 @@ if (NumberUtil.isNumeric(value) && value.length() >= 4) { return value; } + } + String id = JDUtil.getJDGoodsId(realLink); + if (!StringUtil.isNullOrEmpty(id)) { + return id; } LogHelper.error("浜笢鐭帴瑙f瀽澶辫触:" + url); return null; @@ -901,7 +907,7 @@ Comparator<JDCouponInfo> cm = new Comparator<JDCouponInfo>() { @Override public int compare(JDCouponInfo o1, JDCouponInfo o2) { - return o1.getQuota().compareTo(o2.getQuota()); + return o1.getQuota().compareTo(o2.getQuota())==0?o1.getDiscount().compareTo(o2.getDiscount()):o1.getQuota().compareTo(o2.getQuota()); } }; Collections.sort(couponInfoList, cm); @@ -930,4 +936,15 @@ return getShowCouponInfo(goods.getCouponInfoList(), price); } + public static List<String> getJDShortLinksFromText(String text) { + String regex = "(https://u\\.jd\\.com/)[0-9A-Za-z]{1,20}"; + Pattern pattern = Pattern.compile(regex); + Matcher m = pattern.matcher(text); + List<String> urlList = new ArrayList<>(); + while (m.find()) { + urlList.add(m.group()); + } + return urlList; + } + } -- Gitblit v1.8.0