From 3727469752a977dde6327e2c48d761b20b565d3d Mon Sep 17 00:00:00 2001 From: admin <weikou2014> Date: 星期五, 15 七月 2022 09:19:21 +0800 Subject: [PATCH] 商品ID字符串化 --- facade-goods/src/main/java/com/yeshi/goods/facade/utils/taobao/DaTaoKeApiUtil.java | 83 ++++++++++++++++++++++++----------------- 1 files changed, 48 insertions(+), 35 deletions(-) diff --git a/facade-goods/src/main/java/com/yeshi/goods/facade/utils/taobao/DaTaoKeApiUtil.java b/facade-goods/src/main/java/com/yeshi/goods/facade/utils/taobao/DaTaoKeApiUtil.java index 84cc3b3..72c2971 100644 --- a/facade-goods/src/main/java/com/yeshi/goods/facade/utils/taobao/DaTaoKeApiUtil.java +++ b/facade-goods/src/main/java/com/yeshi/goods/facade/utils/taobao/DaTaoKeApiUtil.java @@ -26,6 +26,8 @@ import org.jsoup.nodes.Document; import org.jsoup.nodes.Element; import org.jsoup.select.Elements; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import org.yeshi.utils.HttpUtil; import org.yeshi.utils.MoneyBigDecimalUtil; import org.yeshi.utils.StringUtil; @@ -40,6 +42,7 @@ import java.util.*; public class DaTaoKeApiUtil { + static Logger logger = LoggerFactory.getLogger(DaTaoKeApiUtil.class); final static String API_CHARSET = "UTF-8";//"ISO-8859-1"; @@ -372,7 +375,7 @@ return null; } - public static DaTaoKeDetailV2 getGoodsDetailByGoodsId(Long goodsId) { + public static DaTaoKeDetailV2 getGoodsDetailByGoodsId(String goodsId) { TaoKeAppInfo app = getRandomApp(); Map<String, String> params = new TreeMap<>(); params.put("version", "v1.1.1"); @@ -611,7 +614,7 @@ JSONObject itemGoods = arrayGoods.optJSONObject(i); TaoBaoGoodsBrief taoBaoGoods = new TaoBaoGoodsBrief(); - taoBaoGoods.setAuctionId(itemGoods.optLong("goodsid")); + taoBaoGoods.setAuctionId(itemGoods.optString("goodsid")); taoBaoGoods.setBiz30day(itemGoods.optInt("xiaoliang")); taoBaoGoods.setCouponAmount(new BigDecimal(itemGoods.optString("quan_jine"))); taoBaoGoods.setCouponInfo(String.format("婊�%s鍏冨噺%s鍏�", itemGoods.optString("quan_tiaojian"), @@ -722,7 +725,6 @@ /** * 鍚勫ぇ姒滃崟 * - * @param type * @return */ public static String getHotWords() { @@ -759,7 +761,7 @@ * @Title: convertLink * @Description: */ - public static String convertLink(Long auctionId, String pid) { + public static String convertLink(String auctionId, String pid) { TaoKeAppInfo app = APP_KEYS[1]; Map<String, String> params = new TreeMap<>(); params.put("version", "v1.1.1"); @@ -919,7 +921,7 @@ * @param content * @return */ - public static Long parseTaoBaoToken(String content) { + public static String parseTaoBaoToken(String content) { TaoKeAppInfo app = getRandomApp(); Map<String, String> params = new TreeMap<>(); params.put("version", "v1.0.0"); @@ -932,7 +934,7 @@ if (resultObj.optInt("code") == 0) { String goodsId = resultObj.optJSONObject("data").optString("goodsId"); if (!StringUtil.isNullOrEmpty(goodsId)) { - return Long.parseLong(goodsId); + return goodsId; } } return null; @@ -945,42 +947,53 @@ * @param auctionId * @return */ - public static TaoBaoGoodsImportantInfo getGoodsImportantInfo(Long auctionId) { - TaoKeAppInfo app = getRandomApp(); - Map<String, String> params = new TreeMap<>(); - params.put("version", "v1.2.3"); - params.put("appKey", app.getAppKey()); - params.put("goodsId", auctionId + ""); - params.put("sign", getSign(params, app.getAppSecret())); - String result = baseGet("https://openapi.dataoke.com/api/goods/get-goods-details", params); - System.out.println(result); - JSONObject resultObj = JSONObject.fromObject(result); - if (resultObj.optInt("code") == 0) { - TaoBaoGoodsImportantInfo taoBaoGoodsImportantInfo = new TaoBaoGoodsImportantInfo(); - String detailPictures = resultObj.optJSONObject("data").optString("detailPics"); - String shopLogo = resultObj.optJSONObject("data").optString("shopLogo"); - taoBaoGoodsImportantInfo.setShopLogo(shopLogo); - JSONArray array = JSONArray.fromObject(detailPictures); - List<TaoBaoImg> imgList = new ArrayList<>(); - for (int i = 0; i < array.size(); i++) { - JSONObject item = array.optJSONObject(i); - String img = item.optString("img"); - int width = item.optInt("width"); - int height = item.optInt("height"); - if (width > 1) { - TaoBaoImg taoBaoImg = new TaoBaoImg(img, width, height); - imgList.add(taoBaoImg); + public static TaoBaoGoodsImportantInfo getGoodsImportantInfo(String auctionId) { + + try { + TaoKeAppInfo app = getRandomApp(); + Map<String, String> params = new TreeMap<>(); + params.put("version", "v1.2.3"); + params.put("appKey", app.getAppKey()); + params.put("goodsId", auctionId + ""); + params.put("sign", getSign(params, app.getAppSecret())); + String result = baseGet("https://openapi.dataoke.com/api/goods/get-goods-details", params); + System.out.println(result); + JSONObject resultObj = JSONObject.fromObject(result); + if (resultObj.optInt("code") == 0) { + TaoBaoGoodsImportantInfo taoBaoGoodsImportantInfo = new TaoBaoGoodsImportantInfo(); + String detailPictures = resultObj.optJSONObject("data").optString("detailPics"); + String shopLogo = resultObj.optJSONObject("data").optString("shopLogo"); + taoBaoGoodsImportantInfo.setShopLogo(shopLogo); + + List<TaoBaoImg> imgList = new ArrayList<>(); + + if (!StringUtil.isNullOrEmpty(detailPictures)) { + JSONArray array = JSONArray.fromObject(detailPictures); + for (int i = 0; i < array.size(); i++) { + JSONObject item = array.optJSONObject(i); + String img = item.optString("img"); + int width = item.optInt("width"); + int height = item.optInt("height"); + if (width > 1) { + TaoBaoImg taoBaoImg = new TaoBaoImg(img, width, height); + imgList.add(taoBaoImg); + } + } } + taoBaoGoodsImportantInfo.setDetailImages(imgList); + return taoBaoGoodsImportantInfo; } - taoBaoGoodsImportantInfo.setDetailImages(imgList); - return taoBaoGoodsImportantInfo; + } catch (Exception e) { + logger.error("鑾峰彇澶ф窐瀹㈠晢鍝佽鎯呭嚭閿欙細" + auctionId, e); } return null; } public static void main(String[] args) { - DaTaoKeResult result = DaTaoKeApiUtil.listTipOff(4, null, 50); - System.out.println(result); +// DaTaoKeResult result = DaTaoKeApiUtil.listTipOff(4, null, 50); +// System.out.println(result); + getGoodsImportantInfo(672479015817L+""); + } } -- Gitblit v1.8.0