소스 검색

区分app看课

ct 4 일 전
부모
커밋
88af83380c

+ 6 - 5
fs-qw-task/src/main/java/com/fs/app/taskService/impl/SopLogsTaskServiceImpl.java

@@ -1022,14 +1022,14 @@ public class SopLogsTaskServiceImpl implements SopLogsTaskService {
                                 GroupUserExternalVo vo = userMap.get(groupChat.getOwner());
                                 if (vo != null && vo.getId() != null) {
                                     sopLogs.setFsUserId(vo.getFsUserId());
-                                    addWatchLogIfNeeded(sopLogs, videoId, courseId, sendTime, qwUserId, companyUserId, companyId, vo.getId().toString(), logVo);
+                                    addWatchLogIfNeeded(sopLogs, videoId, courseId, sendTime, qwUserId, companyUserId, companyId, vo.getId().toString(), logVo,2);
                                 }
                             });
                         } catch (Exception e) {
                             log.error("群聊创建看课记录失败!", e);
                         }
                     } else {
-                        addWatchLogIfNeeded(sopLogs, videoId, courseId, sendTime, qwUserId, companyUserId, companyId, externalId,logVo);
+                        addWatchLogIfNeeded(sopLogs, videoId, courseId, sendTime, qwUserId, companyUserId, companyId, externalId,logVo,2);
                     }
 
                     String sortLink = createLinkByMiniApp(setting, logVo, sendTime, courseId, videoId,
@@ -1066,7 +1066,7 @@ public class SopLogsTaskServiceImpl implements SopLogsTaskService {
                     break;
                 //app
                 case "9":
-                    addWatchLogIfNeeded(sopLogs, videoId, courseId, sendTime, qwUserId, companyUserId, companyId, externalId,logVo);
+                    addWatchLogIfNeeded(sopLogs, videoId, courseId, sendTime, qwUserId, companyUserId, companyId, externalId,logVo,1);
 
                     QwCreateLinkByAppVO linkByApp = createLinkByApp(setting, logVo, sendTime, courseId, videoId,
                             qwUserId, companyUserId, companyId, externalId,sopLogs.getCorpId(),qwUserName);
@@ -1079,7 +1079,7 @@ public class SopLogsTaskServiceImpl implements SopLogsTaskService {
                     break;
                 //自定义小程序
                 case "10":
-                    addWatchLogIfNeeded(sopLogs, videoId, courseId, sendTime, qwUserId, companyUserId, companyId, externalId,logVo);
+                    addWatchLogIfNeeded(sopLogs, videoId, courseId, sendTime, qwUserId, companyUserId, companyId, externalId,logVo,2);
 
                     Optional<Company> matchedCompany = companies.stream()
                             .filter(company -> String.valueOf(company.getCompanyId()).equals(companyId))
@@ -1480,7 +1480,7 @@ public class SopLogsTaskServiceImpl implements SopLogsTaskService {
 
     private void addWatchLogIfNeeded(QwSopLogs sopLogs, Long videoId, Long courseId,
                                      Date sendTime, String qwUserId, String companyUserId,
-                                     String companyId, String externalId,SopUserLogsVo logsVo) {
+                                     String companyId, String externalId,SopUserLogsVo logsVo,Integer watchType) {
         FsCourseWatchLog watchLog = new FsCourseWatchLog();
         watchLog.setVideoId(videoId != null ? videoId.longValue() : null);
         watchLog.setQwExternalContactId(externalId != null ? Long.valueOf(externalId) : null);
@@ -1495,6 +1495,7 @@ public class SopLogsTaskServiceImpl implements SopLogsTaskService {
         watchLog.setUpdateTime(new Date());
         watchLog.setLogType(3);
         watchLog.setUserId(sopLogs.getFsUserId());
+        watchLog.setWatchType(watchType);
         watchLog.setCampPeriodTime(convertStringToDate(logsVo.getStartTime(),"yyyy-MM-dd"));
         enqueueWatchLog(watchLog);
     }

+ 2 - 0
fs-service/src/main/java/com/fs/course/domain/FsCourseWatchLog.java

@@ -91,4 +91,6 @@ public class FsCourseWatchLog extends BaseEntity
     /** im发送消息详情id */
     private Long imMsgSendDetailId;
 
+    private Integer watchType;//看课方式:1 app  2 小程序
+
 }

+ 1 - 0
fs-service/src/main/java/com/fs/course/param/FsCourseWatchLogListParam.java

@@ -112,6 +112,7 @@ public class FsCourseWatchLogListParam implements Serializable {
     private Integer pageNum;
     private Integer pageSize;
     private List<String> userIds;
+    private Integer watchType;
 
     public List<String> getUserIds() {
         if (userIds == null || userIds.isEmpty()) {

+ 7 - 6
fs-service/src/main/java/com/fs/course/service/impl/FsUserCourseVideoServiceImpl.java

@@ -1011,6 +1011,7 @@ public class FsUserCourseVideoServiceImpl extends ServiceImpl<FsUserCourseVideoM
         log.setQwUserId(Long.valueOf(param.getQwUserId()));
         log.setCreateTime(new Date());
         log.setLogType(3);
+        log.setWatchType(2);
         logger.info("【群聊生成看课记录】:{}", param);
         courseWatchLogMapper.insertFsCourseWatchLog(log);
     }
@@ -3024,7 +3025,7 @@ public class FsUserCourseVideoServiceImpl extends ServiceImpl<FsUserCourseVideoM
         }
 
         //看课记录
-        addWatchLogIfNeeded(param.getVideoId(), param.getCourseId(), param.getFsUserId(), qwUser, param.getExternalUserId());
+        addWatchLogIfNeeded(param.getVideoId(), param.getCourseId(), param.getFsUserId(), qwUser, param.getExternalUserId(),2);
 
         //生成小程序链接
         String linkByMiniApp = createLinkByMiniApp(new Date(), param.getCourseId(), param.getVideoId(), qwUser, param.getExternalUserId(), 2, null, 0);
@@ -3067,7 +3068,7 @@ public class FsUserCourseVideoServiceImpl extends ServiceImpl<FsUserCourseVideoM
             domainName = config.getRealLinkDomainName();
         }
 
-        addWatchLogIfNeeded(param.getVideoId(), param.getCourseId(), param.getFsUserId(), qwUser, param.getExternalUserId());
+        addWatchLogIfNeeded(param.getVideoId(), param.getCourseId(), param.getFsUserId(), qwUser, param.getExternalUserId(),2);
 
         String linkByCartLink = createLinkByMiniApp(new Date(), param.getCourseId(), param.getVideoId(), qwUser, param.getExternalUserId(), 1, domainName, 0);
 
@@ -3085,7 +3086,7 @@ public class FsUserCourseVideoServiceImpl extends ServiceImpl<FsUserCourseVideoM
 
     //插入观看记录
     private void addWatchLogIfNeeded(Long videoId, Long courseId,
-                                     Long fsUserId, QwUser qwUser, Long externalId) {
+                                     Long fsUserId, QwUser qwUser, Long externalId,Integer watchType) {
 
         try {
 
@@ -3101,7 +3102,7 @@ public class FsUserCourseVideoServiceImpl extends ServiceImpl<FsUserCourseVideoM
             watchLog.setCreateTime(new Date());
             watchLog.setUpdateTime(new Date());
             watchLog.setLogType(3);
-
+            watchLog.setWatchType(watchType);
             if (fsUserId == null) {
                 fsUserId = 0L;
             }
@@ -4069,7 +4070,7 @@ public class FsUserCourseVideoServiceImpl extends ServiceImpl<FsUserCourseVideoM
             }
 
             //看课记录
-            addWatchLogIfNeeded(param.getVideoId(), param.getCourseId(), qwExternalContact.getFsUserId(), qwUser, qwExternalContact.getId());
+            addWatchLogIfNeeded(param.getVideoId(), param.getCourseId(), qwExternalContact.getFsUserId(), qwUser, qwExternalContact.getId(),2);
 
             //生成小程序链接
             String linkByMiniApp = createLinkByMiniApp(new Date(), param.getCourseId(), param.getVideoId(), qwUser, qwExternalContact.getId(),2,null, 0);
@@ -4083,7 +4084,7 @@ public class FsUserCourseVideoServiceImpl extends ServiceImpl<FsUserCourseVideoM
 
             contacts.forEach(contact -> {
                 //看课记录
-                addWatchLogIfNeeded(param.getVideoId(), param.getCourseId(), contact.getFsUserId(), qwUser, contact.getId());
+                addWatchLogIfNeeded(param.getVideoId(), param.getCourseId(), contact.getFsUserId(), qwUser, contact.getId(),2);
             });
 
             //生成小程序链接

+ 4 - 4
fs-service/src/main/java/com/fs/fastGpt/service/impl/AiHookServiceImpl.java

@@ -1469,7 +1469,7 @@ public class AiHookServiceImpl implements AiHookService {
                         String.valueOf(user.getId()),
                         String.valueOf(user.getCompanyUserId()),
                         String.valueOf(user.getCompanyId()),
-                        String.valueOf(session.getQwExtId()));
+                        String.valueOf(session.getQwExtId()),2);
                 if (linkUrl != null && linkUrl.get("url") != null) {
                     String s = (String)linkUrl.get("url");
                     // sendWebSocketMsg(s,msgVo,user,session);
@@ -1500,7 +1500,7 @@ public class AiHookServiceImpl implements AiHookService {
                                 String.valueOf(user.getId()),
                                 String.valueOf(user.getCompanyUserId()),
                                 String.valueOf(user.getCompanyId()),
-                                String.valueOf(session.getQwExtId()));
+                                String.valueOf(session.getQwExtId()),2);
                         if (linkUrl != null && linkUrl.get("url") != null) {
                             String s = (String)linkUrl.get("url");
                             // sendWebSocketMsg(s,msgVo,user,session);
@@ -2010,7 +2010,7 @@ public class AiHookServiceImpl implements AiHookService {
                         String.valueOf(user.getId()),
                         String.valueOf(user.getCompanyUserId()),
                         String.valueOf(user.getCompanyId()),
-                        String.valueOf(session.getQwExtId()));
+                        String.valueOf(session.getQwExtId()),2);
                 if (linkUrl != null && linkUrl.get("url") != null) {
                     String s = (String)linkUrl.get("url");
                     sendWebTaskSocketMsg(s,sendId,user);
@@ -2041,7 +2041,7 @@ public class AiHookServiceImpl implements AiHookService {
                             String.valueOf(user.getId()),
                             String.valueOf(user.getCompanyUserId()),
                             String.valueOf(user.getCompanyId()),
-                            String.valueOf(session.getQwExtId()));
+                            String.valueOf(session.getQwExtId()),2);
                     if (linkUrl != null && linkUrl.get("url") != null) {
                         String s = (String)linkUrl.get("url");
                         sendWebTaskSocketMsg(s,sendId,user);

+ 2 - 0
fs-service/src/main/java/com/fs/his/mapper/FsUserInformationCollectionMapper.java

@@ -100,4 +100,6 @@ public interface FsUserInformationCollectionMapper extends BaseMapper<FsUserInfo
     List<FsUserInformationCollection>selectFsUserInformationCollectionByDoctorType2(@Param("maps") UserInformationDoctorType2Param userInformationDoctorType2Param);
     List<FsUserInformationCollection>selectFsUserInformationCollectionByDoctorType1(@Param("maps") UserInformationDoctorType2Param userInformationDoctorType2Param);
     FsUserInformationCollection selectFsUserInformationCollectionByOrderCode(String orderCode);
+
+    List<FsUserInformationCollection> selectListByIsPayAndConfirmStatus();
 }

+ 3 - 2
fs-service/src/main/java/com/fs/qw/service/AsyncQwAiChatSopService.java

@@ -187,7 +187,7 @@ public class AsyncQwAiChatSopService {
                         //小程序单独
                         case "4":
                             addWatchLogIfNeededByNewChat(item.getId(), content.getVideoId(), content.getCourseId(), fsUserId,qwUser.getId(), qwUser.getCompanyUserId(), qwUser.getCompanyId(),
-                                    externalId, sendTime, expirySendTime);
+                                    externalId, sendTime, expirySendTime,2);
 
                             String linkByMiniApp = createLinkByMiniAppByNewChat(setting.getExpiresDays(), qwUser.getCorpId(), expirySendTime, content.getCourseId(), content.getVideoId(),
                                     qwUser.getId(), String.valueOf(qwUser.getCompanyUserId()),String.valueOf(qwUser.getCompanyId()), externalId, config);
@@ -255,7 +255,7 @@ public class AsyncQwAiChatSopService {
     //插入观看记录
     private Long addWatchLogIfNeededByNewChat(String sopId, Integer videoId, Integer courseId,
                                      Long fsUserId, Long qwUserId, Long companyUserId,
-                                     Long companyId, Long externalId, String startTime, Date createTime) {
+                                     Long companyId, Long externalId, String startTime, Date createTime,Integer watchType) {
 
         try {
             FsCourseWatchLog watchLog = new FsCourseWatchLog();
@@ -272,6 +272,7 @@ public class AsyncQwAiChatSopService {
             watchLog.setUpdateTime(createTime);
             watchLog.setLogType(3);
             watchLog.setUserId(fsUserId);
+            watchLog.setWatchType(watchType);
             watchLog.setCampPeriodTime(sopUserLogsInfoService.convertStringToDate(startTime, "yyyy-MM-dd HH:mm:ss"));
 
             //存看课记录

+ 1 - 1
fs-service/src/main/java/com/fs/qw/service/IQwContactWayService.java

@@ -82,5 +82,5 @@ public interface IQwContactWayService
 
     void addWatchLogIfNeeded(Integer videoId, Integer courseId,
                                      String qwUserId, String companyUserId,
-                                     String companyId, String externalId);
+                                     String companyId, String externalId,Integer watchType);
 }

+ 4 - 2
fs-service/src/main/java/com/fs/qw/service/impl/QwContactWayServiceImpl.java

@@ -490,7 +490,8 @@ public class QwContactWayServiceImpl implements IQwContactWayService
                                         String.valueOf(qwUser.getId()),
                                         String.valueOf(qwUser.getCompanyUserId()),
                                         String.valueOf(qwUser.getCompanyId()),
-                                        String.valueOf(qwExternalId));
+                                        String.valueOf(qwExternalId),
+                                        2);
                 }  catch (Exception e) {
                     log.error("欢迎语生成短链失败:", e);
                 }
@@ -503,7 +504,7 @@ public class QwContactWayServiceImpl implements IQwContactWayService
     //添加watchLog记录
     public   void addWatchLogIfNeeded(Integer videoId, Integer courseId,
                                      String qwUserId, String companyUserId,
-                                     String companyId, String externalId) {
+                                     String companyId, String externalId,Integer watchType) {
         FsCourseWatchLog watchLog = new FsCourseWatchLog();
         watchLog.setVideoId(videoId != null ? videoId.longValue() : null);
         watchLog.setQwExternalContactId(externalId != null ? Long.valueOf(externalId) : null);
@@ -517,6 +518,7 @@ public class QwContactWayServiceImpl implements IQwContactWayService
         watchLog.setUpdateTime(new Date());
         watchLog.setLogType(3);
         watchLog.setUserId(0L);
+        watchLog.setWatchType(watchType);
         watchLogMapper.insertOrUpdateFsCourseWatchLog(watchLog);
     }
 

+ 4 - 3
fs-service/src/main/java/com/fs/qw/service/impl/QwExternalContactServiceImpl.java

@@ -3820,7 +3820,7 @@ public class QwExternalContactServiceImpl extends ServiceImpl<QwExternalContactM
                             String.valueOf(qwUser.getId()),
                             String.valueOf(qwUser.getCompanyUserId()),
                             String.valueOf(qwUser.getCompanyId()),
-                            String.valueOf(qwExternalId));
+                            String.valueOf(qwExternalId),2);
 
                 }  catch (Exception e) {
                     logger.error("欢迎语生成短链失败:", e);
@@ -3872,7 +3872,7 @@ public class QwExternalContactServiceImpl extends ServiceImpl<QwExternalContactM
                                         String.valueOf(qwUser.getId()),
                                         String.valueOf(qwUser.getCompanyUserId()),
                                         String.valueOf(qwUser.getCompanyId()),
-                                        String.valueOf(qwExternalId));
+                                        String.valueOf(qwExternalId),2);
                             }else {
                                 logger.error("查到课程相关信息:"+corpId+":"+att.getMiniprogram().getCourseId());
                             }
