From d98c8bd9d1d4f749bd59aa2d3e0905db28c394a6 Mon Sep 17 00:00:00 2001
From: admin <weikou2014>
Date: 星期三, 10 三月 2021 18:24:19 +0800
Subject: [PATCH] ArrayList实例化优化

---
 src/main/java/com/yeshi/buwan/service/imp/juhe/PPTVServiceImpl.java |   50 +++++++++++++++++++++++++++++++++++++++++++++-----
 1 files changed, 45 insertions(+), 5 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 d2c48f3..3dfc8f4 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
@@ -10,6 +10,7 @@
 import com.yeshi.buwan.domain.VideoInfo;
 import com.yeshi.buwan.domain.VideoResourceMapExtraInfo;
 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;
@@ -79,7 +80,7 @@
             }
         } else {//瑙嗛涓嶅瓨鍦�
             //鍒ゆ柇2涓棰戝疄浣撴槸鍚︿负鍚屼竴瑙嗛
-            VideoInfo oldVideo = videoInfoService.getExistSameVideo(newVideoInfo);
+            VideoInfo oldVideo = videoInfoService.getExistSameVideoWithDirector(newVideoInfo);
             if (oldVideo == null) {
                 //娣诲姞瑙嗛
                 Serializable id = videoInfoDao.save(newVideoInfo);
@@ -108,7 +109,7 @@
             //鍔犲叆鏄犲皠
             VideoPPTVMap vi = new VideoPPTVMap();
             vi.setInfoId(series.getInfoID());
-            vi.setVideoId(Long.parseLong(newVideoInfo.getId()));
+            vi.setVideoId(newVideoInfo.getId());
             vi.setCreateTime(new Date());
             videoPPTVMapDao.save(vi);
         }
@@ -139,7 +140,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 + "");
     }
 
@@ -167,6 +168,14 @@
                 programList.addAll(tempList);
             }
         }
+        Comparator<PPTVProgram> comparator = new Comparator<PPTVProgram>() {
+            @Override
+            public int compare(PPTVProgram o1, PPTVProgram o2) {
+                return o1.getRank() - o2.getRank();
+            }
+        };
+        Collections.sort(programList, comparator);
+
         series.setSeries(programList);
         return series;
     }
@@ -193,7 +202,7 @@
                     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));
                 }
 
                 break;
@@ -214,12 +223,43 @@
 
         for (String id : infoIds) {
             //澶勭悊鍒犻櫎鐨勫墽闆嗕俊鎭�
-//            CMQManager.getInstance().addPPTVSeriesUpdateMsg(new PPTVMQMsg(id, PPTVMQMsg.TYPE_DELETE));
+            CMQManager.getInstance().addPPTVSeriesUpdateMsg(new PPTVMQMsg(id, PPTVMQMsg.TYPE_DELETE));
         }
 
 
     }
 
+    @Override
+    public PPTVSeries getSeriesDetailByVideoId(String videoId) {
+        VideoPPTVMap map = videoPPTVMapDao.get(videoId);
+        if (map == null) {
+            return null;
+        }
+        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);
+    }
+
     /**
      * 鍒犻櫎鍓ч泦
      *

--
Gitblit v1.8.0