提交 827e2fca authored 作者: hzh's avatar hzh

账号密码登录添加云上编码

上级 de862fb4
...@@ -100,6 +100,11 @@ public class LoginUser implements Serializable { ...@@ -100,6 +100,11 @@ public class LoginUser implements Serializable {
*/ */
private String username; private String username;
/**
* 手机号
*/
private String phonenumber;
/** /**
* 用户昵称 * 用户昵称
*/ */
......
...@@ -23,11 +23,15 @@ import org.dromara.common.json.utils.JsonUtils; ...@@ -23,11 +23,15 @@ import org.dromara.common.json.utils.JsonUtils;
import org.dromara.common.redis.utils.RedisUtils; import org.dromara.common.redis.utils.RedisUtils;
import org.dromara.common.satoken.utils.LoginHelper; import org.dromara.common.satoken.utils.LoginHelper;
import org.dromara.common.tenant.helper.TenantHelper; import org.dromara.common.tenant.helper.TenantHelper;
import org.dromara.server.api.RemoteServerService;
import org.dromara.server.api.domain.RemoteUser;
import org.dromara.system.api.RemoteUserService; import org.dromara.system.api.RemoteUserService;
import org.dromara.system.api.domain.vo.RemoteClientVo; import org.dromara.system.api.domain.vo.RemoteClientVo;
import org.dromara.system.api.model.LoginUser; import org.dromara.system.api.model.LoginUser;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.util.Optional;
/** /**
* 密码认证策略 * 密码认证策略
* *
...@@ -45,6 +49,9 @@ public class PasswordAuthStrategy implements IAuthStrategy { ...@@ -45,6 +49,9 @@ public class PasswordAuthStrategy implements IAuthStrategy {
@DubboReference @DubboReference
private RemoteUserService remoteUserService; private RemoteUserService remoteUserService;
@DubboReference
private RemoteServerService remoteServerService;
@Override @Override
public LoginVo login(String body, RemoteClientVo client) { public LoginVo login(String body, RemoteClientVo client) {
PasswordLoginBody loginBody = JsonUtils.parseObject(body, PasswordLoginBody.class); PasswordLoginBody loginBody = JsonUtils.parseObject(body, PasswordLoginBody.class);
...@@ -72,7 +79,9 @@ public class PasswordAuthStrategy implements IAuthStrategy { ...@@ -72,7 +79,9 @@ public class PasswordAuthStrategy implements IAuthStrategy {
// 例如: 后台用户30分钟过期 app用户1天过期 // 例如: 后台用户30分钟过期 app用户1天过期
model.setTimeout(client.getTimeout()); model.setTimeout(client.getTimeout());
model.setActiveTimeout(client.getActiveTimeout()); model.setActiveTimeout(client.getActiveTimeout());
RemoteUser ru = remoteServerService.getUserByPhone(loginUser.getTenantId(), loginUser.getPhonenumber());
model.setExtra(LoginHelper.CLIENT_KEY, client.getClientId()); model.setExtra(LoginHelper.CLIENT_KEY, client.getClientId());
model.setExtra(LoginHelper.YS_USER_ID, Optional.ofNullable(ru).map(RemoteUser::getUserNo).orElse(null));
// 生成token // 生成token
LoginHelper.login(loginUser, model); LoginHelper.login(loginUser, model);
......
...@@ -281,6 +281,7 @@ public class RemoteUserServiceImpl implements RemoteUserService { ...@@ -281,6 +281,7 @@ public class RemoteUserServiceImpl implements RemoteUserService {
loginUser.setDeptId(userVo.getDeptId()); loginUser.setDeptId(userVo.getDeptId());
loginUser.setUsername(userVo.getUserName()); loginUser.setUsername(userVo.getUserName());
loginUser.setNickname(userVo.getNickName()); loginUser.setNickname(userVo.getNickName());
loginUser.setPhonenumber(userVo.getPhonenumber());
loginUser.setPassword(userVo.getPassword()); loginUser.setPassword(userVo.getPassword());
loginUser.setUserType(userVo.getUserType()); loginUser.setUserType(userVo.getUserType());
loginUser.setMenuPermission(permissionService.getMenuPermission(userVo.getUserId())); loginUser.setMenuPermission(permissionService.getMenuPermission(userVo.getUserId()));
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论