From 08e5c64ec7424fd0048d85ef293148977f4739cb Mon Sep 17 00:00:00 2001 From: admin <weikou2014> Date: 星期一, 22 四月 2019 09:36:59 +0800 Subject: [PATCH] 大淘客商品缓存 --- fanli/src/main/java/com/yeshi/fanli/util/jd/JDUtil.java | 39 ++++++++++++++++++++++++++++++++++++--- 1 files changed, 36 insertions(+), 3 deletions(-) diff --git a/fanli/src/main/java/com/yeshi/fanli/util/jd/JDUtil.java b/fanli/src/main/java/com/yeshi/fanli/util/jd/JDUtil.java index 51f94a3..b3d33ab 100644 --- a/fanli/src/main/java/com/yeshi/fanli/util/jd/JDUtil.java +++ b/fanli/src/main/java/com/yeshi/fanli/util/jd/JDUtil.java @@ -2,7 +2,9 @@ import java.io.IOException; import java.math.BigDecimal; +import java.util.ArrayList; import java.util.HashMap; +import java.util.List; import java.util.Map; import org.apache.commons.httpclient.HttpClient; @@ -16,10 +18,13 @@ import com.yeshi.fanli.dto.jd.JDCommissionInfo; import com.yeshi.fanli.dto.jd.JDCouponInfo; import com.yeshi.fanli.dto.jd.JDSearchFilter; +import com.yeshi.fanli.dto.jd.JDSearchResult; import com.yeshi.fanli.dto.jd.JDShopInfo; import com.yeshi.fanli.entity.jd.JDGoods; +import com.yeshi.fanli.tag.PageEntity; import com.yeshi.fanli.util.StringUtil; +import net.sf.json.JSONArray; import net.sf.json.JSONObject; public class JDUtil { @@ -92,7 +97,11 @@ } @SuppressWarnings("deprecation") - public static void searchByKey(JDSearchFilter searchFilter) { + public static JDSearchResult searchByKey(JDSearchFilter searchFilter) { + + JDSearchResult searchResult = new JDSearchResult(); + + List<JDGoods> goodsList = new ArrayList<>(); JSONObject params = new JSONObject(); params.put("pageNo", searchFilter.getPageNo()); params.put("pageSize", searchFilter.getPageSize()); @@ -118,10 +127,31 @@ try { client.executeMethod(pm); String result = pm.getResponseBodyAsString(); + JSONObject json = JSONObject.fromObject(result); + if (json.optInt("code") == 200) { + JSONObject pageJson = json.optJSONObject("data").optJSONObject("page"); + PageEntity entity = new PageEntity(pageJson.optInt("pageNo"), pageJson.optInt("pageSize"), + pageJson.optInt("totalCount")); + searchResult.setPageEntity(entity); + + if (json.optJSONObject("data") != null) { + JSONArray array = json.optJSONObject("data").optJSONArray("unionGoods"); + if (array != null) { + for (int i = 0; i < array.size(); i++) { + goodsList.add(parseGoods(array.optJSONArray(i).optJSONObject(0).toString())); + } + } + } + json.optJSONObject("data").optJSONArray("unionGoods"); + } + System.out.println(result); } catch (Exception e) { e.printStackTrace(); } + + searchResult.setGoodsList(goodsList); + return searchResult; } private static JDGoods parseGoods(String data) { @@ -134,14 +164,17 @@ shopInfo.setShopName(json.optString("shopName")); goods.setShopInfo(shopInfo); - goods.setPrice(new BigDecimal(json.optString("finalPrice"))); + if (!StringUtil.isNullOrEmpty(json.optString("wlPrice"))) + goods.setPrice(new BigDecimal(json.optString("wlPrice"))); + else + goods.setPrice(new BigDecimal(json.optString("finalPrice"))); goods.setGoodCommentsShare(new BigDecimal(json.optString("goodCommentsShare"))); goods.setInOrderCount30Days(json.optLong("inOrderCount30Days")); if (json.optInt("isZY") == 1) goods.setOwner("g"); else goods.setOwner("p"); - goods.setMaterialUrl(json.optString("materialUrl")); + goods.setMaterialUrl("http://img14.360buyimg.com/n1/"+json.optString("materialUrl")); JDCommissionInfo commission = new JDCommissionInfo(); commission.setCommission(new BigDecimal(json.optString("wlCommission"))); commission.setCommissionShare(new BigDecimal(json.optString("wlCommissionRatio"))); -- Gitblit v1.8.0