瀏覽代碼

fix用户IM签名

Eric 1 年之前
父節點
當前提交
82e6823481

+ 28 - 10
cooleshow-auth/auth-server/src/main/java/com/yonge/cooleshow/auth/core/handler/BaseAuthenticationSuccessEventHandler.java

@@ -12,6 +12,17 @@ import com.yonge.cooleshow.common.entity.HttpResponseResult;
 import com.yonge.cooleshow.common.security.SecurityConstants;
 import io.rong.models.response.TokenResult;
 import io.rong.models.user.UserModel;
+import com.fasterxml.jackson.databind.ObjectMapper;
+import com.yonge.cooleshow.api.feign.AdminFeignService;
+import com.yonge.cooleshow.api.feign.dto.ImUserInfo;
+import com.yonge.cooleshow.auth.api.entity.SysUser;
+import com.yonge.cooleshow.auth.api.entity.SysUserLogin;
+import com.yonge.cooleshow.auth.api.entity.SysUserLoginLog;
+import com.yonge.cooleshow.auth.service.SysUserLoginLogService;
+import com.yonge.cooleshow.auth.service.SysUserLoginService;
+import com.yonge.cooleshow.auth.service.SysUserService;
+import com.yonge.cooleshow.common.entity.HttpResponseResult;
+import com.yonge.cooleshow.common.security.SecurityConstants;
 import org.apache.commons.collections.MapUtils;
 import org.apache.commons.lang3.StringUtils;
 import org.slf4j.Logger;
@@ -54,6 +65,8 @@ public class BaseAuthenticationSuccessEventHandler extends SavedRequestAwareAuth
 	private ObjectMapper objectMapper;
 	@Autowired
 	private ClientDetailsService clientDetailsService;
+	@Autowired
+	private AdminFeignService adminFeignService;
 
 	@Autowired
 	private AuthorizationServerTokenServices defaultAuthorizationServerTokenServices;
@@ -80,22 +93,27 @@ public class BaseAuthenticationSuccessEventHandler extends SavedRequestAwareAuth
 		} else {
 			sysUser = sysUserService.queryLockByPhone(username.split(":")[1]);
 		}
-		if(StringUtils.isEmpty(sysUser.getImToken())){
+		/*if(StringUtils.isEmpty(sysUser.getImToken())){
 			String name = sysUser.getUsername();
 			if(StringUtils.isEmpty(name)){
 				name = sysUser.getRealName();
 			}
-			try {
-				TokenResult result = RongCloudConfig.rongCloud.user.register(new UserModel(sysUser.getId().toString(), name, sysUser.getAvatar()));
+
+		}*/
+		// 强制更新im_token
+		try {
+				/*TokenResult result = RongCloudConfig.rongCloud.user.register(new UserModel(sysUser.getId().toString(), name, sysUser.getAvatar()));
 				if(!result.code.equals(200)){
 					logger.error("获取用户token失败:{}",result.errorMessage);
-				}
-				sysUser.setImToken(result.getToken());
-				sysUser.setUpdateTime(new Date());
-				sysUserService.update(sysUser);
-			} catch (Exception e) {
-				e.printStackTrace();
-			}
+				}*/
+
+			ImUserInfo register = adminFeignService.register(sysUser.getId().toString(), clientId.toUpperCase(), sysUser.getUsername(), sysUser.getAvatar());
+
+			sysUser.setImToken(register.getImToken());
+			sysUser.setUpdateTime(new Date());
+			sysUserService.update(sysUser);
+		} catch (Exception e) {
+			logger.error("获取用户im_token失败:{}",e.getMessage());
 		}
 		Date date = new Date();
 		//修改添加登录信息

+ 2 - 1
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/im/impl/ImGroupCoreServiceImpl.java

@@ -369,7 +369,8 @@ public class ImGroupCoreServiceImpl implements ImGroupCoreService {
                 .clientType(imGroupMember.getClientType())
                 .build());
 
-        imPluginContext.getPluginService().groupQuit(imGroup.getId(), getImGroupMembers(groupMembers));
+        // 删除主动退群操作,由移动端或前端自己主动发起退群操作
+        //imPluginContext.getPluginService().groupQuit(imGroup.getId(), getImGroupMembers(groupMembers));
     }
 
     /**