From b37275dba6b782bf3bb3817c4504f6cdef1bef7c Mon Sep 17 00:00:00 2001 From: admin <weikou2014> Date: 星期四, 18 三月 2021 18:38:51 +0800 Subject: [PATCH] APP首页顶部标签兼容 --- src/main/java/com/yeshi/buwan/service/imp/juhe/FunTV2ServiceImpl.java | 77 +++++++++++++++++++------------------- 1 files changed, 39 insertions(+), 38 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..d11fe9d 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; @@ -106,7 +107,7 @@ } } else {//瑙嗛涓嶅瓨鍦� //鍒ゆ柇2涓棰戝疄浣撴槸鍚︿负鍚屼竴瑙嗛 - VideoInfo oldVideo = videoInfoService.getExistSameVideo(newVideoInfo); + VideoInfo oldVideo = videoInfoService.getExistSameVideoWithTime(newVideoInfo); if (oldVideo == null) { //娣诲姞瑙嗛 Serializable id = videoInfoDao.save(newVideoInfo); @@ -126,6 +127,7 @@ //鍔犲叆涓撹緫瑙嗛鏄犲皠 AlbumVideoMap map = new AlbumVideoMap(); + map.setId(newVideoInfo.getId()); map.setCreateTime(new Date()); map.setVideoId(newVideoInfo.getId()); map.setRootVideoType(newVideoInfo.getVideoType().getId()); @@ -151,29 +153,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,17 +218,17 @@ } @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); pu.setResource(vr); pu.setAid(video2.getMediaId()); pu.setVid(video2.getId()); - + pu.setCode(video2.getCeCode()); if (t == FunTVUtil2.PLAY_NONE) { pu.setUrl(""); } else { @@ -240,28 +258,11 @@ VideoFunTV2 videoFunTV2 = videoFunTV2Dao.selectByMediaId(mediaId); if (videoFunTV2 == null) return; - - List<ResourceVideo> resourceVideoList = resourceVideoService.getResourceList(videoFunTV2.getVideoId() + ""); - for (int i = 0; i < resourceVideoList.size(); i++) { - ResourceVideo rv = resourceVideoList.get(i); - if (rv.getResource() != null && Integer.parseInt(rv.getResource().getId()) == FunTVUtil2.RESOURCE_ID) { - //鍒犻櫎璧勬簮鏄犲皠 - resourceVideoService.delete(rv); - resourceVideoList.remove(i); - i--; - } - } - - if (resourceVideoList.size() == 0) { - //闅愯棌瑙嗛 - videoInfoService.hiddenVideo(videoFunTV2.getVideoId() + ""); - //鏇存柊鎼滅储寮曟搸 - CMQManager.getInstance().addSolrMsg(videoFunTV2.getVideoId() + ""); - } - + videoFunTV2Dao.deleteByVideoId(videoFunTV2.getVideoId()); + resourceVideoService.delete(videoFunTV2.getVideoId()+"",FunTVUtil2.RESOURCE_ID+""); //鍒犻櫎濯掍綋涓庡獟浣撳搴旂殑瑙嗛 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