From eb7f3343af839a7c71f16e8ada2b25d5e2201c08 Mon Sep 17 00:00:00 2001
From: admin <weikou2014>
Date: 星期一, 19 四月 2021 19:27:52 +0800
Subject: [PATCH] bug修复

---
 src/main/java/com/yeshi/buwan/controller/api/VideoPlayController.java |  141 +++++++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 136 insertions(+), 5 deletions(-)

diff --git a/src/main/java/com/yeshi/buwan/controller/api/VideoPlayController.java b/src/main/java/com/yeshi/buwan/controller/api/VideoPlayController.java
index 5740e4d..fa312b3 100644
--- a/src/main/java/com/yeshi/buwan/controller/api/VideoPlayController.java
+++ b/src/main/java/com/yeshi/buwan/controller/api/VideoPlayController.java
@@ -1,7 +1,26 @@
 package com.yeshi.buwan.controller.api;
 
+import com.google.gson.Gson;
+import com.yeshi.buwan.domain.jump.JumpDetail;
+import com.yeshi.buwan.domain.jump.JumpTypeEnum;
+import com.yeshi.buwan.domain.video.VideoWatchHistory;
+import com.yeshi.buwan.pptv.PPTVApiUtil;
+import com.yeshi.buwan.pptv.PPTVUtil;
+import com.yeshi.buwan.pptv.entity.PPTVProgram;
+import com.yeshi.buwan.pptv.entity.PPTVSeries;
+import com.yeshi.buwan.pptv.entity.PPTVSeriesProgramMap;
+import com.yeshi.buwan.pptv.entity.VideoPPTVMap;
+import com.yeshi.buwan.service.inter.juhe.PPTVService;
 import com.yeshi.buwan.service.inter.push.PushDeviceTokenService;
+import com.yeshi.buwan.service.inter.system.SystemConfigService;
+import com.yeshi.buwan.service.inter.video.VideoWatchHistoryService;
+import com.yeshi.buwan.util.JsonUtil;
+import com.yeshi.buwan.util.ThreadUtil;
+import com.yeshi.buwan.util.VersionUtil;
 import com.yeshi.buwan.vo.AcceptData;
+import com.yeshi.buwan.vo.video.PPTVVideoActivityInfoVO;
+import com.yeshi.buwan.vo.video.PPTVWatchVIPVideoActivityWay;
+import org.json.JSONObject;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.springframework.stereotype.Controller;
@@ -9,6 +28,9 @@
 import org.springframework.web.bind.annotation.ResponseBody;
 
 import javax.annotation.Resource;
+import java.math.BigDecimal;
+import java.util.ArrayList;
+import java.util.List;
 
 @Controller
 @RequestMapping("api/v2/video/play")
@@ -17,7 +39,13 @@
     Logger logger = LoggerFactory.getLogger(VideoPlayController.class);
 
     @Resource
-    private PushDeviceTokenService pushDeviceTokenService;
+    private PPTVService pptvService;
+
+    @Resource
+    private VideoWatchHistoryService videoWatchHistoryService;
+
+    @Resource
+    private SystemConfigService systemConfigService;
 
 
     /**
@@ -25,18 +53,121 @@
      *
      * @param acceptData
      * @param loginUid
-     * @param cid
-     * @param vid
+     * @param Cid
+     * @param Vid
      * @return
      */
     @RequestMapping("pptvPlay")
     @ResponseBody
