From cad915058c3c53bf328a8ae9ca9bc7de099caba7 Mon Sep 17 00:00:00 2001
From: admin <weikou2014>
Date: 星期六, 06 二月 2021 15:27:49 +0800
Subject: [PATCH] 接口bug修改

---
 src/main/java/com/yeshi/buwan/pptv/PPTVApiUtil.java |   62 ++++++++++++++++++++++++++++--
 1 files changed, 57 insertions(+), 5 deletions(-)

diff --git a/src/main/java/com/yeshi/buwan/pptv/PPTVApiUtil.java b/src/main/java/com/yeshi/buwan/pptv/PPTVApiUtil.java
index 9bb54be..69ba9e7 100644
--- a/src/main/java/com/yeshi/buwan/pptv/PPTVApiUtil.java
+++ b/src/main/java/com/yeshi/buwan/pptv/PPTVApiUtil.java
@@ -163,7 +163,17 @@
         String result = baseRequest("https://coapi.pptv.com/coapi-web/api/http/sopRequest", params, "pptv.channel.openid.get");
         System.out.println(result);
         JSONObject resultJSON = JSONObject.fromObject(result);
-        return resultJSON.optJSONObject("response").optJSONObject("body").optString("openId");
+        JSONObject response = resultJSON.optJSONObject("response");
+        if (StringUtil.isNullOrEmpty(response.optString("error_code")))
+            return response.optJSONObject("body").optString("openId");
+        return null;
+    }
+
+
+    public static void getVIPPriceList() {
+        Map<String, String> params = new HashMap<>();
+        String result = baseRequest("https://coapi.pptv.com/coapi-web/api/http/sopRequest", params, "pptv.channel.goods.associator");
+        System.out.println(result);
     }
 
 
@@ -172,13 +182,55 @@
      *
      * @param code
      */
-    public static void login(String code) {
+    public static boolean login(String code) {
         String url = String.format("https://coapi.pptv.com/coapi-web/api/getUserToken/%s/%s.htm", APP_KEY, code);
         String result = HttpUtil.get(url);
+        System.out.println(result);
+        JSONObject resultJSON = JSONObject.fromObject(result);
+        return resultJSON.optInt("errCode") == 1;
+    }
 
-       System.out.println(result);
-//        JSONObject resultJSON = JSONObject.fromObject(result);
-//        return resultJSON.optJSONObject("response").optJSONObject("body").optString("openId");
+
+    /**
+     * 涔板晢鍝�
+     *
+     * @param openId
+     * @param orderNo
+     * @param goodsNo
+     * @param orderTime
+     * @return
+     */
+    public static boolean buyGoods(String openId, String orderNo, String goodsNo, Date orderTime) {
+        Map<String, String> params = new HashMap<>();
+        params.put("openId", openId);
+        params.put("canal", CANAL);
+        params.put("channel", "yeshi");
+        params.put("goodsNo", goodsNo);
+        params.put("outOrderId", orderNo);
+        params.put("orderTime", TimeUtil.getGernalTime(orderTime.getTime(), "yyyy-MM-dd HH:mm:ss"));
+        params.put("sign", StringUtil.Md5(String.format("%s&%s&%s&%s", openId, params.get("channel"), orderNo, "2MnD8nCWu7EzbiJ")));
+        String result = get("http://uc.test.pptv.com/cusp/jointMember", params);
+        System.out.println(result);
+        JSONObject data = JSONObject.fromObject(result);
+        if (data.optInt("errorCode") == 0) {
+            return true;
+        }
+        return false;
+    }
+
+    private static String get(String url, Map<String, String> params) {
+        List<String> list = new ArrayList<>();
+        for (Iterator<String> its = params.keySet().iterator(); its.hasNext(); ) {
+            String key = its.next();
+            list.add(key + "=" + URLEncoder.encode(params.get(key)));
+        }
+        url += "?" + org.yeshi.utils.StringUtil.concat(list, "&");
+        System.out.println(url);
+        return HttpUtil.get(url);
+    }
+
+    public static void main(String[] args) {
+        buyGoods("257dfd950c20ad25dee9f99ef926c0f8", "buwan_27", "DA7559531560894", new Date());
     }
 
 

--
Gitblit v1.8.0