Selaa lähdekoodia

视频源更新后。所有营期的视频同步更新

luolinsong 1 viikko sitten
vanhempi
commit
ab2318a4bc

+ 5 - 1
fs-admin/src/main/java/com/fs/course/controller/FsVideoResourceController.java

@@ -12,7 +12,9 @@ import com.fs.common.core.page.TableDataInfo;
 import com.fs.common.enums.BusinessType;
 import com.fs.common.utils.ServletUtils;
 import com.fs.course.config.CourseConfig;
+import com.fs.course.domain.FsUserCourseVideo;
 import com.fs.course.domain.FsVideoResource;
+import com.fs.course.service.IFsUserCourseVideoService;
 import com.fs.course.service.IFsVideoResourceService;
 import com.fs.course.vo.FsVideoResourceVO;
 import com.fs.framework.web.service.TokenService;
@@ -36,7 +38,8 @@ import java.util.stream.Collectors;
 public class FsVideoResourceController extends BaseController {
 
     private final IFsVideoResourceService fsVideoResourceService;
-
+    @Autowired
+    private IFsUserCourseVideoService fsUserCourseVideoService;
     @Autowired
     private TokenService tokenService;
 
@@ -112,6 +115,7 @@ public class FsVideoResourceController extends BaseController {
     {
         fsVideoResource.setUpdateTime(LocalDateTime.now());
         fsVideoResourceService.updateById(fsVideoResource);
+        fsUserCourseVideoService.updateVideoByVideoUrl(fsVideoResource.getVideoUrl());
         return AjaxResult.success();
     }
 

+ 3 - 4
fs-service/src/main/java/com/fs/course/mapper/FsUserCourseVideoMapper.java

@@ -1,10 +1,7 @@
 package com.fs.course.mapper;
 
 import com.fs.course.domain.FsUserCourseVideo;
-import com.fs.course.param.CourseVideoUpdates;
-import com.fs.course.param.FsCourseListBySidebarParam;
-import com.fs.course.param.FsUserCourseVideoListUParam;
-import com.fs.course.param.FsUserCourseVideoParam;
+import com.fs.course.param.*;
 import com.fs.course.param.newfs.UserCourseVideoPageParam;
 import com.fs.course.vo.*;
 import com.fs.course.vo.newfs.FsUserCourseVideoPageListVO;
@@ -60,6 +57,8 @@ public interface FsUserCourseVideoMapper
      * @return 结果
      */
     public int updateFsUserCourseVideo(FsUserCourseVideo fsUserCourseVideo);
+    int updateVideoByVideoUrl(@Param("videoUrl") String videoUrl, @Param("ids") List<Long> ids);
+    List<FsUserCourseVideo> selectByVideoUrl(String videoUrl);
 
     @Update("<script> " +
             "update fs_user_course_video set red_packet_money=#{data.redPacketMoney}, random_red_packet_rules = #{data.randomRedPacketRules} where course_id=#{data.courseId} " +

+ 2 - 2
fs-service/src/main/java/com/fs/course/service/IFsUserCourseVideoService.java

@@ -1,6 +1,6 @@
 package com.fs.course.service;
 
-import com.baomidou.mybatisplus.extension.service.IService;
+import com.fs.common.core.domain.AjaxResult;
 import com.fs.common.core.domain.R;
 import com.fs.common.core.domain.ResponseResult;
 import com.fs.course.domain.FsUserCourseVideo;
@@ -17,7 +17,6 @@ import com.fs.course.vo.newfs.FsUserVideoListVO;
 import com.fs.his.domain.FsUser;
 import com.fs.his.vo.OptionsVO;
 import com.fs.qw.param.FsUserCourseRedPageParam;
-import com.fs.sop.domain.QwSopTempDay;
 
 import java.util.List;
 import java.util.Map;
@@ -195,6 +194,7 @@ public interface IFsUserCourseVideoService
     R checkUserInfo(long l);
 
     R updateVideo();
+    AjaxResult updateVideoByVideoUrl(String videoUrl);
 
     R checkUserInfo(Long userId);
 

+ 12 - 1
fs-service/src/main/java/com/fs/course/service/impl/FsUserCourseVideoServiceImpl.java

@@ -10,6 +10,7 @@ import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.fs.common.BeanCopyUtils;
 import com.fs.common.constant.FsConstants;
+import com.fs.common.core.domain.AjaxResult;
 import com.fs.common.core.domain.R;
 import com.fs.common.core.domain.ResponseResult;
 import com.fs.common.core.domain.entity.SysDictData;
@@ -3321,7 +3322,17 @@ public class FsUserCourseVideoServiceImpl implements IFsUserCourseVideoService
                 videoDuration/60, config.getMinutesNum()));
     }
 
-
+    @Override
+    public AjaxResult updateVideoByVideoUrl(String videoUrl) {
+        List<FsUserCourseVideo> videoList = fsUserCourseVideoMapper.selectByVideoUrl(videoUrl);
+        if (CollectionUtils.isEmpty(videoList)){
+            log.warn("根据videoUrl:{} 未查询到fs_user_course_video表数据",videoUrl);
+            return AjaxResult.success();
+        }
+        List<Long> idList = videoList.stream().map(FsUserCourseVideo::getVideoId).collect(Collectors.toList());
+        fsUserCourseVideoMapper.updateVideoByVideoUrl(videoUrl, idList);
+        return AjaxResult.success();
+    }
     @Override
     public R updateVideo() {
         FsUserCourseVideo param = new FsUserCourseVideo();

+ 11 - 0
fs-service/src/main/resources/mapper/course/FsUserCourseVideoMapper.xml

@@ -239,6 +239,17 @@
         </trim>
         where video_id = #{videoId}
     </update>
+    
+    <select id="selectByVideoUrl" parameterType="String" resultMap="FsUserCourseVideoResult">
+        select v.* from fs_user_course_video v where v.is_del = 0 and  v.video_url = #{videoUrl} 
+    </select>
+    <update id="updateVideoByVideoUrl" >
+        update fs_user_course_video set video_url = #{videoUrl} 
+        where video_id in 
+        <foreach item="videoId" collection="ids" open="(" separator="," close=")">
+            #{videoId}
+        </foreach>
+    </update>
 
     <update id="deleteFsUserCourseVideoByVideoId" parameterType="String">
         update fs_user_course_video set is_del = 1 where video_id = #{videoId}