-    public String pptvPlay(AcceptData acceptData, String loginUid, String cid, String vid) {
+    public String pptvPlay(AcceptData acceptData, String loginUid, String Cid, String Vid) {
 
-        logger.info("鎾斁PPTV锛歭oginUid-{}锛宑id-{}锛寁id-{}", loginUid, cid, vid);
+        logger.info("鎾斁PPTV锛歭oginUid-{}锛宑id-{}锛寁id-{}", loginUid, Cid, Vid);
 
+        PPTVSeriesProgramMap map = pptvService.selectMapByCode(Cid, Vid);
+        if (map != null) {
+            String infoId = map.getInfoId();
+            VideoPPTVMap videoPPTVMap = pptvService.selectVideoPPTVMapByInfoId(infoId);
+            if (videoPPTVMap != null) {
+                PPTVProgram program = pptvService.selectProgramById(Vid);
+                if (program != null && program.getSeriesNum() != null) {
+                    //褰撳墠鎾斁鐨勯泦鏁�  program.getSeriesNum();
+                    VideoWatchHistory history = new VideoWatchHistory();
+                    history.setDevice(acceptData.getDevice());
+                    history.setVideoId(videoPPTVMap.getVideoId());
+                    history.setUid(loginUid);
+                    history.setPosition(Integer.parseInt(program.getSeriesNum()) - 1);
+                    videoWatchHistoryService.add(history);
+                }
+            }
+        }
         return "";
     }
 
+    /**
+     * 鑾峰彇pptv鐨勬椿鍔�
+     *
+     * @param acceptData
+     * @param loginUid
+     * @param cid
+     * @param vid
+     * @return
+     */
+    @RequestMapping("getPPTVVIPVideoActivity")
+    @ResponseBody
+    public String getPPTVVIPVideoActivity(AcceptData acceptData, String loginUid, String cid, String vid) {
+        //鏌ヨcid涓巚id鐨勫悕瀛�
+        PPTVSeries pptvSeries = pptvService.selectSeriesBySeriesCode(cid);
+        if (pptvSeries == null) {
+            try {
+                pptvSeries = PPTVApiUtil.getDetail(cid);
+                ThreadUtil.run(new Runnable() {
+                    @Override
+                    public void run() {
+                        pptvService.syncSeries(cid);
+                    }
+                });
+            } catch (Exception e) {
+
+            }
+        }
+
+        PPTVVideoActivityInfoVO vo = new PPTVVideoActivityInfoVO();
+        if (pptvSeries != null) {
+            vo.setVideoName("銆�" + pptvSeries.getName() + "銆�");
+        } else {
+            vo.setVideoName("銆婃湭鐭ヨ棰戙��");
+        }
+
+        List<PPTVWatchVIPVideoActivityWay> wayList = new ArrayList<>();
+        PPTVWatchVIPVideoActivityWay way = new PPTVWatchVIPVideoActivityWay();
+        way.setEndBgColor("#E9CE93");
+        way.setStartBgColor("#F7EDD7");
+        way.setEndPrice(new BigDecimal("77.8"));
+        way.setIcon("https://buwan-1255749512.cos.ap-guangzhou.myqcloud.com/resource/icon_vip.png");
+        way.setStartPrice(new BigDecimal("8.8"));
+        way.setSubTitle("鍖呮湀銆佸銆佸勾鍗�");
+        way.setTitle("VIP鐪嬮珮娓� 鍏嶅箍鍛�");
+        way.setTextColor("#885E24");
+        way.setType("vip");
+        wayList.add(way);
+
+
+        //3.9.2鍚庤繑鍥炲崟鐗囪喘涔�
+        if (VersionUtil.isGraterThan392(acceptData.getPlatform(), acceptData.getVersion())) {
+            String buyVideoUrl = systemConfigService.getConfigValueByKeyCache("buyVideoUrl");
+            if (buyVideoUrl != null && pptvSeries != null && PPTVUtil.isVIPVideo(pptvSeries.getFree()) && PPTVUtil.getAvaiableStates().contains(pptvSeries.getStatus())) {
+                way = new PPTVWatchVIPVideoActivityWay();
+                way.setEndBgColor("#DCE8FF");
+                way.setStartBgColor("#DCE8FF");
+//            way.setEndPrice(new BigDecimal("77.8"));
+                way.setIcon("http://img.ysdq.yeshitv.com/resource/icon_free_money.png");
+                way.setStartPrice(new BigDecimal("0"));
+                way.setSubTitle("鐣呬韩娴烽噺楂樻竻");
+                way.setTitle("0鍏冪湅鍗曠墖");
+                way.setTextColor("#0052F6");
+                way.setType("video");
+                JumpDetail jumpDetail = new JumpDetail();
+                jumpDetail.setType(JumpTypeEnum.web);
+                way.setJumpDetail(jumpDetail);
+                JSONObject params = new JSONObject();
+                params.put("url", buyVideoUrl.replace("{infoId}", pptvSeries.getInfoID()));
+                params.put("close", false);
+                way.setParams(params.toString().replace("\"", "\\" + "\""));
+                wayList.add(way);
+            }
+        }
+
+        vo.setWayList(wayList);
+        return JsonUtil.loadTrueJson(new Gson().toJson(vo));
+    }
+
+    @RequestMapping("uploadSession")
+    @ResponseBody
+    public String uploadSession(AcceptData acceptData, String sessionId) {
+
+
+        return JsonUtil.loadTrueJson("");
+    }
+
 
 }

--
Gitblit v1.8.0