|
@@ -151,17 +151,36 @@ public class AuthController {
|
|
|
log.info("客户端id: {} 认证类型:{} 异常!.", clientId, grantType);
|
|
|
return R.fail(MessageUtils.message("auth.grant.type.error"));
|
|
|
}
|
|
|
- LoginVo loginVo = IAuthStrategy.weChatLogin(form, loginBody, client);
|
|
|
|
|
|
Object tenantId = RedisUtils.getCacheObject(loginBody.getUsername() + ":login");
|
|
|
if (ObjectUtil.isEmpty(tenantId)) {
|
|
|
+ tenantId = "000000";
|
|
|
|
|
|
- SysUserVo sysUserVo = sysUserMapper.selectUserByUserName(loginBody.getUsername());
|
|
|
- tenantId = sysUserVo.getTenantId();
|
|
|
+ List<SysUserVo> sysUserVo = sysUserMapper.selectUserByUserNameList(loginBody.getUsername());
|
|
|
+ if (sysUserVo != null && sysUserVo.size() > 0) {
|
|
|
+ boolean flag = true;
|
|
|
+ for (SysUserVo userVo : sysUserVo) {
|
|
|
+ if (!"000000".equals(userVo.getTenantId()) && flag){
|
|
|
+ tenantId = userVo.getTenantId();
|
|
|
+ }
|
|
|
+ Long userId = userVo.getUserId();
|
|
|
+ List<SysRoleVo> sysRoleVo = sysRoleMapper.selectRolePermissionByUserId(userId);
|
|
|
+ for (SysRoleVo roleVo : sysRoleVo) {
|
|
|
+ if ("teacher".equals(roleVo.getRoleKey())) {
|
|
|
+ tenantId = userVo.getTenantId();
|
|
|
+ flag = false;
|
|
|
+ break;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
}
|
|
|
loginBody.setTenantId(tenantId.toString());
|
|
|
+ LoginVo loginVo = IAuthStrategy.weChatLogin(form, loginBody, client);
|
|
|
|
|
|
loginService.checkTenant(loginBody.getTenantId());
|
|
|
+
|
|
|
+ RedisUtils.setCacheObject(loginBody.getUsername() + ":login",tenantId);
|
|
|
return R.ok(loginVo);
|
|
|
}
|
|
|
|