From c3c6bbcd290da994c152495723c75a869185660f Mon Sep 17 00:00:00 2001
From: wzy <wzy19931122ai@163.com>
Date: Fri, 17 Dec 2021 20:24:27 +0800
Subject: [PATCH] fix
---
src/main/resources/mapper/modules/VideoHistoryMapper.xml | 3 +++
src/main/java/cc/mrbird/febs/video/mapper/VideoHistoryMapper.java | 2 ++
src/main/java/cc/mrbird/febs/video/service/impl/VideoMasterInfoServiceImpl.java | 16 +++++++++++-----
3 files changed, 16 insertions(+), 5 deletions(-)
diff --git a/src/main/java/cc/mrbird/febs/video/mapper/VideoHistoryMapper.java b/src/main/java/cc/mrbird/febs/video/mapper/VideoHistoryMapper.java
index 65919a8..a133fbb 100644
--- a/src/main/java/cc/mrbird/febs/video/mapper/VideoHistoryMapper.java
+++ b/src/main/java/cc/mrbird/febs/video/mapper/VideoHistoryMapper.java
@@ -9,4 +9,6 @@
public interface VideoHistoryMapper extends BaseMapper<VideoHistoryEntity> {
int delVideoHistoryByIdsAndMemberId(@Param("list")List<String> idList, @Param("memberId")Long id);
+
+ VideoHistoryEntity selectByMemberIdAndVideoId(@Param("memberId") Long memberId, @Param("videoId") Long videoId);
}
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 d0c217f..fcef6c5 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
@@ -223,11 +223,17 @@
videoInfoVo.setTimeLength(currentItem.getTimeLength());
if (loginUser != null) {
- VideoHistoryEntity history = new VideoHistoryEntity();
- history.setVideoId(videoInfoEntity.getId());
- history.setMemberId(loginUser.getId());
- history.setVideoItemId(currentItem.getId());
- this.videoHistoryMapper.insert(history);
+ 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;
diff --git a/src/main/resources/mapper/modules/VideoHistoryMapper.xml b/src/main/resources/mapper/modules/VideoHistoryMapper.xml
index 6a68928..151c0fe 100644
--- a/src/main/resources/mapper/modules/VideoHistoryMapper.xml
+++ b/src/main/resources/mapper/modules/VideoHistoryMapper.xml
@@ -13,4 +13,7 @@
</delete>
+ <select id="selectByMemberIdAndVideoId" resultType="cc.mrbird.febs.video.entity.VideoHistoryEntity">
+ select * from video_history where member_id=#{memberId} and video_id=#{videoId}
+ </select>
</mapper>
\ No newline at end of file
--
Gitblit v1.9.1