Browse Source

点击对应角色显示该角色下所有用户的信息

master
Jinyuanyuan 3 months ago
parent
commit
fdb0de1fcb
  1. 2
      easy-sys/src/main/java/com/easy/admin/auth/controller/SysRoleController.java
  2. 14
      easy-sys/src/main/java/com/easy/admin/auth/controller/SysUserController.java
  3. 12
      easy-sys/src/main/java/com/easy/admin/auth/dao/SysUserMapper.java
  4. 47
      easy-sys/src/main/java/com/easy/admin/auth/dao/mapping/SysUserMapper.xml
  5. 16
      easy-sys/src/main/java/com/easy/admin/auth/model/RoleOV.java
  6. 21
      easy-sys/src/main/java/com/easy/admin/auth/model/UserInfoRequest.java
  7. 24
      easy-sys/src/main/java/com/easy/admin/auth/model/UserInfoResponse.java
  8. 5
      easy-sys/src/main/java/com/easy/admin/auth/service/SysUserService.java
  9. 38
      easy-sys/src/main/java/com/easy/admin/auth/service/impl/SysUserServiceImpl.java

2
easy-sys/src/main/java/com/easy/admin/auth/controller/SysRoleController.java

@ -131,4 +131,6 @@ public class SysRoleController extends BaseController {
public List<SysRole> selectRoleByDept(String deptId) {
return service.selectRoleByDept(deptId);
}
}

14
easy-sys/src/main/java/com/easy/admin/auth/controller/SysUserController.java

@ -1,6 +1,8 @@
package com.easy.admin.auth.controller;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.easy.admin.auth.model.SysUser;
import com.easy.admin.auth.model.UserInfoRequest;
import com.easy.admin.auth.service.SysUserService;
import com.easy.admin.common.core.base.BaseController;
import com.easy.admin.common.core.common.pagination.Page;
@ -151,4 +153,16 @@ public class SysUserController extends BaseController {
public List<SysUser> selectUsersByIds(@PathVariable("ids") String ids) {
return service.selectUsersByIds(ids);
}
/**
* 根据角色id获取该角色下的所有人员信息
*
*/
@GetMapping("getUsers")
public Object selectUsersByRoleId(UserInfoRequest request,
@RequestParam(name="condition", defaultValue="condition")String condition,
@RequestParam(name="current", defaultValue="1") Integer pageNo,
@RequestParam(name="pageSize", defaultValue="10") Integer pageSize) {
return service.getUsersByCondition(condition,request,pageNo,pageSize);
}
}

12
easy-sys/src/main/java/com/easy/admin/auth/dao/SysUserMapper.java

@ -2,6 +2,9 @@ package com.easy.admin.auth.dao;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.easy.admin.auth.model.UserInfoRequest;
import com.easy.admin.auth.model.UserInfoResponse;
import com.easy.admin.common.core.common.pagination.Page;
import com.easy.admin.auth.model.SysUser;
import org.apache.ibatis.annotations.Param;
@ -123,4 +126,13 @@ public interface SysUserMapper extends BaseMapper<SysUser> {
*/
String getDeptIdByUserId(@Param("id") String id);
List<HashMap<String,String>> getUserDictByRoles(@Param("roles") List<String> roles);
IPage<UserInfoResponse> getAllUserPage(Page page, @Param("User") UserInfoRequest request);
IPage<UserInfoResponse> getUserPageByCondition(Page page, @Param("User") UserInfoRequest request,@Param("condition") String condition);
IPage<UserInfoResponse> getUserPageByConditions(Page page, @Param("User") UserInfoRequest request,@Param("condition") String condition1,@Param("condition1")String condition2);
}

47
easy-sys/src/main/java/com/easy/admin/auth/dao/mapping/SysUserMapper.xml

@ -24,6 +24,21 @@
<result column="edit_date" property="editDate"/>
<result column="workplace" property="workplace"/>
</resultMap>
<resultMap id="UserInfoResponse" type="com.easy.admin.auth.model.UserInfoResponse">
<result column="id" property="id" jdbcType="VARCHAR"/>
<result column="nickname" property="nickname" jdbcType="VARCHAR"/>
<result column="sex" property="sex" jdbcType="VARCHAR"/>
<result column="phoneNumber" property="phoneNumber" jdbcType="VARCHAR"/>
<result column="workplace" property="workplace" jdbcType="VARCHAR"/>
<collection property="role" ofType="com.easy.admin.auth.model.RoleOV" select="selectRoleMapList" column="id"/>
</resultMap>
<resultMap id="role" type="com.easy.admin.auth.model.RoleOV">
<result property="roleId" column="roleId" jdbcType="VARCHAR"/>
<result property="roleName" column="roleName" jdbcType="VARCHAR"/>
</resultMap>
<select id="selectRoleMapList" resultMap="role">
select ur.role_id as roleId,ro.name as roleName from sys_user_role ur left join sys_role ro on ur.role_id=ro.id where ur.user_id = #{id}
</select>
<update id="updateUserStatus">
update sys_user set status = #{status}
<where>
@ -111,4 +126,36 @@
) rr on rr.user_id = u.id
</select>
<select id="getAllUserPage" resultMap="UserInfoResponse" parameterType="com.easy.admin.auth.model.UserInfoRequest">
select t.id as id, t.nickname as nickname, t.sex as sex, t.phone_number as phoneNumber,t.workplace as workplace
from sys_user t
<where>
</where>
</select>
<select id="getUserPageByCondition" resultMap="UserInfoResponse" parameterType="com.easy.admin.auth.model.UserInfoRequest">
select t.id as id, t.nickname as nickname, t.sex as sex, t.phone_number as phoneNumber,t.workplace as workplace
from sys_user t
left join sys_user_role ur on t.id=ur.user_id
left join sys_role r on ur.role_id=r.id
<where>
<bind name="tempStr" value="'%' + condition + '%'" />
and r.name like #{tempStr}
</where>
</select>
<select id="getUserPageByConditions" resultMap="UserInfoResponse" parameterType="com.easy.admin.auth.model.UserInfoRequest">
select t.id as id, t.nickname as nickname, t.sex as sex, t.phone_number as phoneNumber,t.workplace as workplace
from sys_user t
left join sys_user_role ur on t.id=ur.user_id
left join sys_role r on ur.role_id=r.id
<where>
<if test="condition != null">
<bind name="tempStr" value="'%' + condition + '%'" />
r.name like #{tempStr}
</if>
<if test="condition1 != ''">
<bind name="tempStr1" value="'%' + condition1 + '%'" />
or r.name like #{tempStr1}
</if>
</where>
</select>
</mapper>

