优化登录

v1.4.1
Parker 5 years ago
parent 93fdd826b5
commit 736e9ed4fb

@ -25,6 +25,7 @@ import org.opsli.api.wrapper.system.tenant.TenantModel;
import org.opsli.api.wrapper.system.user.UserModel;
import org.opsli.common.api.TokenThreadLocal;
import org.opsli.common.exception.TokenException;
import org.opsli.common.thread.refuse.AsyncProcessQueueReFuse;
import org.opsli.common.utils.IPUtil;
import org.opsli.core.msg.TokenMsg;
import org.opsli.core.security.shiro.realm.OAuth2Realm;
@ -122,6 +123,8 @@ public class LoginRestController {
//生成token并保存到Redis
ResultVo<Map<String, Object>> resultVo = UserTokenUtil.createToken(user);
if(resultVo.isSuccess()){
// 异步保存IP
AsyncProcessQueueReFuse.execute(()->{
try {
// 临时设置 token缓存
TokenThreadLocal.put(String.valueOf(resultVo.getData().get("token")));
@ -129,13 +132,12 @@ public class LoginRestController {
String clientIpAddress = IPUtil.getClientIpAddress(request);
user.setLoginIp(clientIpAddress);
iUserService.updateLoginIp(user);
}catch (Exception ignored){
}finally {
// 清空 token缓存
TokenThreadLocal.remove();
}
});
}
return resultVo;
}

@ -273,11 +273,11 @@ public class UserServiceImpl extends CrudServiceImpl<UserMapper, SysUser, UserMo
return false;
}
// 激活一下 当前登录用户 User
UserUtil.getUser(model.getId());
//UserUtil.getUser(model.getId());
SysUser sysUser = new SysUser();
sysUser.setId(model.getId());
sysUser.setLoginIp(model.getLoginIp());
sysUser.setUpdateBy(model.getUpdateBy());
return mapper.updateLoginIp(sysUser);
}

Loading…
Cancel
Save