@@ -3894,7 +3894,7 @@ public class QwExternalContactServiceImpl extends ServiceImpl<QwExternalContactM
     //添加watchLog记录
     private void addWatchLogIfNeeded(Integer videoId, Integer courseId,
                                      String qwUserId, String companyUserId,
-                                     String companyId, String externalId) {
+                                     String companyId, String externalId,Integer watchType) {
         FsCourseWatchLog watchLog = new FsCourseWatchLog();
         watchLog.setVideoId(videoId != null ? videoId.longValue() : null);
         watchLog.setQwExternalContactId(externalId != null ? Long.valueOf(externalId) : null);
@@ -3908,6 +3908,7 @@ public class QwExternalContactServiceImpl extends ServiceImpl<QwExternalContactM
         watchLog.setUpdateTime(new Date());
         watchLog.setLogType(3);
         watchLog.setUserId(0L);
+        watchLog.setWatchType(watchType);
         watchLogMapper.insertOrUpdateFsCourseWatchLog(watchLog);
     }
 

+ 8 - 7
fs-service/src/main/java/com/fs/sop/service/impl/SopUserLogsInfoServiceImpl.java

@@ -518,7 +518,7 @@ public class SopUserLogsInfoServiceImpl implements ISopUserLogsInfoService {
                         Map<String, GroupUserExternalVo> userMap = PubFun.listToMapByGroupObject(e.getUserList(), GroupUserExternalVo::getUserId);
                         GroupUserExternalVo vo = userMap.get(groupChat.getOwner());
                         if (vo != null && vo.getId() != null) {
-                            addWatchLogIfNeeded(param.getSopId(), param.getVideoId(), param.getCourseId(), vo.getFsUserId(), qwUser.getId().toString(), qwUser.getCompanyUserId().toString(), qwUser.getCompanyId().toString(), vo.getId(), param.getStartTime(), createTime);
+                            addWatchLogIfNeeded(param.getSopId(), param.getVideoId(), param.getCourseId(), vo.getFsUserId(), qwUser.getId().toString(), qwUser.getCompanyUserId().toString(), qwUser.getCompanyId().toString(), vo.getId(), param.getStartTime(), createTime,2);
                         }
                     });
                 });
@@ -943,7 +943,7 @@ public class SopUserLogsInfoServiceImpl implements ISopUserLogsInfoService {
                             break;
                         //小程序单独
                         case "4":
-                            addWatchLogIfNeeded(item.getSopId(), param.getVideoId(), param.getCourseId(),item.getFsUserId(), qwUserId, companyUserId, companyId, item.getExternalId(),item.getStartTime(),createTime );
+                            addWatchLogIfNeeded(item.getSopId(), param.getVideoId(), param.getCourseId(),item.getFsUserId(), qwUserId, companyUserId, companyId, item.getExternalId(),item.getStartTime(),createTime,2 );
 
                             String linkByMiniApp = createLinkByMiniApp(st, param.getCorpId(), createTime, param.getCourseId(), param.getVideoId(),
                                     Long.valueOf(qwUserId), companyUserId, companyId, item.getExternalId(), config, null);
@@ -986,7 +986,7 @@ public class SopUserLogsInfoServiceImpl implements ISopUserLogsInfoService {
                             break;
                         //app
                         case "9":
-                            addWatchLogIfNeeded(item.getSopId(), param.getVideoId(), param.getCourseId(),item.getFsUserId(), qwUserId, companyUserId, companyId, item.getExternalId(),item.getStartTime(),createTime );
+                            addWatchLogIfNeeded(item.getSopId(), param.getVideoId(), param.getCourseId(),item.getFsUserId(), qwUserId, companyUserId, companyId, item.getExternalId(),item.getStartTime(),createTime,1 );
 
                             QwCreateLinkByAppVO linkByApp = createLinkByApp(st, param.getCorpId(), createTime, param.getCourseId(), param.getVideoId(),
                                     Long.valueOf(qwUserId), companyUserId, companyId, item.getExternalId(), config,qwUser.getQwUserName(),contact.getFsUserId());
@@ -996,7 +996,7 @@ public class SopUserLogsInfoServiceImpl implements ISopUserLogsInfoService {
                             break;
                         //自定义小程序
                         case "10":
-                            addWatchLogIfNeeded(item.getSopId(), param.getVideoId(), param.getCourseId(),item.getFsUserId(), qwUserId, companyUserId, companyId, item.getExternalId(),item.getStartTime(),createTime );
+                            addWatchLogIfNeeded(item.getSopId(), param.getVideoId(), param.getCourseId(),item.getFsUserId(), qwUserId, companyUserId, companyId, item.getExternalId(),item.getStartTime(),createTime,2 );
                             if (company!=null){
 
                                 String customMiniAppId = company.getCustomMiniAppId();
@@ -1405,7 +1405,7 @@ public class SopUserLogsInfoServiceImpl implements ISopUserLogsInfoService {
                 case "4":
 
                     addWatchLogIfNeeded(item.getSopId(), param.getVideoId(), param.getCourseId(),item.getFsUserId(), String.valueOf(qwUser.getId()), companyUserId, companyId,
-                            item.getExternalId(),item.getStartTime(),dataTime );
+                            item.getExternalId(),item.getStartTime(),dataTime,2 );
 
                     String linkByMiniApp = createLinkByMiniApp(st, param.getCorpId(), dataTime, param.getCourseId(), param.getVideoId(),
                             qwUser.getId(), companyUserId, companyId, item.getExternalId(), config, null);
@@ -1451,7 +1451,7 @@ public class SopUserLogsInfoServiceImpl implements ISopUserLogsInfoService {
                 case "10":
 
                     addWatchLogIfNeeded(item.getSopId(), param.getVideoId(), param.getCourseId(),item.getFsUserId(), String.valueOf(qwUser.getId()), companyUserId, companyId,
-                            item.getExternalId(),item.getStartTime(),dataTime );
+                            item.getExternalId(),item.getStartTime(),dataTime,2 );
 
                     Optional<Company> matchedCompany = companies.stream()
                             .filter(company -> String.valueOf(company.getCompanyId()).equals(companyId))
@@ -1549,7 +1549,7 @@ public class SopUserLogsInfoServiceImpl implements ISopUserLogsInfoService {
     //插入观看记录
     public void addWatchLogIfNeeded(String sopId, Integer videoId, Integer courseId,
                                      Long fsUserId, String qwUserId, String companyUserId,
-                                     String companyId, Long externalId, String startTime,Date createTime) {
+                                     String companyId, Long externalId, String startTime,Date createTime, Integer watchType) {
 
         try {
             FsCourseWatchLog watchLog = new FsCourseWatchLog();
@@ -1566,6 +1566,7 @@ public class SopUserLogsInfoServiceImpl implements ISopUserLogsInfoService {
             watchLog.setUpdateTime(createTime);
             watchLog.setLogType(3);
             watchLog.setUserId(fsUserId);
+            watchLog.setWatchType(watchType);
             watchLog.setCampPeriodTime(convertStringToDate(startTime,"yyyy-MM-dd"));
 
             //存看课记录

+ 2 - 1
fs-service/src/main/java/com/fs/sop/service/impl/SopUserLogsServiceImpl.java

@@ -190,7 +190,7 @@ public class SopUserLogsServiceImpl implements ISopUserLogsService {
                         Map<String, GroupUserExternalVo> userMap = PubFun.listToMapByGroupObject(e.getUserList(), GroupUserExternalVo::getUserId);
                         GroupUserExternalVo vo = userMap.get(groupChat.getOwner());
                         if (vo != null && vo.getId() != null) {
-                            sopUserLogsInfoService.addWatchLogIfNeeded(sopId, rules.getVideoId().intValue(), rules.getCourseId().intValue(), vo.getFsUserId(), qwUser.getId().toString(), qwUser.getCompanyUserId().toString(), qwUser.getCompanyId().toString(), vo.getId(), sopUserLogs.getStartTime(), new Date());
+                            sopUserLogsInfoService.addWatchLogIfNeeded(sopId, rules.getVideoId().intValue(), rules.getCourseId().intValue(), vo.getFsUserId(), qwUser.getId().toString(), qwUser.getCompanyUserId().toString(), qwUser.getCompanyId().toString(), vo.getId(), sopUserLogs.getStartTime(), new Date(),2);
                         }
                     });
                 } catch (Exception e) {
@@ -596,6 +596,7 @@ public class SopUserLogsServiceImpl implements ISopUserLogsService {
 //                                if (fsCourseWatchLogs.isEmpty()) {
 //                                    watchLog.setLogType(3);
 //                                    watchLog.setCreateTime(new Date());
+//                                    watchLog.setWatchType(2);
 //                                    fsCourseWatchLogMapper.insertFsCourseWatchLog(watchLog);
 //                                }
 //

+ 18 - 3
fs-service/src/main/resources/mapper/course/FsCourseWatchLogMapper.xml

@@ -26,10 +26,13 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         <result property="lastHeartbeatTime"    column="last_heartbeat_time"    />
         <result property="project"    column="project"    />
         <result property="periodId"    column="period_id"    />
+        <result property="watchType"    column="watch_type"    />
     </resultMap>
 
     <sql id="selectFsCourseWatchLogVo">
-        select log_id, user_id,finish_time,send_finish_msg,sop_id,video_id,reward_type, log_type, create_time, update_time, qw_external_contact_id, duration, qw_user_id, company_user_id, company_id, course_id,camp_period_time,project,period_id  from fs_course_watch_log
+        select log_id, user_id,finish_time,send_finish_msg,sop_id,video_id,reward_type, log_type, create_time,
+               update_time, qw_external_contact_id, duration, qw_user_id, company_user_id, company_id, course_id,
+               camp_period_time,project,period_id,watch_type  from fs_course_watch_log
     </sql>
 
     <select id="selectFsCourseWatchLogList" parameterType="FsCourseWatchLog" resultMap="FsCourseWatchLogResult">
@@ -47,6 +50,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             <if test="sendType != null "> and send_type = #{sendType}</if>
             <if test="campPeriodTime != null "> and camp_period_time = #{campPeriodTime}</if>
             <if test="project != null "> and project = #{project}</if>
+            <if test="watchType != null "> and watch_type = #{watchType}</if>
         </where>
     </select>
 
@@ -103,6 +107,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             <if test ='maps.companyId !=null'>
                 and l.company_id = #{maps.companyId}
             </if>
+            <if test ='maps.watchType !=null'>
+                and l.watch_type = #{maps.watchType}
+            </if>
             <if test ='maps.companyUserId !=null'>
                 and l.company_user_id = #{maps.companyUserId}
             </if>
@@ -240,6 +247,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
                             #{sopId}
                         </foreach>
                     </if>
+                    <if test="maps.watchType != null "> and l.watch_type = #{maps.watchType}</if>
                 </where>
                 order by l.log_id desc
             </select>
@@ -265,6 +273,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
                     <if test="campPeriodTime != null">camp_period_time,</if>
                     <if test="periodId != null">period_id,</if>
                     <if test="project != null">project,</if>
+                    <if test="watchType != null">watch_type,</if>
                 </trim>
                 <trim prefix="values (" suffix=")" suffixOverrides=",">
                     <if test="userId != null">#{userId},</if>
@@ -286,6 +295,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
                     <if test="campPeriodTime != null">#{campPeriodTime},</if>
                     <if test="periodId != null">#{periodId},</if>
                     <if test="project != null">#{project},</if>
+                    <if test="watchType != null">#{watchType},</if>
                 </trim>
             </insert>
 
@@ -310,6 +320,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
                     <if test="sendFinishMsg != null">send_finish_msg,</if>
                     <if test="campPeriodTime != null">camp_period_time,</if>
                     <if test="project != null">project,</if>
+                    <if test="watchType != null">watch_type,</if>
                 </trim>
                 <trim prefix="values (" suffix=")" suffixOverrides=",">
                     <if test="userId != null">#{userId},</if>
@@ -330,6 +341,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
                     <if test="sendFinishMsg != null">#{sendFinishMsg},</if>
                     <if test="campPeriodTime != null">#{campPeriodTime},</if>
                     <if test="project != null">#{project},</if>
+                    <if test="watchType != null">#{watchType},</if>
                 </trim>
                 on duplicate key update
                 <trim suffixOverrides=",">
@@ -358,7 +370,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
                 camp_period_time,
                 project,
                 period_id,
-                im_msg_send_detail_id
+                im_msg_send_detail_id,
+                watch_type
                 )
                 VALUES
                 <foreach collection="watchLogs" item="log" separator=",">
@@ -380,7 +393,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
                     #{log.campPeriodTime},
                     #{log.project},
                     #{log.periodId},
-                    #{log.imMsgSendDetailId}
+                    #{log.imMsgSendDetailId},
+                    #{log.watchType}
                     )
                 </foreach>
                 ON DUPLICATE KEY UPDATE
@@ -412,6 +426,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
                     <if test="lastHeartbeatTime != null">last_heartbeat_time = #{lastHeartbeatTime},</if>
                     <if test="periodId != null">period_id = #{periodId},</if>
                     <if test="project != null">project = #{project},</if>
+                    <if test="watchType != null">watch_type = #{watchType},</if>
                 </trim>
                 where log_id = #{logId}
             </update>