xx
孔祥富
2021-03-13 07445c629b9f92505f2132e00423e5622e92e2d9
xx
2个文件已添加
4个文件已修改
104 ■■■■■ 已修改文件
febs-server/febs-server-hr/src/main/java/cc/mrbird/febs/server/hr/controller/FolderController.java 7 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
febs-server/febs-server-hr/src/main/java/cc/mrbird/febs/server/hr/entity/Folder.java 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
febs-server/febs-server-hr/src/main/java/cc/mrbird/febs/server/hr/service/IFolderService.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
febs-server/febs-server-hr/src/main/java/cc/mrbird/febs/server/hr/service/impl/FolderServiceImpl.java 37 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
febs-server/febs-server-hr/src/main/java/cc/mrbird/febs/server/hr/vo/FolderTree.java 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
febs-server/febs-server-hr/src/main/java/cc/mrbird/febs/server/hr/vo/Tree.java 32 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
febs-server/febs-server-hr/src/main/java/cc/mrbird/febs/server/hr/controller/FolderController.java
@@ -1,5 +1,6 @@
package cc.mrbird.febs.server.hr.controller;
import cc.mrbird.febs.common.core.entity.system.Dept;
import cc.mrbird.febs.server.hr.entity.Folder;
import cc.mrbird.febs.server.hr.service.IFolderService;
import cc.mrbird.febs.common.core.entity.FebsResponse;
@@ -35,7 +36,11 @@
    public FebsResponse getAllFolders(Folder folder) {
        return new FebsResponse().data(folderService.findFolders(folder));
    }
    @GetMapping("treeList")
    public FebsResponse folderTreeList(QueryRequest request, Folder folder) {
        Map<String, Object> depts = this.folderService.folderTreeList(request, folder);
        return new FebsResponse().data(depts);
    }
    @GetMapping("list")
    @PreAuthorize("hasAuthority('folder:list')")
    public FebsResponse folderList(QueryRequest request, Folder folder) {
febs-server/febs-server-hr/src/main/java/cc/mrbird/febs/server/hr/entity/Folder.java
@@ -43,7 +43,11 @@
     */
    @TableId("folderId")
    private Long folderid;
    /**
     * id
     */
    @TableId("parentId")
    private Long parentId;
    /**
     * 文件夹名称
     */
febs-server/febs-server-hr/src/main/java/cc/mrbird/febs/server/hr/service/IFolderService.java
@@ -7,6 +7,7 @@
import com.baomidou.mybatisplus.extension.service.IService;
import java.util.List;
import java.util.Map;
/**
 * 文件夹 Service接口
@@ -52,4 +53,6 @@
     * @param folder folder
     */
    void deleteFolder(Folder folder);
    Map<String, Object> folderTreeList(QueryRequest request, Folder folder);
}
febs-server/febs-server-hr/src/main/java/cc/mrbird/febs/server/hr/service/impl/FolderServiceImpl.java
@@ -1,8 +1,13 @@
package cc.mrbird.febs.server.hr.service.impl;
import cc.mrbird.febs.common.core.constant.ModuleCode;
import cc.mrbird.febs.common.core.entity.DeptTree;
import cc.mrbird.febs.common.core.entity.Tree;
import cc.mrbird.febs.common.core.entity.constant.PageConstant;
import cc.mrbird.febs.common.core.entity.system.Dept;
import cc.mrbird.febs.common.core.utils.FebsUtil;
import cc.mrbird.febs.common.core.utils.SequenceUtil;
import cc.mrbird.febs.common.core.utils.TreeUtil;
import cc.mrbird.febs.server.hr.entity.FilesUpload;
import cc.mrbird.febs.server.hr.entity.Folder;
import cc.mrbird.febs.server.hr.entity.Label;
@@ -19,9 +24,7 @@
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import cc.mrbird.febs.common.core.entity.QueryRequest;
import java.util.Date;
import java.util.List;
import java.util.Optional;
import java.util.*;
/**
 * 文件夹 Service实现
@@ -46,6 +49,34 @@
    }
    @Override
    public Map<String, Object> folderTreeList(QueryRequest request, Folder folder) {
        Map<String, Object> result = new HashMap<>(2);
        try {
            List<Folder> depts = findFolders(folder);
            List<DeptTree> trees = new ArrayList<>();
            buildTrees(trees, depts);
            List<? extends Tree<?>> deptTree = TreeUtil.build(trees);
            result.put(PageConstant.ROWS, deptTree);
            result.put(PageConstant.TOTAL, depts.size());
        } catch (Exception e) {
            log.error("获取部门列表失败", e);
            result.put(PageConstant.ROWS, null);
            result.put(PageConstant.TOTAL, 0);
        }
        return result;
    }
    private void buildTrees(List<DeptTree> trees, List<Folder> depts) {
        depts.forEach(dept -> {
            DeptTree tree = new DeptTree();
            tree.setId(dept.getFolderid().toString());
            tree.setParentId(dept.getParentId().toString());
            tree.setLabel(dept.getFoldername());
            tree.setOrderNum(dept.getSort());
            trees.add(tree);
        });
    }
    @Override
    public List<Folder> findFolders(Folder folder) {
        LambdaQueryWrapper<Folder> queryWrapper = new LambdaQueryWrapper<>();
        queryWrapper.eq(Folder::getDelFlag,0).orderByAsc(Folder::getSort);
febs-server/febs-server-hr/src/main/java/cc/mrbird/febs/server/hr/vo/FolderTree.java
New file
@@ -0,0 +1,19 @@
package cc.mrbird.febs.server.hr.vo;
import cc.mrbird.febs.common.core.entity.Tree;
import cc.mrbird.febs.server.hr.entity.Folder;
import lombok.Data;
import lombok.EqualsAndHashCode;
/**
 * @author MrBird
 */
@Data
@EqualsAndHashCode(callSuper = true)
public class FolderTree extends Tree<Folder> {
    private Integer orderNum;
    private String deptType;
    private String deptFunction;
    private String allDeptName;
}
febs-server/febs-server-hr/src/main/java/cc/mrbird/febs/server/hr/vo/Tree.java
New file
@@ -0,0 +1,32 @@
package cc.mrbird.febs.server.hr.vo;
import com.fasterxml.jackson.annotation.JsonInclude;
import lombok.Data;
import java.util.ArrayList;
import java.util.List;
/**
 * @author MrBird
 */
@Data
@JsonInclude(JsonInclude.Include.NON_NULL)
public class Tree<T> {
    private String id;
    private String label;
    private List<Tree<T>> children;
    private String parentId;
    private boolean hasParent = false;
    private boolean hasChildren = false;
    public void initChildren() {
        this.children = new ArrayList<>();
    }
}