From 865721523230a003a5aeccaf8eab031a65601932 Mon Sep 17 00:00:00 2001 From: Helius <wangdoubleone@gmail.com> Date: Mon, 20 Dec 2021 11:40:38 +0800 Subject: [PATCH] fix --- src/main/java/cc/mrbird/febs/video/service/impl/VideoMasterInfoServiceImpl.java | 53 ++++++++++++++++++++++++++++++++++++++++------------- 1 files changed, 40 insertions(+), 13 deletions(-) diff --git a/src/main/java/cc/mrbird/febs/video/service/impl/VideoMasterInfoServiceImpl.java b/src/main/java/cc/mrbird/febs/video/service/impl/VideoMasterInfoServiceImpl.java index 81ba9de..8f40ed5 100644 --- a/src/main/java/cc/mrbird/febs/video/service/impl/VideoMasterInfoServiceImpl.java +++ b/src/main/java/cc/mrbird/febs/video/service/impl/VideoMasterInfoServiceImpl.java @@ -13,6 +13,7 @@ import cc.mrbird.febs.video.dto.VideoListDto; import cc.mrbird.febs.video.entity.*; import cc.mrbird.febs.video.mapper.*; +import cc.mrbird.febs.video.service.IVideoMasterDataService; import cc.mrbird.febs.video.service.IVideoMasterInfoService; import cc.mrbird.febs.video.vo.VideoInfoItemVo; import cc.mrbird.febs.video.vo.VideoInfoVo; @@ -48,6 +49,7 @@ private final VideoCommentLikeMapper videoCommentLikeMapper; private final VideoHistoryMapper videoHistoryMapper; private final VideoMemberMapper videoMemberMapper; + private final IVideoMasterDataService videoMasterDataService; @Override public IPage<VideoMasterInfoEntity> findInPage(VideoMasterInfoEntity info, QueryRequest request) { @@ -179,20 +181,8 @@ videoInfoVo.setCollectCnt(data.getCollectCnt()); videoInfoVo.setStarCnt(data.getStarCnt()); - if (AppContants.FLAG_INT_N.equals(videoInfoEntity.getIsFree())) { - if (loginUser == null) { - videoInfoVo.setNotLogin(AppContants.FLAG_INT_N); - return videoInfoVo; - } - - VideoMemberEntity member = this.videoMemberMapper.selectById(loginUser.getId()); - if (AppContants.FLAG_INT_N.equals(member.getIsVip())) { - videoInfoVo.setNotVip(AppContants.FLAG_INT_N); - return videoInfoVo; - } - } - if (loginUser != null) { + // 是否点赞 VideoCommentLikeEntity commentLike = this.videoCommentLikeMapper.selectCommentLikeByMemberIdAndRelateId(loginUser.getId(), videoInfoEntity.getId()); if (commentLike != null) { videoInfoVo.setIsLike(1); @@ -200,6 +190,7 @@ videoInfoVo.setIsLike(2); } + // 是否收藏 VideoCollectionEntity collection = this.videoCollectionMapper.selectVideoCollectionByVideoIdAndMemberId(videoInfoEntity.getId(), loginUser.getId()); if (collection != null) { videoInfoVo.setIsCollect(1); @@ -207,6 +198,23 @@ videoInfoVo.setIsCollect(2); } } + + // 视频是否需要vip + if (AppContants.FLAG_INT_N.equals(videoInfoEntity.getIsFree())) { + // 判断用户是否登录 + if (loginUser == null) { + videoInfoVo.setNotLogin(AppContants.FLAG_INT_N); + return videoInfoVo; + } + + // 判断用户是否为vip + VideoMemberEntity member = this.videoMemberMapper.selectById(loginUser.getId()); + if (AppContants.FLAG_INT_N.equals(member.getIsVip())) { + videoInfoVo.setNotVip(AppContants.FLAG_INT_N); + return videoInfoVo; + } + } + VideoMasterItemsEntity currentItem = this.videoMasterItemsMapper.selectItemByVideoIdAndItemId(videoId, itemId); if (currentItem == null) { @@ -220,6 +228,25 @@ videoInfoVo.setThumb(currentItem.getThumb()); videoInfoVo.setItemId(currentItem.getId()); videoInfoVo.setTimeLength(currentItem.getTimeLength()); + + // 增加播放量 + this.videoMasterDataService.modifyVideoData(videoInfoEntity.getId(), 1, 1); + + // 历史记录 + if (loginUser != null) { + VideoHistoryEntity history = this.videoHistoryMapper.selectByMemberIdAndVideoId(loginUser.getId(), videoInfoEntity.getId()); + if (history == null) { + history = new VideoHistoryEntity(); + history.setVideoId(videoInfoEntity.getId()); + history.setMemberId(loginUser.getId()); + history.setVideoItemId(currentItem.getId()); + this.videoHistoryMapper.insert(history); + } else { + history.setVideoItemId(currentItem.getId()); + this.videoHistoryMapper.updateById(history); + } + } + return videoInfoVo; } -- Gitblit v1.9.1