From f13ed98e1de0ec7b85ed179212cc095f63480eed Mon Sep 17 00:00:00 2001
From: admin <weikou2014>
Date: 星期四, 25 三月 2021 18:18:20 +0800
Subject: [PATCH] 全网搜优酷兼容

---
 src/test/java/com/hxh/spring/test/SolrTest.java |  106 +++++++++++++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 103 insertions(+), 3 deletions(-)

diff --git a/src/test/java/com/hxh/spring/test/SolrTest.java b/src/test/java/com/hxh/spring/test/SolrTest.java
index eec3476..33d3665 100644
--- a/src/test/java/com/hxh/spring/test/SolrTest.java
+++ b/src/test/java/com/hxh/spring/test/SolrTest.java
@@ -2,13 +2,23 @@
 
 import com.yeshi.buwan.dao.HomeNoticeDao;
 import com.yeshi.buwan.dao.video.AlbumVideoMapDao;
+import com.yeshi.buwan.domain.VideoInfo;
+import com.yeshi.buwan.domain.solr.SolrAlbumVideo;
 import com.yeshi.buwan.domain.video.AlbumVideoMap;
+import com.yeshi.buwan.domain.video.InternetSearchVideo;
 import com.yeshi.buwan.dto.search.SolrResultDTO;
 import com.yeshi.buwan.dto.search.SolrVideoSearchFilter;
+import com.yeshi.buwan.pptv.PPTVUtil;
 import com.yeshi.buwan.service.imp.VideoInfoService;
 import com.yeshi.buwan.service.inter.juhe.AlbumVideoMapService;
+import com.yeshi.buwan.service.inter.juhe.InternetSearchVideoService;
 import com.yeshi.buwan.service.manager.SolrAlbumVideoDataManager;
 import com.yeshi.buwan.service.manager.SolrCommonVideoDataManager;
+import com.yeshi.buwan.service.manager.SolrInternetSearchVideoDataManager;
+import com.yeshi.buwan.util.Constant;
+import com.yeshi.buwan.util.StringUtil;
+import com.yeshi.buwan.util.factory.VideoInfoFactory;
+import com.yeshi.buwan.util.video.VideoConstant;
 import org.junit.Test;
 import org.junit.runner.RunWith;
 import org.springframework.data.mongodb.core.query.Criteria;
@@ -18,8 +28,7 @@
 import org.springframework.test.context.web.WebAppConfiguration;
 
 import javax.annotation.Resource;
-import java.util.Date;
-import java.util.List;
+import java.util.*;
 
 
 @RunWith(SpringJUnit4ClassRunner.class)
@@ -40,6 +49,12 @@
     private HomeNoticeDao homeNoticeDao;
     @Resource
     private AlbumVideoMapService albumVideoMapService;
+
+    @Resource
+    private SolrInternetSearchVideoDataManager solrInternetSearchVideoDataManager;
+
+    @Resource
+    private InternetSearchVideoService internetSearchVideoService;
 
     @Test
     public void test1() {
@@ -66,13 +81,98 @@
     }
 
 
+    private VideoInfo loadAlbumData(VideoInfo video) {
+        video.setShowType(1);
+        if (!StringUtil.isNullOrEmpty(video.getMainActor())) {
+            video.setMainActor("涓绘紨锛�" + video.getMainActor());
+        }
+
+        //璁剧疆tag
+        String tag = "";
+        if (!StringUtil.isNullOrEmpty(video.getYear())) {
+            tag += video.getYear() + "/";
+        }
+
+        if (video.getVideoType() != null) {
+            String vt = VideoConstant.getMainCategoryName(video.getVideoType().getId());
+            if (!StringUtil.isNullOrEmpty(vt)) {
+                tag += vt + "/";
+            }
+        }
+
+        if (!StringUtil.isNullOrEmpty(video.getArea())) {
+            tag += video.getArea() + "/";
+        }
+
+        if (tag.endsWith("/"))
+            tag = tag.substring(0, tag.length() - 1);
+        video.setTag(tag);
+
+        return video;
+    }
+
+
+    private int searchAll(String key) {
+        int page = 1;
+        int pageSize = 20;
+        SolrVideoSearchFilter filter = new SolrVideoSearchFilter();
+        filter.setKey(key);
+        filter.setContentType(1);
+        List<VideoInfo> localList = new ArrayList<>();
+        SolrResultDTO solrResultDTO = solrDataManager.find(filter, page, pageSize);
+        Set<String> albumSet = new HashSet<>();
+        if (solrResultDTO != null) {
+            for (SolrAlbumVideo sv : (List<SolrAlbumVideo>) solrResultDTO.getVideoList()) {
+                VideoInfo video = VideoInfoFactory.create(sv);
+                albumSet.add(video.getName() + "#" + video.getVideoType().getId());
+                video = loadAlbumData(video);
+                localList.add(video);
+            }
+        }
+
+
+        //鍏ㄧ綉鎼�
+        SolrResultDTO internetSearchResultDTO = solrInternetSearchVideoDataManager.find(filter, page, pageSize);
+        if (internetSearchResultDTO != null && internetSearchResultDTO.getVideoList().size() > 0) {
+            List<InternetSearchVideo> isvList = internetSearchResultDTO.getVideoList();
+            //鍒犻櫎鍓嶉潰鏈夌殑鏁版嵁锛屾牴鎹畆ootType涓庡悕绉扮瓫閫�
+            for (int i = 0; i < isvList.size(); i++) {
+                String uniqueId = isvList.get(i).getName() + "#" + isvList.get(i).getRootType();
+                if (albumSet.contains(uniqueId)) {
+                    isvList.remove(i);
+                    i--;
+                }
+            }
+            for (InternetSearchVideo sv : isvList) {
+                VideoInfo video = VideoInfoFactory.create(sv);
+                video = loadAlbumData(video);
+                localList.add(video);
+            }
+        }
+        return localList.size();
+    }
+
+
+    @Test
+    public void search() {
+
+    }
+
+
+    @Test
+    public void addInternet() {
+        InternetSearchVideo list = internetSearchVideoService.selectByPrimaryKey("59fafccefd20505b0aade6d9ba0e8ed1"); //listAll(1, 10);
+        solrInternetSearchVideoDataManager.saveOrUpdate(list);
+    }
+
+
     @Resource
     private AlbumVideoMapDao albumVideoMapDao;
 
     @Test
     public void test2() {
 
-        for(int i=0;i<100;i++) {
+        for (int i = 0; i < 100; i++) {
             Query query = new Query();
             query.addCriteria(Criteria.where("id").type(7));
             query.limit(100);

--
Gitblit v1.8.0