无关风月
3 天以前 c3a11538b96aeac198fbaa467210ef8754773ad1
ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TDeptServiceImpl.java
@@ -2,7 +2,6 @@
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.ruoyi.common.basic.PageInfo;
import com.ruoyi.common.core.domain.entity.TDept;
import com.ruoyi.system.mapper.TDeptMapper;
import com.ruoyi.system.service.TDeptService;
@@ -10,6 +9,7 @@
import java.util.ArrayList;
import java.util.List;
import java.util.Optional;
import java.util.stream.Collectors;
/**
@@ -36,6 +36,10 @@
    @Override
    public List<Integer> getAllSubDeptIds(String deptId) {
        TDept tDept = this.baseMapper.selectById(deptId);
        if (tDept.getDeptName().contains("董事长")||tDept.getDeptName().contains("总经理")){
            return this.baseMapper.selectList(null).stream().map(TDept::getId).collect(Collectors.toList());
        }
        List<Integer> allSubIds = new ArrayList<>();
        getSubDeptIdsRecursive(Integer.valueOf(deptId), allSubIds);
        return allSubIds.stream().distinct().collect(Collectors.toList());
@@ -80,4 +84,14 @@
                .peek(dept -> dept.setChildren(getChildren(dept, depts)))
                .collect(Collectors.toList());
    }
    @Override
    public Optional<List<Integer>> getQueryDeptAndChildIds(Integer deptId) {
        if (deptId != null) {
            List<Integer> allDeptIds = new ArrayList<>();
            getSubDeptIdsRecursive(deptId, allDeptIds);
            return Optional.of(allDeptIds.stream().distinct().collect(Collectors.toList()));
        }
        return Optional.empty();
    }
}