From cf49fe7440cc77300091239cf78d0b4916b3f1e0 Mon Sep 17 00:00:00 2001 From: admin <weikou2014> Date: 星期五, 11 十月 2019 16:45:55 +0800 Subject: [PATCH] 增加饿了么订单 --- fanli/src/main/java/com/yeshi/fanli/controller/client/v2/SearchControllerV2.java | 102 +++++++++++++++++++++++++++++++++++++++++++++++++-- 1 files changed, 98 insertions(+), 4 deletions(-) diff --git a/fanli/src/main/java/com/yeshi/fanli/controller/client/v2/SearchControllerV2.java b/fanli/src/main/java/com/yeshi/fanli/controller/client/v2/SearchControllerV2.java index fe2098a..0a80cac 100644 --- a/fanli/src/main/java/com/yeshi/fanli/controller/client/v2/SearchControllerV2.java +++ b/fanli/src/main/java/com/yeshi/fanli/controller/client/v2/SearchControllerV2.java @@ -16,12 +16,14 @@ import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMethod; +import org.yeshi.utils.HttpUtil; import org.yeshi.utils.JsonUtil; import org.yeshi.utils.NumberUtil; import org.yeshi.utils.taobao.TbImgUtil; import com.google.gson.Gson; import com.google.gson.GsonBuilder; +import com.yeshi.fanli.dto.douyin.DouYinGoods; import com.yeshi.fanli.dto.jd.JDFilter; import com.yeshi.fanli.dto.jd.JDSearchFilter; import com.yeshi.fanli.dto.jd.JDSearchResult; @@ -52,6 +54,7 @@ import com.yeshi.fanli.service.inter.user.integral.IntegralGetService; import com.yeshi.fanli.tag.PageEntity; import com.yeshi.fanli.util.Constant; +import com.yeshi.fanli.util.DouYinUtil; import com.yeshi.fanli.util.StringUtil; import com.yeshi.fanli.util.ThreadUtil; import com.yeshi.fanli.util.Utils; @@ -176,12 +179,11 @@ return; } - if (analysisTaoToken(text, out)) { + if (analysisTaoToken(acceptData, text, out)) { return; } JSONObject root = new JSONObject(); - root.put("type", 2); JSONObject data = new JSONObject(); data.put("title", text); @@ -231,8 +233,22 @@ type = 4; tb = TaoBaoUtil.getTmallGoodsInfo(id); } + } else if (text.contains("v.douyin.com")) { // 鎶栭煶 + analysisDouYin(acceptData, text, out); + return; } else { tb = TaoBaoUtil.parsePhoneShareUrlByTB(text); + + if (tb == null) { + String goodsId = TaoBaoUtil.getGoodsIdByPhoneShareUrl(text); + if (!StringUtil.isNullOrEmpty(goodsId)) { + tb = TaoBaoUtil.getTmallGoodsInfo(goodsId); + if (tb != null) + type = 4; + } + } + + if (tb == null)// 娣樺疂鏄┖鍊� { String jdId = JDUtil.getJDGoodsId(text); @@ -253,8 +269,17 @@ String pddId = PinDuoDuoUtil.getPDDGoodsId(text); if (!StringUtil.isNullOrEmpty(pddId)) { PDDGoodsDetail goods = PinDuoDuoApiUtil.getGoodsDetail(Long.parseLong(pddId)); - if (goods != null) + if (goods != null) { commonGoods = CommonGoodsFactory.create(goods); + } else { + type = 4; + goods = PinDuoDuoUtil.getPDDGoodsInfo(pddId); + if(goods != null) { + commonGoods = new CommonGoods(); + commonGoods.setTitle(goods.getGoodsName()); + commonGoods.setPicture(goods.getGoodsThumbnailUrl()); + } + } } } } @@ -352,8 +377,51 @@ root.put("data", data); out.print(JsonUtil.loadTrueResult(root)); } + + /** + * 瑙f瀽鎶栭煶閾炬帴 + * @param acceptData + * @param text + * @param out + * @return + */ + private void analysisDouYin(AcceptData acceptData, String text, PrintWriter out) { + String location = HttpUtil.getLocation(text); + if (!StringUtil.isNullOrEmpty(location)) { + if (location.contains("taobao.com")) { // 娣樺疂鍟嗗搧 + String realUrl = TaoBaoUtil.getRealUrl(location); + if (!StringUtil.isNullOrEmpty(realUrl)) { + getRecommendInfo(acceptData, realUrl, null, out); + return; + } + } else if (location.contains("haohuo.jinritemai.com")) { // 鎶栭煶鍟嗗搧 + DouYinGoods goods = DouYinUtil.getGoodsInfo(location); + JSONObject goodsJSON = new JSONObject(); + goodsJSON.put("title", goods.getName()); + goodsJSON.put("pictUrl", goods.getImg()); + + JSONObject data = new JSONObject(); + data.put("type", 4); + data.put("desc", "璇ュ晢鍝佹棤鎺ㄥ箍淇℃伅"); + data.put("goods", goodsJSON); + out.print(JsonUtil.loadTrueResult(data)); + return; + } + } + out.println(JsonUtil.loadFalseResult("鏆傛湭鎵惧埌璇ュ晢鍝侊紝璇风◢鍚庡啀璇曪紒")); + return; + } - private boolean analysisTaoToken(String text, PrintWriter out) { + + + /** + * 瑙f瀽娣樺彛浠� + * @param acceptData + * @param text + * @param out + * @return + */ + private boolean analysisTaoToken(AcceptData acceptData, String text, PrintWriter out) { String token = StringUtil.picUpTaoToken(text); if (!StringUtil.isNullOrEmpty(token)) { Long auctionId = TaoKeApiUtil.tokenConvertAuctionId(token); @@ -366,6 +434,32 @@ } if (tb != null) { + if (VersionUtil.greaterThan_1_6_5(acceptData.getPlatform(), acceptData.getVersion())) { + TaoBaoGoodsBrief goodsBrief = null; + try { + goodsBrief = TaoKeApiUtil.searchGoodsDetail(tb.getAuctionId()); + } catch (TaobaoGoodsDownException e) { + e.printStackTrace(); + } + + if (goodsBrief == null) { + out.println(JsonUtil.loadFalseResult("鏆傛湭鎵惧埌璇ュ晢鍝侊紝璇风◢鍚庡啀璇曪紒")); + return false; + } + + BigDecimal fanLiRate = hongBaoManageService.getFanLiRate(); + BigDecimal shareRate = hongBaoManageService.getShareRate(); + Gson gson = JsonUtil.getConvertBigDecimalToStringSubZeroBuilder(new GsonBuilder()) + .excludeFieldsWithoutExposeAnnotation().setDateFormat("yyyy-MM-dd").create(); + + JSONObject data = new JSONObject(); + data.put("type", 3); + data.put("goods", gson.toJson(GoodsDetailVOFactory.convertTaoBao(goodsBrief, null, fanLiRate, shareRate))); + out.print(JsonUtil.loadTrueResult(data)); + return true; + } + + JSONObject data = new JSONObject(); JSONObject taoBaoGoodsJSON = new JSONObject(); taoBaoGoodsJSON.put("title", tb.getTitle()); -- Gitblit v1.8.0