From c44a4296e8913080bff7ca0ee1b65356ed34ec3d Mon Sep 17 00:00:00 2001
From: admin <weikou2014>
Date: 星期三, 24 三月 2021 19:17:45 +0800
Subject: [PATCH] 集成优酷/腾讯搜索

---
 src/main/java/com/yeshi/buwan/service/imp/juhe/PPTVServiceImpl.java |   60 ++++++++++++++++++++++++++++++++++++++++++++++++++++--------
 1 files changed, 52 insertions(+), 8 deletions(-)

diff --git a/src/main/java/com/yeshi/buwan/service/imp/juhe/PPTVServiceImpl.java b/src/main/java/com/yeshi/buwan/service/imp/juhe/PPTVServiceImpl.java
index 79c066d..75f68e2 100644
--- a/src/main/java/com/yeshi/buwan/service/imp/juhe/PPTVServiceImpl.java
+++ b/src/main/java/com/yeshi/buwan/service/imp/juhe/PPTVServiceImpl.java
@@ -2,6 +2,7 @@
 
 import com.yeshi.buwan.dao.VideoInfoDao;
 import com.yeshi.buwan.dao.VideoResourceMapExtraInfoDao;
+import com.yeshi.buwan.dao.VideoTypeDao;
 import com.yeshi.buwan.dao.juhe.pptv.PPTVProgramDao;
 import com.yeshi.buwan.dao.juhe.pptv.PPTVSeriesDao;
 import com.yeshi.buwan.dao.juhe.pptv.PPTVSeriesProgramMapDao;
@@ -9,7 +10,9 @@
 import com.yeshi.buwan.dao.video.AlbumVideoMapDao;
 import com.yeshi.buwan.domain.VideoInfo;
 import com.yeshi.buwan.domain.VideoResourceMapExtraInfo;
+import com.yeshi.buwan.domain.VideoType;
 import com.yeshi.buwan.domain.video.AlbumVideoMap;
+import com.yeshi.buwan.dto.mq.PPTVMQMsg;
 import com.yeshi.buwan.pptv.PPTVQuery;
 import com.yeshi.buwan.pptv.PPTVUtil;
 import com.yeshi.buwan.pptv.entity.PPTVProgram;
@@ -19,6 +22,7 @@
 import com.yeshi.buwan.service.imp.CategoryVideoService;
 import com.yeshi.buwan.service.imp.ResourceVideoService;
 import com.yeshi.buwan.service.imp.VideoInfoService;
+import com.yeshi.buwan.service.imp.VideoTypeService;
 import com.yeshi.buwan.service.inter.juhe.PPTVService;
 import com.yeshi.buwan.util.mq.CMQManager;
 import org.springframework.stereotype.Service;
@@ -49,6 +53,9 @@
     private CategoryVideoService categoryVideoService;
 
     @Resource
+    private VideoTypeService videoTypeService;
+
+    @Resource
     private VideoResourceMapExtraInfoDao videoResourceMapExtraInfoDao;
 
 
@@ -59,6 +66,13 @@
             return;
 
         VideoInfo newVideoInfo = PPTVUtil.convertToVideoInfo(series);
+        if (newVideoInfo == null)
+            return;
+
+        VideoType videoType = videoTypeService.getVideoType(newVideoInfo.getVideoType().getId());
+        if (videoType.getParent() != null)
+            newVideoInfo.setVideoType(videoType.getParent());
+
         VideoPPTVMap videoPPTV = videoPPTVMapDao.selectByInfoId(series.getInfoID());
         if (videoPPTV != null) {//娓犻亾瑙嗛宸茬粡瀛樺湪
             VideoInfo videoInfo = videoInfoService.getVideoInfo(videoPPTV.getVideoId() + "");
@@ -79,7 +93,7 @@
             }
         } else {//瑙嗛涓嶅瓨鍦�
             //鍒ゆ柇2涓棰戝疄浣撴槸鍚︿负鍚屼竴瑙嗛
-            VideoInfo oldVideo = videoInfoService.getExistSameVideo(newVideoInfo);
+            VideoInfo oldVideo = videoInfoService.getExistSameVideoWithDirector(newVideoInfo);
             if (oldVideo == null) {
                 //娣诲姞瑙嗛
                 Serializable id = videoInfoDao.save(newVideoInfo);
@@ -99,6 +113,7 @@
 
             //鍔犲叆涓撹緫瑙嗛鏄犲皠
             AlbumVideoMap map = new AlbumVideoMap();
+            map.setId(newVideoInfo.getId());
             map.setCreateTime(new Date());
             map.setVideoId(newVideoInfo.getId());
             map.setRootVideoType(newVideoInfo.getVideoType().getId());
@@ -129,7 +144,7 @@
         //娣诲姞瑙嗛鏉ユ簮鏄犲皠
         resourceVideoService.addVideoResource(newVideoInfo.getId(), PPTVUtil.RESOURCE_ID + "");
         //娣诲姞瑙嗛鍒嗙被鏄犲皠
-        categoryVideoService.addCategoryVideo(newVideoInfo.getId(), newVideoInfo.getVideoType().getId());
+        categoryVideoService.addCategoryVideo(newVideoInfo.getId(), videoType.getId());
         CMQManager.getInstance().addSolrMsg(newVideoInfo.getId());
     }
 
@@ -139,7 +154,7 @@
         VideoPPTVMap map = videoPPTVMapDao.selectByInfoId(infoId);
         if (map == null)
             return;
-        videoPPTVMapDao.delete(map.getVideoId());
+        videoPPTVMapDao.deleteByPrimaryKey(map.getVideoId());
         resourceVideoService.delete(map.getVideoId() + "", PPTVUtil.RESOURCE_ID + "");
     }
 
