Procházet zdrojové kódy

im 回调优化给销售发送消息添加回调

xgb před 3 týdny
rodič
revize
625f299a2c

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

@@ -17,6 +17,7 @@ import com.fs.gtPush.domain.PushResult;
 import com.fs.gtPush.domain.UniPushLog;
 import com.fs.gtPush.service.UniPushLogService;
 import com.fs.gtPush.service.uniPush2Service;
+import com.fs.his.enums.PushLogTypeEnum;
 import com.fs.im.config.IMConfig;
 import com.fs.im.service.OpenIMService;
 import com.fs.system.service.ISysConfigService;
@@ -30,6 +31,7 @@ import org.springframework.stereotype.Service;
 
 import java.util.HashMap;
 import java.util.Map;
+import java.util.Objects;
 
 @Service
 @Slf4j
@@ -142,6 +144,17 @@ public class uniPush2ServiceImpl implements uniPush2Service {
         return null;
     }
 
+    /**
+     *
+     * @param userId 接收人id
+     * @param businessId 相关id
+     * @param purl 推送地址
+     * @param title
+     * @param content
+     * @param type 推送类型
+     * @param desType 推送类型详细类型
+     * @param imJsonString
+     */
     @Override
     public void pushIm(Long userId, Long businessId, String purl, String title, String content, Float type, Integer desType, String imJsonString) {
         try {
@@ -303,16 +316,26 @@ public class uniPush2ServiceImpl implements uniPush2Service {
                                    Float type, Integer desType, String imJsonString) {
         if (userId == null) return null;
         String jpushId = "";
-        FsUser fsUser = userService.selectFsUserByUserId(userId);
-        if (fsUser == null){
+        if (Objects.equals(type, PushLogTypeEnum.UTOC.getValue())){
             CompanyUser companyUser = companyUserMapper.selectCompanyUserById(userId);
             if (companyUser == null){
                 return null;
             }
             jpushId = companyUser.getJpushId();
         } else {
+            FsUser fsUser = userService.selectFsUserByUserId(userId);
             jpushId = fsUser.getJpushId();
         }
+//        FsUser fsUser = userService.selectFsUserByUserId(userId);
+//        if (fsUser == null){
+//            CompanyUser companyUser = companyUserMapper.selectCompanyUserById(userId);
+//            if (companyUser == null){
+//                return null;
+//            }
+//            jpushId = companyUser.getJpushId();
+//        } else {
+//            jpushId = fsUser.getJpushId();
+//        }
 
         if (StringUtils.isBlank(jpushId) || "0".equals(jpushId) || "string".equals(jpushId)) {
             return null;

+ 2 - 2
fs-service/src/main/java/com/fs/his/enums/PushLogTypeEnum.java

@@ -17,8 +17,8 @@ public enum PushLogTypeEnum {
     ORDER_INTEGRAL(0.4f,"积分订单通知"),
     HEALTH(1f,"健康管理类通知"),
     MARKET(2f,"营销类通知"),
-    COURSE(3f,"课程类通知");
-
+    COURSE(3f,"课程类通知"),
+    UTOC(4f,"用户发给销售类通知");
 
 
 

+ 18 - 15
fs-service/src/main/java/com/fs/his/service/impl/FsInquiryOrderMsgServiceImpl.java

@@ -18,6 +18,7 @@ import com.fs.gtPush.service.uniPush2Service;
 import com.fs.his.domain.*;
 import com.fs.his.dto.FsInquiryOrderPatientDTO;
 import com.fs.his.enums.PushLogDesTypeEnum;
+import com.fs.his.enums.PushLogTypeEnum;
 import com.fs.his.mapper.*;
 import com.fs.his.param.FsInquiryOrderMsgListDParam;
 import com.fs.his.param.ImMsgParam;
@@ -441,11 +442,13 @@ public class FsInquiryOrderMsgServiceImpl implements IFsInquiryOrderMsgService {
 
             }
             String jsonStr = objectMapper.writeValueAsString(openImMsgCallBackVO);
+            PushLogTypeEnum pushLogTypeEnum = PushLogTypeEnum.HEALTH;
             if (msgContentType != null) {
                 if (to.startsWith("U")) {
                     a = to.replace("U", "");
                 } else if (to.startsWith("C")) {
                     a = to.replace("C", "");
+                    pushLogTypeEnum = PushLogTypeEnum.UTOC;
                 }
                 switch (msgContentType) {
                     case 1601:
@@ -470,7 +473,7 @@ public class FsInquiryOrderMsgServiceImpl implements IFsInquiryOrderMsgService {
                         OpenImResponseDTOTest responseDTO1 = JSONUtil.toBean(result1, OpenImResponseDTOTest.class);
                         List<OpenIMServiceImpl.UserInfo> users = responseDTO1.getData().getUsersInfo();
 
-                        uniPush2Service.pushIm(Long.parseLong(a), 0l, "", users.get(0).getNickname(), "通话消息", 1f, PushLogDesTypeEnum.IM_MSG.getValue(), jsonStr);
+                        uniPush2Service.pushIm(Long.parseLong(a), 0l, "", users.get(0).getNickname(), "通话消息", pushLogTypeEnum.getValue(), PushLogDesTypeEnum.IM_MSG.getValue(), jsonStr);
 
                         break;
                     //普通消息
@@ -478,7 +481,7 @@ public class FsInquiryOrderMsgServiceImpl implements IFsInquiryOrderMsgService {
                         type = 1;
                         jsonNode = objectMapper.readTree(content);
                         cont = jsonNode.get("content").asText();
-                        uniPush2Service.pushIm(Long.parseLong(a), 0l, "", openImMsgCallBackVO.getSenderNickname(), cont, 1f, PushLogDesTypeEnum.IM_MSG.getValue(), jsonStr);
+                        uniPush2Service.pushIm(Long.parseLong(a), 0l, "", openImMsgCallBackVO.getSenderNickname(), cont, pushLogTypeEnum.getValue(), PushLogDesTypeEnum.IM_MSG.getValue(), jsonStr);
 
                         break;
                     //语音消息
@@ -506,7 +509,7 @@ public class FsInquiryOrderMsgServiceImpl implements IFsInquiryOrderMsgService {
 ////                                deviceSetUpService.sendMp3(deviceSendParam);
 //                            }
 //                        }
-                        uniPush2Service.pushIm(Long.parseLong(a), 0l, "", openImMsgCallBackVO.getSenderNickname(), "语音消息", 1f, PushLogDesTypeEnum.IM_MSG.getValue(), jsonStr);
+                        uniPush2Service.pushIm(Long.parseLong(a), 0l, "", openImMsgCallBackVO.getSenderNickname(), "语音消息", pushLogTypeEnum.getValue(), PushLogDesTypeEnum.IM_MSG.getValue(), jsonStr);
                         break;
                     //图片消息
                     case 102:
@@ -523,7 +526,7 @@ public class FsInquiryOrderMsgServiceImpl implements IFsInquiryOrderMsgService {
                         openImMsgCallBackVO.setContent("");
                         jsonStr = objectMapper.writeValueAsString(openImMsgCallBackVO);
                         type = 3;
-                        uniPush2Service.pushIm(Long.parseLong(a), 0l, "", openImMsgCallBackVO.getSenderNickname(), "图片消息", 1f, PushLogDesTypeEnum.IM_MSG.getValue(), jsonStr);
+                        uniPush2Service.pushIm(Long.parseLong(a), 0l, "", openImMsgCallBackVO.getSenderNickname(), "图片消息", pushLogTypeEnum.getValue(), PushLogDesTypeEnum.IM_MSG.getValue(), jsonStr);
                         break;
                     //视频消息
                     case 104:
@@ -540,7 +543,7 @@ public class FsInquiryOrderMsgServiceImpl implements IFsInquiryOrderMsgService {
                         openImMsgCallBackVO.setContent("");
                         jsonStr = objectMapper.writeValueAsString(openImMsgCallBackVO);
                         type = 4;
-                        uniPush2Service.pushIm(Long.parseLong(a), 0l, "", openImMsgCallBackVO.getSenderNickname(), "视频消息", 1f, PushLogDesTypeEnum.IM_MSG.getValue(), jsonStr);
+                        uniPush2Service.pushIm(Long.parseLong(a), 0l, "", openImMsgCallBackVO.getSenderNickname(), "视频消息", pushLogTypeEnum.getValue(), PushLogDesTypeEnum.IM_MSG.getValue(), jsonStr);
                         break;
                     //文件消息
                     case 105:
@@ -549,7 +552,7 @@ public class FsInquiryOrderMsgServiceImpl implements IFsInquiryOrderMsgService {
                         type = 4;
                         openImMsgCallBackVO.setContent("");
                         jsonStr = objectMapper.writeValueAsString(openImMsgCallBackVO);
-                        uniPush2Service.pushIm(Long.parseLong(a), 0l, "", openImMsgCallBackVO.getSenderNickname(), "文件消息", 1f, PushLogDesTypeEnum.IM_MSG.getValue(), jsonStr);
+                        uniPush2Service.pushIm(Long.parseLong(a), 0l, "", openImMsgCallBackVO.getSenderNickname(), "文件消息", pushLogTypeEnum.getValue(), PushLogDesTypeEnum.IM_MSG.getValue(), jsonStr);
                         break;
                     //自定义消息
                     case 110:
@@ -568,7 +571,7 @@ public class FsInquiryOrderMsgServiceImpl implements IFsInquiryOrderMsgService {
                             type = 5;
                             user = fsUserMapper.selectFsUserByUserId(Long.parseLong(a));
                             if (StringUtils.isNotEmpty(user.getJpushId())) {
-                                uniPush2Service.pushIm(Long.parseLong(a), 0l, "", openImMsgCallBackVO.getSenderNickname(), "电子处方单", 1f, PushLogDesTypeEnum.IM_MSG.getValue(), jsonStr);
+                                uniPush2Service.pushIm(Long.parseLong(a), 0l, "", openImMsgCallBackVO.getSenderNickname(), "电子处方单", pushLogTypeEnum.getValue(), PushLogDesTypeEnum.IM_MSG.getValue(), jsonStr);
                             }
                             break;
                         } else if (data.equals("report")) {
@@ -581,7 +584,7 @@ public class FsInquiryOrderMsgServiceImpl implements IFsInquiryOrderMsgService {
                             type = 6;
                             user = fsUserMapper.selectFsUserByUserId(Long.parseLong(a));
                             if (StringUtils.isNotEmpty(user.getJpushId())) {
-                                uniPush2Service.pushIm(Long.parseLong(a), 0l, "", openImMsgCallBackVO.getSenderNickname(), "问诊报告单", 1f, PushLogDesTypeEnum.IM_MSG.getValue(), jsonStr);
+                                uniPush2Service.pushIm(Long.parseLong(a), 0l, "", openImMsgCallBackVO.getSenderNickname(), "问诊报告单", pushLogTypeEnum.getValue(), PushLogDesTypeEnum.IM_MSG.getValue(), jsonStr);
                             }
                             break;
                         } else if (data.equals("follow")) {
@@ -590,7 +593,7 @@ public class FsInquiryOrderMsgServiceImpl implements IFsInquiryOrderMsgService {
                             //orderId = payload.get("extension").get("followId").asLong();
                             user = fsUserMapper.selectFsUserByUserId(Long.parseLong(a));
                             if (StringUtils.isNotEmpty(user.getJpushId())) {
-                                uniPush2Service.pushIm(Long.parseLong(a), 0l, "", openImMsgCallBackVO.getSenderNickname(), "随访单", 1f, PushLogDesTypeEnum.IM_MSG.getValue(), jsonStr);
+                                uniPush2Service.pushIm(Long.parseLong(a), 0l, "", openImMsgCallBackVO.getSenderNickname(), "随访单", pushLogTypeEnum.getValue(), PushLogDesTypeEnum.IM_MSG.getValue(), jsonStr);
                             }
                             break;
                         } else if (data.equals("drugReport")) {
@@ -599,7 +602,7 @@ public class FsInquiryOrderMsgServiceImpl implements IFsInquiryOrderMsgService {
                             type = 8;
                             user = fsUserMapper.selectFsUserByUserId(Long.parseLong(a));
                             if (StringUtils.isNotEmpty(user.getJpushId())) {
-                                uniPush2Service.pushIm(Long.parseLong(a), 0l, "", openImMsgCallBackVO.getSenderNickname(), "用药报告单", 1f, PushLogDesTypeEnum.IM_MSG.getValue(), jsonStr);
+                                uniPush2Service.pushIm(Long.parseLong(a), 0l, "", openImMsgCallBackVO.getSenderNickname(), "用药报告单", pushLogTypeEnum.getValue(), PushLogDesTypeEnum.IM_MSG.getValue(), jsonStr);
                             }
                             break;
                         } else if (data.equals("package")) {
@@ -613,7 +616,7 @@ public class FsInquiryOrderMsgServiceImpl implements IFsInquiryOrderMsgService {
                             openImMsgCallBackVO.setContent("");
                             jsonStr = objectMapper.writeValueAsString(openImMsgCallBackVO);
                             if (StringUtils.isNotEmpty(user.getJpushId())) {
-                                uniPush2Service.pushIm(Long.parseLong(a), 0l, "", openImMsgCallBackVO.getSenderNickname(), "套餐包", 1f, PushLogDesTypeEnum.IM_MSG.getValue(), jsonStr);
+                                uniPush2Service.pushIm(Long.parseLong(a), 0l, "", openImMsgCallBackVO.getSenderNickname(), "套餐包", pushLogTypeEnum.getValue(), PushLogDesTypeEnum.IM_MSG.getValue(), jsonStr);
                             }
                             break;
                         } else if (data.equals("couponPackage")) {
@@ -624,7 +627,7 @@ public class FsInquiryOrderMsgServiceImpl implements IFsInquiryOrderMsgService {
                             openImMsgCallBackVO.setContent("");
                             jsonStr = objectMapper.writeValueAsString(openImMsgCallBackVO);
                             if (StringUtils.isNotEmpty(user.getJpushId())) {
-                                uniPush2Service.pushIm(Long.parseLong(a), 0l, "", openImMsgCallBackVO.getSenderNickname(), "私域疗法券", 1f, PushLogDesTypeEnum.IM_MSG.getValue(), jsonStr);
+                                uniPush2Service.pushIm(Long.parseLong(a), 0l, "", openImMsgCallBackVO.getSenderNickname(), "私域疗法券", pushLogTypeEnum.getValue(), PushLogDesTypeEnum.IM_MSG.getValue(), jsonStr);
                             }
                             break;
                         } else if (data.equals("inquirySelect")) {
@@ -635,7 +638,7 @@ public class FsInquiryOrderMsgServiceImpl implements IFsInquiryOrderMsgService {
                             openImMsgCallBackVO.setContent("");
                             jsonStr = objectMapper.writeValueAsString(openImMsgCallBackVO);
                             if (StringUtils.isNotEmpty(user.getJpushId())) {
-                                uniPush2Service.pushIm(Long.parseLong(a), 0l, "", openImMsgCallBackVO.getSenderNickname(), "会诊", 1f, PushLogDesTypeEnum.IM_MSG.getValue(), jsonStr);
+                                uniPush2Service.pushIm(Long.parseLong(a), 0l, "", openImMsgCallBackVO.getSenderNickname(), "会诊", pushLogTypeEnum.getValue(), PushLogDesTypeEnum.IM_MSG.getValue(), jsonStr);
                             }
                             break;
                         } else if (data.equals("startInquiry") || data.equals("finishInquiry")) {
@@ -643,7 +646,7 @@ public class FsInquiryOrderMsgServiceImpl implements IFsInquiryOrderMsgService {
                             type = 1;
                             user = fsUserMapper.selectFsUserByUserId(Long.parseLong(a));
                             if (StringUtils.isNotEmpty(user.getJpushId())) {
-                                uniPush2Service.pushIm(Long.parseLong(a), 0l, "", openImMsgCallBackVO.getSenderNickname(), "接诊通知", 1f, PushLogDesTypeEnum.IM_MSG.getValue(), jsonStr);
+                                uniPush2Service.pushIm(Long.parseLong(a), 0l, "", openImMsgCallBackVO.getSenderNickname(), "接诊通知", pushLogTypeEnum.getValue(), PushLogDesTypeEnum.IM_MSG.getValue(), jsonStr);
                             }
                             break;
                         } else if (data.equals("course")) {
@@ -651,7 +654,7 @@ public class FsInquiryOrderMsgServiceImpl implements IFsInquiryOrderMsgService {
                             type = 1;
                             user = fsUserMapper.selectFsUserByUserId(Long.parseLong(a));
                             if (StringUtils.isNotEmpty(user.getJpushId())) {
-                                uniPush2Service.pushIm(Long.parseLong(a), 0l, "", openImMsgCallBackVO.getSenderNickname(), cont, 1f, PushLogDesTypeEnum.IM_MSG.getValue(), jsonStr);
+                                uniPush2Service.pushIm(Long.parseLong(a), 0l, "", openImMsgCallBackVO.getSenderNickname(), cont, pushLogTypeEnum.getValue(), PushLogDesTypeEnum.IM_MSG.getValue(), jsonStr);
                             }
                             break;
                         }