Просмотр исходного кода

木易推送和看课标识判空

wangxy 1 день назад
Родитель
Сommit
59e89c5dc7

+ 21 - 0
fs-service/src/main/java/com/fs/config/im/IMSystemConfig.java

@@ -0,0 +1,21 @@
+package com.fs.config.im;
+
+import lombok.Data;
+
+import java.io.Serializable;
+
+/**
+ * @description: IM配置
+ * @author: Xgb
+ * @createDate: 2026/1/30
+ * @version: 1.0
+ */
+@Data
+public class IMSystemConfig implements Serializable {
+
+    // 离线推送 小米系统申请channel_id
+    private String xm_channel_id;
+
+    //离线推送 华为系统申请channel_id
+    private String hw_channel_id;
+}

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

@@ -1050,11 +1050,11 @@ public class FsUserCourseVideoServiceImpl extends ServiceImpl<FsUserCourseVideoM
         log.setQwUserId(Long.valueOf(param.getQwUserId()));
         log.setQwUserId(Long.valueOf(param.getQwUserId()));
         log.setCreateTime(new Date());
         log.setCreateTime(new Date());
         log.setLogType(3);
         log.setLogType(3);
-       if(param.getTypeFlag()==1){
-           log.setWatchType(1);
-       }else {
-           log.setWatchType(2);
-       }
+        if (param != null && param.getTypeFlag() != null && param.getTypeFlag() == 1) {
+            log.setWatchType(1);
+        } else {
+            log.setWatchType(2);
+        }
         logger.info("【群聊生成看课记录】:{}", param);
         logger.info("【群聊生成看课记录】:{}", param);
         courseWatchLogMapper.insertFsCourseWatchLog(log);
         courseWatchLogMapper.insertFsCourseWatchLog(log);
     }
     }

+ 23 - 2
fs-service/src/main/java/com/fs/gtPush/service/impl/uniPush2ServiceImpl.java

@@ -11,6 +11,8 @@ import com.fs.common.utils.DateUtils;
 import com.fs.common.utils.StringUtils;
 import com.fs.common.utils.StringUtils;
 import com.fs.company.domain.CompanyUser;
 import com.fs.company.domain.CompanyUser;
 import com.fs.company.mapper.CompanyUserMapper;
 import com.fs.company.mapper.CompanyUserMapper;
+import com.fs.config.im.IMSystemConfig;
+import com.fs.course.config.CourseConfig;
 import com.fs.gtPush.domain.PushReqBean;
 import com.fs.gtPush.domain.PushReqBean;
 import com.fs.gtPush.domain.PushResult;
 import com.fs.gtPush.domain.PushResult;
 import com.fs.gtPush.domain.UniPushLog;
 import com.fs.gtPush.domain.UniPushLog;
@@ -53,6 +55,9 @@ public class uniPush2ServiceImpl implements uniPush2Service {
     @Autowired
     @Autowired
     private CompanyUserMapper companyUserMapper;
     private CompanyUserMapper companyUserMapper;
 
 
+    @Autowired
+    private IMConfig imConfig;
+
     @Override
     @Override
     public PushResult pushMessage(PushReqBean push) {
     public PushResult pushMessage(PushReqBean push) {
         SysConfig config = iSysConfigService.selectConfigByConfigKey("his.config");
         SysConfig config = iSysConfigService.selectConfigByConfigKey("his.config");
@@ -92,6 +97,10 @@ public class uniPush2ServiceImpl implements uniPush2Service {
             if (param.getPayload() == null) {
             if (param.getPayload() == null) {
                 param.setPayload(new HashMap<>());
                 param.setPayload(new HashMap<>());
             }
             }
+
+            if(imJsonString.length()>100){
+                imJsonString="";
+            }
             param.getPayload().put("url", purl);
             param.getPayload().put("url", purl);
             if (StringUtils.isNotBlank(imJsonString)) {
             if (StringUtils.isNotBlank(imJsonString)) {
                 param.getPayload().put("extra", imJsonString);
                 param.getPayload().put("extra", imJsonString);
@@ -110,9 +119,13 @@ public class uniPush2ServiceImpl implements uniPush2Service {
             Map<String, Object> options = new HashMap<>();
             Map<String, Object> options = new HashMap<>();
             Map<String, Object> android = new HashMap<>();
             Map<String, Object> android = new HashMap<>();
 
 
+
+            String json = iSysConfigService.selectConfigByKey("im.config");
+            IMSystemConfig config = JSONUtil.toBean(json, IMSystemConfig.class);
             // 小米
             // 小米
             Map<String, Object> xm = new HashMap<>();
             Map<String, Object> xm = new HashMap<>();
-            xm.put("/extra.channel_id", "133892");
+            xm.put("/extra.channel_id", config.getXm_channel_id());
+
             xm.put("/extra.notify_foreground", true);
             xm.put("/extra.notify_foreground", true);
             android.put("XM", xm);
             android.put("XM", xm);
 
 
@@ -246,6 +259,11 @@ public class uniPush2ServiceImpl implements uniPush2Service {
             return null;
             return null;
         }
         }
 
 
+        if(imJsonString.length()>100 ){
+            // 报文总共只能传 4096 长度
+            imJsonString="";
+        }
+
         // payload
         // payload
         Map<String, Object> payload = new HashMap<>();
         Map<String, Object> payload = new HashMap<>();
         if (StringUtils.isNotBlank(purl)) {
         if (StringUtils.isNotBlank(purl)) {
@@ -266,9 +284,12 @@ public class uniPush2ServiceImpl implements uniPush2Service {
         // options.android
         // options.android
         Map<String, Object> android = new HashMap<>();
         Map<String, Object> android = new HashMap<>();
 
 
+        String json = iSysConfigService.selectConfigByKey("im.config");
+        IMSystemConfig config = JSONUtil.toBean(json, IMSystemConfig.class);
+
         // 小米
         // 小米
         Map<String, Object> xm = new HashMap<>();
         Map<String, Object> xm = new HashMap<>();
-        xm.put("/extra.channel_id", "133892");
+        xm.put("/extra.channel_id", config.getXm_channel_id());
         android.put("XM", xm);
         android.put("XM", xm);
 
 
         // OPPO
         // OPPO