杜洪波
2025-10-27 4fb14ab9cfd6c8aae9e85c23eb7f7aabadd17727
单位文件夹代码提交
已修改3个文件
349 ■■■■ 文件已修改
src/main/java/com/product/file/controller/DocumentController.java 211 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/product/file/controller/DocumentDirectoryController.java 71 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/product/file/service/DocumentService.java 67 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/product/file/controller/DocumentController.java
@@ -3,10 +3,8 @@
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.product.core.config.CoreConst;
import com.product.core.entity.DataTableEntity;
import com.product.core.entity.FieldSetEntity;
import com.product.core.entity.RequestParameterEntity;
import com.product.core.exception.BaseException;
import com.product.core.spring.context.SpringMVCContextHolder;
import com.product.file.config.CmnConst;
@@ -24,7 +22,6 @@
import org.springframework.web.bind.annotation.RestController;
import javax.servlet.http.HttpServletRequest;
import javax.swing.text.Document;
import java.util.*;
@@ -95,18 +92,7 @@
    public String upDocumentName(HttpServletRequest request) {
        try {
            //获取参数
            FieldSetEntity fse = null;
            Object bean = request.getAttribute(CoreConst.API_POST_REQUEST_DATA);
            if (bean != null) {
                RequestParameterEntity reqp = (RequestParameterEntity) bean;
                fse = reqp.getFormData();
            }
            //判断参数是否为空
            if (fse == null) {
                SpringMVCContextHolder
                        .getSystemLogger().error(DocumentCode.DOCUMENT_FORM_NODATA.getValue(), DocumentCode.DOCUMENT_FORM_NODATA.getText());
                return this.error(DocumentCode.DOCUMENT_FORM_NODATA.getValue(), DocumentCode.DOCUMENT_FORM_NODATA.getText());
            }
            FieldSetEntity fse = BaseUtil.getFieldSetEntity(request);
            IDocumentService service = (IDocumentService) getProxyInstance(documentService);
            boolean flag = service.upDocumentName(fse);
            if (flag) {
@@ -134,18 +120,7 @@
    public String delDocument(HttpServletRequest request) {
        try {
            //获取参数
            FieldSetEntity fse = null;
            Object bean = request.getAttribute(CoreConst.API_POST_REQUEST_DATA);
            if (bean != null) {
                RequestParameterEntity reqp = (RequestParameterEntity) bean;
                fse = reqp.getFormData();
            }
            //判断参数是否为空
            if (fse == null) {
                SpringMVCContextHolder
                        .getSystemLogger().error(DocumentCode.DOCUMENT_FORM_NODATA.getValue(), DocumentCode.DOCUMENT_FORM_NODATA.getText());
                return this.error(DocumentCode.DOCUMENT_FORM_NODATA.getValue(), DocumentCode.DOCUMENT_FORM_NODATA.getText());
            }
            FieldSetEntity fse = BaseUtil.getFieldSetEntity(request);
            IDocumentService service = (IDocumentService) getProxyInstance(documentService);
            boolean flag = service.delDocument(fse);
            if (flag) {
@@ -173,18 +148,7 @@
    public String documentAll(HttpServletRequest request) {
        try {
            //获取参数
            FieldSetEntity fse = null;
            Object bean = request.getAttribute(CoreConst.API_POST_REQUEST_DATA);
            if (bean != null) {
                RequestParameterEntity reqp = (RequestParameterEntity) bean;
                fse = reqp.getFormData();
            }
            //判断参数是否为空
            if (fse == null) {
                SpringMVCContextHolder
                        .getSystemLogger().error(DocumentCode.DOCUMENT_FORM_NODATA.getValue(), DocumentCode.DOCUMENT_FORM_NODATA.getText());
                return this.error(DocumentCode.DOCUMENT_FORM_NODATA.getValue(), DocumentCode.DOCUMENT_FORM_NODATA.getText());
            }
            FieldSetEntity fse = BaseUtil.getFieldSetEntity(request);
            DataTableEntity dataTableEntity = documentService.documentAll(fse);
            return OK_List(dataTableEntity);
        } catch (BaseException e) {
@@ -208,18 +172,7 @@
    public String documentInfo(HttpServletRequest request) {
        try {
            //获取参数
            FieldSetEntity fse = null;
            Object bean = request.getAttribute(CoreConst.API_POST_REQUEST_DATA);
            if (bean != null) {
                RequestParameterEntity reqp = (RequestParameterEntity) bean;
                fse = reqp.getFormData();
            }
            //判断参数是否为空
            if (fse == null) {
                SpringMVCContextHolder
                        .getSystemLogger().error(DocumentCode.DOCUMENT_FORM_NODATA.getValue(), DocumentCode.DOCUMENT_FORM_NODATA.getText());
                return this.error(DocumentCode.DOCUMENT_FORM_NODATA.getValue(), DocumentCode.DOCUMENT_FORM_NODATA.getText());
            }
            FieldSetEntity fse = BaseUtil.getFieldSetEntity(request);
            return OK_List(documentService.documentInfo(fse));
        } catch (BaseException e) {
            SpringMVCContextHolder.getSystemLogger().error(e);
@@ -245,18 +198,7 @@
    public String getButtonPermissions(HttpServletRequest request) {
        try {
            //获取参数
            FieldSetEntity fse = null;
            Object bean = request.getAttribute(CoreConst.API_POST_REQUEST_DATA);
            if (bean != null) {
                RequestParameterEntity reqp = (RequestParameterEntity) bean;
                fse = reqp.getFormData();
            }
            //判断参数是否为空
            if (fse == null) {
                SpringMVCContextHolder
                        .getSystemLogger().error(DocumentCode.DOCUMENT_FORM_NODATA.getValue(), DocumentCode.DOCUMENT_FORM_NODATA.getText());
                return this.error(DocumentCode.DOCUMENT_FORM_NODATA.getValue(), DocumentCode.DOCUMENT_FORM_NODATA.getText());
            }
            FieldSetEntity fse = BaseUtil.getFieldSetEntity(request);
            if (BaseUtil.strIsNull(fse.getString(CmnConst.DIRECTORY_UUID))) {
                return OK();
            }
@@ -293,18 +235,7 @@
    public String popBoxGetFileDirectory(HttpServletRequest request) {
        try {
            //获取参数
            FieldSetEntity fse = null;
            Object bean = request.getAttribute(CoreConst.API_POST_REQUEST_DATA);
            if (bean != null) {
                RequestParameterEntity reqp = (RequestParameterEntity) bean;
                fse = reqp.getFormData();
            }
            //判断参数是否为空
            if (fse == null) {
                SpringMVCContextHolder
                        .getSystemLogger().error(DocumentCode.DOCUMENT_FORM_NODATA.getValue(), DocumentCode.DOCUMENT_FORM_NODATA.getText());
                return this.error(DocumentCode.DOCUMENT_FORM_NODATA.getValue(), DocumentCode.DOCUMENT_FORM_NODATA.getText());
            }
            FieldSetEntity fse = BaseUtil.getFieldSetEntity(request);
            JSONObject obj = documentService.popBoxGetFileDirectory(fse);
            return ResultInfo.success(obj);
        } catch (BaseException e) {
@@ -328,18 +259,7 @@
    public String fileMoveTo(HttpServletRequest request) {
        try {
            //获取参数
            FieldSetEntity fse = null;
            Object bean = request.getAttribute(CoreConst.API_POST_REQUEST_DATA);
            if (bean != null) {
                RequestParameterEntity reqp = (RequestParameterEntity) bean;
                fse = reqp.getFormData();
            }
            //判断参数是否为空
            if (fse == null) {
                SpringMVCContextHolder
                        .getSystemLogger().error(DocumentCode.DOCUMENT_FORM_NODATA.getValue(), DocumentCode.DOCUMENT_FORM_NODATA.getText());
                return this.error(DocumentCode.DOCUMENT_FORM_NODATA.getValue(), DocumentCode.DOCUMENT_FORM_NODATA.getText());
            }
            FieldSetEntity fse = BaseUtil.getFieldSetEntity(request);
            if (documentService.fileMoveTo(fse)) {
                return OK();
            } else {
@@ -357,6 +277,7 @@
    /**
     *     获取文件日志
     * @param request
     * @return
     */
@@ -365,18 +286,7 @@
    public String getDocumentLog(HttpServletRequest request) {
        try {
            //获取参数
            FieldSetEntity fse = null;
            Object bean = request.getAttribute(CoreConst.API_POST_REQUEST_DATA);
            if (bean != null) {
                RequestParameterEntity reqp = (RequestParameterEntity) bean;
                fse = reqp.getFormData();
            }
            //判断参数是否为空
            if (fse == null) {
                SpringMVCContextHolder
                        .getSystemLogger().error(DocumentCode.DOCUMENT_FORM_NODATA.getValue(), DocumentCode.DOCUMENT_FORM_NODATA.getText());
                return this.error(DocumentCode.DOCUMENT_FORM_NODATA.getValue(), DocumentCode.DOCUMENT_FORM_NODATA.getText());
            }
            FieldSetEntity fse = BaseUtil.getFieldSetEntity(request);
            return OK_List(documentService.getDocumentLog(fse));
        } catch (BaseException e) {
            SpringMVCContextHolder.getSystemLogger().error(e);
@@ -486,23 +396,18 @@
    @RequestMapping(value = "/getApplyDocument/{version}", method = RequestMethod.POST)
    @ApiVersion(1)
    public String getApplyDocument(HttpServletRequest request) {
        try {
        //获取参数
        FieldSetEntity fse = null;
        Object bean = request.getAttribute(CoreConst.API_POST_REQUEST_DATA);
        if (bean != null) {
            RequestParameterEntity reqp = (RequestParameterEntity) bean;
            fse = reqp.getFormData();
        }
        //判断参数是否为空
        if (fse == null) {
            SpringMVCContextHolder
                    .getSystemLogger().error(DocumentCode.DOCUMENT_FORM_NODATA.getValue(), DocumentCode.DOCUMENT_FORM_NODATA.getText());
            return this.error(DocumentCode.DOCUMENT_FORM_NODATA.getValue(), DocumentCode.DOCUMENT_FORM_NODATA.getText());
        }
            FieldSetEntity fse = BaseUtil.getFieldSetEntity(request);
        DataTableEntity applyDocument = documentService.getApplyDocument(fse);
        return OK_List(applyDocument);
        } catch (BaseException e) {
            e.printStackTrace();
            return this.error(e);
        } catch (Exception e) {
            e.printStackTrace();
            return this.error(DocumentCode.DOCUMENT_OPERATE_FAIL.getValue(), DocumentCode.DOCUMENT_OPERATE_FAIL.getText() + e.getMessage());
        }
    }
@@ -515,21 +420,18 @@
    @RequestMapping(value = "/addOrUpdateApplyDocument/{version}", method = RequestMethod.POST)
    @ApiVersion(1)
    public String addOrUpdateApplyDocument(HttpServletRequest request) {
        try {
        //获取参数
        FieldSetEntity fse = null;
        Object bean = request.getAttribute(CoreConst.API_POST_REQUEST_DATA);
        if (bean != null) {
            RequestParameterEntity reqp = (RequestParameterEntity) bean;
            fse = reqp.getFormData();
        }
        //判断参数是否为空
        if (fse == null) {
            SpringMVCContextHolder
                    .getSystemLogger().error(DocumentCode.DOCUMENT_FORM_NODATA.getValue(), DocumentCode.DOCUMENT_FORM_NODATA.getText());
            return this.error(DocumentCode.DOCUMENT_FORM_NODATA.getValue(), DocumentCode.DOCUMENT_FORM_NODATA.getText());
        }
            FieldSetEntity fse = BaseUtil.getFieldSetEntity(request);
        documentService.addOrUpdateApplyDocument(fse);
        return OK();
        } catch (BaseException e) {
            e.printStackTrace();
            return this.error(e);
        } catch (Exception e) {
            e.printStackTrace();
            return this.error(DocumentCode.DOCUMENT_OPERATE_FAIL.getValue(), DocumentCode.DOCUMENT_OPERATE_FAIL.getText() + e.getMessage());
        }
    }
    /**
@@ -540,8 +442,16 @@
    @RequestMapping(value = "/getApplayFileSort/{version}", method = RequestMethod.POST)
    @ApiVersion(1)
    public String getApplayFileSort() {
        try {
        DataTableEntity applayFileSort = documentService.getApplyFileSort();
        return OK_List(applayFileSort);
        } catch (BaseException e) {
            e.printStackTrace();
            return this.error(e);
        } catch (Exception e) {
            e.printStackTrace();
            return this.error(DocumentCode.DOCUMENT_OPERATE_FAIL.getValue(), DocumentCode.DOCUMENT_OPERATE_FAIL.getText() + e.getMessage());
        }
    }
@@ -553,8 +463,16 @@
    @RequestMapping(value = "/getApplayUserSort/{version}", method = RequestMethod.POST)
    @ApiVersion(1)
    public String getApplayUserSort() {
        try {
        DataTableEntity applayFileSort = documentService.getApplyUserSort();
        return OK_List(applayFileSort);
        } catch (BaseException e) {
            e.printStackTrace();
            return this.error(e);
        } catch (Exception e) {
            e.printStackTrace();
            return this.error(DocumentCode.DOCUMENT_OPERATE_FAIL.getValue(), DocumentCode.DOCUMENT_OPERATE_FAIL.getText() + e.getMessage());
        }
    }
    /**
@@ -566,39 +484,34 @@
    @RequestMapping(value = "/getApplayInfo/{version}", method = RequestMethod.POST)
    @ApiVersion(1)
    public String getApplayInfo(HttpServletRequest request) {
        try {
        //获取参数
        FieldSetEntity fse = null;
        Object bean = request.getAttribute(CoreConst.API_POST_REQUEST_DATA);
        if (bean != null) {
            RequestParameterEntity reqp = (RequestParameterEntity) bean;
            fse = reqp.getFormData();
        }
        //判断参数是否为空
        if (fse == null) {
            SpringMVCContextHolder
                    .getSystemLogger().error(DocumentCode.DOCUMENT_FORM_NODATA.getValue(), DocumentCode.DOCUMENT_FORM_NODATA.getText());
            return this.error(DocumentCode.DOCUMENT_FORM_NODATA.getValue(), DocumentCode.DOCUMENT_FORM_NODATA.getText());
        }
            FieldSetEntity fse = BaseUtil.getFieldSetEntity(request);
        FieldSetEntity applayInfo = documentService.getApplyInfo(fse);
        return OK_List(applayInfo);
        } catch (BaseException e) {
            e.printStackTrace();
            return this.error(e);
        } catch (Exception e) {
            e.printStackTrace();
            return this.error(DocumentCode.DOCUMENT_OPERATE_FAIL.getValue(), DocumentCode.DOCUMENT_OPERATE_FAIL.getText() + e.getMessage());
    }
    }
    @RequestMapping(value = "/getFileItemize/{version}", method = RequestMethod.POST)
    @ApiVersion(1)
    public String getFileItemize(HttpServletRequest request) {
        try {
        //获取参数
        FieldSetEntity fse = null;
        Object bean = request.getAttribute(CoreConst.API_POST_REQUEST_DATA);
        if (bean != null) {
            RequestParameterEntity reqp = (RequestParameterEntity) bean;
            fse = reqp.getFormData();
        }
        //判断参数是否为空
        if (fse == null) {
            SpringMVCContextHolder
                    .getSystemLogger().error(DocumentCode.DOCUMENT_FORM_NODATA.getValue(), DocumentCode.DOCUMENT_FORM_NODATA.getText());
            return this.error(DocumentCode.DOCUMENT_FORM_NODATA.getValue(), DocumentCode.DOCUMENT_FORM_NODATA.getText());
        }
            FieldSetEntity fse = BaseUtil.getFieldSetEntity(request);
        return OK_List(documentService.getFileItemize(fse));
        } catch (BaseException e) {
            e.printStackTrace();
            return this.error(e);
        } catch (Exception e) {
            e.printStackTrace();
            return this.error(DocumentCode.DOCUMENT_OPERATE_FAIL.getValue(), DocumentCode.DOCUMENT_OPERATE_FAIL.getText() + e.getMessage());
        }
    }
}
src/main/java/com/product/file/controller/DocumentDirectoryController.java
@@ -3,7 +3,6 @@
import com.product.core.config.CoreConst;
import com.product.core.controller.support.AbstractBaseController;
import com.product.core.entity.FieldSetEntity;
import com.product.core.entity.RequestParameterEntity;
import com.product.core.exception.BaseException;
import com.product.core.permission.PermissionService;
import com.product.core.spring.context.SpringMVCContextHolder;
@@ -110,19 +109,7 @@
    public String upDocumentDirectoryName(HttpServletRequest request) {
        try {
            // 获取参数
            FieldSetEntity fse = null;
            Object bean = request.getAttribute(CoreConst.API_POST_REQUEST_DATA);
            if (bean != null) {
                RequestParameterEntity reqp = (RequestParameterEntity) bean;
                fse = reqp.getFormData();
            }
            // 判断参数是否为空
            if (fse == null) {
                SpringMVCContextHolder.getSystemLogger().error(DocumentCode.DOCUMENT_FORM_NODATA.getValue(),
                        DocumentCode.DOCUMENT_FORM_NODATA.getText());
                return this.error(DocumentCode.DOCUMENT_FORM_NODATA.getValue(),
                        DocumentCode.DOCUMENT_FORM_NODATA.getText());
            }
            FieldSetEntity fse = BaseUtil.getFieldSetEntity(request);
            String uuid = fse.getString(CmnConst.UUID);// 表uuid
            // 超级管理员为1 普通单位管理员2
            SystemUser currentUser = SpringMVCContextHolder.getCurrentUser();
@@ -167,19 +154,7 @@
    public String delDocumentDirectory(HttpServletRequest request) {
        try {
            // 获取参数
            FieldSetEntity fse = null;
            Object bean = request.getAttribute(CoreConst.API_POST_REQUEST_DATA);
            if (bean != null) {
                RequestParameterEntity reqp = (RequestParameterEntity) bean;
                fse = reqp.getFormData();
            }
            // 判断参数是否为空
            if (fse == null) {
                SpringMVCContextHolder.getSystemLogger().error(DocumentCode.DOCUMENT_FORM_NODATA.getValue(),
                        DocumentCode.DOCUMENT_FORM_NODATA.getText());
                return this.error(DocumentCode.DOCUMENT_FORM_NODATA.getValue(),
                        DocumentCode.DOCUMENT_FORM_NODATA.getText());
            }
            FieldSetEntity fse = BaseUtil.getFieldSetEntity(request);
            String uuid = fse.getString(CmnConst.UUID);// 表uuid
            // 超级管理员为1 普通单位管理员2
            SystemUser currentUser = SpringMVCContextHolder.getCurrentUser();
@@ -224,19 +199,7 @@
    public String moveToList(HttpServletRequest request) {
        try {
            // 获取参数
            FieldSetEntity fse = null;
            Object bean = request.getAttribute(CoreConst.API_POST_REQUEST_DATA);
            if (bean != null) {
                RequestParameterEntity reqp = (RequestParameterEntity) bean;
                fse = reqp.getFormData();
            }
            // 判断参数是否为空
            if (fse == null) {
                SpringMVCContextHolder.getSystemLogger().error(DocumentCode.DOCUMENT_FORM_NODATA.getValue(),
                        DocumentCode.DOCUMENT_FORM_NODATA.getText());
                return this.error(DocumentCode.DOCUMENT_FORM_NODATA.getValue(),
                        DocumentCode.DOCUMENT_FORM_NODATA.getText());
            }
            FieldSetEntity fse = BaseUtil.getFieldSetEntity(request);
            return OK_List(documentDirectoryService.moveToList(fse));
        } catch (BaseException e) {
            SpringMVCContextHolder.getSystemLogger().error(e);
@@ -260,19 +223,7 @@
    public String treeListAll(HttpServletRequest request) {
        try {
            // 获取参数
            FieldSetEntity fse = null;
            Object bean = request.getAttribute(CoreConst.API_POST_REQUEST_DATA);
            if (bean != null) {
                RequestParameterEntity reqp = (RequestParameterEntity) bean;
                fse = reqp.getFormData();
            }
            // 判断参数是否为空
            if (fse == null) {
                SpringMVCContextHolder.getSystemLogger().error(DocumentCode.DOCUMENT_FORM_NODATA.getValue(),
                        DocumentCode.DOCUMENT_FORM_NODATA.getText());
                return this.error(DocumentCode.DOCUMENT_FORM_NODATA.getValue(),
                        DocumentCode.DOCUMENT_FORM_NODATA.getText());
            }
            FieldSetEntity fse = BaseUtil.getFieldSetEntity(request);
            return ResultInfo.success(documentDirectoryService.treeListAll(fse));
        } catch (BaseException e) {
            SpringMVCContextHolder.getSystemLogger().error(e);
@@ -296,19 +247,7 @@
    public String documentDirectoryInfo(HttpServletRequest request) {
        try {
            // 获取参数
            FieldSetEntity fse = null;
            Object bean = request.getAttribute(CoreConst.API_POST_REQUEST_DATA);
            if (bean != null) {
                RequestParameterEntity reqp = (RequestParameterEntity) bean;
                fse = reqp.getFormData();
            }
            // 判断参数是否为空
            if (fse == null) {
                SpringMVCContextHolder.getSystemLogger().error(DocumentCode.DOCUMENT_FORM_NODATA.getValue(),
                        DocumentCode.DOCUMENT_FORM_NODATA.getText());
                return this.error(DocumentCode.DOCUMENT_FORM_NODATA.getValue(),
                        DocumentCode.DOCUMENT_FORM_NODATA.getText());
            }
            FieldSetEntity fse = BaseUtil.getFieldSetEntity(request);
            String uuid = fse.getString(CmnConst.UUID);// 表uuid
            // 超级管理员为1 普通单位管理员2
            SystemUser currentUser = SpringMVCContextHolder.getCurrentUser();
src/main/java/com/product/file/service/DocumentService.java
@@ -25,6 +25,7 @@
import org.springframework.stereotype.Component;
import java.util.*;
import java.util.stream.Collectors;
/**
 * Copyright lx
@@ -324,52 +325,46 @@
    @Override
    public FieldSetEntity getButtonPermissions(FieldSetEntity fieldSetEntity) throws BaseException {
        String butt = "";
        String finalButtonPermissions = "";
        DataTableEntity dataTable = null;
        FieldSetEntity fse = new FieldSetEntity();
        fse.setTableName(CmnConst.PRODUCT_OA_DOCUMENT);
        if (StringUtils.equalsAny(fieldSetEntity.getString(CmnConst.DIRECTORY_UUID), "!borrow", "!favorite")) {
            // 收藏夹和借阅文件夹特殊处理
            dataTable = this.documentAll(fieldSetEntity);
            butt = "1,2";
            finalButtonPermissions = "1,2";
        } else if ("1".equals(fieldSetEntity.getString(CmnConst.DIRECTORY_TYPE))) {
            //获取的user_id
            Integer user_id = SpringMVCContextHolder.getCurrentUser().getUser_id();
            String key = "%," + user_id + ",%";
            //获取当前点击文件夹UUID
            String directory_uuid = fieldSetEntity.getString(CmnConst.DIRECTORY_UUID);
            //String key = "%,140,%";
            DataTableEntity dataTableEntity = new DataTableEntity();
            FieldSetEntity org = recursionRole(directory_uuid);
            if (verifyOrgExist(org.getString("storage_uuid"))) {
                StringBuffer sql = new StringBuffer();
                sql.append(" SELECT  substring_index(substring_index(a.rigths,',',b.help_topic_id+1),',',-1) fun FROM  PRODUCT_OA_directory_rights a ")
                        .append(" INNER join   mysql.help_topic b on b.help_topic_id < (length(a.rigths) - length(replace(a.rigths,',',''))+1) ")
                        .append(" WHERE a.directory_uuid = ? ");
                dataTableEntity = baseDao.listTable(sql.toString(), new String[]{org.getString("directory_uuid")});
            // 获取点击文件夹的操作权限(如果当前文件夹没有配置权限,则递归上级目录权限)
            DataTableEntity dtOperationPermissions = recursionRole(directory_uuid);
            if (!BaseUtil.dataTableIsEmpty(dtOperationPermissions)) {
                String buttonPermissions = ",";
                for (int i = 0; i < dtOperationPermissions.getRows(); i++) {
                    // 获取单条操作权限数据
                    FieldSetEntity fseOperationPermissions = dtOperationPermissions.getFieldSetEntity(i);
                    // 验证操作权限是否与当前操作人匹配成功
                    if (verifyOrgExist(fseOperationPermissions.getString("storage_uuid"))) {
                        // 按钮权限拼接
                        buttonPermissions += fseOperationPermissions.getString("rigths") + ",";
            }
            StringBuffer button = new StringBuffer();
            if (!BaseUtil.dataTableIsEmpty(dataTableEntity)) {
                for (int i = 0, length = dataTableEntity.getRows(); i < length; i++) {
                    FieldSetEntity field = dataTableEntity.getFieldSetEntity(i);
                    String fun = field.getString("fun");
                    //权限1(查看),2(下载),3(新增上传),4(修改,重命名),5(删除),6(移动)
                    button.append(fun).append(",");
                    if ("1".equals(fun)) {
                        //有查看权限就加载列表
                }
                if (!BaseUtil.strIsNull(buttonPermissions)) {
                    // 判断是否包含查看权限,包含查看权限则获取文件列表
                    if (buttonPermissions.contains(",1,")) {
                        dataTable = this.documentAll(fieldSetEntity);
                    }
                    finalButtonPermissions = Arrays.stream(buttonPermissions.split(","))
                            .filter(s -> !s.isEmpty())
                            .distinct()
                            .collect(Collectors.joining(","));
                }
            }
            if (!BaseUtil.strIsNull(button.toString())) {
                butt = button.substring(0, button.length() - 1);
            }
        } else {
            dataTable = this.documentAll(fieldSetEntity);
        }
        Map<String, DataTableEntity> dataMap = MapUtils.newHashMap();
        fse.setValue("button", butt);
        fse.setValue("button", finalButtonPermissions);
        //加载文件路径
        DataTableEntity file_list;
        if (StringUtils.equalsAny(fieldSetEntity.getString(CmnConst.DIRECTORY_UUID), "!borrow", "!favorite")) {
@@ -402,14 +397,14 @@
     * @param directory_uuid
     * @return
     */
    private FieldSetEntity recursionRole(String directory_uuid){
        FieldSetEntity org = baseDao.getFieldSetByFilter(CmnConst.PRODUCT_OA_DIRECTORY_RIGHTS, "directory_uuid=?", new String[]{directory_uuid}, false);
        if (FieldSetEntity.isEmpty(org)&&!StringUtils.isEmpty(directory_uuid)){
            FieldSetEntity directoryFs = baseDao.getFieldSet(CmnConst.PRODUCT_OA_DIRECTORY, directory_uuid,false);
            FieldSetEntity parentFs = baseDao.getFieldSetByFilter(CmnConst.PRODUCT_OA_DIRECTORY, "tricode=?",new String[]{directoryFs.getString("tricode_parent")},false);
            org=recursionRole(parentFs.getUUID());
    private DataTableEntity recursionRole(String directory_uuid){
        DataTableEntity dtOperationPermissions = baseDao.listTable(CmnConst.PRODUCT_OA_DIRECTORY_RIGHTS, "directory_uuid = ?", new Object[] {directory_uuid});
        if (BaseUtil.dataTableIsEmpty(dtOperationPermissions)) {
            FieldSetEntity fseDirectory = baseDao.getFieldSet(CmnConst.PRODUCT_OA_DIRECTORY, directory_uuid,false);
            FieldSetEntity fseDirectoryParent = baseDao.getFieldSetByFilter(CmnConst.PRODUCT_OA_DIRECTORY, "tricode=?",new String[]{fseDirectory.getString("tricode_parent")},false);
            dtOperationPermissions = recursionRole(fseDirectoryParent.getUUID());
        }
        return org;
        return dtOperationPermissions;
    }
    @Override