Browse Source

company-app 新增今日课程列表接口

Long 16 hours ago
parent
commit
e5cf416eb4

+ 23 - 0
fs-company-app/src/main/java/com/fs/app/controller/FsUserCourseVideoController.java

@@ -27,10 +27,13 @@ import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.BeanUtils;
 import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
 import org.springframework.web.bind.annotation.*;
+
 import java.io.InputStream;
 import java.io.InputStream;
+import java.time.LocalDate;
 import java.util.HashMap;
 import java.util.HashMap;
 import java.util.List;
 import java.util.List;
 import java.util.Map;
 import java.util.Map;
+import java.util.Objects;
 
 
 
 
 @Api("课程库相关接口")
 @Api("课程库相关接口")
@@ -181,4 +184,24 @@ public class FsUserCourseVideoController extends AppBaseController {
 //        map.put("url", url);
 //        map.put("url", url);
 //        return R.ok(map);
 //        return R.ok(map);
 //    }
 //    }
+
+    @Login
+    @GetMapping("/todayCourseList")
+    @ApiOperation("今日课程")
+    public ResponseResult<PageInfo<FsUserCourseVideoPageListVO>> todayCourseList(@RequestParam(defaultValue = "1") Integer pageNum,
+                                                                                 @RequestParam(defaultValue = "10") Integer pageSize) {
+        Long companyId = getCompanyId();
+        if (Objects.isNull(companyId)) {
+            ResponseResult.fail(400, "未获取到公司ID,请重新登录后再试");
+        }
+
+        Map<String, Object> params = new HashMap<>();
+        params.put("companyId", companyId);
+        params.put("dayDate", LocalDate.now());
+
+        PageHelper.startPage(pageNum, pageSize);
+        List<FsUserCourseVideoPageListVO> list = fsUserCourseVideoService.selectCourseVideoListByMap(params);
+        PageInfo<FsUserCourseVideoPageListVO> pageInfo = new PageInfo<>(list);
+        return ResponseResult.ok(pageInfo);
+    }
 }
 }

+ 7 - 0
fs-service-system/src/main/java/com/fs/course/mapper/FsUserCourseVideoMapper.java

@@ -193,4 +193,11 @@ public interface FsUserCourseVideoMapper
             "order by v.video_id asc " +
             "order by v.video_id asc " +
             "</script>")
             "</script>")
     List<FsCourseVideoListBySidebarVO> getFsCourseVideoListBySidebar(@Param("data") FsCourseListBySidebarParam param);
     List<FsCourseVideoListBySidebarVO> getFsCourseVideoListBySidebar(@Param("data") FsCourseListBySidebarParam param);
+
+    /**
+     * 查询课程列表
+     * @param params 参数
+     * @return  list
+     */
+    List<FsUserCourseVideoPageListVO> selectFsUserCourseVideoListByMap(@Param("params") Map<String, Object> params);
 }
 }

+ 7 - 0
fs-service-system/src/main/java/com/fs/course/service/IFsUserCourseVideoService.java

@@ -162,4 +162,11 @@ public interface IFsUserCourseVideoService
     List<FsCourseVideoListBySidebarVO> getFsCourseVideoListBySidebar(FsCourseListBySidebarParam param);
     List<FsCourseVideoListBySidebarVO> getFsCourseVideoListBySidebar(FsCourseListBySidebarParam param);
 
 
     R createMiniLink(FsCourseLinkMiniParam param);
     R createMiniLink(FsCourseLinkMiniParam param);
+
+    /**
+     * 查询课程列表
+     * @param params 参数
+     * @return  list
+     */
+    List<FsUserCourseVideoPageListVO> selectCourseVideoListByMap(Map<String, Object> params);
 }
 }

+ 10 - 0
fs-service-system/src/main/java/com/fs/course/service/impl/FsUserCourseVideoServiceImpl.java

@@ -1239,6 +1239,16 @@ public class FsUserCourseVideoServiceImpl implements IFsUserCourseVideoService
         return R.ok().put("data", linkByMiniApp);
         return R.ok().put("data", linkByMiniApp);
     }
     }
 
 
+    /**
+     * 查询课程列表
+     * @param params 参数
+     * @return  list
+     */
+    @Override
+    public List<FsUserCourseVideoPageListVO> selectCourseVideoListByMap(Map<String, Object> params) {
+        return fsUserCourseVideoMapper.selectFsUserCourseVideoListByMap(params);
+    }
+
     private String createLinkByMiniApp(Date sendTime, Long courseId, Long videoId,
     private String createLinkByMiniApp(Date sendTime, Long courseId, Long videoId,
                                        QwUser qwUser, Long externalId,int type,String domainName) {
                                        QwUser qwUser, Long externalId,int type,String domainName) {
         FsCourseLink link = new FsCourseLink();
         FsCourseLink link = new FsCourseLink();

+ 30 - 1
fs-service-system/src/main/resources/mapper/course/FsUserCourseVideoMapper.xml

@@ -232,7 +232,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             video.video_url,
             video.video_url,
             video.thumbnail,
             video.thumbnail,
             video.duration,
             video.duration,
-            video.create_time,
+            fcpd.create_time,
             video.course_id,
             video.course_id,
             video.STATUS,
             video.STATUS,
             video.course_sort,
             video.course_sort,
@@ -270,6 +270,35 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         </where>
         </where>
     </select>
     </select>
 
 
+    <select id="selectFsUserCourseVideoListByMap" resultType="com.fs.course.vo.newfs.FsUserCourseVideoPageListVO">
+        select
+            video.video_id,
+            video.title,
+            video.description,
+            video.video_url,
+            video.thumbnail,
+            video.duration,
+            video.course_id,
+            video.STATUS,
+            video.course_sort,
+            course.course_name,
+            fcpd.period_id,
+            fcpd.id,
+            fcpd.create_time
+        from `fs_user_course_video` video
+        left join fs_user_course_period_days fcpd on fcpd.video_id = video.video_id
+        left join fs_user_course_period fcp on fcp.period_id = fcpd.period_id
+        left join fs_user_course course ON video.course_id = course.course_id
+        where course.is_del = 0
+        <if test="params.companyId != null">
+            and FIND_IN_SET(#{params.companyId}, fcp.company_id)
+        </if>
+        <if test="params.dayDate != null">
+            and fcpd.day_date = #{params.dayDate}
+        </if>
+        order by video.course_sort
+    </select>
+
     <update id="updateRedPacketMoney">
     <update id="updateRedPacketMoney">
         update fs_user_course_video set red_packet_money = #{redPacketMoney} where video_id = #{videoId}
         update fs_user_course_video set red_packet_money = #{redPacketMoney} where video_id = #{videoId}
     </update>
     </update>