@@ -182,7 +197,11 @@
     @Override
     public void save(List<PPTVSeries> seriesList) {
         for (PPTVSeries series : seriesList) {
-            save(series);
+            try {
+                save(series);
+            } catch (Exception e) {
+
+            }
         }
     }
 
@@ -201,12 +220,15 @@
                     series.setCreateTime(new Date());
                     pptvSeriesDao.save(series);
                     //澶勭悊鏂板/鏀瑰彉鐨勫墽闆嗕俊鎭�
-//                    CMQManager.getInstance().addPPTVSeriesUpdateMsg(new PPTVMQMsg(series.getInfoID(), PPTVMQMsg.TYPE_ADD_OR_UPDATE));
+                    CMQManager.getInstance().addPPTVSeriesUpdateMsg(new PPTVMQMsg(series.getInfoID(), PPTVMQMsg.TYPE_ADD_OR_UPDATE));
                 }
+
+                System.out.println("addorupdate:"+series.getName());
 
                 break;
             //鍒犻櫎
             case "del":
+                System.out.println("delete:"+series.getName());
                 deleteSeries(series);
                 infoIds.add(series.getInfoID());
                 break;
@@ -222,7 +244,7 @@
 
         for (String id : infoIds) {
             //澶勭悊鍒犻櫎鐨勫墽闆嗕俊鎭�
-//            CMQManager.getInstance().addPPTVSeriesUpdateMsg(new PPTVMQMsg(id, PPTVMQMsg.TYPE_DELETE));
+            CMQManager.getInstance().addPPTVSeriesUpdateMsg(new PPTVMQMsg(id, PPTVMQMsg.TYPE_DELETE));
         }
 
 
@@ -237,6 +259,28 @@
         return getSeriesDetail(map.getInfoId());
     }
 
+    @Override
+    public PPTVProgram selectProgramById(String id) {
+        return pptvProgramDao.get(id);
+    }
+
+    @Override
+    public PPTVSeriesProgramMap selectMapByCode(String seriesCode, String programCode) {
+        PPTVQuery query = new PPTVQuery();
+        query.programCode = programCode;
+        query.seriesCode = seriesCode;
+        query.count = 1;
+        List<PPTVSeriesProgramMap> list = pptvSeriesProgramMapDao.list(query);
+        if (list == null || list.size() == 0)
+            return null;
+        return list.get(0);
+    }
+
+    @Override
+    public VideoPPTVMap selectVideoPPTVMapByInfoId(String infoId) {
+        return videoPPTVMapDao.selectByInfoId(infoId);
+    }
+
     /**
      * 鍒犻櫎鍓ч泦
      *
@@ -246,7 +290,7 @@
         PPTVQuery query = new PPTVQuery();
         query.seriesCode = series.getSeriesCode();
         Set<String> seriesCodeSet = deleteMap(query);
-        pptvSeriesDao.delete(series.getInfoID());
+        pptvSeriesDao.deleteByPrimaryKey(series.getInfoID());
     }
 
 
@@ -285,7 +329,7 @@
         PPTVQuery query = new PPTVQuery();
         query.programCode = program.getProgramCode();
         Set<String> infoIdSet = deleteMap(query);
-        pptvProgramDao.delete(program.getProgramCode());
+        pptvProgramDao.deleteByPrimaryKey(program.getProgramCode());
         return infoIdSet;
     }
 

--
Gitblit v1.8.0