无关风月
5 天以前 b84fc1807a6ce71f4d10cdb10da186abc5dcc173
ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysUserServiceImpl.java
@@ -1,11 +1,11 @@
package com.ruoyi.system.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.ruoyi.common.annotation.DataScope;
import com.ruoyi.common.basic.PageInfo;
import com.ruoyi.common.constant.UserConstants;
import com.ruoyi.common.core.domain.entity.SysRole;
import com.ruoyi.common.core.domain.entity.SysUser;
import com.ruoyi.common.core.domain.entity.TDept;
import com.ruoyi.common.exception.ServiceException;
import com.ruoyi.common.utils.SecurityUtils;
import com.ruoyi.common.utils.StringUtils;
@@ -27,11 +27,9 @@
import org.springframework.util.CollectionUtils;
import javax.validation.Validator;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import java.util.Objects;
import java.util.stream.Collectors;
@@ -47,6 +45,8 @@
    @Autowired
    private SysUserMapper userMapper;
    @Autowired
    private TDeptMapper deptMapper;
    @Autowired
    private SysRoleMapper roleMapper;
@@ -643,6 +643,23 @@
        if(CollectionUtils.isEmpty(list)){
            return pageInfo;
        }
        Map<Integer, TDept> deptMap = deptMapper.selectList(null).stream()
                .collect(Collectors.toMap(TDept::getId, e->e));
        for (SysUserVO sysUserVO : list) {
            StringBuilder deptName = new StringBuilder();
            TDept tDept = deptMap.get(Integer.valueOf(sysUserVO.getDeptId()));
            if (tDept!=null){
                deptName.append(tDept.getDeptName());
                while (tDept.getParentId()!=0){
                    tDept = deptMap.get(tDept.getParentId());
                    if (tDept!=null){
                        deptName.append("-").append(tDept.getDeptName());
                    }else{
                        break;
                    }
                }
            }
        }
        pageInfo.setRecords(list);
        return pageInfo;
    }
@@ -701,4 +718,39 @@
    public SysUser selectByPhone(String phonenumber) {
        return userMapper.selectByPhone(phonenumber);
    }
    @Override
    public List<SysUser> selectListByUserIds(List<Integer> userIds) {
        return userMapper.selectListByUserIds(userIds);
    }
    @Override
    public PageInfo<SysUserVO> listByDeptId(Integer deptId, Integer pageNum, Integer pageSize) {
        PageInfo<SysUserVO> pageInfo = new PageInfo<>(pageNum, pageSize);
        List<SysUserVO> list = userMapper.listByDeptId(deptId,pageInfo);
        if(CollectionUtils.isEmpty(list)){
            return pageInfo;
        }
        Map<Integer, TDept> deptMap = deptMapper.selectList(null).stream()
                .collect(Collectors.toMap(TDept::getId, e->e));
        for (SysUserVO sysUserVO : list) {
            StringBuilder deptName = new StringBuilder();
            TDept tDept = deptMap.get(Integer.valueOf(sysUserVO.getDeptId()));
            if (tDept!=null){
                deptName.append(tDept.getDeptName());
                while (tDept.getParentId()!=0){
                    tDept = deptMap.get(tDept.getParentId());
                    if (tDept!=null){
                        deptName.append("-").append(tDept.getDeptName());
                    }else{
                        break;
                    }
                }
            }
        }
        pageInfo.setRecords(list);
        return pageInfo;
    }
}