From f7b2baec57a19039ca85880bbba4e17fe27f0511 Mon Sep 17 00:00:00 2001 From: admin <weikou2014> Date: 星期三, 10 三月 2021 18:21:13 +0800 Subject: [PATCH] 删除冗余代码,初步优化首页的推荐专题,3.8.7之后在我的里面添加VIP分类 --- src/main/java/com/yeshi/buwan/service/imp/ResourceVideoService.java | 51 +++++++++++++++++++++++++++++++++++++++++++++++++-- 1 files changed, 49 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/yeshi/buwan/service/imp/ResourceVideoService.java b/src/main/java/com/yeshi/buwan/service/imp/ResourceVideoService.java index 34c5c95..9d71358 100644 --- a/src/main/java/com/yeshi/buwan/service/imp/ResourceVideoService.java +++ b/src/main/java/com/yeshi/buwan/service/imp/ResourceVideoService.java @@ -1,10 +1,11 @@ package com.yeshi.buwan.service.imp; -import java.util.ArrayList; -import java.util.List; +import java.util.*; +import com.yeshi.buwan.dao.VideoResourceMapExtraInfoDao; import com.yeshi.buwan.dao.juhe.iqiyi.VideoIqiyiDao; import com.yeshi.buwan.domain.VideoResource; +import com.yeshi.buwan.domain.VideoResourceMapExtraInfo; import com.yeshi.buwan.dto.mq.VideoExtraInfoChangeMQMsg; import com.yeshi.buwan.iqiyi.entity.VideoIqiyi; import com.yeshi.buwan.util.mq.CMQManager; @@ -27,6 +28,9 @@ @Autowired private ResourceVideoDao resourceVideoDao; + + @Resource + private VideoResourceMapExtraInfoDao videoResourceMapExtraInfoDao; @SuppressWarnings("unchecked") @@ -71,6 +75,43 @@ return getResourceList(videoInfoList); } + /** + * 鑾峰彇榛樿鐨勬簮 + * + * @param videoId + * @param avaiableResourceIds + * @return + */ + public VideoResource getDefaultVideoResource(String videoId, Set<Long> avaiableResourceIds) { + List<ResourceVideo> resourceVideoList = resourceVideoDao.list("FROM ResourceVideo rv where rv.video.id=? order by rv.resource.orderby desc", videoId); + //鍒犻櫎鏃犵敤鏉ユ簮 + for (int i = 0; i < resourceVideoList.size(); i++) { + if (!avaiableResourceIds.contains(Long.parseLong(resourceVideoList.get(i).getResource().getId())) || resourceVideoList.get(i).getResource() == null) { + resourceVideoList.remove(i--); + } + } + //鎺掑簭 + + List<VideoResource> resourceList = new ArrayList<>(); + + for (ResourceVideo rv : resourceVideoList) { + resourceList.add(rv.getResource()); + } + + Comparator<VideoResource> cm = new Comparator<VideoResource>() { + @Override + public int compare(VideoResource o1, VideoResource o2) { + return o2.getOrderby() - o1.getOrderby(); + } + }; + + Collections.sort(resourceList, cm); + if (resourceList.size() > 0) + return resourceList.get(0); + + return null; + } + /** * 鏍规嵁瑙嗛ID涓嶳esourceId鏌ヨ @@ -107,6 +148,12 @@ resourceVideoDao.delete(resourceVideo); CMQManager.getInstance().addVideoExtraInfoChanged(new VideoExtraInfoChangeMQMsg(VideoExtraInfoChangeMQMsg.TYPE_RESOURCE, videoId, VideoExtraInfoChangeMQMsg.ACTION_DELETE)); } + + VideoResourceMapExtraInfo extraInfo = new VideoResourceMapExtraInfo(videoId, Long.parseLong(resourceId)); + extraInfo = videoResourceMapExtraInfoDao.find(VideoResourceMapExtraInfo.class, extraInfo.getId()); + if (extraInfo != null) { + videoResourceMapExtraInfoDao.delete(extraInfo); + } } -- Gitblit v1.8.0