Bläddra i källkod

sop飞书一键发群

xw 1 dag sedan
förälder
incheckning
766d145cb2

+ 10 - 5
fs-service/src/main/java/com/fs/sop/service/impl/SopUserLogsInfoServiceImpl.java

@@ -982,18 +982,17 @@ public class SopUserLogsInfoServiceImpl implements ISopUserLogsInfoService {
                                     throw new RuntimeException(e);
                                 }
                                 break;
-                            //飞书看课
+                            //飞书看课(发群:chatId 是企微字符串,不能转 Long,与小程序发群一样挂 chatId)
                             case "17":
                                 Integer videoId18Group = param.getVideoId() != null ? param.getVideoId().intValue() : null;
                                 Integer courseId18Group = param.getCourseId() != null ? param.getCourseId().intValue() : null;
                                 Long companyIdLongGroup = Long.valueOf(qwUser.getCompanyId().toString());
-                                Long externalUserIdGroup = Long.valueOf(groupChat.getChatId());
                                 Long companyUserIdLongGroup = Long.valueOf(qwUser.getCompanyUserId().toString());
                                 if (videoId18Group == null) {
                                     log.error("飞书链接生成失败:视频ID为空,sopId={}", param.getSopId());
                                     break;
                                 }
-                                Map<String, String> feishuH5LinkGroup = createFeishuH5Link(st, param.getCorpId(), createTime, courseId18Group, videoId18Group, String.valueOf(qwUser.getId()), String.valueOf(companyUserIdLongGroup), String.valueOf(companyIdLongGroup), externalUserIdGroup, config);
+                                Map<String, String> feishuH5LinkGroup = createFeishuH5Link(st, param.getCorpId(), createTime, courseId18Group, videoId18Group, String.valueOf(qwUser.getId()), String.valueOf(companyUserIdLongGroup), String.valueOf(companyIdLongGroup), null, config, groupChat.getChatId());
                                 String shortCodeGroup = feishuH5LinkGroup.get("link");
                                 String feishuLinkGroup = feiShuService.getFeishuRegisterLink(videoId18Group.longValue(), companyIdLongGroup, courseId18Group.longValue(), companyUserIdLongGroup, shortCodeGroup, null);
                                 if (StringUtils.isNotEmpty(feishuLinkGroup)) {
@@ -1989,13 +1988,19 @@ public class SopUserLogsInfoServiceImpl implements ISopUserLogsInfoService {
     }
 
     /**
-     * 生成飞书看课课程短链
+     * 生成飞书看课课程短链(私聊:传 externalId;发群:传 chatId)
      */
     private Map<String, String> createFeishuH5Link(QwSopCourseFinishTempSetting.Setting setting, String corpId, Date sendTime,
                                                    Integer courseId, Integer videoId, String qwUserId,
                                                    String companyUserId, String companyId, Long externalId, CourseConfig config) {
+        return createFeishuH5Link(setting, corpId, sendTime, courseId, videoId, qwUserId, companyUserId, companyId, externalId, config, null);
+    }
+
+    private Map<String, String> createFeishuH5Link(QwSopCourseFinishTempSetting.Setting setting, String corpId, Date sendTime,
+                                                   Integer courseId, Integer videoId, String qwUserId,
+                                                   String companyUserId, String companyId, Long externalId, CourseConfig config, String chatId) {
         FsCourseLink link = createFsCourseLink(corpId, sendTime, courseId, videoId, Long.valueOf(qwUserId),
-                companyUserId, companyId, externalId, 3, null);
+                companyUserId, companyId, externalId, 3, chatId);
         link.setFeishuAccountId(setting.getFeishuAccountId());
         FsCourseRealLink courseMap = new FsCourseRealLink();
         BeanUtils.copyProperties(link, courseMap);