15376779826 1 mesiac pred
rodič
commit
0b0c39fe56

+ 4 - 7
fs-doctor-app/src/main/java/com/fs/app/controller/DoctorController.java

@@ -68,8 +68,6 @@ public class DoctorController extends  AppBaseController {
     private OpenIMService openIMService;
     @Autowired
     private SmsService smsService;
-    @Autowired
-    IMConfig imConfig;
     @ApiOperation("登录")
     @PostMapping("/login")
     public R login(@Validated  @RequestBody DoctorLoginParam param) {
@@ -111,7 +109,6 @@ public class DoctorController extends  AppBaseController {
     @ApiOperation("校验医生是否注册新的im")
     @PostMapping("/accountCheck")
     public R accountCheck(@RequestBody Map<String, String> userIdMap){
-        String prefix = imConfig.getPrefix();
         //获取管理员token
         String userId = userIdMap.get("userId");
         String adminToken = openIMService.getAdminToken();
@@ -123,7 +120,7 @@ public class DoctorController extends  AppBaseController {
             requestBody = new JSONObject();
             userIds.add(userId);
             requestBody.put("checkUserIDs", userIds);
-            String body = HttpRequest.post(imConfig.getUrl()+"/user/account_check")
+            String body = HttpRequest.post(IMConfig.URL+"/user/account_check")
                     .header("operationID", String.valueOf(System.currentTimeMillis()))
                     .header("token", adminToken)
                     .body(requestBody.toString())
@@ -136,7 +133,7 @@ public class DoctorController extends  AppBaseController {
                 int accountStatus = resultObj.getInt("accountStatus");
                 //未注册自动注册
                 if (accountStatus==0){
-                    String s = userId.replaceFirst("^"+prefix+"D", "");
+                    String s = userId.replaceFirst("^"+IMConfig.PREFIX+"D", "");
                     FsDoctor fsDoctor = doctorService.selectFsDoctorByDoctorId(Long.parseLong(s));
                     if (null==fsDoctor){
                         return R.error("用户不存在");
@@ -150,7 +147,7 @@ public class DoctorController extends  AppBaseController {
                     requestBody = new JSONObject();
                     //userIds.add(userId);
                     requestBody.put("users", users);
-                    String body1 = HttpRequest.post(imConfig.getUrl()+"/user/user_register")
+                    String body1 = HttpRequest.post(IMConfig.URL+"/user/user_register")
                             .header("operationID", String.valueOf(System.currentTimeMillis()))
                             .header("token", adminToken).body(requestBody.toString()).execute().body();
                     log.info("注册结果:"+body1);
@@ -161,7 +158,7 @@ public class DoctorController extends  AppBaseController {
             requestBody = new JSONObject();
             requestBody.put("platformID",5);
             requestBody.put("userID",userId);
-            String body1 = HttpRequest.post(imConfig.getUrl()+"/api/auth/get_user_token")
+            String body1 = HttpRequest.post(IMConfig.URL+"/api/auth/get_user_token")
                     .header("operationID", String.valueOf(System.currentTimeMillis()))
                     .header("token", adminToken)
                     .body(requestBody.toString()).execute().body();

+ 3 - 3
fs-doctor-app/src/main/java/com/fs/app/controller/DrugReportController.java

@@ -21,6 +21,7 @@ import com.fs.his.service.IFsFollowService;
 import com.fs.his.vo.FsDrugReportDVO;
 import com.fs.his.vo.FsDrugReportListDVO;
 import com.fs.his.vo.FsFollowListDVO;
+import com.fs.im.config.IMConfig;
 import com.fs.im.dto.*;
 import com.fs.im.service.IImService;
 import com.fs.im.service.OpenIMService;
@@ -58,7 +59,6 @@ public class DrugReportController extends AppBaseController {
     private IFsDrugReportCountService fsDrugReportCountService;
     @Autowired
     private OpenIMService openIMService;
-    private static final String PREFIX = "scrm";
     @ApiOperation("获取报告列表")
     @GetMapping("/getDrugReportList")
     public R getDrugReportList(FsDrugReportListDParam param)
@@ -112,7 +112,7 @@ public class DrugReportController extends AppBaseController {
             //imService.sendMsg(msgDTO);
             ObjectMapper objectMapper = new ObjectMapper();
             String ex = objectMapper.writeValueAsString(customDTO);
-            openIMService.sendUtil(PREFIX+"D"+follow.getDoctorId(),PREFIX+"U"+follow.getUserId(),110,"drugReport","","","",report.getReportId().toString(),ex);
+            openIMService.sendUtil(IMConfig.PREFIX+"D"+follow.getDoctorId(),IMConfig.PREFIX+"U"+follow.getUserId(),110,"drugReport","","","",report.getReportId().toString(),ex);
 
             fsDrugReportCountService.addReportCountByUserIdAndDoctorId(follow.getUserId(),follow.getDoctorId());
 
@@ -147,7 +147,7 @@ public class DrugReportController extends AppBaseController {
         //imService.sendMsg(msgDTO);
         ObjectMapper objectMapper = new ObjectMapper();
         String ex = objectMapper.writeValueAsString(customDTO);
-        openIMService.sendUtil(PREFIX+"D"+follow.getDoctorId(),PREFIX+"U"+follow.getUserId(),110,"finishDrugReport","","您的用药咨询报告已出具,本次咨询结束","","",ex);
+        openIMService.sendUtil(IMConfig.PREFIX+"D"+follow.getDoctorId(),IMConfig.PREFIX+"U"+follow.getUserId(),110,"finishDrugReport","","您的用药咨询报告已出具,本次咨询结束","","",ex);
 
         redisTemplate.delete("DrugReport:doctorId:" + follow.getDoctorId() + ":userId:" + follow.getUserId());
         return R.ok();

+ 6 - 1
fs-doctor-app/src/main/java/com/fs/app/controller/PrescribeController.java

@@ -18,6 +18,7 @@ import com.fs.his.param.*;
 import com.fs.his.service.*;
 import com.fs.his.vo.FsDoctorPrescribeListDVO;
 import com.fs.his.vo.FsPrescribeListDVO;
+import com.fs.im.config.IMConfig;
 import com.fs.im.dto.MsgCustomDTO;
 import com.fs.im.dto.OpenImMsgDTO;
 import com.fs.im.dto.OpenImResponseDTO;
@@ -29,6 +30,7 @@ import com.github.pagehelper.PageInfo;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import lombok.Synchronized;
+import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.transaction.annotation.Transactional;
@@ -39,6 +41,7 @@ import javax.servlet.http.HttpServletRequest;
 import java.util.*;
 
 
+@Slf4j
 @Api("处方接口")
 @RestController
 @RequestMapping(value="/app/prescribe")
@@ -329,7 +332,9 @@ public class PrescribeController extends  AppBaseController {
         //fsUserCouponService.updateFsUserCouponStatusByLimtType2();
 //        openIMService.checkAndImportFriendByDianBo(Long.parseLong(map.get("sendId")),map.get("userId"),qwExternalContact.getCorpId());
         //OpenImResponseDTO openImResponseDTO = openIMService.sendCourse(Long.parseLong(map.get("userId")), Long.parseLong(map.get("sendId")), "/pages/courseAnswer/index?link=1932017457275338752", "《五仙传医2.0》","https://cos.his.cdwjyyh.com/fs/20241108/a8ed49ae9a264c7483cec5bdcbcf6060.png");
-        OpenImResponseDTO openImResponseDTO = openIMService.sendUtil("scrmD"+map.get("sendId"), "scrmU"+map.get("userId").toString(), 110, map.get("payloadDAata").toString(), "", map.get("title").toString(), "", "3135749",ex);
+        log.info("请求地址{}",IMConfig.URL);
+        log.info("前缀{}",IMConfig.PREFIX);
+        //OpenImResponseDTO openImResponseDTO = openIMService.sendUtil(IMConfig.PREFIX+"D" +map.get("sendId"), IMConfig.PREFIX+"U"+map.get("userId").toString(), 110, map.get("payloadDAata").toString(), "", map.get("title").toString(), "", "3135749",ex);
         return R.ok().put("data",null);
     }
 }

+ 3 - 2
fs-service/src/main/java/com/fs/his/service/impl/FsDoctorServiceImpl.java

@@ -22,6 +22,7 @@ import com.fs.his.utils.ConfigUtil;
 import com.fs.his.utils.HttpUtil;
 import com.fs.his.utils.qrcode.QRCodeUtils;
 import com.fs.his.vo.*;
+import com.fs.im.config.IMConfig;
 import com.fs.im.dto.*;
 import com.fs.im.service.IImService;
 import com.fs.im.service.OpenIMService;
@@ -72,7 +73,7 @@ public class FsDoctorServiceImpl implements IFsDoctorService
     ConfigUtil configUtil;
     @Autowired
     private OpenIMService openIMService;
-    private static final String PREFIX = "scrm";
+
     /**
      * 查询医生管理
      *
@@ -416,7 +417,7 @@ public class FsDoctorServiceImpl implements IFsDoctorService
                         //imService.sendMsg(msgDTO);
                         ObjectMapper objectMapper = new ObjectMapper();
                         String ex = objectMapper.writeValueAsString(customDTO3);
-                        openIMService.sendUtil(PREFIX+"D"+fsFollow.getDoctorId(),PREFIX+"U"+fsFollow.getUserId(),110,"follow","","",followId,"",ex);
+                        openIMService.sendUtil(IMConfig.PREFIX+"D"+fsFollow.getDoctorId(),IMConfig.PREFIX+"U"+fsFollow.getUserId(),110,"follow","","",followId,"",ex);
                         /*OpenImMsgDTO openImMsgDTO = new OpenImMsgDTO();
                         openImMsgDTO.setSendID("D"+fsFollow.getDoctorId().toString());
                         openImMsgDTO.setRecvID("U"+fsFollow.getUserId().toString());

+ 2 - 2
fs-service/src/main/java/com/fs/his/service/impl/FsFollowServiceImpl.java

@@ -19,6 +19,7 @@ import com.fs.his.param.FsFollowListUParam;
 import com.fs.his.param.FsFollowParam;
 import com.fs.his.param.FsStoreOrderParam;
 import com.fs.his.vo.*;
+import com.fs.im.config.IMConfig;
 import com.fs.im.dto.*;
 import com.fs.im.service.IImService;
 import com.fs.im.service.OpenIMService;
@@ -56,7 +57,6 @@ public class FsFollowServiceImpl implements IFsFollowService
     @Autowired
     private FsDoctorMapper fsDoctorMapper;
     Logger logger= LoggerFactory.getLogger(getClass());
-    private static final String PREFIX = "scrm";
     /**
      * 查询随访管理
      *
@@ -191,7 +191,7 @@ public class FsFollowServiceImpl implements IFsFollowService
             //MsgResponseDTO msgResponseDTO = imService.sendMsg(msgDTO);
             ObjectMapper objectMapper = new ObjectMapper();
             String ex = objectMapper.writeValueAsString(customDTO);
-            OpenImResponseDTO follow = openIMService.sendUtil(PREFIX+"D"+fsFollow.getDoctorId(), PREFIX+"U"+fsFollow.getUserId(), 110, "follow", "", "", followId, "",ex);
+            OpenImResponseDTO follow = openIMService.sendUtil(IMConfig.PREFIX+"D"+fsFollow.getDoctorId(), IMConfig.PREFIX+"U"+fsFollow.getUserId(), 110, "follow", "", "", followId, "",ex);
             /*OpenImMsgDTO openImMsgDTO = new OpenImMsgDTO();
             openImMsgDTO.setSendID("D"+fsFollow.getDoctorId().toString());
             openImMsgDTO.setRecvID("U"+fsFollow.getUserId().toString());

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

@@ -30,6 +30,7 @@ import com.fs.his.param.ImMsgParam;
 import com.fs.his.service.IFsFollowReportService;
 import com.fs.his.service.IFsInquiryOrderReportService;
 import com.fs.his.vo.FsInquiryOrderMsgListDVO;
+import com.fs.im.config.IMConfig;
 import com.fs.im.dto.OpenImMsgCallBackResponse;
 import com.fs.im.service.IImService;
 import com.fs.im.vo.OpenImMsgCallBackVO;
@@ -79,7 +80,6 @@ public class FsInquiryOrderMsgServiceImpl implements IFsInquiryOrderMsgService
     @Autowired
     private DeviceSetUpService deviceSetUpService;
 
-    private static final String PREFIX = "scrm";
 //    @Autowired
 //    TemplateListener publisher;
     Logger logger= LoggerFactory.getLogger(getClass());
@@ -348,20 +348,20 @@ public class FsInquiryOrderMsgServiceImpl implements IFsInquiryOrderMsgService
             String companyUserId="";
             String msgType="2";
             //用户发送消息
-            if (send.contains(PREFIX+"U")){
+            if (send.contains(IMConfig.PREFIX+"U")){
                 msgType="1";
-                userId=send.replace(PREFIX+"U","");
-                if (to.contains(PREFIX+"D")){
-                    doctorId=to.replace(PREFIX+"D","");
+                userId=send.replace(IMConfig.PREFIX+"U","");
+                if (to.contains(IMConfig.PREFIX+"D")){
+                    doctorId=to.replace(IMConfig.PREFIX+"D","");
                     fsFollowReportService.addReport(userId,doctorId);
-                }else if (to.contains(PREFIX+"C")){
-                    companyUserId=to.replace(PREFIX+"C","");
+                }else if (to.contains(IMConfig.PREFIX+"C")){
+                    companyUserId=to.replace(IMConfig.PREFIX+"C","");
                 }
                 //医生发送消息
-            }else if (send.contains(PREFIX+"D")){
-                doctorId=send.replace(PREFIX+"D","");
-                if (to.contains(PREFIX+"U")){
-                    userId=to.replace(PREFIX+"U","");
+            }else if (send.contains(IMConfig.PREFIX+"D")){
+                doctorId=send.replace(IMConfig.PREFIX+"D","");
+                if (to.contains(IMConfig.PREFIX+"U")){
+                    userId=to.replace(IMConfig.PREFIX+"U","");
                     TemplateBean templateBean = TemplateBean.builder()
                             .title("您收到咨询回复")
                             .remark("您的咨询已回复")
@@ -404,15 +404,15 @@ public class FsInquiryOrderMsgServiceImpl implements IFsInquiryOrderMsgService
                         }
                     }
                 }else {
-                    companyUserId = to.replace(PREFIX+"C","");
+                    companyUserId = to.replace(IMConfig.PREFIX+"C","");
                 }
                 //销售发送消息
-            }else if (send.contains(PREFIX+"C")){
-                companyUserId=send.replace(PREFIX+"C","");
-                if (to.contains(PREFIX+"U")){
-                    userId=to.replace(PREFIX+"U","");
+            }else if (send.contains(IMConfig.PREFIX+"C")){
+                companyUserId=send.replace(IMConfig.PREFIX+"C","");
+                if (to.contains(IMConfig.PREFIX+"U")){
+                    userId=to.replace(IMConfig.PREFIX+"U","");
                 }else {
-                    doctorId = to.replace(PREFIX+"D","");
+                    doctorId = to.replace(IMConfig.PREFIX+"D","");
                 }
             }
             Long orderId = fsInquiryOrderMsgMapper.selectFsInquiryOrderMsgOrderId(doctorId, userId);

+ 5 - 5
fs-service/src/main/java/com/fs/his/service/impl/FsInquiryOrderServiceImpl.java

@@ -43,6 +43,7 @@ import com.fs.his.vo.*;
 import com.fs.huifuPay.domain.HuiFuRefundResult;
 import com.fs.huifuPay.sdk.opps.core.request.V2TradePaymentScanpayRefundRequest;
 import com.fs.huifuPay.service.HuiFuService;
+import com.fs.im.config.IMConfig;
 import com.fs.im.dto.*;
 import com.fs.im.service.IImService;
 import com.fs.im.service.OpenIMService;
@@ -176,7 +177,6 @@ public class FsInquiryOrderServiceImpl implements IFsInquiryOrderService
     private ConfigUtil configUtil;
     @Autowired
     private OpenIMService openIMService;
-    private static final String PREFIX = PREFIX+"";
     /**
      * 查询问诊订单
      *
@@ -934,7 +934,7 @@ public class FsInquiryOrderServiceImpl implements IFsInquiryOrderService
         //imService.sendMsg(msgDTO);
         ObjectMapper objectMapper = new ObjectMapper();
         String ex = objectMapper.writeValueAsString(customDTO);
-        openIMService.sendUtil(PREFIX+"D"+param.getDoctorId(),PREFIX+"U"+order.getUserId(),110,"startInquiry","",doctor.getDoctorName()+doc+"为您服务","","","");
+        openIMService.sendUtil(IMConfig.PREFIX+"D"+param.getDoctorId(),IMConfig.PREFIX+"U"+order.getUserId(),110,"startInquiry","",doctor.getDoctorName()+doc+"为您服务","","","");
         /*OpenImMsgDTO openImMsgDTO = new OpenImMsgDTO();
         openImMsgDTO.setSendID("D"+param.getDoctorId().toString());
         openImMsgDTO.setRecvID("U"+order.getUserId().toString());
@@ -967,7 +967,7 @@ public class FsInquiryOrderServiceImpl implements IFsInquiryOrderService
 
             ObjectMapper objectMapper1 = new ObjectMapper();
             String ex1 = objectMapper.writeValueAsString(customDTO1);
-            openIMService.sendUtil(PREFIX+"D"+param.getDoctorId(),PREFIX+"U"+order.getUserId(),110,"startInquiry","","您好,我是芸医汇互联网医院执业药师,请问您有什么问题想咨询?","","",ex1);
+            openIMService.sendUtil(IMConfig.PREFIX+"D"+param.getDoctorId(),IMConfig.PREFIX+"U"+order.getUserId(),110,"startInquiry","","您好,我是芸医汇互联网医院执业药师,请问您有什么问题想咨询?","","",ex1);
             /*OpenImMsgDTO openImMsgDTO1 = new OpenImMsgDTO();
             openImMsgDTO1.setSendID("D"+param.getDoctorId().toString());
             openImMsgDTO1.setRecvID("U"+order.getUserId().toString());
@@ -1098,7 +1098,7 @@ public class FsInquiryOrderServiceImpl implements IFsInquiryOrderService
         //imService.sendMsg(msgDTO);
         ObjectMapper objectMapper = new ObjectMapper();
         String ex = objectMapper.writeValueAsString(customDTO);
-        openIMService.sendUtil(PREFIX+"D"+order.getDoctorId(),PREFIX+"U"+order.getUserId(),110,"startInquiry","",doctor.getDoctorName()+doc+"为您服务","","",ex);
+        openIMService.sendUtil(IMConfig.PREFIX+"D"+order.getDoctorId(),IMConfig.PREFIX+"U"+order.getUserId(),110,"startInquiry","",doctor.getDoctorName()+doc+"为您服务","","",ex);
         /*OpenImMsgDTO openImMsgDTO = new OpenImMsgDTO();
         openImMsgDTO.setSendID("D"+order.getDoctorId().toString());
         openImMsgDTO.setRecvID("U"+order.getUserId().toString());
@@ -1131,7 +1131,7 @@ public class FsInquiryOrderServiceImpl implements IFsInquiryOrderService
 
             ObjectMapper objectMapper1 = new ObjectMapper();
             String ex1 = objectMapper.writeValueAsString(customDTO1);
-            openIMService.sendUtil(PREFIX+"D"+param.getDoctorId(),PREFIX+"U"+order.getUserId(),110,"startInquiry","","您好,我是芸医汇互联网医院执业药师,请问您有什么问题想咨询?","","",ex1);
+            openIMService.sendUtil(IMConfig.PREFIX+"D"+param.getDoctorId(),IMConfig.PREFIX+"U"+order.getUserId(),110,"startInquiry","","您好,我是芸医汇互联网医院执业药师,请问您有什么问题想咨询?","","",ex1);
            /* OpenImMsgDTO openImMsgDTO1 = new OpenImMsgDTO();
             openImMsgDTO1.setSendID("D"+order.getDoctorId().toString());
             openImMsgDTO1.setRecvID("U"+order.getUserId().toString());

+ 10 - 0
fs-service/src/main/java/com/fs/im/config/IMConfig.java

@@ -3,6 +3,8 @@ package com.fs.im.config;
 import org.springframework.beans.factory.annotation.Value;
 import org.springframework.stereotype.Component;
 
+import javax.annotation.PostConstruct;
+
 @Component
 //@ConfigurationProperties(prefix = "openIM")
 public class IMConfig {
@@ -14,7 +16,15 @@ public class IMConfig {
     private String url;
     @Value("${openIM.prefix}")
     private String prefix;
+    // 静态常量
+    public static String PREFIX;
+    public static String URL;
 
+    @PostConstruct
+    public void init() {
+        PREFIX = this.prefix;
+        URL = this.url;
+    }
 
     public String getSecret() {
         return secret;

+ 36 - 38
fs-service/src/main/java/com/fs/im/service/impl/OpenIMServiceImpl.java

@@ -67,8 +67,6 @@ public class OpenIMServiceImpl implements OpenIMService {
     @Autowired
     @Lazy
     private AiHookService aiHookService;
-    private static final String OPEN_IM_URL = "https://web.im.cdwjyyh.com/api";
-    private static final String PREFIX = "scrm";
     /*@Autowired
     private IFsUserService fsUserService;*/
     @Override
@@ -83,7 +81,7 @@ public class OpenIMServiceImpl implements OpenIMService {
         String adminToken = null;
         // 发起 HTTP POST 请求,获取管理员 token
         try {
-            String response = HttpRequest.post(OPEN_IM_URL+"/auth/get_admin_token")
+            String response = HttpRequest.post(IMConfig.URL+"/auth/get_admin_token")
                     .header("operationID", String.valueOf(System.currentTimeMillis()))
                     .body(requestBody.toString())
                     .execute()
@@ -267,7 +265,7 @@ public class OpenIMServiceImpl implements OpenIMService {
                 pagination.put("pageNumber", pageNumber);
                 pagination.put("showNumber", pageSize);
                 requestBody.put("pagination", pagination);
-                String body = HttpRequest.post(OPEN_IM_URL+"/conversation/get_owner_conversation")
+                String body = HttpRequest.post(IMConfig.URL+"/conversation/get_owner_conversation")
                         .header("operationID", String.valueOf(System.currentTimeMillis()))
                         .header("token", adminToken)
                         .body(requestBody.toString())
@@ -320,7 +318,7 @@ public class OpenIMServiceImpl implements OpenIMService {
             pagination.put("showNumber", pageSize);
             requestPage.put("pagination", pagination);
 
-            String result = HttpRequest.post(OPEN_IM_URL+"/user/get_all_users_uid")
+            String result = HttpRequest.post(IMConfig.URL+"/user/get_all_users_uid")
                     .header("operationID", String.valueOf(time))
                     .header("token", token)
                     .body(requestPage.toString())
@@ -337,7 +335,7 @@ public class OpenIMServiceImpl implements OpenIMService {
 
             // 过滤出以C开头的用户ID
             List<String> userIds = userIDs.stream()
-                    .filter(uid -> uid.startsWith(PREFIX+"C"))
+                    .filter(uid -> uid.startsWith(IMConfig.PREFIX+"C"))
                     .collect(Collectors.toList());
 
             if (CollectionUtil.isNotEmpty(userIds)) {
@@ -345,7 +343,7 @@ public class OpenIMServiceImpl implements OpenIMService {
                 paramMap.put("userIDs", userIds);
 
                 String jsonBody = JSONUtil.toJsonStr(paramMap);
-                String result1 = HttpRequest.post(OPEN_IM_URL+"/user/get_users_info")
+                String result1 = HttpRequest.post(IMConfig.URL+"/user/get_users_info")
                         .header("operationID", String.valueOf(time))
                         .header("token", token)
                         .body(jsonBody)
@@ -367,7 +365,7 @@ public class OpenIMServiceImpl implements OpenIMService {
                         bodyMap.put("userInfo", updateUserInfo);
 
                         String jsonBody1 = JSONUtil.toJsonStr(bodyMap);
-                        String result2 = HttpRequest.post(OPEN_IM_URL+"/user/update_user_info_ex")
+                        String result2 = HttpRequest.post(IMConfig.URL+"/user/update_user_info_ex")
                                 .header("operationID", String.valueOf(System.currentTimeMillis()))
                                 .header("token", token)
                                 .body(jsonBody1)
@@ -403,11 +401,11 @@ public class OpenIMServiceImpl implements OpenIMService {
         OpenImResponseDTO responseDTO = null;
         Map<String, Object> paramMap = new HashMap<>();
         ArrayList<String> userIDs = new ArrayList<>();
-        userIDs.add(PREFIX+"C"+companyUser.getUserId());
+        userIDs.add(IMConfig.PREFIX+"C"+companyUser.getUserId());
         paramMap.put("userIDs", userIDs);
 
         String jsonBody = JSONUtil.toJsonStr(paramMap);
-        String result1 = HttpRequest.post(OPEN_IM_URL+"/user/get_users_info")
+        String result1 = HttpRequest.post(IMConfig.URL+"/user/get_users_info")
                 .header("operationID", String.valueOf(time))
                 .header("token", adminToken)
                 .body(jsonBody)
@@ -428,7 +426,7 @@ public class OpenIMServiceImpl implements OpenIMService {
             Map<String, Object> bodyMap = new HashMap<>();
             bodyMap.put("userInfo", updateUserInfo);
             String jsonBody1 = JSONUtil.toJsonStr(bodyMap);
-            String result2 = HttpRequest.post(OPEN_IM_URL+"/user/update_user_info_ex")
+            String result2 = HttpRequest.post(IMConfig.URL+"/user/update_user_info_ex")
                     .header("operationID", String.valueOf(System.currentTimeMillis()))
                     .header("token", adminToken)
                     .body(jsonBody1)
@@ -466,7 +464,7 @@ public class OpenIMServiceImpl implements OpenIMService {
         JSONObject jsonObject = new JSONObject(openImMsgDTO);
         log.info("发送消息的请求体:\n{}", jsonObject.toString());
         long time = new Date().getTime();
-        String result = HttpRequest.post(OPEN_IM_URL+"/msg/send_msg")
+        String result = HttpRequest.post(IMConfig.URL+"/msg/send_msg")
                 .header("operationID", time + "")
                 .header("token",adminToken)
                 .body(jsonObject.toString())
@@ -509,8 +507,8 @@ public class OpenIMServiceImpl implements OpenIMService {
 
 
 
-        openImMsgDTO.setSendID(PREFIX+"C"+companyUserId);
-        openImMsgDTO.setRecvID(PREFIX+"U"+userId);
+        openImMsgDTO.setSendID(IMConfig.PREFIX+"C"+companyUserId);
+        openImMsgDTO.setRecvID(IMConfig.PREFIX+"U"+userId);
         openImMsgDTO.setContentType(110);
         openImMsgDTO.setSessionType(1);
         // 输出格式化JSON日志
@@ -526,8 +524,8 @@ public class OpenIMServiceImpl implements OpenIMService {
             OpenImMsgDTO.OfflinePushInfo offlinePushInfo = new OpenImMsgDTO.OfflinePushInfo();
             ObjectMapper objectMapper = new ObjectMapper();
             OpenImMsgDTO openImMsgDTO = new OpenImMsgDTO();
-            if (sendID.startsWith(PREFIX+"C")){
-                CompanyUser company = companyUserMapper.selectCompanyUserByUserId(Long.parseLong(sendID.replace(PREFIX+"C", "")));
+            if (sendID.startsWith(IMConfig.PREFIX+"C")){
+                CompanyUser company = companyUserMapper.selectCompanyUserByUserId(Long.parseLong(sendID.replace(IMConfig.PREFIX+"C", "")));
                 if (null!=company){
                     offlinePushInfo.setTitle(company.getNickName());
                     openImMsgDTO.setSenderFaceURL(company.getAvatar());
@@ -585,15 +583,15 @@ public class OpenIMServiceImpl implements OpenIMService {
             OpenImMsgDTO.OfflinePushInfo offlinePushInfo = new OpenImMsgDTO.OfflinePushInfo();
             ObjectMapper objectMapper = new ObjectMapper();
             OpenImMsgDTO openImMsgDTO = new OpenImMsgDTO();
-            if (sendID.startsWith(PREFIX+"D")){
-                FsDoctor fsDoctor = fsDoctorMapper.selectFsDoctorByDoctorId(Long.parseLong(sendID.replace(PREFIX+"D","")));
+            if (sendID.startsWith(IMConfig.PREFIX+"D")){
+                FsDoctor fsDoctor = fsDoctorMapper.selectFsDoctorByDoctorId(Long.parseLong(sendID.replace(IMConfig.PREFIX+"D","")));
                 //FsUser fsUser = fsUserService.selectFsUserByUserId(sendID);
                 if (null!=fsDoctor&&StringUtils.isNotEmpty(fsDoctor.getAvatar())){
                     offlinePushInfo.setTitle(fsDoctor.getDoctorName());
                     openImMsgDTO.setSenderFaceURL(fsDoctor.getAvatar());
                 }
-            }else if (sendID.startsWith(PREFIX+"C")){
-                CompanyUser company = companyUserMapper.selectCompanyUserByUserId(Long.parseLong(sendID.replace(PREFIX+"C", "")));
+            }else if (sendID.startsWith(IMConfig.PREFIX+"C")){
+                CompanyUser company = companyUserMapper.selectCompanyUserByUserId(Long.parseLong(sendID.replace(IMConfig.PREFIX+"C", "")));
                 if (null!=company&&StringUtils.isNotEmpty(company.getAvatar())){
                     offlinePushInfo.setTitle(company.getNickName());
                     openImMsgDTO.setSenderFaceURL(company.getAvatar());
@@ -680,9 +678,9 @@ public class OpenIMServiceImpl implements OpenIMService {
         try {
             ObjectMapper objectMapper = new ObjectMapper();
             OpenImMsgDTO openImMsgDTO = new OpenImMsgDTO();
-            if (sendID.startsWith(PREFIX+"U")){
+            if (sendID.startsWith(IMConfig.PREFIX+"U")){
                 //FsDoctor fsDoctor = fsDoctorMapper.selectFsDoctorByDoctorId(Long.parseLong(sendID.replace("D","")));
-                FsUser fsUser = fsUserMapper.selectFsUserByUserId(Long.parseLong(sendID.replace(PREFIX+"U","")));
+                FsUser fsUser = fsUserMapper.selectFsUserByUserId(Long.parseLong(sendID.replace(IMConfig.PREFIX+"U","")));
                 if (null!=fsUser&&StringUtils.isNotEmpty(fsUser.getAvatar())){
                     openImMsgDTO.setSenderFaceURL(fsUser.getAvatar());
                 }
@@ -780,7 +778,7 @@ public class OpenIMServiceImpl implements OpenIMService {
         while (retryCount < maxRetries) {
             try {
                 JSONObject jsonObject = new JSONObject(dto);
-                String body = HttpRequest.post(OPEN_IM_URL+"/conversation/set_conversations")
+                String body = HttpRequest.post(IMConfig.URL+"/conversation/set_conversations")
                         .header("operationID", String.valueOf(System.currentTimeMillis()))
                         .header("token", adminToken)
                         .body(jsonObject.toString())
@@ -812,7 +810,7 @@ public class OpenIMServiceImpl implements OpenIMService {
         JSONObject jsonObject = new JSONObject();
         jsonObject.put("userID1",userID1);
         jsonObject.put("userID2",userID2);
-        String body = HttpRequest.post(OPEN_IM_URL+"/friend/is_friend")
+        String body = HttpRequest.post(IMConfig.URL+"/friend/is_friend")
                 .header("operationID", String.valueOf(System.currentTimeMillis()))
                 .header("token", adminToken)
                 .body(jsonObject.toString())
@@ -849,7 +847,7 @@ public class OpenIMServiceImpl implements OpenIMService {
         JSONObject jsonObject = new JSONObject();
         jsonObject.put("ownerUserID",ownerUserID);
         jsonObject.put("friendUserIDs",newFriendIds);
-        String body = HttpRequest.post(OPEN_IM_URL+"/friend/import_friend")
+        String body = HttpRequest.post(IMConfig.URL+"/friend/import_friend")
                 .header("operationID", String.valueOf(System.currentTimeMillis()))
                 .header("token", adminToken)
                 .body(jsonObject.toString())
@@ -886,7 +884,7 @@ public class OpenIMServiceImpl implements OpenIMService {
             requestBody = new JSONObject();
             userIds.add(userId);
             requestBody.put("checkUserIDs", userIds);
-            String body = HttpRequest.post(OPEN_IM_URL+"/user/account_check")
+            String body = HttpRequest.post(IMConfig.URL+"/user/account_check")
                     .header("operationID", String.valueOf(System.currentTimeMillis()))
                     .header("token", adminToken)
                     .body(requestBody.toString())
@@ -941,7 +939,7 @@ public class OpenIMServiceImpl implements OpenIMService {
                     requestBody = new JSONObject();
                     userIds.add(userId);
                     requestBody.put("users", users);
-                    HttpRequest.post(OPEN_IM_URL+"/user/user_register")
+                    HttpRequest.post(IMConfig.URL+"/user/user_register")
                             .header("operationID", String.valueOf(System.currentTimeMillis()))
                             .header("token", adminToken).body(requestBody.toString()).execute().body();
                 }
@@ -954,7 +952,7 @@ public class OpenIMServiceImpl implements OpenIMService {
             requestBody = new JSONObject();
             requestBody.put("platformID",5);
             requestBody.put("userID",userId);
-            String body1 = HttpRequest.post(OPEN_IM_URL+"/auth/get_user_token")
+            String body1 = HttpRequest.post(IMConfig.URL+"/auth/get_user_token")
                     .header("operationID", String.valueOf(System.currentTimeMillis()))
                     .header("token", adminToken)
                     .body(requestBody.toString()).execute().body();
@@ -975,13 +973,13 @@ public class OpenIMServiceImpl implements OpenIMService {
     public void checkAndImportFriend(Long companyUserId,String fsUserId) {
         try {
             // 注册账号
-            accountCheck(PREFIX+"C" + companyUserId, "2");
-            accountCheck(PREFIX+"U"+fsUserId, "1");
+            accountCheck(IMConfig.PREFIX+"C" + companyUserId, "2");
+            accountCheck(IMConfig.PREFIX+"U"+fsUserId, "1");
 
             // 导入好友关系
             ArrayList<String> userIds = new ArrayList<>();
-            userIds.add(PREFIX+"U" + fsUserId);
-            importFriend(PREFIX+"C" + companyUserId, userIds);
+            userIds.add(IMConfig.PREFIX+"U" + fsUserId);
+            importFriend(IMConfig.PREFIX+"C" + companyUserId, userIds);
         } catch (Exception e) {
             log.error("异步执行IM注册/添加好友失败:", e);
         }
@@ -992,14 +990,14 @@ public class OpenIMServiceImpl implements OpenIMService {
     public void checkAndImportFriendByDianBo(Long companyUserId,String fsUserId,String cropId) {
         try {
             // 注册账号
-            accountCheck(PREFIX+"C" + companyUserId, "2");
-            accountCheck(PREFIX+"U"+fsUserId, "1");
+            accountCheck(IMConfig.PREFIX+"C" + companyUserId, "2");
+            accountCheck(IMConfig.PREFIX+"U"+fsUserId, "1");
 
             // 导入好友关系
             ArrayList<String> userIds = new ArrayList<>();
-            userIds.add(PREFIX+"U" + fsUserId);
-            importFriend(PREFIX+"C" + companyUserId, userIds);
-            updateFriendByDianBo(PREFIX+"C" + companyUserId, userIds,cropId);
+            userIds.add(IMConfig.PREFIX+"U" + fsUserId);
+            importFriend(IMConfig.PREFIX+"C" + companyUserId, userIds);
+            updateFriendByDianBo(IMConfig.PREFIX+"C" + companyUserId, userIds,cropId);
         } catch (Exception e) {
             log.error("异步执行IM注册/添加好友失败:", e);
         }
@@ -1037,7 +1035,7 @@ public class OpenIMServiceImpl implements OpenIMService {
         jsonObject.put("ownerUserID",ownerUserID);
         jsonObject.put("friendUserIDs",friendUserIDs);
         jsonObject.put("remark",remark.get(0));
-        String body = HttpRequest.post(OPEN_IM_URL+"/friend/update_friends")
+        String body = HttpRequest.post(IMConfig.URL+"/friend/update_friends")
                 .header("operationID", String.valueOf(System.currentTimeMillis()))
                 .header("token", adminToken)
                 .body(jsonObject.toString())