From f788607ff771a47bc60d6a86e00b3433c40f3d2c Mon Sep 17 00:00:00 2001
From: admin <weikou2014>
Date: 星期五, 24 九月 2021 15:22:03 +0800
Subject: [PATCH] 接入视频直播

---
 src/main/java/com/yeshi/buwan/controller/api/VIPController.java |   50 +++++++++++++++++++++++++++++++++-----------------
 1 files changed, 33 insertions(+), 17 deletions(-)

diff --git a/src/main/java/com/yeshi/buwan/controller/api/VIPController.java b/src/main/java/com/yeshi/buwan/controller/api/VIPController.java
index d72c0df..ed0912e 100644
--- a/src/main/java/com/yeshi/buwan/controller/api/VIPController.java
+++ b/src/main/java/com/yeshi/buwan/controller/api/VIPController.java
@@ -11,8 +11,8 @@
 import com.yeshi.buwan.exception.order.PayException;
 import com.yeshi.buwan.exception.vip.VIPException;
 import com.yeshi.buwan.exception.vip.VideoBuyRecordException;
-import com.yeshi.buwan.pptv.entity.PPTVSeries;
-import com.yeshi.buwan.pptv.entity.VideoPPTVMap;
+import com.yeshi.buwan.videos.pptv.entity.PPTVSeries;
+import com.yeshi.buwan.videos.pptv.entity.VideoPPTVMap;
 import com.yeshi.buwan.service.inter.LoginUserService;
 import com.yeshi.buwan.service.inter.juhe.PPTVService;
 import com.yeshi.buwan.service.inter.order.OrderService;
@@ -20,8 +20,6 @@
 import com.yeshi.buwan.service.inter.vip.VIPPriceService;
 import com.yeshi.buwan.service.inter.vip.VIPService;
 import com.yeshi.buwan.util.*;
-import com.yeshi.buwan.util.user.VipUtil;
-import com.yeshi.buwan.util.vip.VIPOrderUtil;
 import com.yeshi.buwan.vo.AcceptData;
 import com.yeshi.buwan.vo.client.user.UserInfoVO;
 import com.yeshi.buwan.vo.order.OrderInfoVO;
@@ -41,7 +39,6 @@
 import java.util.ArrayList;
 import java.util.Date;
 import java.util.List;
-import java.util.UUID;
 
 @Controller
 @RequestMapping("api/v2/vip")
@@ -167,7 +164,7 @@
             return JsonUtilV2.loadFalseJson("鐢ㄦ埛涓嶅瓨鍦�");
         }
 
-        if (StringUtil.isNullOrEmpty(user.getPhone())) {
+        if (StringUtil.isNullOrEmpty(user.getPhone()) && payWay != OrderRecord.PAY_WAY_IAPP) {
             return JsonUtilV2.loadFalseJson(10001, "璇风粦瀹氱數璇濆彿鐮�");
         }
 
@@ -253,8 +250,17 @@
         } catch (VideoBuyRecordException e) {
             return JsonUtilV2.loadFalseJson("鍗曠墖璐拱澶辫触");
         }
-        return JsonUtilV2.loadTrueJson(new Gson().toJson(payResult));
+        if (payResult.getPayWay() == OrderRecord.PAY_WAY_IAPP) {
+            //鑻规灉鍐呰喘
+            JSONObject root = new JSONObject();
+            root.put("orderNo", record.getId());
+            root.put("productId", vipPrice.getIosProductId());
+            return JsonUtilV2.loadTrueJson(root.toString());
+        } else {
+            return JsonUtilV2.loadTrueJson(new Gson().toJson(payResult));
+        }
     }
+
 
     /**
      * 妫�鏌ユ槸鍚︽敮浠�
@@ -262,27 +268,37 @@
      * @param acceptData
      * @param loginUid
      * @param id
+     * @param receipt    -ios鏀粯缁撴灉receipt
      * @return
      */
     @RequestMapping("checkPay")
     @ResponseBody
     @RequestSerializableByKey(key = "'vip-checkPay-'+#id")
-    public String checkPay(AcceptData acceptData, String loginUid, String id) {
+    public String checkPay(AcceptData acceptData, String loginUid, String id, String receipt) {
         OrderRecord record = orderService.getOrderRecord(id);
         if (record == null || !record.getUid().equalsIgnoreCase(loginUid)) {
             return JsonUtilV2.loadFalseJson("璁板綍涓嶅瓨鍦�/涓嶆槸鎮ㄧ殑璁㈠崟");
         }
 
-        record = orderService.checkOrderPayState(id);
-        //鏈敮浠�
-        if (record != null && record.getState() != OrderRecord.STATE_PAY) {
-            return JsonUtilV2.loadFalseJson(1, "鏀粯鏈畬鎴�");
+        if (record.getPayWay() == OrderRecord.PAY_WAY_IAPP) {
+            try {
+                orderService.checkApplePay(record.getId(), receipt);
+                JSONObject data = new JSONObject();
+                return JsonUtilV2.loadTrueJson(data.toString());
+            } catch (Exception e) {
+                return JsonUtilV2.loadFalseJson(e.getMessage());
+            }
+        } else {
+            record = orderService.checkOrderPayState(id);
+            //鏈敮浠�
+            if (record != null && record.getState() != OrderRecord.STATE_PAY) {
+                return JsonUtilV2.loadFalseJson(1, "鏀粯鏈畬鎴�");
+            }
+
+            JSONObject data = new JSONObject();
+            data.put("money", record.getPayMoney() == null ? record.getMoney() : record.getPayMoney());
+            return JsonUtilV2.loadTrueJson(data.toString());
         }
-
-        JSONObject data = new JSONObject();
-        data.put("money", record.getPayMoney() == null ? record.getMoney() : record.getPayMoney());
-
-        return JsonUtilV2.loadTrueJson(data.toString());
     }
 
 

--
Gitblit v1.8.0