From ca3e865a9e3c22fc24c7ca4b67ad8c25d3f2ef18 Mon Sep 17 00:00:00 2001 From: admin <weikou2014> Date: 星期二, 12 十一月 2019 11:01:31 +0800 Subject: [PATCH] 口令过期消息队列 --- fanli/src/main/java/com/yeshi/fanli/util/taobao/TaoBaoUtil.java | 154 ++++++++++++++++++++++++++++++++++++++++++++++---- 1 files changed, 140 insertions(+), 14 deletions(-) diff --git a/fanli/src/main/java/com/yeshi/fanli/util/taobao/TaoBaoUtil.java b/fanli/src/main/java/com/yeshi/fanli/util/taobao/TaoBaoUtil.java index d04bf54..2cdc138 100644 --- a/fanli/src/main/java/com/yeshi/fanli/util/taobao/TaoBaoUtil.java +++ b/fanli/src/main/java/com/yeshi/fanli/util/taobao/TaoBaoUtil.java @@ -72,6 +72,7 @@ import com.yeshi.fanli.util.TaoBaoConstant; import com.yeshi.fanli.util.TaoBaoHttpUtil; import com.yeshi.fanli.util.TimeUtil; +import com.yeshi.fanli.vo.msg.ClientTextStyleVO; import net.sf.json.JSONArray; import net.sf.json.JSONObject; @@ -782,7 +783,41 @@ // labels.add(new ClientTextStyleVO("鏍囩鍐呭", "#00FF00")); // tg.setLabels(labels); // } - return tg; + return loadYuShouInfo(tg, tb); + } + + private static TaoBaoGoodsBriefExtra loadYuShouInfo(TaoBaoGoodsBriefExtra extra, TaoBaoGoodsBrief goods) { + if (goods != null && extra != null) { + if (isYUShou(goods)) {// 棰勫敭鍟嗗搧 +// extra.setZkPrice(new BigDecimal(goods.getPresaleDeposit())); + // 棰勫敭 + if (extra.getLabels() == null) + extra.setLabels(new ArrayList<>()); + extra.getLabels().add(new ClientTextStyleVO("棰勫敭", "#FF2B4E")); + } + } + return extra; + } + + /** + * 鏄惁涓洪鍞晢鍝� + * + * @param goods + * @return + */ + public static boolean isYUShou(TaoBaoGoodsBrief goods) { + if (!StringUtil.isNullOrEmpty(goods.getPresaleDeposit()) + && !StringUtil.isNullOrEmpty(goods.getPresaleStartTime()) + && !StringUtil.isNullOrEmpty(goods.getPresaleEndTime())) { + long startTime = Long.parseLong(goods.getPresaleStartTime()); + long endTime = Long.parseLong(goods.getPresaleEndTime()); + long now = System.currentTimeMillis(); + if (now >= startTime && now < endTime) { + return true; + } + } + + return false; } /** @@ -1337,6 +1372,41 @@ return taoBaoGoodsBrief; } + public static String getGoodsIdByPhoneShareUrl(String burl) { + try { + Connection connect = Jsoup.connect(burl); + Document document = connect.get(); + org.jsoup.nodes.Element element = document.getElementsByTag("head").get(0).getElementsByTag("Script") + .get(1); + String html = element.toString(); + int index = html.indexOf("var url = "); + int endIndex = html.lastIndexOf("'"); + html = html.substring(index, endIndex); + int index2 = html.indexOf("'"); + html = html.substring(index2 + 1); + int indexId = html.indexOf("id="); + String id = ""; + if (html.contains("a.m.taobao.com")) { + indexId = html.indexOf("com/i"); + html = html.substring(indexId); + html = html.substring(5, html.indexOf(".")); + id = html; + } else { + String reg = "[?|&]{1}[i]{1}[d]{1}[=]{1}\\d+[&]?"; + Pattern p = Pattern.compile(reg); + Matcher matcher = p.matcher(html); + if (matcher.find()) { + id = matcher.group(); + } + id = id.substring(id.indexOf("=") + 1, id.lastIndexOf("&")); + } + return id; + } catch (Exception e) { + LogHelper.error("鏃犳硶瑙f瀽鍒版窐瀹濆晢鍝両D:" + burl); + return null; + } + } + /** * 鑾峰彇鍟嗗搧鐨勭敤鎴峰垎鎴愭瘮渚� * @@ -1363,7 +1433,6 @@ */ public static BigDecimal getGoodsHongBaoMoney(TaoBaoGoodsBrief goodsBrief, BigDecimal rate) { BigDecimal money = null; - if (StringUtil.isNullOrEmpty(goodsBrief.getCouponInfo()) || goodsBrief.getCouponInfo().trim().equalsIgnoreCase("鏃�")) { money = MoneyBigDecimalUtil.mul( @@ -1926,6 +1995,7 @@ /** * 鏌ヨ澶╃尗鍟嗗搧鍥剧墖銆佹爣棰� + * * @param auctionId * @return */ @@ -1941,12 +2011,17 @@ if (content.contains("var _DATA_Mdskip")) { content = content.replace("<script>", ""); content = content.replace("</script>", ""); - content+=";function getData(){ var json={title:_DATA_Mdskip.item.title,pictUrl:_DATA_Mdskip.item.videoDetail.videoThumbnailURL}; return JSON.stringify(json);}"; - + + if (content.contains("videoDetail")) { + content += ";function getData(){ var json={title:_DATA_Mdskip.item.title,pictUrl:_DATA_Mdskip.item.videoDetail.videoThumbnailURL}; return JSON.stringify(json);}"; + } else { + content += ";function getData(){ var json={title:_DATA_Mdskip.item.title,pictUrl:_DATA_Mdskip.item.videos[0].videoThumbnailURL}; return JSON.stringify(json);}"; + } + ScriptEngineManager manager = new ScriptEngineManager(); ScriptEngine engine = manager.getEngineByName("javascript"); engine.eval(content); - + if (engine instanceof Invocable) { Invocable in = (Invocable) engine; JSONObject json = JSONObject.fromObject(in.invokeFunction("getData")); @@ -1956,7 +2031,7 @@ taoBaoGoodsBrief.setTitle(title.toString()); taoBaoGoodsBrief.setPictUrl(pictUrl.toString()); } - + break; } } @@ -1966,22 +2041,24 @@ } return taoBaoGoodsBrief; } - - - + /** * 鎶栭煶杩斿埄local 鑾峰彇鐪熷疄娣樺疂閾炬帴 - * @param url https://s.click.taobao.com/t?e=m%3D2%26s%3DT9DFpHQCT7Rw4vFB6t2Z2ueEDrYVVa64XoO8tOebS+dRAdhuF14FMR8 + * + * @param url + * https://s.click.taobao.com/t?e=m%3D2%26s% + * 3DT9DFpHQCT7Rw4vFB6t2Z2ueEDrYVVa64XoO8tOebS+dRAdhuF14FMR8 * @return */ public static String getRealUrl(String url) { if (StringUtil.isNullOrEmpty(url)) return null; - + try { HttpClient client = new HttpClient(new MultiThreadedHttpConnectionManager()); client.getHttpConnectionManager().getParams().setConnectionTimeout(10000); - client.getParams().setParameter(HttpMethodParams.USER_AGENT,"Mozilla/4.0 (compatible; MSIE 5.5; Windows NT 5.0)"); // 璁╂湇鍔″櫒璁や负鏄疘E + client.getParams().setParameter(HttpMethodParams.USER_AGENT, + "Mozilla/4.0 (compatible; MSIE 5.5; Windows NT 5.0)"); // 璁╂湇鍔″櫒璁や负鏄疘E GetMethod get = new GetMethod(url); get.setFollowRedirects(false); // 绂佹鑷姩閲嶅畾鍚� int iGetResultCode = client.executeMethod(get); @@ -1993,9 +2070,58 @@ return get2.getResponseHeader("location").getValue(); // 鐪熷疄鍦板潃 } catch (Exception ex) { ex.printStackTrace(); - } + } return null; } - + + /** + * 娣樺彛浠よ繃婊� + * + * @param token + * @return + */ + public static String filterTaoToken(String token) { + if (StringUtil.isNullOrEmpty(token)) + return token; + if (token.contains("锟�") || token.contains("鈧�")) { + String newToken = ""; + for (int i = 0; i < token.length(); i++) { + if (token.charAt(i) == '锟�' || token.charAt(i) == '鈧�') { + if (!newToken.contains("(")) + newToken += "("; + else + newToken += ")"; + } else + newToken += token.charAt(i) + ""; + } + return newToken; + } + return token; + } + + /** + * 鎻愬彇鑷湁鏍煎紡鐨勬窐鍙d护 + * + * @param str + * @return + */ + public static String parseSystemTaoToken(String str) { + String pattern = "(\\({1}[A-Za-z0-9]+\\){1})"; + Pattern r = Pattern.compile(pattern); + Matcher m = r.matcher(str); + while (m.find()) { + String group = m.group(0); + if (!StringUtil.isNullOrEmpty(group)) + return group; + } + return null; + } + + public static boolean isSpecialGoods(Integer materialLibType) { + if (materialLibType != null && materialLibType == 1) + return true; + else + return false; + } } -- Gitblit v1.8.0