From f537abe9f3646c739beaf15076246a2f71a347e9 Mon Sep 17 00:00:00 2001 From: admin <weikou2014> Date: 星期四, 20 二月 2025 16:57:55 +0800 Subject: [PATCH] IOS广告增加区域屏蔽 --- src/main/java/com/yeshi/buwan/service/imp/VideoInfoService.java | 72 +++++++++++++++++++++++++---------- 1 files changed, 51 insertions(+), 21 deletions(-) diff --git a/src/main/java/com/yeshi/buwan/service/imp/VideoInfoService.java b/src/main/java/com/yeshi/buwan/service/imp/VideoInfoService.java index 647ee25..fdf6028 100644 --- a/src/main/java/com/yeshi/buwan/service/imp/VideoInfoService.java +++ b/src/main/java/com/yeshi/buwan/service/imp/VideoInfoService.java @@ -1,33 +1,27 @@ package com.yeshi.buwan.service.imp; -import java.io.Serializable; -import java.util.*; - -import javax.annotation.Resource; - -import com.yeshi.buwan.util.HibernateSessionFactory; +import com.yeshi.buwan.dao.CategoryVideoDao; +import com.yeshi.buwan.dao.VideoInfoDao; +import com.yeshi.buwan.domain.*; +import com.yeshi.buwan.domain.entity.PlayUrl; +import com.yeshi.buwan.dto.mq.VideoDataChangeMQMsg; import com.yeshi.buwan.util.StringUtil; -import com.yeshi.buwan.util.TimeUtil; -import com.yeshi.buwan.util.mq.CMQManager; +import com.yeshi.buwan.util.mq.rabbit.RabbitmqManager; import com.yeshi.buwan.util.video.VideoConstant; import org.hibernate.HibernateException; import org.hibernate.SQLQuery; import org.hibernate.Session; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.cache.annotation.Cacheable; import org.springframework.orm.hibernate4.HibernateCallback; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; -import com.yeshi.buwan.dao.CategoryVideoDao; -import com.yeshi.buwan.dao.VideoInfoDao; -import com.yeshi.buwan.domain.CategoryVideo; -import com.yeshi.buwan.domain.ResourceVideo; -import com.yeshi.buwan.domain.VideoDetailInfo; -import com.yeshi.buwan.domain.VideoInfo; -import com.yeshi.buwan.domain.VideoResource; -import com.yeshi.buwan.domain.VideoType; -import com.yeshi.buwan.domain.VideoUrl; -import com.yeshi.buwan.domain.entity.PlayUrl; +import javax.annotation.Resource; +import java.io.Serializable; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; @Service public class VideoInfoService { @@ -44,9 +38,24 @@ @Resource private VideoResourceService videoResourceService; + @Resource + private ClearService clearService; + + @Resource + private RabbitmqManager rabbitmqManager; + + + + @Transactional public VideoInfo getVideoInfo(String vid) { return videoInfoDao.find(VideoInfo.class, vid); } + + @Cacheable(value = "videoCache", key = "'getVideoInfoDetail-'+#vid") + public VideoInfo getVideoInfoCache(String vid) { + return videoInfoDao.find(VideoInfo.class, vid); + } + @SuppressWarnings("unchecked") public List<VideoInfo> simpleRandomVideoList(final int i) { @@ -74,12 +83,14 @@ } @Transactional - public void save(VideoInfo videoInfo) { + public void saveWithCategoryAndResource(VideoInfo videoInfo) { videoInfoDao.save(videoInfo); + rabbitmqManager.addVideoDataChanged(new VideoDataChangeMQMsg(VideoDataChangeMQMsg.TYPE_VIDEO_INFO, videoInfo.getId(), VideoDataChangeMQMsg.ACTION_ADD)); CategoryVideo ca = new CategoryVideo(); ca.setVideo(videoInfo); ca.setVideoType(videoInfo.getVideoType()); categoryVideoDao.create(ca); + rabbitmqManager.addVideoDataChanged(new VideoDataChangeMQMsg(VideoDataChangeMQMsg.TYPE_VIDEO_CATEGORY, videoInfo.getId(), VideoDataChangeMQMsg.ACTION_ADD)); List<VideoResource> resourceList = videoInfo.getResourceList(); ResourceVideo rs = null; for (VideoResource videoResource : resourceList) { @@ -88,6 +99,21 @@ rs.setVideo(videoInfo); resourceVideoService.save(rs); } + rabbitmqManager.addVideoDataChanged(new VideoDataChangeMQMsg(VideoDataChangeMQMsg.TYPE_VIDEO_RESOURCE, videoInfo.getId(), VideoDataChangeMQMsg.ACTION_ADD)); + } + + + @Transactional + public Serializable save(VideoInfo videoInfo) { + Serializable id = videoInfoDao.save(videoInfo); + rabbitmqManager.addVideoDataChanged(new VideoDataChangeMQMsg(VideoDataChangeMQMsg.TYPE_VIDEO_INFO, videoInfo.getId(), VideoDataChangeMQMsg.ACTION_ADD)); + return id; + } + + @Transactional + public void update(VideoInfo videoInfo) { + videoInfoDao.update(videoInfo); + rabbitmqManager.addVideoDataChanged(new VideoDataChangeMQMsg(VideoDataChangeMQMsg.TYPE_VIDEO_INFO, videoInfo.getId(), VideoDataChangeMQMsg.ACTION_UPDATE)); } public List<VideoDetailInfo> getVideoDetailList(String videoid, VideoResource vr, int page, int pageSize) { @@ -184,6 +210,7 @@ return null; } + /** * 鏍规嵁鍚嶇О涓庝富婕� * @@ -198,7 +225,9 @@ VideoInfo vi = list.get(i); if (getSameDirectorOrActorCount(vi.getDirector(), newVideoInfo.getDirector()) > 0 || getSameDirectorOrActorCount(vi.getMainActor(), newVideoInfo.getMainActor()) > 0) { // if (getSameDirectorOrActorCount(vi.getMainActor(), newVideoInfo.getMainActor()) > 0) { - return list.get(i); + //涓诲垎绫讳竴鏍� + if (vi.getVideoType() != null && newVideoInfo.getVideoType() != null && vi.getVideoType().getId() == newVideoInfo.getVideoType().getId()) + return list.get(i); // } } } @@ -237,6 +266,7 @@ return videoInfoDao.listByVideoIds(videoIds); } + @Transactional public void hiddenVideo(String id) { VideoInfo videoInfo = videoInfoDao.find(VideoInfo.class, id); if (videoInfo != null && "1".equalsIgnoreCase(videoInfo.getShow())) { @@ -307,7 +337,7 @@ } if (needUpdateSolr) { - CMQManager.getInstance().addSolrMsg(videoInfo.getId()); + rabbitmqManager.addSolrMsg(videoInfo.getId()); } -- Gitblit v1.8.0