From cba071db4529097598095e2971949dfd109f12b9 Mon Sep 17 00:00:00 2001
From: admin <weikou2014>
Date: 星期四, 22 十月 2020 16:49:25 +0800
Subject: [PATCH] 图片显示403问题解决

---
 src/main/java/com/yeshi/buwan/service/imp/juhe/FunTV2ServiceImpl.java |   51 ++++++++++++++++++++++++++++++++++-----------------
 1 files changed, 34 insertions(+), 17 deletions(-)

diff --git a/src/main/java/com/yeshi/buwan/service/imp/juhe/FunTV2ServiceImpl.java b/src/main/java/com/yeshi/buwan/service/imp/juhe/FunTV2ServiceImpl.java
index 8eccadd..acc2d64 100644
--- a/src/main/java/com/yeshi/buwan/service/imp/juhe/FunTV2ServiceImpl.java
+++ b/src/main/java/com/yeshi/buwan/service/imp/juhe/FunTV2ServiceImpl.java
@@ -24,6 +24,7 @@
 import com.yeshi.buwan.service.inter.juhe.FunTV2Service;
 import com.yeshi.buwan.util.mq.CMQManager;
 import com.yeshi.buwan.util.video.VideoConstant;
+import com.yeshi.buwan.vo.AcceptData;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
@@ -151,29 +152,45 @@
         FunTVAlbum2 album2 = funTVAlbum2Dao.get(id);
         if (album2 == null)
             return null;
-        List<FunTVVideo2> video2List = funTVVideo2Dao.listByMediaId(id);
-        if (video2List != null) {
-            Comparator<FunTVVideo2> cm = new Comparator<FunTVVideo2>() {
-                @Override
-                public int compare(FunTVVideo2 o1, FunTVVideo2 o2) {
-                    return Integer.parseInt(o1.getNum()) - Integer.parseInt(o2.getNum());
-                }
-            };
-            Collections.sort(video2List, cm);
-        }
+        List<FunTVVideo2> video2List = listAllEpisodeList(id);
         album2.setEpisodes(video2List);
         return album2;
     }
 
+    private List<FunTVVideo2> getEpisodeList(String mediaId, int page, int pageSize) {
+        List<FunTVVideo2> video2List = funTVVideo2Dao.listByMediaId(mediaId, (page - 1) * pageSize, pageSize);
+        return video2List;
+    }
+
+    private List<FunTVVideo2> listAllEpisodeList(String mediaId) {
+        int page = 1;
+        int pageSize = 100;
+        List<FunTVVideo2> video2List = new ArrayList<>();
+        List<FunTVVideo2> tempList = new ArrayList<>();
+        do {
+            tempList = getEpisodeList(mediaId, page, pageSize);
+            if (tempList != null)
+                video2List.addAll(tempList);
+            page++;
+        } while (tempList != null && tempList.size() > 0);
+        return video2List;
+    }
+
+
     @Override
-    public List<VideoDetailInfo> getVideoDetailList(String id) {
+    public List<VideoDetailInfo> getVideoDetailList(String id, int page, int pageSize) {
         VideoFunTV2 videoFunTV2 = videoFunTV2Dao.selectByVideoId(id);
         if (videoFunTV2 == null)
             return null;
-        FunTVAlbum2 album2 = getAlbumDetail(videoFunTV2.getMediaId());
+        FunTVAlbum2 album2 = funTVAlbum2Dao.get(videoFunTV2.getMediaId());
+        if (album2 == null)
+            return null;
+
+        List<FunTVVideo2> episodeList = getEpisodeList(album2.getId(), page, pageSize);
+
         List<VideoDetailInfo> list = new ArrayList<>();
-        if (album2 != null && album2.getEpisodes() != null)
-            for (FunTVVideo2 video2 : album2.getEpisodes())
+        if (episodeList != null)
+            for (FunTVVideo2 video2 : episodeList)
                 list.add(FunTVUtil2.convertFunTVVideoToVideoDetail(video2, album2));
         return list;
     }
@@ -200,10 +217,10 @@
     }
 
     @Override
-    public PlayUrl getPlayUrl(String detailSystemId, int resourceId, String id, String videoId) {
+    public PlayUrl getPlayUrl(AcceptData acceptData, String detailSystemId, int resourceId, String id, String videoId) {
         FunTVVideo2 video2 = funTVVideo2Dao.get(id);
         VideoResource vr = videoResourceService.getResource(resourceId + "");
-        int t = FunTVUtil2.getPlayType(video2);
+        int t = FunTVUtil2.getPlayType(acceptData,video2);
         PlayUrl pu = new PlayUrl();
         pu.setParams("");
         pu.setPlayType(t);
@@ -261,7 +278,7 @@
 
         //鍒犻櫎濯掍綋涓庡獟浣撳搴旂殑瑙嗛
         funTVAlbum2Dao.delete(mediaId);
-        List<FunTVVideo2> video2List = funTVVideo2Dao.listByMediaId(mediaId);
+        List<FunTVVideo2> video2List = listAllEpisodeList(mediaId);
         if (video2List != null)
             for (FunTVVideo2 video2 : video2List)
                 funTVVideo2Dao.delete(video2.getId());

--
Gitblit v1.8.0