16
easy-sys/src/main/java/com/easy/admin/auth/model/RoleOV.java

@ -0,0 +1,16 @@
package com.easy.admin.auth.model;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import lombok.Data;
@Data
@JsonIgnoreProperties(value = {"handler"})
public class RoleOV {
private String roleId;
private String roleName;
}

21
easy-sys/src/main/java/com/easy/admin/auth/model/UserInfoRequest.java

@ -0,0 +1,21 @@
package com.easy.admin.auth.model;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import lombok.Data;
@Data
@JsonIgnoreProperties(value = {"handler"})
public class UserInfoRequest {
private String nickname;
private String role;
private String phoneNumber;
private String workplace;
}

24
easy-sys/src/main/java/com/easy/admin/auth/model/UserInfoResponse.java

@ -0,0 +1,24 @@
package com.easy.admin.auth.model;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import lombok.Data;
import java.util.List;
@Data
@JsonIgnoreProperties(value = {"handler"})
public class UserInfoResponse {
private String id;
private String nickname;
private String sex;
private String phoneNumber;
private String workplace;
private List<RoleOV> role;
}

5
easy-sys/src/main/java/com/easy/admin/auth/service/SysUserService.java

@ -1,6 +1,9 @@
package com.easy.admin.auth.service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
import com.easy.admin.auth.model.UserInfoRequest;
import com.easy.admin.auth.model.UserInfoResponse;
import com.easy.admin.common.core.common.pagination.Page;
import com.easy.admin.auth.model.SysUser;
@ -184,4 +187,6 @@ public interface SysUserService extends IService<SysUser> {
List<HashMap<String,String>> getUserDictByRoles(String roles);
IPage<UserInfoResponse> getUsersByCondition(String condition, UserInfoRequest request, Integer pageNo, Integer pageSize);
}

38
easy-sys/src/main/java/com/easy/admin/auth/service/impl/SysUserServiceImpl.java

@ -6,6 +6,7 @@ import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.easy.admin.auth.common.constant.SessionConst;
import com.easy.admin.auth.common.constant.SysRoleConst;
@ -14,6 +15,8 @@ import com.easy.admin.auth.common.status.SysUserStatus;
import com.easy.admin.auth.dao.SysUserMapper;
import com.easy.admin.auth.model.SysUser;
import com.easy.admin.auth.model.SysUserRole;
import com.easy.admin.auth.model.UserInfoRequest;
import com.easy.admin.auth.model.UserInfoResponse;
import com.easy.admin.auth.service.SysUserRoleService;
import com.easy.admin.auth.service.SysUserService;
import com.easy.admin.common.core.common.pagination.Page;
@ -387,4 +390,39 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
}
return null;
}
@Override
public IPage<UserInfoResponse> getUsersByCondition(String condition, UserInfoRequest request, Integer pageNo, Integer pageSize) {
Page page=new Page<>(pageNo,pageSize);
IPage<UserInfoResponse> result=new Page<>();
if(condition.equals("all")){
//信息化保障团队,显示所有人员信息
result=userMapper.getAllUserPage(page, request);
} else if (condition.equals("task")) {
//任务牵头处室人员信息
condition="任务牵头处室";
result = userMapper.getUserPageByCondition(page,request,condition);
}else if (condition.equals("team")){
//信息化保障团队人员
condition="信息化保障团队";
String condition1="总咨询单位";
result=userMapper.getUserPageByConditions(page,request,condition,condition1);
} else if (condition.equals("guazhi")) {
//挂职人员
condition="信息化保障团队";
result = userMapper.getUserPageByCondition(page,request,condition);
}else if (condition.equals("consult")) {
//咨询人员
condition="总咨询单位";
result = userMapper.getUserPageByCondition(page,request,condition);
}else if (condition.equals("contact")) {
//项目联系人
condition="项目联系人";
result = userMapper.getUserPageByCondition(page,request,condition);
}
return result;
}
}

Loading…
Cancel
Save