提交 2991cbe5 authored 作者: hzh's avatar hzh

部分代码功能实现

上级 60f70e04
......@@ -28,6 +28,11 @@ public class RemoteTenantVo implements Serializable {
*/
private String tenantId;
/**
* 企业码
*/
private String companyCode;
/**
* 联系人
*/
......@@ -98,4 +103,9 @@ public class RemoteTenantVo implements Serializable {
*/
private String status;
/**
* 是否虚拟租户(0否 1是)
*/
private Boolean virtual;
}
......@@ -25,6 +25,11 @@ public class LoginUser implements Serializable {
*/
private String tenantId;
/**
* 是否是虚拟租户
*/
private Boolean tenantVirtual;
/**
* 用户ID
*/
......
......@@ -238,7 +238,8 @@ public class TokenController {
}
// 根据域名进行筛选
List<TenantListVo> list = StreamUtils.filter(voList, vo ->
StringUtils.equals(vo.getDomain(), host));
StringUtils.equals(vo.getDomain(), host)&&
virtual.equals(vo.getVirtual()));
result.setVoList(CollUtil.isNotEmpty(list) ? list : voList);
return R.ok(result);
}
......
......@@ -15,6 +15,11 @@ public class TenantListVo {
*/
private String tenantId;
/**
* 企业码
*/
private String companyCode;
/**
* 企业名称
*/
......@@ -30,4 +35,9 @@ public class TenantListVo {
*/
private Boolean showed;
/**
* 是否虚拟租户(0否 1是)
*/
private Boolean virtual;
}
......@@ -13,6 +13,7 @@ import org.dromara.common.core.constant.UserConstants;
import org.dromara.common.core.enums.UserType;
import org.dromara.system.api.model.LoginUser;
import java.util.Optional;
import java.util.Set;
/**
......@@ -132,6 +133,13 @@ public class LoginHelper {
return Convert.toStr(getExtra(DEPT_NAME_KEY));
}
/**
* 获取是否是虚拟租户
*/
public static Boolean isVirtual() {
return Optional.ofNullable(getLoginUser()).map(LoginUser::getTenantVirtual).orElse(false);
}
/**
* 获取部门类别编码
*/
......
......@@ -115,6 +115,7 @@ public class SysUserController extends BaseController {
return R.fail("没有权限访问用户数据!");
}
user.setRoles(roleService.selectRolesByUserId(user.getUserId()));
user.setVirtual(LoginHelper.isVirtual());
userInfoVo.setUser(user);
userInfoVo.setPermissions(loginUser.getMenuPermission());
userInfoVo.setRoles(loginUser.getRolePermission());
......
......@@ -38,6 +38,11 @@ public class SysUserVo implements Serializable {
*/
private String tenantId;
/**
* 是否是虚拟用户
*/
private Boolean virtual;
/**
* 部门ID
*/
......
......@@ -32,15 +32,13 @@ import org.dromara.system.api.model.XcxLoginUser;
import org.dromara.system.domain.SysUser;
import org.dromara.system.domain.bo.SysUserBo;
import org.dromara.system.domain.bo.WxUserBo;
import org.dromara.system.domain.vo.SysDeptVo;
import org.dromara.system.domain.vo.SysRoleVo;
import org.dromara.system.domain.vo.SysUserVo;
import org.dromara.system.domain.vo.WxUserVo;
import org.dromara.system.domain.vo.*;
import org.dromara.system.mapper.SysUserMapper;
import org.dromara.system.service.*;
import org.springframework.stereotype.Service;
import java.util.List;
import java.util.Optional;
import java.util.stream.Collectors;
/**
......@@ -61,6 +59,7 @@ public class RemoteUserServiceImpl implements RemoteUserService {
private final ISysDeptService deptService;
private final IWxUserService wxUserService;
private final SysUserMapper userMapper;
private final ISysTenantService tenantService;
@DubboReference
private RemoteServerService remoteServerService;
......@@ -213,7 +212,7 @@ public class RemoteUserServiceImpl implements RemoteUserService {
if (exist) {
throw new UserException("user.register.save.error", username);
}
boolean result = userService.registerUser(sysUserBo, remoteUserBo.getTenantId());
userService.registerUser(sysUserBo, remoteUserBo.getTenantId());
return sysUserBo.getUserId();
}
......@@ -290,6 +289,7 @@ public class RemoteUserServiceImpl implements RemoteUserService {
private LoginUser buildLoginUser(SysUserVo userVo) {
LoginUser loginUser = new LoginUser();
loginUser.setTenantId(userVo.getTenantId());
loginUser.setTenantVirtual(Optional.ofNullable(tenantService.queryByTenantId(loginUser.getTenantId())).map(SysTenantVo::getVirtual).orElse(false));
loginUser.setUserId(userVo.getUserId());
loginUser.setDeptId(userVo.getDeptId());
loginUser.setUsername(userVo.getUserName());
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论