智慧保安后台管理-外网项目备份
Administrator
2021-09-22 35a6e9cedc2f44bebc9e4ec81a429eddc8b631ea
用户查询接口修改,部门名称需拼接父部门名称
3 files modified
34 ■■■■ changed files
src/main/java/org/springblade/modules/system/mapper/UserMapper.java 3 ●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/system/mapper/UserMapper.xml 8 ●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/system/service/impl/UserServiceImpl.java 23 ●●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/system/mapper/UserMapper.java
@@ -190,5 +190,6 @@
     * @param deptId 部门名称
     * @return
     */
    List<Map<String, Object>> getDeptName(String deptId);
    @SqlParser(filter = true)
    List<String> getDeptName(@Param("deptId") String deptId);
}
src/main/java/org/springblade/modules/system/mapper/UserMapper.xml
@@ -491,7 +491,11 @@
    </select>
    <!--查询当前部门名称及父级部门名称-->
    <select id="getDeptName" resultType="java.util.Map">
    <select id="getDeptName" resultType="java.lang.String">
        (select dept_name from blade_dept where id = #{deptId} and 1=1)
        union
        (
            select dept_name from blade_dept where id =  (select parent_id from blade_dept where id= #{deptId} and 1=1)
        )
    </select>
</mapper>
src/main/java/org/springblade/modules/system/service/impl/UserServiceImpl.java
@@ -186,9 +186,28 @@
        //遍历获取部门名称,角色名称
        users.forEach(userVO -> {
            //查询当前部门名称及父级部门名称
            List<Map<String,Object>> map = baseMapper.getDeptName(userVO.getDeptId());
            List<String> list = baseMapper.getDeptName(userVO.getDeptId());
            if (list.size()>1){
                if (null!=list.get(1) && list.get(1)!=""){
                    userVO.setDeptName(list.get(1)+","+list.get(0));
                }else {
                    userVO.setDeptName(list.get(0));
                }
            }
            if (list.size()==1){
                userVO.setDeptName(list.get(0));
            }
            //查询角色名称
            List<String> asList = Arrays.asList(userVO.getRoleId().split(","));
            StringBuilder builder = new StringBuilder();
            asList.forEach(roleIs ->{
                Role role = roleService.getById(roleIs);
                if (null!=role){
                    builder.append(role.getRoleName()+",");
                }
            });
            String substringRoleName = builder.toString().substring(0, builder.toString().length() - 1);
            userVO.setRoleName(substringRoleName);
        });
        return page.setRecords(users);
    }