From 8fee151ffae0c3818694b7318583814bf92663e2 Mon Sep 17 00:00:00 2001
From: admin <weikou2014>
Date: 星期五, 27 八月 2021 18:52:28 +0800
Subject: [PATCH] 聚合视频资源包调整,接入韩迷

---
 src/main/java/com/yeshi/buwan/videos/iqiyi/util/IqiyiUtil2.java |   75 +++++++++++++++++++++++++++++++++----
 1 files changed, 66 insertions(+), 9 deletions(-)

diff --git a/src/main/java/com/yeshi/buwan/iqiyi/util/IqiyiUtil2.java b/src/main/java/com/yeshi/buwan/videos/iqiyi/util/IqiyiUtil2.java
similarity index 81%
rename from src/main/java/com/yeshi/buwan/iqiyi/util/IqiyiUtil2.java
rename to src/main/java/com/yeshi/buwan/videos/iqiyi/util/IqiyiUtil2.java
index 4548159..a925005 100644
--- a/src/main/java/com/yeshi/buwan/iqiyi/util/IqiyiUtil2.java
+++ b/src/main/java/com/yeshi/buwan/videos/iqiyi/util/IqiyiUtil2.java
@@ -1,13 +1,12 @@
-package com.yeshi.buwan.iqiyi.util;
+package com.yeshi.buwan.videos.iqiyi.util;
 
 import com.yeshi.buwan.domain.AdminInfo;
 import com.yeshi.buwan.domain.VideoDetailInfo;
 import com.yeshi.buwan.domain.VideoType;
-import com.yeshi.buwan.iqiyi.IqiYiNewAPI;
-import com.yeshi.buwan.iqiyi.entity.IqiyiAlbum2;
-import com.yeshi.buwan.iqiyi.vo.IqiyiAlbumListResult;
+import com.yeshi.buwan.videos.iqiyi.IqiYiNewAPI;
+import com.yeshi.buwan.videos.iqiyi.entity.IqiyiAlbum2;
+import com.yeshi.buwan.videos.iqiyi.vo.IqiyiAlbumListResult;
 import com.yeshi.buwan.service.inter.juhe.Iqiyi2Service;
-import com.yeshi.buwan.util.StringUtil;
 import com.yeshi.buwan.util.TimeUtil;
 import com.yeshi.buwan.util.log.VideoLogFactory;
 import com.yeshi.buwan.util.mq.CMQManager;
@@ -99,6 +98,56 @@
         }
     }
 
+
+    /**
+     * 寮哄埗淇濆瓨
+     *
+     * @param list
+     */
+    private void forceSaveAlbumAndVideo(List<IqiyiAlbum2> list) {
+        if (list == null)
+            return;
+        for (IqiyiAlbum2 album : list) {
+            if (album.getContentType() != 1)
+                continue;
+            if (!albumIsValid(album)) {//濡傛灉鏄棤鏁堢殑涓撹緫灏遍渶瑕佸垹闄�
+                iqiyi2Service.deleteByAid(album.getId());
+                continue;
+            }
+
+
+            logger.info(VideoLogFactory.createAddAlbumLog(album));
+
+            int validCount = 0;
+            if (album.getTvQipuIds() != null && album.getTvQipuIds().size() > 0) {
+                int pageSize = 10;
+                int page = album.getTvQipuIds().size() % pageSize == 0 ? album.getTvQipuIds().size() / pageSize : album.getTvQipuIds().size() / pageSize + 1;
+                for (int p = 0; p < page; p++) {
+                    int startIndex = p * pageSize;
+                    int toIndex = (startIndex + pageSize) > album.getTvQipuIds().size() ? album.getTvQipuIds().size() : (startIndex + pageSize);
+                    List<Long> tvQipuIds = new ArrayList<>();
+                    tvQipuIds.addAll(album.getTvQipuIds().subList(startIndex, toIndex));
+                    if (tvQipuIds.size() > 0) {
+                        List<IqiyiAlbum2> detailList = IqiYiNewAPI.getAlbumOrVideoDetail(tvQipuIds);
+                        if (detailList != null)
+                            for (IqiyiAlbum2 video : detailList)
+                                if (canPlay(video.getPlayControls())) {
+                                    iqiyi2Service.saveIqiyiAlbum(video);
+                                    validCount++;
+                                } else
+                                    iqiyi2Service.deleteByAid(video.getId());
+                    }
+                }
+            }
+            if(validCount==0){
+                iqiyi2Service.deleteByAid(album.getId());
+            }else {
+                iqiyi2Service.saveIqiyiAlbum(album);
+                CMQManager.getInstance().addIqiyiAlbumUpdateMsg(album.getId());
+            }
+        }
+    }
+
     /**
      * 鍚屾鎵�鏈夌殑涓撹緫涓庤棰�
      *
@@ -123,11 +172,15 @@
      *
      * @param aid
      */
-    public void syncByAid(Long aid) {
+    public void syncByAid(Long aid, boolean force) {
         List<Long> aidList = new ArrayList<>();
         aidList.add(aid);
         List<IqiyiAlbum2> album2List = IqiYiNewAPI.getAlbumOrVideoDetail(aidList);
-        saveAlbumAndVideo(album2List);
+        if (force) {
+            forceSaveAlbumAndVideo(album2List);
+        } else {
+            saveAlbumAndVideo(album2List);
+        }
     }
 
     //鎷夊彇鎵�鏈夌殑鐢靛奖
@@ -312,9 +365,13 @@
             return false;
 
         List<IqiyiAlbum2.PlayControlsBean> playControls = album2.getPlayControls();
-        if (playControls == null)
+        return canPlay(playControls);
+    }
+
+    public static boolean canPlay(List<IqiyiAlbum2.PlayControlsBean> playControlsBeans) {
+        if (playControlsBeans == null)
             return false;
-        for (IqiyiAlbum2.PlayControlsBean bean : playControls) {
+        for (IqiyiAlbum2.PlayControlsBean bean : playControlsBeans) {
             if (bean.getPlatformId() == 15 && bean.getAvailableStatus() == 1)
                 return true;
         }

--
Gitblit v1.8.0