Explorar el Código

催课看板 展示 具体课程

三七 hace 1 semana
padre
commit
a9a6ac5ad5

+ 3 - 0
fs-admin/src/main/java/com/fs/qw/FsCourseTask.java

@@ -126,7 +126,9 @@ public class FsCourseTask {
      */
     public void qwWorkTask1() throws Exception
     {
+        //看课中断
         qwWorkTaskService.addQwWorkByCourse4();
+        //待看课
         qwWorkTaskService.addQwWorkByCourseLastTime();
     }
     /**
@@ -135,6 +137,7 @@ public class FsCourseTask {
      */
     public void qwWorkTask2() throws Exception
     {
+
         qwWorkTaskService.addQwWorkByCourse();
         qwWorkTaskService.addQwWorkByFirstCourse();
     }

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

@@ -140,13 +140,13 @@ public interface FsCourseWatchLogMapper extends BaseMapper<FsCourseWatchLog> {
     @Select("select l.*,v.title,c.course_name from fs_course_watch_log l LEFT JOIN fs_user_course_video v ON v.video_id = l.video_id LEFT JOIN fs_user_course c ON c.course_id = l.course_id WHERE l.qw_external_contact_id =#{id} ORDER BY l.create_time  desc LIMIT 1  ")
     FsCourseWatchLogVO selectFsCourseWatchLogByExtId(Long id);
 
-    @Select("select l.qw_external_contact_id,l.company_id,l.company_user_id,l.log_type,ext.`level`,l.qw_user_id " +
+    @Select("select l.qw_external_contact_id,l.company_id,l.company_user_id,l.log_type,ext.`level`,l.qw_user_id,l.video_id " +
             "FROM fs_course_watch_log l LEFT JOIN qw_external_contact ext ON ext.id =l.qw_external_contact_id  " +
             "where l.sop_id=#{SopId}  AND l.create_time >= CURDATE() AND l.create_time < CURDATE() + INTERVAL 1 DAY  " +
             "and l.log_type =3 and l.video_id not in (select video_id from fs_user_course_video WHERE is_first=1 ) ")
     List<FsCourseWatchLogTaskVO> selectFsCourseWatchLogByDaySopId3(@Param("SopId")String SopId);
 
-    @Select("select l.qw_external_contact_id,l.company_id,l.company_user_id,l.log_type,ext.`level`,l.qw_user_id " +
+    @Select("select l.qw_external_contact_id,l.company_id,l.company_user_id,l.log_type,ext.`level`,l.qw_user_id,l.video_id " +
             " FROM fs_course_watch_log l " +
             "LEFT JOIN qw_external_contact ext ON ext.id =l.qw_external_contact_id  " +
             "where l.sop_id=#{SopId}  " +
@@ -556,13 +556,13 @@ public interface FsCourseWatchLogMapper extends BaseMapper<FsCourseWatchLog> {
             "ORDER BY ds.report_date ASC  ")
     List<Integer> selectFsCourseWatchLog7DayByExtId(Long extId);
 
-    @Select("select l.user_id,l.company_id,l.company_user_id,l.log_type,ext.`level`,l.qw_user_id " +
+    @Select("select l.user_id,l.company_id,l.company_user_id,l.log_type,ext.`level`,l.qw_user_id,l.video_id " +
             "FROM fs_course_watch_log l LEFT JOIN fs_user ext ON ext.user_id =l.user_id  " +
             "where l.sop_id=#{SopId} and  date(l.create_time)= CURDATE() and l.log_type =4 " +
             "and l.video_id not in (select video_id from fs_user_course_video WHERE is_first=1 ) ")
     List<FsCourseWatchLogTaskVO> selectFsCourseWatchLogByDaySopIdFsUser4(@Param("SopId")String SopId);
 
-    @Select("select l.qw_external_contact_id,l.company_id,l.company_user_id,l.log_type,ext.`level`,l.qw_user_id,ext.last_watch_time " +
+    @Select("select l.qw_external_contact_id,l.company_id,l.company_user_id,l.log_type,ext.`level`,l.qw_user_id,ext.last_watch_time,l.video_id " +
             "FROM fs_course_watch_log l LEFT JOIN qw_external_contact ext ON ext.id =l.qw_external_contact_id  " +
             "where l.sop_id=#{SopId} and  date(l.create_time)= CURDATE() and l.log_type =3 " +
             "and l.video_id not in (select video_id from fs_user_course_video WHERE is_first=1 ) " +

+ 3 - 0
fs-service/src/main/java/com/fs/course/vo/FsCourseWatchLogTaskVO.java

@@ -19,4 +19,7 @@ public class FsCourseWatchLogTaskVO {
     private Long qwUserId;
 
     private Long userId;
+
+    private Long videoId;
+
 }

+ 2 - 0
fs-service/src/main/java/com/fs/qw/domain/QwWorkTask.java

@@ -80,4 +80,6 @@ public class QwWorkTask extends BaseEntity{
 
     List<Integer> logs;
 
+    private Long videoId;
+
 }

+ 5 - 0
fs-service/src/main/java/com/fs/qw/service/impl/QwWorkTaskServiceImpl.java

@@ -137,6 +137,7 @@ public class QwWorkTaskServiceImpl extends ServiceImpl<QwWorkTaskMapper, QwWorkT
                 qwWorkTask.setQwUserId(Long.parseLong(vo.getQwUserId()));
                 qwWorkTask.setType(1);
                 qwWorkTask.setStatus(0);
+                qwWorkTask.setVideoId(vo.getVideoId());
                 qwWorkTask.setTitle(vo.getLogType()==3?"先导课待看课":"先导课完课");
                 qwWorkTask.setScore(vo.getLogType()==3?4:3);
                 qwWorkTasks.add(qwWorkTask);
@@ -209,6 +210,7 @@ public class QwWorkTaskServiceImpl extends ServiceImpl<QwWorkTaskMapper, QwWorkT
                 qwWorkTask.setQwUserId(fsCourseWatchLog.getQwUserId());
                 qwWorkTask.setType(2);
                 qwWorkTask.setStatus(0);
+                qwWorkTask.setVideoId(fsCourseWatchLog.getVideoId());
                 qwWorkTask.setTitle("第"+(day+1)+"天"+"待看课");
                 qwWorkTask.setScore(score);
                 qwWorkTasks.add(qwWorkTask);
@@ -247,6 +249,7 @@ public class QwWorkTaskServiceImpl extends ServiceImpl<QwWorkTaskMapper, QwWorkT
         return qwWorkTaskMapper.selectQwWorkTaskListVO(qwWorkTask);
     }
 
+    //看课中断
     @Override
     public void addQwWorkByCourse4() {
         List<QwSop> qwSops = qwSopMapper.selectQwSopByIsRating();
@@ -292,6 +295,7 @@ public class QwWorkTaskServiceImpl extends ServiceImpl<QwWorkTaskMapper, QwWorkT
                 qwWorkTask.setQwUserId(fsCourseWatchLog.getQwUserId());
                 qwWorkTask.setType(2);
                 qwWorkTask.setStatus(0);
+                qwWorkTask.setVideoId(fsCourseWatchLog.getVideoId());
                 qwWorkTask.setTitle("第"+(day+1)+"天"+"看课中断");
                 qwWorkTask.setScore(score);
                 qwWorkTasks.add(qwWorkTask);
@@ -377,6 +381,7 @@ public class QwWorkTaskServiceImpl extends ServiceImpl<QwWorkTaskMapper, QwWorkT
                 qwWorkTask.setQwUserId(fsCourseWatchLog.getQwUserId());
                 qwWorkTask.setType(2);
                 qwWorkTask.setStatus(0);
+                qwWorkTask.setVideoId(fsCourseWatchLog.getVideoId());
                 qwWorkTask.setTitle("第"+day+"天"+"待看课");
                 qwWorkTask.setScore(score);
                 qwWorkTasks.add(qwWorkTask);

+ 1 - 0
fs-service/src/main/java/com/fs/qw/vo/QwWorkTaskListVO.java

@@ -28,6 +28,7 @@ public class QwWorkTaskListVO {
     @Excel(name = "类别 1先导 2 课程 3 大小转 4 转人工")
     private Integer type;
     private String typeText;
+    private String trackType;
 
     /** 状态 0 待处理 1 已处理 3 过期 */
     @Excel(name = "状态 0 待处理 1 已处理 3 过期")

+ 16 - 0
fs-service/src/main/resources/db/changelog/changes/20260613-live-user-add-is-del.sql

@@ -269,3 +269,19 @@ ALTER TABLE `fs_miniprogram_sub_notify_task`
 ALTER TABLE company_user
     ADD COLUMN expiration_time DATETIME DEFAULT NULL COMMENT '账号过期时间';
 --rollback ALTER TABLE company_user DROP COLUMN expiration_time;
+
+--changeset sgw:20260714-qw_work_task_video_id
+--preconditions onFail:MARK_RAN
+--precondition-sql-check expectedResult:1 SELECT COUNT(*) FROM information_schema.tables WHERE table_schema = DATABASE() AND table_name = 'qw_work_task'
+--precondition-sql-check expectedResult:0 SELECT COUNT(*) FROM information_schema.columns WHERE table_schema = DATABASE() AND table_name = 'qw_work_task' AND column_name = 'video_id'
+ALTER TABLE qw_work_task
+    ADD COLUMN video_id bigint DEFAULT NULL COMMENT '视频id';
+--rollback ALTER TABLE qw_work_task DROP COLUMN video_id;
+
+--changeset sgw:20260714-qw_work_task_fs_user_id
+--preconditions onFail:MARK_RAN
+--precondition-sql-check expectedResult:1 SELECT COUNT(*) FROM information_schema.tables WHERE table_schema = DATABASE() AND table_name = 'qw_work_task'
+--precondition-sql-check expectedResult:0 SELECT COUNT(*) FROM information_schema.columns WHERE table_schema = DATABASE() AND table_name = 'qw_work_task' AND column_name = 'fs_user_id'
+ALTER TABLE qw_work_task
+    ADD COLUMN fs_user_id bigint DEFAULT NULL COMMENT 'fs_user的主键';
+--rollback ALTER TABLE qw_work_task DROP COLUMN fs_user_id;

+ 4 - 2
fs-service/src/main/resources/mapper/qw/QwWorkTaskMapper.xml

@@ -106,7 +106,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         company_id,
         company_user_id,
         create_time,
-        update_time
+        update_time,
+        video_id
         )
         VALUES
         <foreach collection="qwWorkTasks" item="log" separator=",">
@@ -122,7 +123,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             #{log.companyId},
             #{log.companyUserId},
             #{log.createTime},
-            #{log.updateTime}
+            #{log.updateTime},
+            #{log.videoId}
             )
         </foreach>
     </insert>