From 457f4881a89c03984c7b46ed10e8919d3294976c Mon Sep 17 00:00:00 2001 From: admin <weikou2014> Date: 星期一, 08 六月 2020 16:45:29 +0800 Subject: [PATCH] 淘宝好物圈修改 --- fanli/src/main/java/com/yeshi/fanli/util/vipshop/VipShopApiUtil.java | 68 +++++++++++++++++++++++++++++----- 1 files changed, 58 insertions(+), 10 deletions(-) diff --git a/fanli/src/main/java/com/yeshi/fanli/util/vipshop/VipShopApiUtil.java b/fanli/src/main/java/com/yeshi/fanli/util/vipshop/VipShopApiUtil.java index d1874e7..0e44b5a 100644 --- a/fanli/src/main/java/com/yeshi/fanli/util/vipshop/VipShopApiUtil.java +++ b/fanli/src/main/java/com/yeshi/fanli/util/vipshop/VipShopApiUtil.java @@ -2,6 +2,7 @@ import java.io.IOException; import java.io.UnsupportedEncodingException; +import java.lang.reflect.Type; import java.net.URLEncoder; import java.util.ArrayList; import java.util.Collections; @@ -17,9 +18,14 @@ import org.yeshi.utils.StringUtil; import com.google.gson.Gson; +import com.google.gson.reflect.TypeToken; +import com.yeshi.fanli.dto.vip.VIPConvertResultDTO; import com.yeshi.fanli.dto.vip.VIPSearchFilter; import com.yeshi.fanli.dto.vip.VIPSearchResult; import com.yeshi.fanli.dto.vip.goods.VIPGoodsInfo; +import com.yeshi.fanli.dto.vipshop.VipShopOrderQueryModel; +import com.yeshi.fanli.dto.vipshop.VipShopQueryOrderResultDTO; +import com.yeshi.fanli.entity.vipshop.VipShopOrder; import net.sf.json.JSONArray; import net.sf.json.JSONObject; @@ -159,13 +165,44 @@ } return null; } + + + + public static VIPSearchResult getGoodsList(int channelType,int page) { + Map<String, String> taskParams = new HashMap<>(); + taskParams.put("channelType",channelType+""); + taskParams.put("page", page+ ""); + taskParams.put("pageSize", 20 + ""); + taskParams.put("requestId", System.currentTimeMillis() + "_" + UUID.randomUUID()); + + + JSONObject root = new JSONObject(); + root.put("request", JSONObject.fromObject(taskParams)); + String result = baseRequest("com.vip.adp.api.open.service.UnionGoodsService", "goodsList", root); + System.out.println(result); + List<VIPGoodsInfo> goodsList = new ArrayList<>(); + JSONObject resultJson = JSONObject.fromObject(result); + Gson gson = new Gson(); + if (resultJson.optInt("returnCode") == 0) { + resultJson = resultJson.optJSONObject("result"); + int count = resultJson.optInt("total"); + JSONArray array = resultJson.optJSONArray("goodsInfoList"); + for (int i = 0; i < array.size(); i++) { + VIPGoodsInfo info = gson.fromJson(array.optJSONObject(i).toString(), VIPGoodsInfo.class); + if (info != null) + goodsList.add(info); + } + return new VIPSearchResult(goodsList, count); + } + return null; + } /** * 鍟嗗搧ID杞摼 * * @param goodsId */ - public static String convertLink(String goodsId, String tag) { + public static VIPConvertResultDTO convertLink(String goodsId, String tag) { JSONObject taskParams = new JSONObject(); JSONArray goodsIdArray = new JSONArray(); goodsIdArray.add(goodsId); @@ -175,6 +212,11 @@ String result = baseRequest("com.vip.adp.api.open.service.UnionUrlService", "genByGoodsId", JSONObject.fromObject(taskParams)); System.out.println(result); + JSONObject resultJSON = JSONObject.fromObject(result); + if (resultJSON.optInt("returnCode") == 0) { + String re = resultJSON.optJSONObject("result").optJSONArray("urlInfoList").optJSONObject(0).toString(); + return new Gson().fromJson(re, VIPConvertResultDTO.class); + } return null; } @@ -221,20 +263,26 @@ return goodsList.get(0); } - public static void getOrderList() { - JSONObject params = new JSONObject(); - // params.put("status", 1); - params.put("orderTimeStart", System.currentTimeMillis() - 1000 * 60 * 60L); - params.put("orderTimeEnd", System.currentTimeMillis()); - params.put("page", 1); - // params.put("pageSize", ); - // params.put("updateTimeStart", ); - // params.put("updateTimeEnd", ); + public static VipShopQueryOrderResultDTO getOrderList(VipShopOrderQueryModel query) { + JSONObject params = JSONObject.fromObject(new Gson().toJson(query)); params.put("requestId", UUID.randomUUID()); JSONObject root = new JSONObject(); root.put("queryModel", params); String result = baseRequest("com.vip.adp.api.open.service.UnionOrderService", "orderList", root); System.out.println(result); + JSONObject json = JSONObject.fromObject(result); + if (json.optInt("returnCode") == 0) { + JSONObject resultJson = json.optJSONObject("result"); + int total = resultJson.optInt("total"); + JSONArray array = JSONArray.fromObject(resultJson.optJSONArray("orderInfoList")); + if (array != null) { + Type type = new TypeToken<ArrayList<VipShopOrder>>() { + }.getType(); + List<VipShopOrder> orderList = new Gson().fromJson(array.toString(), type); + return new VipShopQueryOrderResultDTO(orderList, total); + } + } + return null; } } -- Gitblit v1.8.0