mirror of https://gitee.com/stylefeng/roses
【7.2.3】增加根据部门,角色等查询条件,查找用户下拉列表
parent
da90444889
commit
f03a7e2be7
|
@ -199,6 +199,18 @@ public class SysUserRequest extends BaseRequest {
|
||||||
@ChineseDescription("动态表单数据")
|
@ChineseDescription("动态表单数据")
|
||||||
private ExpandDataInfo expandDataInfo;
|
private ExpandDataInfo expandDataInfo;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 角色id
|
||||||
|
*/
|
||||||
|
@ChineseDescription("角色id")
|
||||||
|
private Long roleId;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 查询条件:账号或姓名
|
||||||
|
*/
|
||||||
|
@ChineseDescription("查询条件:账号或姓名")
|
||||||
|
private String condition;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 参数校验分组:修改密码
|
* 参数校验分组:修改密码
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -301,4 +301,15 @@ public class SysUserController {
|
||||||
public ResponseData<String> getTokenByUserId(Long userId) {
|
public ResponseData<String> getTokenByUserId(Long userId) {
|
||||||
return new SuccessResponseData<>(sysUserService.getTokenByUserId(userId));
|
return new SuccessResponseData<>(sysUserService.getTokenByUserId(userId));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 根据条件筛选用户
|
||||||
|
*
|
||||||
|
* @author fengshuonan
|
||||||
|
* @date 2022/6/17 14:46
|
||||||
|
*/
|
||||||
|
@GetResource(name = "根据条件筛选用户", path = "/sysUser/getUserListByConditions")
|
||||||
|
public ResponseData<List<SimpleDict>> getUserListByConditions(SysUserRequest sysUserRequest) {
|
||||||
|
return new SuccessResponseData<>(sysUserService.getUserListByConditions(sysUserRequest));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -272,4 +272,13 @@ public interface SysUserService extends IService<SysUser>, UserServiceApi {
|
||||||
* @date 2022/1/27 14:29
|
* @date 2022/1/27 14:29
|
||||||
**/
|
**/
|
||||||
Integer devopsApiCheck(SysUserRequest sysUserRequest);
|
Integer devopsApiCheck(SysUserRequest sysUserRequest);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 根据部门,角色等查询条件,查找用户下拉列表
|
||||||
|
*
|
||||||
|
* @author fengshuonan
|
||||||
|
* @date 2022/6/17 14:49
|
||||||
|
*/
|
||||||
|
List<SimpleDict> getUserListByConditions(SysUserRequest sysUserRequest);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -71,6 +71,7 @@ import cn.stylefeng.roses.kernel.system.api.pojo.user.request.SysUserRequest;
|
||||||
import cn.stylefeng.roses.kernel.system.api.util.DataScopeUtil;
|
import cn.stylefeng.roses.kernel.system.api.util.DataScopeUtil;
|
||||||
import cn.stylefeng.roses.kernel.system.modular.user.entity.SysUser;
|
import cn.stylefeng.roses.kernel.system.modular.user.entity.SysUser;
|
||||||
import cn.stylefeng.roses.kernel.system.modular.user.entity.SysUserDataScope;
|
import cn.stylefeng.roses.kernel.system.modular.user.entity.SysUserDataScope;
|
||||||
|
import cn.stylefeng.roses.kernel.system.modular.user.entity.SysUserOrg;
|
||||||
import cn.stylefeng.roses.kernel.system.modular.user.entity.SysUserRole;
|
import cn.stylefeng.roses.kernel.system.modular.user.entity.SysUserRole;
|
||||||
import cn.stylefeng.roses.kernel.system.modular.user.factory.OnlineUserCreateFactory;
|
import cn.stylefeng.roses.kernel.system.modular.user.factory.OnlineUserCreateFactory;
|
||||||
import cn.stylefeng.roses.kernel.system.modular.user.factory.SysUserCreateFactory;
|
import cn.stylefeng.roses.kernel.system.modular.user.factory.SysUserCreateFactory;
|
||||||
|
@ -697,6 +698,66 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
|
||||||
return DevopsCheckStatusEnum.SUCCESSFUL.getCode();
|
return DevopsCheckStatusEnum.SUCCESSFUL.getCode();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public List<SimpleDict> getUserListByConditions(SysUserRequest sysUserRequest) {
|
||||||
|
|
||||||
|
Long orgId = sysUserRequest.getOrgId();
|
||||||
|
Long roleId = sysUserRequest.getRoleId();
|
||||||
|
Integer statusFlag = sysUserRequest.getStatusFlag();
|
||||||
|
String condition = sysUserRequest.getCondition();
|
||||||
|
|
||||||
|
// 查询对应组织机构下的用户
|
||||||
|
List<Long> orgUserIds = new ArrayList<>();
|
||||||
|
if (ObjectUtil.isNotEmpty(orgId)) {
|
||||||
|
LambdaQueryWrapper<SysUserOrg> sysUserOrgLambdaQueryWrapper = new LambdaQueryWrapper<>();
|
||||||
|
sysUserOrgLambdaQueryWrapper.eq(SysUserOrg::getOrgId, orgId);
|
||||||
|
List<SysUserOrg> list = this.sysUserOrgService.list(sysUserOrgLambdaQueryWrapper);
|
||||||
|
orgUserIds = list.stream().map(SysUserOrg::getUserId).collect(Collectors.toList());
|
||||||
|
if (ObjectUtil.isEmpty(orgUserIds)) {
|
||||||
|
return new ArrayList<>();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// 查询角色对应的用户id
|
||||||
|
List<Long> roleUserIds = new ArrayList<>();
|
||||||
|
if (ObjectUtil.isNotEmpty(roleId)) {
|
||||||
|
LambdaQueryWrapper<SysUserRole> roleLambdaQueryWrapper = new LambdaQueryWrapper<>();
|
||||||
|
roleLambdaQueryWrapper.eq(SysUserRole::getRoleId, roleId);
|
||||||
|
List<SysUserRole> list = this.sysUserRoleService.list(roleLambdaQueryWrapper);
|
||||||
|
roleUserIds = list.stream().map(SysUserRole::getUserId).collect(Collectors.toList());
|
||||||
|
if (ObjectUtil.isEmpty(roleUserIds)) {
|
||||||
|
return new ArrayList<>();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
LambdaQueryWrapper<SysUser> sysUserLambdaQueryWrapper = new LambdaQueryWrapper<>();
|
||||||
|
|
||||||
|
// 查询未删除的
|
||||||
|
sysUserLambdaQueryWrapper.eq(SysUser::getDelFlag, YesOrNotEnum.N.getCode());
|
||||||
|
|
||||||
|
// 查询机构下的
|
||||||
|
sysUserLambdaQueryWrapper.in(ObjectUtil.isNotEmpty(orgUserIds), SysUser::getUserId, orgUserIds);
|
||||||
|
|
||||||
|
// 查询所属角色的
|
||||||
|
sysUserLambdaQueryWrapper.in(ObjectUtil.isNotEmpty(roleUserIds), SysUser::getUserId, roleUserIds);
|
||||||
|
|
||||||
|
// 查询是否在职
|
||||||
|
sysUserLambdaQueryWrapper.eq(ObjectUtil.isNotEmpty(statusFlag), SysUser::getStatusFlag, statusFlag);
|
||||||
|
|
||||||
|
// 按条件查询的
|
||||||
|
sysUserLambdaQueryWrapper.nested(ObjectUtil.isNotEmpty(condition), i -> i.like(SysUser::getRealName, condition).or(j -> j.like(SysUser::getAccount, condition)));
|
||||||
|
|
||||||
|
List<SysUser> list = this.list(sysUserLambdaQueryWrapper);
|
||||||
|
ArrayList<SimpleDict> results = new ArrayList<>();
|
||||||
|
for (SysUser sysUser : list) {
|
||||||
|
SimpleDict simpleDict = new SimpleDict();
|
||||||
|
simpleDict.setId(sysUser.getUserId());
|
||||||
|
simpleDict.setName(sysUser.getRealName());
|
||||||
|
results.add(simpleDict);
|
||||||
|
}
|
||||||
|
return results;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public UserLoginInfoDTO getUserLoginInfo(String account) {
|
public UserLoginInfoDTO getUserLoginInfo(String account) {
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue