use of com.ruoyi.system.api.model.XcxLoginUser in project RuoYi-Cloud-Plus by JavaLionLi.
the class SysLoginService method xcxLogin.
public String xcxLogin(String xcxCode) {
// xcxCode 为 小程序调用 wx.login 授权后获取
// todo 自行实现 校验 appid + appsrcret + xcxCode 调用登录凭证校验接口 获取 session_key 与 openid
String openid = "";
XcxLoginUser userInfo = remoteUserService.getUserInfoByOpenid(openid);
// 生成token
LoginHelper.loginByDevice(userInfo, DeviceType.XCX);
recordLogininfor(userInfo.getUsername(), Constants.LOGIN_SUCCESS, MessageUtils.message("user.login.success"));
return StpUtil.getTokenValue();
}
use of com.ruoyi.system.api.model.XcxLoginUser in project RuoYi-Cloud-Plus by JavaLionLi.
the class RemoteUserServiceImpl method getUserInfoByOpenid.
@Override
public XcxLoginUser getUserInfoByOpenid(String openid) throws UserException {
// todo 自行实现 userService.selectUserByOpenid(openid);
SysUser sysUser = new SysUser();
if (ObjectUtil.isNull(sysUser)) {
// todo 用户不存在 业务逻辑自行实现
}
if (UserStatus.DELETED.getCode().equals(sysUser.getDelFlag())) {
// todo 用户已被删除 业务逻辑自行实现
}
if (UserStatus.DISABLE.getCode().equals(sysUser.getStatus())) {
// todo 用户已被停用 业务逻辑自行实现
}
// 此处可根据登录用户的数据不同 自行创建 loginUser
XcxLoginUser loginUser = new XcxLoginUser();
loginUser.setUserId(sysUser.getUserId());
loginUser.setUsername(sysUser.getUserName());
loginUser.setUserType(sysUser.getUserType());
loginUser.setOpenid(openid);
return loginUser;
}
Aggregations