Commit 1a6ce99c authored by 施翔轲's avatar 施翔轲

新增根据租户ID查询大司空超管or租户管理员为其创建的企业管理员和管理员账号数量接口

parent def038f6
package com.dsk.web.controller.system; package com.dsk.web.controller.system;
import cn.dev33.satoken.annotation.SaCheckPermission; import cn.dev33.satoken.annotation.SaCheckPermission;
import cn.dev33.satoken.annotation.SaCheckRole;
import cn.dev33.satoken.annotation.SaMode;
import cn.dev33.satoken.secure.BCrypt; import cn.dev33.satoken.secure.BCrypt;
import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.lang.tree.Tree; import cn.hutool.core.lang.tree.Tree;
...@@ -9,6 +11,7 @@ import cn.hutool.core.util.ObjectUtil; ...@@ -9,6 +11,7 @@ import cn.hutool.core.util.ObjectUtil;
import com.dsk.biz.utils.ExcelUtils; import com.dsk.biz.utils.ExcelUtils;
import com.dsk.common.annotation.Log; import com.dsk.common.annotation.Log;
import com.dsk.common.constant.GlobalConstants; import com.dsk.common.constant.GlobalConstants;
import com.dsk.common.constant.TenantConstants;
import com.dsk.common.core.controller.BaseController; import com.dsk.common.core.controller.BaseController;
import com.dsk.common.core.domain.PageQuery; import com.dsk.common.core.domain.PageQuery;
import com.dsk.common.core.domain.R; import com.dsk.common.core.domain.R;
...@@ -16,6 +19,7 @@ import com.dsk.common.core.page.TableDataInfo; ...@@ -16,6 +19,7 @@ import com.dsk.common.core.page.TableDataInfo;
import com.dsk.common.enums.BusinessType; import com.dsk.common.enums.BusinessType;
import com.dsk.common.exception.ServiceException; import com.dsk.common.exception.ServiceException;
import com.dsk.common.helper.LoginHelper; import com.dsk.common.helper.LoginHelper;
import com.dsk.common.tenant.helper.TenantHelper;
import com.dsk.common.utils.StreamUtils; import com.dsk.common.utils.StreamUtils;
import com.dsk.common.utils.StringUtils; import com.dsk.common.utils.StringUtils;
import com.dsk.common.utils.poi.ExcelUtil; import com.dsk.common.utils.poi.ExcelUtil;
...@@ -37,6 +41,7 @@ import org.springframework.web.bind.annotation.*; ...@@ -37,6 +41,7 @@ import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile; import org.springframework.web.multipart.MultipartFile;
import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpServletResponse;
import javax.validation.constraints.NotNull;
import java.util.*; import java.util.*;
/** /**
...@@ -55,6 +60,16 @@ public class SysUserController extends BaseController { ...@@ -55,6 +60,16 @@ public class SysUserController extends BaseController {
private final ISysPostService postService; private final ISysPostService postService;
private final ISysDeptService deptService; private final ISysDeptService deptService;
/**
* 根据租户ID查询大司空超管or租户管理员为其创建的企业管理员和管理员账号数量
*/
@SaCheckRole(value = {TenantConstants.SUPER_ADMIN_ROLE_KEY, TenantConstants.DSK_TENANT_ADMIN_ROLE_KEY}, mode = SaMode.OR)
@SaCheckPermission(value = "system:user:query", orRole = "accountAdmin")
@GetMapping("/queryTenantAdminNumCreatedByDSK/{tenantId}")
public R<Long> queryTenantAdminNumCreatedByDSK(@NotNull(message = "租户ID不能为空") @PathVariable Long tenantId) {
return R.ok(TenantHelper.ignore(() -> userService.queryTenantAdminNumCreatedByDSK(tenantId)));
}
/** /**
* 获取用户列表 * 获取用户列表
*/ */
......
...@@ -13,7 +13,13 @@ import java.util.List; ...@@ -13,7 +13,13 @@ import java.util.List;
* @author Lion Li * @author Lion Li
*/ */
public interface ISysUserService { public interface ISysUserService {
/**
* 根据租户ID查询大司空超管or租户管理员为其创建的企业管理员和管理员账号数量
*
* @param tenantId 租户ID
* @return 该企业下企业管理员和管理员账号数量
*/
Long queryTenantAdminNumCreatedByDSK(Long tenantId);
TableDataInfo<SysUser> selectPageUserList(SysUser user, PageQuery pageQuery); TableDataInfo<SysUser> selectPageUserList(SysUser user, PageQuery pageQuery);
......
...@@ -58,6 +58,22 @@ public class SysUserServiceImpl implements ISysUserService, UserService { ...@@ -58,6 +58,22 @@ public class SysUserServiceImpl implements ISysUserService, UserService {
private final SysUserRoleMapper userRoleMapper; private final SysUserRoleMapper userRoleMapper;
private final SysUserPostMapper userPostMapper; private final SysUserPostMapper userPostMapper;
/**
* 根据租户ID查询大司空超管or租户管理员为其创建的企业管理员和管理员账号数量
*
* @param tenantId 租户ID
* @return 该企业下企业管理员和管理员账号数量
*/
@Override
public Long queryTenantAdminNumCreatedByDSK(Long tenantId) {
LambdaQueryWrapper<SysUser> queryWrapper = new LambdaQueryWrapper<SysUser>()
.select(SysUser::getUserId)
.eq(SysUser::getStatus, UserConstants.USER_NORMAL)
.eq(SysUser::getTenantId, tenantId)
.eq(SysUser::getCreateBy, "suadmin");
return baseMapper.selectCount(queryWrapper);
}
@Override @Override
public TableDataInfo<SysUser> selectPageUserList(SysUser user, PageQuery pageQuery) { public TableDataInfo<SysUser> selectPageUserList(SysUser user, PageQuery pageQuery) {
Page<SysUser> page = baseMapper.selectPageUserList(pageQuery.build(), this.buildQueryWrapper(user)); Page<SysUser> page = baseMapper.selectPageUserList(pageQuery.build(), this.buildQueryWrapper(user));
...@@ -110,10 +126,15 @@ public class SysUserServiceImpl implements ISysUserService, UserService { ...@@ -110,10 +126,15 @@ public class SysUserServiceImpl implements ISysUserService, UserService {
QueryWrapper<SysUser> wrapper = Wrappers.query(); QueryWrapper<SysUser> wrapper = Wrappers.query();
wrapper.eq("u.del_flag", UserConstants.USER_NORMAL) wrapper.eq("u.del_flag", UserConstants.USER_NORMAL)
.eq(ObjectUtil.isNotNull(user.getRoleId()), "r.role_id", user.getRoleId()) .eq(ObjectUtil.isNotNull(user.getRoleId()), "r.role_id", user.getRoleId())
.like(StringUtils.isNotBlank(user.getUserName()), "u.user_name", user.getUserName()) .like(StringUtils.isNotBlank(user.getUserName()), "u.nick_name", user.getUserName())
.eq(StringUtils.isNotBlank(user.getStatus()), "u.status", user.getStatus()) .eq(StringUtils.isNotBlank(user.getStatus()), "u.status", user.getStatus())
.like(StringUtils.isNotBlank(user.getPhonenumber()), "u.phonenumber", user.getPhonenumber()); .like(StringUtils.isNotBlank(user.getPhonenumber()), "u.phonenumber", user.getPhonenumber());
Page<SysUser> page = baseMapper.selectAllocatedList(pageQuery.build(), wrapper); Page<SysUser> page = baseMapper.selectAllocatedList(pageQuery.build(), wrapper);
List<SysUser> userList = page.getRecords();
for (SysUser sysUser : userList) {
sysUser.setDept(deptMapper.selectOne(new LambdaQueryWrapper<SysDept>()
.eq(SysDept::getDeptId, sysUser.getDeptId())));
}
return TableDataInfo.build(page); return TableDataInfo.build(page);
} }
...@@ -130,9 +151,14 @@ public class SysUserServiceImpl implements ISysUserService, UserService { ...@@ -130,9 +151,14 @@ public class SysUserServiceImpl implements ISysUserService, UserService {
wrapper.eq("u.del_flag", UserConstants.USER_NORMAL) wrapper.eq("u.del_flag", UserConstants.USER_NORMAL)
.and(w -> w.ne("r.role_id", user.getRoleId()).or().isNull("r.role_id")) .and(w -> w.ne("r.role_id", user.getRoleId()).or().isNull("r.role_id"))
.notIn(CollUtil.isNotEmpty(userIds), "u.user_id", userIds) .notIn(CollUtil.isNotEmpty(userIds), "u.user_id", userIds)
.like(StringUtils.isNotBlank(user.getUserName()), "u.user_name", user.getUserName()) .like(StringUtils.isNotBlank(user.getUserName()), "u.nick_name", user.getUserName())
.like(StringUtils.isNotBlank(user.getPhonenumber()), "u.phonenumber", user.getPhonenumber()); .like(StringUtils.isNotBlank(user.getPhonenumber()), "u.phonenumber", user.getPhonenumber());
Page<SysUser> page = baseMapper.selectUnallocatedList(pageQuery.build(), wrapper); Page<SysUser> page = baseMapper.selectUnallocatedList(pageQuery.build(), wrapper);
List<SysUser> userList = page.getRecords();
for (SysUser sysUser : userList) {
sysUser.setDept(deptMapper.selectOne(new LambdaQueryWrapper<SysDept>()
.eq(SysDept::getDeptId, sysUser.getDeptId())));
}
return TableDataInfo.build(page); return TableDataInfo.build(page);
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment