From 98b1a0affd69bbe63223c21fdd2c404e8bedfccb Mon Sep 17 00:00:00 2001 From: admin <weikou2014> Date: 星期三, 20 五月 2020 17:25:08 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/div' into 2.1.2 --- fanli/src/main/java/com/yeshi/fanli/controller/client/v1/DynamicRecommendController.java | 69 +++++++++++++++++++++++++++++++--- 1 files changed, 62 insertions(+), 7 deletions(-) diff --git a/fanli/src/main/java/com/yeshi/fanli/controller/client/v1/DynamicRecommendController.java b/fanli/src/main/java/com/yeshi/fanli/controller/client/v1/DynamicRecommendController.java index 7ce03fd..77c1660 100644 --- a/fanli/src/main/java/com/yeshi/fanli/controller/client/v1/DynamicRecommendController.java +++ b/fanli/src/main/java/com/yeshi/fanli/controller/client/v1/DynamicRecommendController.java @@ -19,16 +19,20 @@ import com.yeshi.fanli.entity.taobao.SearchFilter; import com.yeshi.fanli.entity.taobao.TaoBaoGoodsBrief; import com.yeshi.fanli.entity.taobao.TaoBaoSearchResult; -import com.yeshi.fanli.entity.taobao.dataoke.DaTaoKeDetail; +import com.yeshi.fanli.entity.taobao.dataoke.DaTaoKeDetailV2; +import com.yeshi.fanli.exception.taobao.TaoBaoTokenParseException; +import com.yeshi.fanli.exception.taobao.TaobaoGoodsDownException; import com.yeshi.fanli.log.LogHelper; import com.yeshi.fanli.service.inter.config.ConfigService; -import com.yeshi.fanli.service.inter.hongbao.HongBaoManageService; +import com.yeshi.fanli.service.inter.order.config.HongBaoManageService; import com.yeshi.fanli.service.inter.taobao.TaoBaoUnionConfigService; -import com.yeshi.fanli.service.inter.taobao.dataoke.DaTaoKeGoodsDetailService; +import com.yeshi.fanli.service.inter.taobao.dataoke.DaTaoKeGoodsDetailV2Service; import com.yeshi.fanli.service.inter.user.UserInfoService; +import com.yeshi.fanli.service.manger.goods.tb.TaoBaoTokenAuctionIdMapManager; import com.yeshi.fanli.util.StringUtil; import com.yeshi.fanli.util.Utils; import com.yeshi.fanli.util.taobao.TaoBaoUtil; +import com.yeshi.fanli.util.taobao.TaoKeApiUtil; import net.sf.json.JSONObject; @@ -49,7 +53,10 @@ private TaoBaoUnionConfigService taoBaoUnionConfigService; @Resource - private DaTaoKeGoodsDetailService daTaoKeGoodsDetailService; + private DaTaoKeGoodsDetailV2Service daTaoKeGoodsDetailV2Service; + + @Resource + private TaoBaoTokenAuctionIdMapManager taoBaoTokenAuctionIdMapManager; /** * 鑾峰彇鍟嗗搧淇℃伅 @@ -150,6 +157,9 @@ Pattern p = Pattern.compile(URL_REGEX); Matcher matcher = p.matcher(text); if (!matcher.find()) {// 涓嶅寘鍚摼鎺� + // 瑙f瀽娣樺彛浠� + if (analysisTaoToken(text, out)) + return; // 鍟嗗搧璇︽儏 // 鍙戠幇 // 娌℃湁閾炬帴锛屾爣棰樿繃闀夸篃涓嶅鐞� @@ -159,7 +169,7 @@ text = text.substring(1, end); } - LogHelper.test("鏍规嵁绮樿创鏉挎帹鑽�:"+text); + LogHelper.test("鏍规嵁绮樿创鏉挎帹鑽�:" + text); if (text.length() > 80) { out.print(JsonUtil.loadFalseResult("鍊艰繃闀�")); @@ -185,11 +195,11 @@ } // 鏌ヨ澶ф窐瀹㈡爣棰� - List<DaTaoKeDetail> list = daTaoKeGoodsDetailService.listByDtitle(text); + List<DaTaoKeDetailV2> list = daTaoKeGoodsDetailV2Service.listByDtitle(text); if (list != null && list.size() > 0) { root.put("type", 2); JSONObject data = new JSONObject(); - data.put("title", list.get(0).getdTitle()); + data.put("title", list.get(0).getDtitle()); root.put("data", data); out.print(JsonUtil.loadTrueResult(root)); return; @@ -257,4 +267,49 @@ out.print(JsonUtil.loadTrueResult(root)); } + /** + * 瑙f瀽娣樺彛浠� + * + * @param text + * @param out + * @return + */ + private boolean analysisTaoToken(String text, PrintWriter out) { + List<String> tokenList = TaoBaoUtil.getTokenListFromText(text); + if (tokenList != null && tokenList.size() > 0) { + String token = tokenList.get(0); + Long auctionId = taoBaoTokenAuctionIdMapManager.getAuctionIdByToken(token); + if (auctionId != null) { + TaoBaoGoodsBrief tb = null; + try { + tb = TaoKeApiUtil.getSimpleGoodsInfo(auctionId); + } catch (TaobaoGoodsDownException e) { + e.printStackTrace(); + } + + if (tb != null) { + JSONObject data = new JSONObject(); + JSONObject taoBaoGoodsJSON = new JSONObject(); + taoBaoGoodsJSON.put("title", tb.getTitle()); + taoBaoGoodsJSON.put("zkPrice", tb.getZkPrice()); + taoBaoGoodsJSON.put("auctionId", tb.getAuctionId()); + taoBaoGoodsJSON.put("url", "http://item.taobao.com/item.htm?id=" + tb.getAuctionId()); + data.put("taoBaoGoodsBrief", taoBaoGoodsJSON); + if (!StringUtil.isNullOrEmpty(tb.getPictUrl())) { + if (tb.getImgList() == null) + tb.setImgList(new ArrayList<>()); + tb.getImgList().add(0, TbImgUtil.getTBSize220Img(tb.getPictUrl())); + } + data.put("tbImgs", tb.getImgList()); + JSONObject root = new JSONObject(); + root.put("type", 1); + root.put("data", data); + out.print(JsonUtil.loadTrueResult(root)); + return true; + } + } + } + return false; + } + } -- Gitblit v1.8.0