|
@@ -435,4 +435,22 @@ public class SysLoginService {
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+ public String loginWithoutPass(String tenantId, String username, String password, String code, String uuid) {
|
|
|
|
|
+
|
|
|
|
|
+ // 校验租户
|
|
|
|
|
+ checkTenant(tenantId);
|
|
|
|
|
+ //未登录前临时设置租户id
|
|
|
|
|
+ LoginHelper.setTenantId(tenantId);
|
|
|
|
|
+ SysUserVo user = loadUserByUsername(tenantId, username);
|
|
|
|
|
+ user.setTenantId(tenantId);
|
|
|
|
|
+ checkLogin(LoginType.PASSWORD, tenantId, username, () -> true);
|
|
|
|
|
+ // 此处可根据登录用户的数据不同 自行创建 loginUser
|
|
|
|
|
+ LoginUser loginUser = buildLoginUser(user);
|
|
|
|
|
+ // 生成token
|
|
|
|
|
+ LoginHelper.loginByDevice(loginUser, DeviceType.PC);
|
|
|
|
|
+
|
|
|
|
|
+ recordLoginInfo(loginUser.getTenantId(), username, Constants.LOGIN_SUCCESS, MessageUtils.message("user.login.success"));
|
|
|
|
|
+ recordLoginInfo(user.getId());
|
|
|
|
|
+ return StpUtil.getTokenValue();
|
|
|
|
|
+ }
|
|
|
}
|
|
}
|