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

部分代码功能实现

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