From 30d8e227e8d823b6c38c3b9c90ac2df03b63befe Mon Sep 17 00:00:00 2001 From: admin <weikou2014> Date: 星期二, 25 二月 2025 16:41:22 +0800 Subject: [PATCH] 淘宝转链接口更新 --- fanli/src/main/java/com/yeshi/fanli/controller/client/v2/SearchControllerV2.java | 56 +++++++++++++++++++++++++++++++++++++++++++++----------- 1 files changed, 45 insertions(+), 11 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 7c9be00..bbabc4e 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 @@ -85,6 +85,8 @@ import com.yeshi.goods.facade.utils.taobao.DaTaoKeApiUtil; import net.sf.json.JSONArray; import net.sf.json.JSONObject; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import org.springframework.core.task.TaskExecutor; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; @@ -105,6 +107,8 @@ @Controller @RequestMapping("api/v2/search") public class SearchControllerV2 { + + Logger logger = LoggerFactory.getLogger(SearchControllerV2.class); @Resource private ConfigService configService; @@ -759,8 +763,8 @@ //鏄惁鍖呭惈娣樺疂閾炬帴/鍙d护 if (page == 1) { List<String> linkList = HttpUtil.getUrlListFromText(key); - if ((linkList != null && linkList.size() > 0) || TaoBaoUtil.isHaveNewVersionTaoBaoToken(key)) { - + if (((linkList != null && linkList.size() > 0) || TaoBaoUtil.isHaveNewVersionTaoBaoToken(key))&&false) { + // 鏆傛椂涓嶉�氳繃閾炬帴鎼滅储 String id = DaTaoKeApiUtil.parseGoodsIdFromToken(key); if (id != null) { goodsId = id; @@ -779,12 +783,12 @@ } if (goodsId == null) { //瑙f瀽閾炬帴 - if (linkList != null && linkList.size() > 0) { - String tempGoodsId = clipboardAnalysisManager.parseTBAuctionIdFromLink(linkList.get(0)); - if (!StringUtil.isNullOrEmpty(tempGoodsId)) { - goodsId = tempGoodsId; - } - } +// if (linkList != null && linkList.size() > 0) { +// String tempGoodsId = clipboardAnalysisManager.parseTBAuctionIdFromLink(linkList.get(0)); +// if (!StringUtil.isNullOrEmpty(tempGoodsId)) { +// goodsId = tempGoodsId; +// } +// } } } @@ -867,9 +871,39 @@ } // 娣樺疂api鎼滅储鍟嗗搧 + //TODO 娴嬭瘯娉ㄩ噴 TaoBaoSearchResult result = taoBaoGoodsCacheUtil.getSearchResult(sf); // TaoBaoUtil.search(sf, specialId, null); if (result == null) { result = TaoBaoUtil.search(sf, specialId, null); + if (result != null && result.getTaoBaoGoodsBriefs() != null && result.getTaoBaoGoodsBriefs().size() > 1) { + for (TaoBaoGoodsBrief g : result.getTaoBaoGoodsBriefs()) { + if (StringUtil.isNullOrEmpty(g.getAuctionId())) { + logger.error("鎼滅储缁撴灉鏈夌┖ID鐨勬儏鍐� 鍏抽敭瀛梴}", key); + } + } + } + + //濡傛灉鏄崟涓晢鍝侊紝涓旈噷闈㈢殑鍟嗗搧ID涓虹┖锛屽氨闇�瑕佸�熷姪澶ф窐瀹㈡悳绱� + if (result.getTaoBaoGoodsBriefs() != null && result.getTaoBaoGoodsBriefs().size() == 1 && StringUtil.isNullOrEmpty(result.getTaoBaoGoodsBriefs().get(0).getAuctionId())) { + //鏈変竴涓晢鍝佷笖閲岄潰鐨勫晢鍝両D涓虹┖鐨勬儏鍐� + JSONArray darray = DaTaoKeApiUtil.tbSearch(key); + if (darray != null && darray.size() > 0) { + String auctionId = darray.optJSONObject(0).optString("item_id"); + result.getTaoBaoGoodsBriefs().set(0, TaoKeApiUtil.searchGoodsDetail(auctionId)); + }else{ + // 澶ф窐瀹㈡棤娉曟悳绱㈠埌锛屽氨灏嗘渶鍚庝竴涓瓧鍘绘帀鐒跺悗鍐嶆悳绱� + String originText = sf.getKey(); + sf.setKey(originText.substring(0,originText.length()-1)); + result = TaoBaoUtil.search(sf, specialId, null); +// if(result.getTaoBaoGoodsBriefs() != null) +// for(TaoBaoGoodsBrief tb: result.getTaoBaoGoodsBriefs()){ +// if(originText.equalsIgnoreCase(tb.getTitle())){ +// +// break; +// } +// } + } + } taoBaoGoodsCacheUtil.saveSearchResult(sf, result); } TaoBaoSearchResult finalResult = result; @@ -997,7 +1031,7 @@ boolean hasCoupon = false; if (goodsId != null) { - JDGoods goods = JDApiUtil.getGoodsDetail(Long.parseLong(goodsId)); + JDGoods goods = JDApiUtil.getGoodsDetail(goodsId); if (goods != null) { count = 1; goodsList.add(goods); @@ -1206,7 +1240,7 @@ if (goodsId != null) { try { - PDDGoodsDetail pddGoodsDetail = PinDuoDuoApiUtil.getGoodsDetail(Long.parseLong(goodsId), PinDuoDuoApiUtil.PID_DEFAULT, customParams); + PDDGoodsDetail pddGoodsDetail = PinDuoDuoApiUtil.getGoodsDetail(goodsId, PinDuoDuoApiUtil.PID_DEFAULT, customParams); if (pddGoodsDetail != null) { count = 1; goodsList.add(pddGoodsDetail); @@ -1215,7 +1249,7 @@ e.printStackTrace(); if (e.getCode() == PDDApiException.CODE_NOT_AUTH) { try { - PDDGoodsDetail pddGoodsDetail = PinDuoDuoApiUtil.getGoodsDetail(Long.parseLong(goodsId), PinDuoDuoApiUtil.PID_DEFAULT, Constant.PDD_SEARCH_CUSTOMER_PARAMS); + PDDGoodsDetail pddGoodsDetail = PinDuoDuoApiUtil.getGoodsDetail(goodsId, PinDuoDuoApiUtil.PID_DEFAULT, Constant.PDD_SEARCH_CUSTOMER_PARAMS); if (pddGoodsDetail != null) { count = 1; goodsList.add(pddGoodsDetail); -- Gitblit v1.8.0