commit
7c2b478cdc
|
|
@ -20,6 +20,11 @@ public interface RemoteSocialService {
|
||||||
*/
|
*/
|
||||||
void insertByBo(RemoteSocialBo bo);
|
void insertByBo(RemoteSocialBo bo);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 更新社会化关系
|
||||||
|
*/
|
||||||
|
void updateByBo(RemoteSocialBo bo);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 删除社会化关系
|
* 删除社会化关系
|
||||||
*/
|
*/
|
||||||
|
|
|
||||||
|
|
@ -31,6 +31,7 @@ import org.dromara.system.api.RemoteTenantService;
|
||||||
import org.dromara.system.api.RemoteUserService;
|
import org.dromara.system.api.RemoteUserService;
|
||||||
import org.dromara.system.api.domain.bo.RemoteSocialBo;
|
import org.dromara.system.api.domain.bo.RemoteSocialBo;
|
||||||
import org.dromara.system.api.domain.bo.RemoteUserBo;
|
import org.dromara.system.api.domain.bo.RemoteUserBo;
|
||||||
|
import org.dromara.system.api.domain.vo.RemoteSocialVo;
|
||||||
import org.dromara.system.api.domain.vo.RemoteTenantVo;
|
import org.dromara.system.api.domain.vo.RemoteTenantVo;
|
||||||
import org.dromara.system.api.model.LoginUser;
|
import org.dromara.system.api.model.LoginUser;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
|
@ -66,14 +67,25 @@ public class SysLoginService {
|
||||||
* @param authUserData 授权响应实体
|
* @param authUserData 授权响应实体
|
||||||
*/
|
*/
|
||||||
public void socialRegister(AuthUser authUserData) {
|
public void socialRegister(AuthUser authUserData) {
|
||||||
|
String authId = authUserData.getSource() + authUserData.getUuid();
|
||||||
|
// 第三方用户信息
|
||||||
RemoteSocialBo bo = BeanUtil.toBean(authUserData, RemoteSocialBo.class);
|
RemoteSocialBo bo = BeanUtil.toBean(authUserData, RemoteSocialBo.class);
|
||||||
BeanUtil.copyProperties(authUserData.getToken(), bo);
|
BeanUtil.copyProperties(authUserData.getToken(), bo);
|
||||||
bo.setUserId(LoginHelper.getUserId());
|
bo.setUserId(LoginHelper.getUserId());
|
||||||
bo.setAuthId(authUserData.getSource() + authUserData.getUuid());
|
bo.setAuthId(authId);
|
||||||
bo.setOpenId(authUserData.getUuid());
|
bo.setOpenId(authUserData.getUuid());
|
||||||
bo.setUserName(authUserData.getUsername());
|
bo.setUserName(authUserData.getUsername());
|
||||||
bo.setNickName(authUserData.getNickname());
|
bo.setNickName(authUserData.getNickname());
|
||||||
remoteSocialService.insertByBo(bo);
|
// 查询是否已经绑定用户
|
||||||
|
RemoteSocialVo vo = remoteSocialService.selectByAuthId(authId);
|
||||||
|
if (ObjectUtil.isEmpty(vo)) {
|
||||||
|
// 没有绑定用户, 新增用户信息
|
||||||
|
remoteSocialService.insertByBo(bo);
|
||||||
|
} else {
|
||||||
|
// 更新用户信息
|
||||||
|
bo.setId(vo.getId());
|
||||||
|
remoteSocialService.updateByBo(bo);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
||||||
|
|
@ -6,8 +6,10 @@ import org.dromara.common.core.utils.MapstructUtils;
|
||||||
import org.dromara.system.api.RemoteSocialService;
|
import org.dromara.system.api.RemoteSocialService;
|
||||||
import org.dromara.system.api.domain.bo.RemoteSocialBo;
|
import org.dromara.system.api.domain.bo.RemoteSocialBo;
|
||||||
import org.dromara.system.api.domain.vo.RemoteSocialVo;
|
import org.dromara.system.api.domain.vo.RemoteSocialVo;
|
||||||
|
import org.dromara.system.domain.SysSocial;
|
||||||
import org.dromara.system.domain.bo.SysSocialBo;
|
import org.dromara.system.domain.bo.SysSocialBo;
|
||||||
import org.dromara.system.domain.vo.SysSocialVo;
|
import org.dromara.system.domain.vo.SysSocialVo;
|
||||||
|
import org.dromara.system.mapper.SysSocialMapper;
|
||||||
import org.dromara.system.service.ISysSocialService;
|
import org.dromara.system.service.ISysSocialService;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
|
|
@ -22,6 +24,7 @@ import org.springframework.stereotype.Service;
|
||||||
public class RemoteSocialServiceImpl implements RemoteSocialService {
|
public class RemoteSocialServiceImpl implements RemoteSocialService {
|
||||||
|
|
||||||
private final ISysSocialService sysSocialService;
|
private final ISysSocialService sysSocialService;
|
||||||
|
private final SysSocialMapper sysSocialMapper;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 根据 authId 查询用户信息
|
* 根据 authId 查询用户信息
|
||||||
|
|
@ -40,6 +43,14 @@ public class RemoteSocialServiceImpl implements RemoteSocialService {
|
||||||
sysSocialService.insertByBo(MapstructUtils.convert(bo, SysSocialBo.class));
|
sysSocialService.insertByBo(MapstructUtils.convert(bo, SysSocialBo.class));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 更新社会化关系
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public void updateByBo(RemoteSocialBo bo) {
|
||||||
|
sysSocialService.updateByBo(MapstructUtils.convert(bo, SysSocialBo.class));
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 删除社会化关系
|
* 删除社会化关系
|
||||||
*/
|
*/
|
||||||
|
|
|
||||||
|
|
@ -33,6 +33,11 @@ public interface ISysSocialService {
|
||||||
*/
|
*/
|
||||||
Boolean insertByBo(SysSocialBo bo);
|
Boolean insertByBo(SysSocialBo bo);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 更新社会化关系
|
||||||
|
*/
|
||||||
|
|
||||||
|
Boolean updateByBo(SysSocialBo bo);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 删除社会化关系信息
|
* 删除社会化关系信息
|
||||||
|
|
|
||||||
|
|
@ -65,6 +65,16 @@ public class SysSocialServiceImpl implements ISysSocialService {
|
||||||
return flag;
|
return flag;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 更新社会化关系
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public Boolean updateByBo(SysSocialBo bo) {
|
||||||
|
SysSocial update = MapstructUtils.convert(bo, SysSocial.class);
|
||||||
|
validEntityBeforeSave(update);
|
||||||
|
return baseMapper.updateById(update) > 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 保存前的数据校验
|
* 保存前的数据校验
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue