a60c46a13f3b07223eea1f4325aeb458c54be6e5..4d610081d9d2da1a4db118ce260d5afeea312d9f
2024-08-28 许鹏程
Merge remote-tracking branch 'origin/master'
4d6100 对比 | 目录
2024-08-28 许鹏程
bug
241e35 对比 | 目录
已修改2个文件
1647 ■■■■ 文件已修改
src/main/java/com/product/file/controller/DocumentController.java 1008 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/product/file/controller/FileManagerController.java 639 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/product/file/controller/DocumentController.java
@@ -39,523 +39,533 @@
@RequestMapping("/api/document")
@RestController
public class DocumentController extends AbstractBaseController {
    @Autowired
    public DocumentService documentService;
    @Autowired
    public DocumentService documentService;
    /**
     * 新增文件数据(上传)3
     *
     * @param request
     * @return
     */
    @RequestMapping(value = "/addDocument/{version}", method = RequestMethod.POST)
    @ApiVersion(1)
    public String addDocument(HttpServletRequest request) {
        try {
            //获取参数
            FieldSetEntity fse = BaseUtil.getFieldSetEntity(request);
            IDocumentService service = (IDocumentService) getProxyInstance(documentService);
            String uuids = service.addDocument(fse);
            return OK_Add(uuids);
        } catch (BaseException e) {
            SpringMVCContextHolder.getSystemLogger().error(e);
            return this.error(e);
        } catch (Exception e) {
            e.printStackTrace();
            SpringMVCContextHolder.getSystemLogger().error(e);
            return this.error(DocumentCode.DOCUMENT_SAVE_FAIL.getValue(), DocumentCode.DOCUMENT_SAVE_FAIL.getText());
        }
    }
    /**
     * 新增文件数据(上传)3
     *
     * @param request
     * @return
     */
    @RequestMapping(value = "/addDocument/{version}", method = RequestMethod.POST)
    @ApiVersion(1)
    public String addDocument(HttpServletRequest request) {
        try {
            //获取参数
            FieldSetEntity fse = BaseUtil.getFieldSetEntity(request);
            IDocumentService service = (IDocumentService) getProxyInstance(documentService);
            String uuids = service.addDocument(fse);
            return OK_Add(uuids);
        } catch (BaseException e) {
            e.printStackTrace();
            SpringMVCContextHolder.getSystemLogger().error(e);
            return this.error(e);
        } catch (Exception e) {
            e.printStackTrace();
            SpringMVCContextHolder.getSystemLogger().error(e);
            return this.error(DocumentCode.DOCUMENT_SAVE_FAIL.getValue(), DocumentCode.DOCUMENT_SAVE_FAIL.getText());
        }
    }
    /**
     * 重命名(编辑)4
     *
     * @param request
     * @return
     */
    @RequestMapping(value = "/upDocumentName/{version}", method = RequestMethod.POST)
    @ApiVersion(1)
    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());
            }
            IDocumentService service = (IDocumentService) getProxyInstance(documentService);
            boolean flag = service.upDocumentName(fse);
            if (flag) {
                return OK();
            }
            return this.error(DocumentCode.DOCUMENT_SAVE_FAIL.getValue(), DocumentCode.DOCUMENT_SAVE_FAIL.getText());
        } catch (BaseException e) {
            SpringMVCContextHolder.getSystemLogger().error(e);
            return this.error(e);
        } catch (Exception e) {
            e.printStackTrace();
            SpringMVCContextHolder.getSystemLogger().error(e);
            return this.error(DocumentCode.DOCUMENT_SAVE_FAIL.getValue(), DocumentCode.DOCUMENT_SAVE_FAIL.getText());
        }
    }
    /**
     * 删除文件(批量删除)5
     *
     * @param request
     * @return
     */
    @RequestMapping(value = "/delDocument/{version}", method = RequestMethod.POST)
    @ApiVersion(1)
    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());
            }
            IDocumentService service = (IDocumentService) getProxyInstance(documentService);
            boolean flag = service.delDocument(fse);
            if (flag) {
                return OK();
            }
            return this.error(DocumentCode.DOCUMENT_DELETE_FAIL.getValue(), DocumentCode.DOCUMENT_DELETE_FAIL.getText());
        } catch (BaseException e) {
            SpringMVCContextHolder.getSystemLogger().error(e);
            return this.error(e);
        } catch (Exception e) {
            e.printStackTrace();
            SpringMVCContextHolder.getSystemLogger().error(e);
            return this.error(DocumentCode.DOCUMENT_DELETE_FAIL.getValue(), DocumentCode.DOCUMENT_DELETE_FAIL.getText());
        }
    }
    /**
     * 根据文件夹获取文件列表(查看)1
     *
     * @param request
     * @return
     */
    @RequestMapping(value = "/documentAll/{version}", method = RequestMethod.POST)
    @ApiVersion(1)
    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());
            }
            DataTableEntity dataTableEntity = documentService.documentAll(fse);
            return OK_List(dataTableEntity);
        } catch (BaseException e) {
            SpringMVCContextHolder.getSystemLogger().error(e);
            return this.error(e);
        } catch (Exception e) {
            e.printStackTrace();
            SpringMVCContextHolder.getSystemLogger().error(e);
            return this.error(DocumentCode.DOCUMENT_GET_LIST_FAIL.getValue(), DocumentCode.DOCUMENT_GET_LIST_FAIL.getText());
        }
    }
    /**
     * 获取文件详情(查看)1
     *
     * @param request
     * @return
     */
    @RequestMapping(value = "/documentInfo/{version}", method = RequestMethod.POST)
    @ApiVersion(1)
    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());
            }
            return OK_List(documentService.documentInfo(fse));
        } catch (BaseException e) {
            SpringMVCContextHolder.getSystemLogger().error(e);
            return this.error(e);
        } catch (Exception e) {
            e.printStackTrace();
            SpringMVCContextHolder.getSystemLogger().error(e);
            return this.error(DocumentCode.DOCUMENT_GET_FAIL.getValue(), DocumentCode.DOCUMENT_GET_FAIL.getText());
        }
    }
    /**
     * 获取当前用户文档目录按钮权限权限
     * 和文件全路径
     * 若有查看权限查看所有文件
     * 权限1(查看),2(下载),3(新增{批量上传}),4(修改),5(批量删除),6(批量移动)
     *
     * @param request
     * @return
     */
    @RequestMapping(value = "/getButtonPermissions/{version}", method = RequestMethod.POST)
    @ApiVersion(1)
    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());
            }
            if (BaseUtil.strIsNull(fse.getString(CmnConst.DIRECTORY_UUID))) {
                return OK();
            }
            FieldSetEntity fieldSet = documentService.getButtonPermissions(fse);
            DataTableEntity dataTableEntity = fieldSet.getSubDataTable("dataTable");
            String str = OK_List(dataTableEntity);
            JSONObject object = JSONObject.parseObject(str);
            JSONArray systemFieldMeta = object.getJSONArray("systemFieldMeta");
            Object systemSeniorQueryString = object.get("systemSeniorQueryString");
            Map<String, Object> map = new HashMap<>();
            map.put("systemFieldMeta", systemFieldMeta);
            map.put("systemSeniorQueryString", systemSeniorQueryString);
            //传入fieldSet,  和额外的map  对象
            return BaseUtil.success(fieldSet, map);
        } catch (BaseException e) {
            SpringMVCContextHolder.getSystemLogger().error(e);
            return this.error(e);
        } catch (Exception e) {
            e.printStackTrace();
            SpringMVCContextHolder.getSystemLogger().error(e);
            return this.error(DocumentCode.DOCUMENT_GET_LIST_FAIL.getValue(), DocumentCode.DOCUMENT_GET_LIST_FAIL.getText());
        }
    }
    /**
     * 弹出移动目录框
     *
     * @param request
     * @return
     */
    @RequestMapping(value = "/popBoxGetFileDirectory/{version}", method = RequestMethod.POST)
    @ApiVersion(1)
    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());
            }
            JSONObject obj = documentService.popBoxGetFileDirectory(fse);
            return ResultInfo.success(obj);
        } catch (BaseException e) {
            SpringMVCContextHolder.getSystemLogger().error(e);
            return this.error(e);
        } catch (Exception e) {
            e.printStackTrace();
            SpringMVCContextHolder.getSystemLogger().error(e);
            return this.error(DocumentCode.DOCUMENT_CATALOG_GET_FAIL.getValue(), DocumentCode.DOCUMENT_CATALOG_GET_FAIL.getText());
        }
    }
    /**
     * 移动(文件批量移动)6
     *
     * @param request
     * @return
     */
    @RequestMapping(value = "/fileMoveTo/{version}", method = RequestMethod.POST)
    @ApiVersion(1)
    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());
            }
            if (documentService.fileMoveTo(fse)) {
                return OK();
            } else {
                return this.error(DocumentCode.DOCUMENT_USER_RIGHT_FAIL.getValue(), DocumentCode.DOCUMENT_USER_RIGHT_FAIL.getText());
            }
        } catch (BaseException e) {
            SpringMVCContextHolder.getSystemLogger().error(e);
            return this.error(e);
        } catch (Exception e) {
            e.printStackTrace();
            SpringMVCContextHolder.getSystemLogger().error(e);
            return this.error(DocumentCode.DOCUMENT_MOVE_FAIL.getValue(), DocumentCode.DOCUMENT_MOVE_FAIL.getText());
        }
    }
    /**
     * @param request
     * @return
     */
    @RequestMapping(value = "/getDocumentLog/{version}", method = RequestMethod.POST)
    @ApiVersion(1)
    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());
            }
            return OK_List(documentService.getDocumentLog(fse));
        } catch (BaseException e) {
            SpringMVCContextHolder.getSystemLogger().error(e);
            return this.error(e);
        } catch (Exception e) {
            e.printStackTrace();
            SpringMVCContextHolder.getSystemLogger().error(e);
            return this.error(DocumentCode.DOCUMENT_LOG_FAIL.getValue(), DocumentCode.DOCUMENT_LOG_FAIL.getText());
        }
    }
    /**
     *     文档收藏
     * @param request
     * @return
     */
    @RequestMapping(value = "/collection/{version}", method = RequestMethod.POST)
    @ApiVersion(1)
    public String documentCollection(HttpServletRequest request) {
        try {
            //获取参数
            FieldSetEntity fse = BaseUtil.getFieldSetEntity(request, CmnConst.PRODUCT_OA_DOCUMENT_COLLECTION);
            return OK_Add(documentService.documentCollection(fse));
        } catch (BaseException e) {
            e.printStackTrace();
            return this.error(e);
        } catch (Exception e) {
            e.printStackTrace();
            return this.error(DocumentCode.DOCUMENT_COLLECTION_FAIL.getValue(), DocumentCode.DOCUMENT_COLLECTION_FAIL.getText() + e.getMessage());
        }
    }
    /**
     *     文档取消收藏
     * @param request
     * @return
     */
    @RequestMapping(value = "/cancel-collection/{version}", method = RequestMethod.POST)
    @ApiVersion(1)
    public String documentCancelCollection(HttpServletRequest request) {
        try {
            //获取参数
            FieldSetEntity fse = BaseUtil.getFieldSetEntity(request, CmnConst.PRODUCT_OA_DOCUMENT_COLLECTION);
            if (documentService.documentCancelCollection(fse.getString("document_uuid"))) {
    /**
     * 重命名(编辑)4
     *
     * @param request
     * @return
     */
    @RequestMapping(value = "/upDocumentName/{version}", method = RequestMethod.POST)
    @ApiVersion(1)
    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());
            }
            IDocumentService service = (IDocumentService) getProxyInstance(documentService);
            boolean flag = service.upDocumentName(fse);
            if (flag) {
                return OK();
            }
            return error(DocumentCode.DOCUMENT_CANCEL_COLLECTION_FAIL.getValue(), DocumentCode.DOCUMENT_CANCEL_COLLECTION_FAIL.getText());
        } 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());
        }
    }
            return this.error(DocumentCode.DOCUMENT_SAVE_FAIL.getValue(), DocumentCode.DOCUMENT_SAVE_FAIL.getText());
        } catch (BaseException e) {
            SpringMVCContextHolder.getSystemLogger().error(e);
            return this.error(e);
        } catch (Exception e) {
            e.printStackTrace();
            SpringMVCContextHolder.getSystemLogger().error(e);
            return this.error(DocumentCode.DOCUMENT_SAVE_FAIL.getValue(), DocumentCode.DOCUMENT_SAVE_FAIL.getText());
        }
    }
    /**
     *     文档历史版本
     * @param request
     * @return
     */
    @RequestMapping(value = "/document-history/{version}", method = RequestMethod.POST)
    @ApiVersion(1)
    public String findDocumentHistory(HttpServletRequest request) {
        try {
            //获取参数
            FieldSetEntity fse = BaseUtil.getFieldSetEntity(request, CmnConst.PRODUCT_OA_DOCUMENT_COLLECTION);
            return OK_List(documentService.findDocumentHistory(fse.getUUID()));
        } 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());
        }
    }
    /**
     *     文档最新版本保存
     * @param request
     * @return
     */
    @RequestMapping(value = "/document-save-new-version/{version}", method = RequestMethod.POST)
    @ApiVersion(1)
    public String documentSaveNewVersion(HttpServletRequest request) {
        try {
            //获取参数
            FieldSetEntity fse = BaseUtil.getFieldSetEntity(request, CmnConst.PRODUCT_OA_DOCUMENT_COLLECTION);
            if (documentService.documentSaveNewVersion(fse)) {
    /**
     * 删除文件(批量删除)5
     *
     * @param request
     * @return
     */
    @RequestMapping(value = "/delDocument/{version}", method = RequestMethod.POST)
    @ApiVersion(1)
    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());
            }
            IDocumentService service = (IDocumentService) getProxyInstance(documentService);
            boolean flag = service.delDocument(fse);
            if (flag) {
                return OK();
            }
            return error(DocumentCode.DOCUMENT_SAVE_NEW_VERION_FAIL.getValue(), DocumentCode.DOCUMENT_SAVE_NEW_VERION_FAIL.getText());
        } 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());
        }
    }
            return this.error(DocumentCode.DOCUMENT_DELETE_FAIL.getValue(), DocumentCode.DOCUMENT_DELETE_FAIL.getText());
        } catch (BaseException e) {
            SpringMVCContextHolder.getSystemLogger().error(e);
            return this.error(e);
        } catch (Exception e) {
            e.printStackTrace();
            SpringMVCContextHolder.getSystemLogger().error(e);
            return this.error(DocumentCode.DOCUMENT_DELETE_FAIL.getValue(), DocumentCode.DOCUMENT_DELETE_FAIL.getText());
        }
    }
    /**
     * 根据文件夹获取文件列表(查看)1
     *
     * @param request
     * @return
     */
    @RequestMapping(value = "/documentAll/{version}", method = RequestMethod.POST)
    @ApiVersion(1)
    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());
            }
            DataTableEntity dataTableEntity = documentService.documentAll(fse);
            return OK_List(dataTableEntity);
        } catch (BaseException e) {
            SpringMVCContextHolder.getSystemLogger().error(e);
            return this.error(e);
        } catch (Exception e) {
            e.printStackTrace();
            SpringMVCContextHolder.getSystemLogger().error(e);
            return this.error(DocumentCode.DOCUMENT_GET_LIST_FAIL.getValue(), DocumentCode.DOCUMENT_GET_LIST_FAIL.getText());
        }
    }
    /**
     * 获取文件详情(查看)1
     *
     * @param request
     * @return
     */
    @RequestMapping(value = "/documentInfo/{version}", method = RequestMethod.POST)
    @ApiVersion(1)
    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());
            }
            return OK_List(documentService.documentInfo(fse));
        } catch (BaseException e) {
            SpringMVCContextHolder.getSystemLogger().error(e);
            return this.error(e);
        } catch (Exception e) {
            e.printStackTrace();
            SpringMVCContextHolder.getSystemLogger().error(e);
            return this.error(DocumentCode.DOCUMENT_GET_FAIL.getValue(), DocumentCode.DOCUMENT_GET_FAIL.getText());
        }
    }
    /**
     * 获取当前用户文档目录按钮权限权限
     * 和文件全路径
     * 若有查看权限查看所有文件
     * 权限1(查看),2(下载),3(新增{批量上传}),4(修改),5(批量删除),6(批量移动)
     *
     * @param request
     * @return
     */
    @RequestMapping(value = "/getButtonPermissions/{version}", method = RequestMethod.POST)
    @ApiVersion(1)
    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());
            }
            if (BaseUtil.strIsNull(fse.getString(CmnConst.DIRECTORY_UUID))) {
                return OK();
            }
            FieldSetEntity fieldSet = documentService.getButtonPermissions(fse);
            DataTableEntity dataTableEntity = fieldSet.getSubDataTable("dataTable");
            String str = OK_List(dataTableEntity);
            JSONObject object = JSONObject.parseObject(str);
            JSONArray systemFieldMeta = object.getJSONArray("systemFieldMeta");
            Object systemSeniorQueryString = object.get("systemSeniorQueryString");
            Map<String, Object> map = new HashMap<>();
            map.put("systemFieldMeta", systemFieldMeta);
            map.put("systemSeniorQueryString", systemSeniorQueryString);
            //传入fieldSet,  和额外的map  对象
            return BaseUtil.success(fieldSet, map);
        } catch (BaseException e) {
            SpringMVCContextHolder.getSystemLogger().error(e);
            return this.error(e);
        } catch (Exception e) {
            e.printStackTrace();
            SpringMVCContextHolder.getSystemLogger().error(e);
            return this.error(DocumentCode.DOCUMENT_GET_LIST_FAIL.getValue(), DocumentCode.DOCUMENT_GET_LIST_FAIL.getText());
        }
    }
    /**
     * 弹出移动目录框
     *
     * @param request
     * @return
     */
    @RequestMapping(value = "/popBoxGetFileDirectory/{version}", method = RequestMethod.POST)
    @ApiVersion(1)
    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());
            }
            JSONObject obj = documentService.popBoxGetFileDirectory(fse);
            return ResultInfo.success(obj);
        } catch (BaseException e) {
            SpringMVCContextHolder.getSystemLogger().error(e);
            return this.error(e);
        } catch (Exception e) {
            e.printStackTrace();
            SpringMVCContextHolder.getSystemLogger().error(e);
            return this.error(DocumentCode.DOCUMENT_CATALOG_GET_FAIL.getValue(), DocumentCode.DOCUMENT_CATALOG_GET_FAIL.getText());
        }
    }
    /**
     * 移动(文件批量移动)6
     *
     * @param request
     * @return
     */
    @RequestMapping(value = "/fileMoveTo/{version}", method = RequestMethod.POST)
    @ApiVersion(1)
    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());
            }
            if (documentService.fileMoveTo(fse)) {
                return OK();
            } else {
                return this.error(DocumentCode.DOCUMENT_USER_RIGHT_FAIL.getValue(), DocumentCode.DOCUMENT_USER_RIGHT_FAIL.getText());
            }
        } catch (BaseException e) {
            SpringMVCContextHolder.getSystemLogger().error(e);
            return this.error(e);
        } catch (Exception e) {
            e.printStackTrace();
            SpringMVCContextHolder.getSystemLogger().error(e);
            return this.error(DocumentCode.DOCUMENT_MOVE_FAIL.getValue(), DocumentCode.DOCUMENT_MOVE_FAIL.getText());
        }
    }
    @RequestMapping(value = "/getApplyDocument/{version}", method = RequestMethod.POST)
    @ApiVersion(1)
    public String getApplyDocument(HttpServletRequest request){
    /**
     * @param request
     * @return
     */
    @RequestMapping(value = "/getDocumentLog/{version}", method = RequestMethod.POST)
    @ApiVersion(1)
    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());
            }
            return OK_List(documentService.getDocumentLog(fse));
        } catch (BaseException e) {
            SpringMVCContextHolder.getSystemLogger().error(e);
            return this.error(e);
        } catch (Exception e) {
            e.printStackTrace();
            SpringMVCContextHolder.getSystemLogger().error(e);
            return this.error(DocumentCode.DOCUMENT_LOG_FAIL.getValue(), DocumentCode.DOCUMENT_LOG_FAIL.getText());
        }
    }
        //获取参数
        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());
        }
        DataTableEntity applyDocument = documentService.getApplyDocument(fse);
        return OK_List(applyDocument);
    /**
     * 文档收藏
     *
     * @param request
     * @return
     */
    @RequestMapping(value = "/collection/{version}", method = RequestMethod.POST)
    @ApiVersion(1)
    public String documentCollection(HttpServletRequest request) {
        try {
            //获取参数
            FieldSetEntity fse = BaseUtil.getFieldSetEntity(request, CmnConst.PRODUCT_OA_DOCUMENT_COLLECTION);
            return OK_Add(documentService.documentCollection(fse));
        } catch (BaseException e) {
            e.printStackTrace();
            return this.error(e);
        } catch (Exception e) {
            e.printStackTrace();
            return this.error(DocumentCode.DOCUMENT_COLLECTION_FAIL.getValue(), DocumentCode.DOCUMENT_COLLECTION_FAIL.getText() + e.getMessage());
        }
    }
    }
    /**
     * 文档取消收藏
     *
     * @param request
     * @return
     */
    @RequestMapping(value = "/cancel-collection/{version}", method = RequestMethod.POST)
    @ApiVersion(1)
    public String documentCancelCollection(HttpServletRequest request) {
        try {
            //获取参数
            FieldSetEntity fse = BaseUtil.getFieldSetEntity(request, CmnConst.PRODUCT_OA_DOCUMENT_COLLECTION);
            if (documentService.documentCancelCollection(fse.getString("document_uuid"))) {
                return OK();
            }
            return error(DocumentCode.DOCUMENT_CANCEL_COLLECTION_FAIL.getValue(), DocumentCode.DOCUMENT_CANCEL_COLLECTION_FAIL.getText());
        } 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());
        }
    }
    /**
     * 文档历史版本
     *
     * @param request
     * @return
     */
    @RequestMapping(value = "/document-history/{version}", method = RequestMethod.POST)
    @ApiVersion(1)
    public String findDocumentHistory(HttpServletRequest request) {
        try {
            //获取参数
            FieldSetEntity fse = BaseUtil.getFieldSetEntity(request, CmnConst.PRODUCT_OA_DOCUMENT_HISTORY);
            return OK_List(documentService.findDocumentHistory(fse.getUUID()));
        } 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());
        }
    }
    /**
     * 文档最新版本保存
     *
     * @param request
     * @return
     */
    @RequestMapping(value = "/document-save-new-version/{version}", method = RequestMethod.POST)
    @ApiVersion(1)
    public String documentSaveNewVersion(HttpServletRequest request) {
        try {
            //获取参数
            FieldSetEntity fse = BaseUtil.getFieldSetEntity(request, CmnConst.PRODUCT_OA_DOCUMENT);
            if (documentService.documentSaveNewVersion(fse)) {
                return OK();
            }
            return error(DocumentCode.DOCUMENT_SAVE_NEW_VERION_FAIL.getValue(), DocumentCode.DOCUMENT_SAVE_NEW_VERION_FAIL.getText());
        } 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());
        }
    }
    /**
     * 文档申请保存与更新
     * @param request
     * @return
     */
    @RequestMapping(value = "/addOrUpdateApplyDocument/{version}", method = RequestMethod.POST)
    @ApiVersion(1)
    public String addOrUpdateApplyDocument(HttpServletRequest request){
        //获取参数
        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());
        }
        documentService.addOrUpdateApplyDocument(fse);
        return  OK();
    }
    @RequestMapping(value = "/getApplyDocument/{version}", method = RequestMethod.POST)
    @ApiVersion(1)
    public String getApplyDocument(HttpServletRequest request) {
    /**
     * 借阅文档排名
     * @return
     */
    @RequestMapping(value = "/getApplayFileSort/{version}", method = RequestMethod.POST)
    @ApiVersion(1)
    public String getApplayFileSort(){
        DataTableEntity applayFileSort = documentService.getApplyFileSort();
        return  OK_List(applayFileSort);
    }
        //获取参数
        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());
        }
        DataTableEntity applyDocument = documentService.getApplyDocument(fse);
        return OK_List(applyDocument);
    }
    /**
     * 文档借阅人员排名
     * @return
     */
    @RequestMapping(value = "/getApplayUserSort/{version}", method = RequestMethod.POST)
    @ApiVersion(1)
    public String getApplayUserSort(){
        DataTableEntity applayFileSort = documentService.getApplyUserSort();
        return  OK_List(applayFileSort);
    }
    /**
     * 文档申请保存与更新
     *
     * @param request
     * @return
     */
    @RequestMapping(value = "/addOrUpdateApplyDocument/{version}", method = RequestMethod.POST)
    @ApiVersion(1)
    public String addOrUpdateApplyDocument(HttpServletRequest request) {
        //获取参数
        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());
        }
        documentService.addOrUpdateApplyDocument(fse);
        return OK();
    }
    /**
     * 获取借阅详情信息
     * @param request
     */
    /**
     * 借阅文档排名
     *
     * @return
     */
    @RequestMapping(value = "/getApplayFileSort/{version}", method = RequestMethod.POST)
    @ApiVersion(1)
    public String getApplayFileSort() {
        DataTableEntity applayFileSort = documentService.getApplyFileSort();
        return OK_List(applayFileSort);
    }
    @RequestMapping(value = "/getApplayInfo/{version}", method = RequestMethod.POST)
    @ApiVersion(1)
    public String getApplayInfo(HttpServletRequest request){
        //获取参数
        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 applayInfo = documentService.getApplyInfo(fse);
        return OK_List(applayInfo);
    }
    /**
     * 文档借阅人员排名
     *
     * @return
     */
    @RequestMapping(value = "/getApplayUserSort/{version}", method = RequestMethod.POST)
    @ApiVersion(1)
    public String getApplayUserSort() {
        DataTableEntity applayFileSort = documentService.getApplyUserSort();
        return OK_List(applayFileSort);
    }
    /**
     * 获取借阅详情信息
     *
     * @param request
     */
    @RequestMapping(value = "/getApplayInfo/{version}", method = RequestMethod.POST)
    @ApiVersion(1)
    public String getApplayInfo(HttpServletRequest request) {
        //获取参数
        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 applayInfo = documentService.getApplyInfo(fse);
        return OK_List(applayInfo);
    }
}
src/main/java/com/product/file/controller/FileManagerController.java
@@ -32,351 +32,356 @@
@RestController
public class FileManagerController extends AbstractBaseController {
    @Autowired
    public FileManagerService fileManagerService;
    @Autowired
    public FileManagerService fileManagerService;
    /**
     * @param uuid
     * @param response
     * @return
     */
    @GetMapping("/get-static-file/{version}")
    @ApiVersion(1)
    public String getStaticFile(@RequestParam("uuid") String uuid, HttpServletResponse response) {
        try {
            // 没有登录,白名单中 该接口中不能获取 token 和 当前用户
            fileManagerService.getStaticFile(uuid, response);
            return OK();
        } catch (BaseException e) {
            e.printStackTrace();
            return error(e);
        } catch (Exception e) {
            e.printStackTrace();
            SpringMVCContextHolder.getSystemLogger().error(e);
            return error(FileCode.GET_FILE_FAIL);
        }
    }
    /**
     * @param uuid
     * @param response
     * @return
     */
    @GetMapping("/get-static-file/{version}")
    @ApiVersion(1)
    public String getStaticFile(@RequestParam("uuid") String uuid, HttpServletResponse response) {
        try {
            // 没有登录,白名单中 该接口中不能获取 token 和 当前用户
            fileManagerService.getStaticFile(uuid, response);
            return OK();
        } catch (BaseException e) {
            e.printStackTrace();
            return error(e);
        } catch (Exception e) {
            e.printStackTrace();
            SpringMVCContextHolder.getSystemLogger().error(e);
            return error(FileCode.GET_FILE_FAIL);
        }
    }
    /**
     * 获取客户上传的文件总大小
     *
     * @param request 请求
     * @return 结果
     */
    @RequestMapping(value = "/find-client-file-uesd-capacity/{version}", method = RequestMethod.POST)
    @ApiVersion(1)
    public String findClientFileUsedCapacity(HttpServletRequest request) {
        try {
            FieldSetEntity fse = null;
            Object bean = request.getAttribute(CoreConst.API_POST_REQUEST_DATA);
            RequestParameterEntity rpe = (RequestParameterEntity) bean;
            if (null != rpe && null != rpe.getFormData()) {
                fse = rpe.getFormData();
            }
            if (fse == null) {
                SpringMVCContextHolder.getSystemLogger().error(FileCode.FORM_NODATA.getValue(), FileCode.FORM_NODATA.getText());
                return this.error(FileCode.FORM_NODATA.getValue(), FileCode.FORM_NODATA.getText());
            }
    /**
     * 获取客户上传的文件总大小
     *
     * @param request 请求
     * @return 结果
     */
    @RequestMapping(value = "/find-client-file-uesd-capacity/{version}", method = RequestMethod.POST)
    @ApiVersion(1)
    public String findClientFileUsedCapacity(HttpServletRequest request) {
        try {
            FieldSetEntity fse = null;
            Object bean = request.getAttribute(CoreConst.API_POST_REQUEST_DATA);
            RequestParameterEntity rpe = (RequestParameterEntity) bean;
            if (null != rpe && null != rpe.getFormData()) {
                fse = rpe.getFormData();
            }
            if (fse == null) {
                SpringMVCContextHolder.getSystemLogger().error(FileCode.FORM_NODATA.getValue(), FileCode.FORM_NODATA.getText());
                return this.error(FileCode.FORM_NODATA.getValue(), FileCode.FORM_NODATA.getText());
            }
            long usedCapacity = fileManagerService.findClientFileUsedCapacity(fse.getString("client_uuid"));
            JSONObject data = new JSONObject();
            data.put("used_capacity", String.valueOf(usedCapacity));
            JSONObject result = new JSONObject();
            result.put("data", data);
            result.put("msg", FileCode.SUCCESS.getText());
            result.put("code", "200");
            result.put("status", "success");
            return result.toString();
        } catch (BaseException e) {
            SpringMVCContextHolder.getSystemLogger().error(e);
            return this.error(e.getCode(), e.getMessageInfo());
        } catch (Exception e) {
            SpringMVCContextHolder.getSystemLogger().error(e);
            e.printStackTrace();
            return error(FileCode.GET_DATA_FAIL.getValue(), FileCode.GET_DATA_FAIL.getText());
        }
    }
            long usedCapacity = fileManagerService.findClientFileUsedCapacity(fse.getString("client_uuid"));
            JSONObject data = new JSONObject();
            data.put("used_capacity", String.valueOf(usedCapacity));
            JSONObject result = new JSONObject();
            result.put("data", data);
            result.put("msg", FileCode.SUCCESS.getText());
            result.put("code", "200");
            result.put("status", "success");
            return result.toString();
        } catch (BaseException e) {
            SpringMVCContextHolder.getSystemLogger().error(e);
            return this.error(e.getCode(), e.getMessageInfo());
        } catch (Exception e) {
            SpringMVCContextHolder.getSystemLogger().error(e);
            e.printStackTrace();
            return error(FileCode.GET_DATA_FAIL.getValue(), FileCode.GET_DATA_FAIL.getText());
        }
    }
    /**
     * 获取客户剩余的文件总大小
     *
     * @param request 请求
     * @return 结果
     */
    @RequestMapping(value = "/find-client-file-residue-capacity/{version}", method = RequestMethod.POST)
    @ApiVersion(1)
    public String findClientFileResidueCapacity(HttpServletRequest request) {
        try {
            FieldSetEntity fse = null;
            Object bean = request.getAttribute(CoreConst.API_POST_REQUEST_DATA);
            RequestParameterEntity rpe = (RequestParameterEntity) bean;
            if (null != rpe && null != rpe.getFormData()) {
                fse = rpe.getFormData();
            }
            if (fse == null) {
                SpringMVCContextHolder.getSystemLogger().error(FileCode.FORM_NODATA.getValue(), FileCode.FORM_NODATA.getText());
                return this.error(FileCode.FORM_NODATA.getValue(), FileCode.FORM_NODATA.getText());
            }
    /**
     * 获取客户剩余的文件总大小
     *
     * @param request 请求
     * @return 结果
     */
    @RequestMapping(value = "/find-client-file-residue-capacity/{version}", method = RequestMethod.POST)
    @ApiVersion(1)
    public String findClientFileResidueCapacity(HttpServletRequest request) {
        try {
            FieldSetEntity fse = null;
            Object bean = request.getAttribute(CoreConst.API_POST_REQUEST_DATA);
            RequestParameterEntity rpe = (RequestParameterEntity) bean;
            if (null != rpe && null != rpe.getFormData()) {
                fse = rpe.getFormData();
            }
            if (fse == null) {
                SpringMVCContextHolder.getSystemLogger().error(FileCode.FORM_NODATA.getValue(), FileCode.FORM_NODATA.getText());
                return this.error(FileCode.FORM_NODATA.getValue(), FileCode.FORM_NODATA.getText());
            }
            long residueCapacity = fileManagerService.findClientFileResidueCapacity(fse.getString("client_uuid"));
            JSONObject data = new JSONObject();
            data.put("residue_capacity", String.valueOf(residueCapacity));
            JSONObject result = new JSONObject();
            result.put("data", data);
            result.put("msg", FileCode.SUCCESS.getText());
            result.put("code", "200");
            result.put("status", "success");
            return result.toString();
        } catch (BaseException e) {
            SpringMVCContextHolder.getSystemLogger().error(e);
            return this.error(e.getCode(), e.getMessageInfo());
        } catch (Exception e) {
            SpringMVCContextHolder.getSystemLogger().error(e);
            e.printStackTrace();
            return error(FileCode.GET_DATA_FAIL.getValue(), FileCode.GET_DATA_FAIL.getText());
        }
    }
            long residueCapacity = fileManagerService.findClientFileResidueCapacity(fse.getString("client_uuid"));
            JSONObject data = new JSONObject();
            data.put("residue_capacity", String.valueOf(residueCapacity));
            JSONObject result = new JSONObject();
            result.put("data", data);
            result.put("msg", FileCode.SUCCESS.getText());
            result.put("code", "200");
            result.put("status", "success");
            return result.toString();
        } catch (BaseException e) {
            SpringMVCContextHolder.getSystemLogger().error(e);
            return this.error(e.getCode(), e.getMessageInfo());
        } catch (Exception e) {
            SpringMVCContextHolder.getSystemLogger().error(e);
            e.printStackTrace();
            return error(FileCode.GET_DATA_FAIL.getValue(), FileCode.GET_DATA_FAIL.getText());
        }
    }
    /**
     * 验证是否允许上传的文件类型
     *
     * @param request 请求
     * @return 结果
     */
    @RequestMapping(value = "/check-is-allowed-file-type/{version}", method = RequestMethod.POST)
    @ApiVersion(1)
    public String checkIsAllowedFileType(HttpServletRequest request) {
        try {
            FieldSetEntity fse = null;
            Object bean = request.getAttribute(CoreConst.API_POST_REQUEST_DATA);
            RequestParameterEntity rpe = (RequestParameterEntity) bean;
            if (null != rpe && null != rpe.getFormData()) {
                fse = rpe.getFormData();
            }
            if (fse == null) {
                SpringMVCContextHolder.getSystemLogger().error(FileCode.FORM_NODATA.getValue(), FileCode.FORM_NODATA.getText());
                return this.error(FileCode.FORM_NODATA.getValue(), FileCode.FORM_NODATA.getText());
            }
    /**
     * 验证是否允许上传的文件类型
     *
     * @param request 请求
     * @return 结果
     */
    @RequestMapping(value = "/check-is-allowed-file-type/{version}", method = RequestMethod.POST)
    @ApiVersion(1)
    public String checkIsAllowedFileType(HttpServletRequest request) {
        try {
            FieldSetEntity fse = null;
            Object bean = request.getAttribute(CoreConst.API_POST_REQUEST_DATA);
            RequestParameterEntity rpe = (RequestParameterEntity) bean;
            if (null != rpe && null != rpe.getFormData()) {
                fse = rpe.getFormData();
            }
            if (fse == null) {
                SpringMVCContextHolder.getSystemLogger().error(FileCode.FORM_NODATA.getValue(), FileCode.FORM_NODATA.getText());
                return this.error(FileCode.FORM_NODATA.getValue(), FileCode.FORM_NODATA.getText());
            }
            boolean f = fileManagerService.checkIsAllowedFileType(fse.getString("attachment_name"));
            return f ? this.OK() : this.error(FileCode.CHECK_FAIL.getValue(), FileCode.CHECK_FAIL.getText());
        } catch (BaseException e) {
            SpringMVCContextHolder.getSystemLogger().error(e);
            return this.error(e.getCode(), e.getMessageInfo());
        } catch (Exception e) {
            SpringMVCContextHolder.getSystemLogger().error(e);
            e.printStackTrace();
            return error(FileCode.CHECK_FAIL.getValue(), FileCode.CHECK_FAIL.getText());
        }
    }
            boolean f = fileManagerService.checkIsAllowedFileType(fse.getString("attachment_name"));
            return f ? this.OK() : this.error(FileCode.CHECK_FAIL.getValue(), FileCode.CHECK_FAIL.getText());
        } catch (BaseException e) {
            SpringMVCContextHolder.getSystemLogger().error(e);
            return this.error(e.getCode(), e.getMessageInfo());
        } catch (Exception e) {
            SpringMVCContextHolder.getSystemLogger().error(e);
            e.printStackTrace();
            return error(FileCode.CHECK_FAIL.getValue(), FileCode.CHECK_FAIL.getText());
        }
    }
    /**
     * 获取原始域名
     *
     * @return 结果
     */
    @RequestMapping(value = "/find-source-domain/{version}", method = RequestMethod.POST)
    @ApiVersion(1)
    public String findSourceDomain() {
        try {
            String sourceDomain = fileManagerService.findSourceDomain();
    /**
     * 获取原始域名
     *
     * @return 结果
     */
    @RequestMapping(value = "/find-source-domain/{version}", method = RequestMethod.POST)
    @ApiVersion(1)
    public String findSourceDomain() {
        try {
            String sourceDomain = fileManagerService.findSourceDomain();
            JSONObject data = new JSONObject();
            data.put("source_domain", sourceDomain);
            JSONObject result = new JSONObject();
            result.put("data", data);
            result.put("msg", FileCode.SUCCESS.getText());
            result.put("code", "200");
            result.put("status", "success");
            return result.toString();
        } catch (Exception e) {
            JSONObject data = new JSONObject();
            data.put("source_domain", sourceDomain);
            JSONObject result = new JSONObject();
            result.put("data", data);
            result.put("msg", FileCode.SUCCESS.getText());
            result.put("code", "200");
            result.put("status", "success");
            return result.toString();
        } catch (Exception e) {
            SpringMVCContextHolder.getSystemLogger().error(e);
            e.printStackTrace();
            return error(FileCode.FIND_SOURCE_DOMAIN_FAIL.getValue(), FileCode.FIND_SOURCE_DOMAIN_FAIL.getText());
        }
    }
            SpringMVCContextHolder.getSystemLogger().error(e);
            e.printStackTrace();
            return error(FileCode.FIND_SOURCE_DOMAIN_FAIL.getValue(), FileCode.FIND_SOURCE_DOMAIN_FAIL.getText());
        }
    }
    /**
     * 手动触发无用数据清空
     *
     * @return 结果
     */
    @RequestMapping(value = "/clear-no-used-data/{version}", method = RequestMethod.POST)
    @ApiVersion(1)
    public String clearNoUsedData() {
        try {
            boolean reuslt = fileManagerService.autoClearNoUsedData();
            JSONObject result = new JSONObject();
            result.put("msg", FileCode.SUCCESS.getText());
            result.put("code", "200");
            result.put("status", reuslt);
            return result.toString();
        } catch (Exception e) {
            SpringMVCContextHolder.getSystemLogger().error(e);
            e.printStackTrace();
            return error(FileCode.CLEAR_NO_USED_DATA_FAIL.getValue(), FileCode.CLEAR_NO_USED_DATA_FAIL.getText());
        }
    }
    /**
     * 手动触发无用数据清空
     *
     * @return 结果
     */
    @RequestMapping(value = "/clear-no-used-data/{version}", method = RequestMethod.POST)
    @ApiVersion(1)
    public String clearNoUsedData() {
        try {
            boolean reuslt = fileManagerService.autoClearNoUsedData();
            JSONObject result = new JSONObject();
            result.put("msg", FileCode.SUCCESS.getText());
            result.put("code", "200");
            result.put("status", reuslt);
            return result.toString();
        } catch (Exception e) {
            SpringMVCContextHolder.getSystemLogger().error(e);
            e.printStackTrace();
            return error(FileCode.CLEAR_NO_USED_DATA_FAIL.getValue(), FileCode.CLEAR_NO_USED_DATA_FAIL.getText());
        }
    }
    /**
     * 文件刪除
     *
     * @param request
     * @return
     */
    @RequestMapping(value = "/delete-file/{version}", method = RequestMethod.POST)
    @ApiVersion(1)
    public String deleteFile(HttpServletRequest request) {
        try {
            FieldSetEntity fse = null;
            Object bean = request.getAttribute(CoreConst.API_POST_REQUEST_DATA);
            RequestParameterEntity rpe = (RequestParameterEntity) bean;
            if (null != rpe && null != rpe.getFormData()) {
                fse = rpe.getFormData();
            }
            if (fse == null) {
                SpringMVCContextHolder.getSystemLogger().error(FileCode.FORM_NODATA.getValue(), FileCode.FORM_NODATA.getText());
                return this.error(FileCode.FORM_NODATA.getValue(), FileCode.FORM_NODATA.getText());
            }
            return BaseUtil.success(fileManagerService.delFiles(fse), null);
        } catch (Exception e) {
            SpringMVCContextHolder.getSystemLogger().error(e);
            e.printStackTrace();
            return error(FileCode.CLEAR_NO_USED_DATA_FAIL.getValue(), FileCode.CLEAR_NO_USED_DATA_FAIL.getText());
        }
    }
    /**
     * 文件刪除
     *
     * @param request
     * @return
     */
    @RequestMapping(value = "/delete-file/{version}", method = RequestMethod.POST)
    @ApiVersion(1)
    public String deleteFile(HttpServletRequest request) {
        try {
            FieldSetEntity fse = null;
            Object bean = request.getAttribute(CoreConst.API_POST_REQUEST_DATA);
            RequestParameterEntity rpe = (RequestParameterEntity) bean;
            if (null != rpe && null != rpe.getFormData()) {
                fse = rpe.getFormData();
            }
            if (fse == null) {
                SpringMVCContextHolder.getSystemLogger().error(FileCode.FORM_NODATA.getValue(), FileCode.FORM_NODATA.getText());
                return this.error(FileCode.FORM_NODATA.getValue(), FileCode.FORM_NODATA.getText());
            }
            return BaseUtil.success(fileManagerService.delFiles(fse), null);
        } catch (Exception e) {
            SpringMVCContextHolder.getSystemLogger().error(e);
            e.printStackTrace();
            return error(FileCode.CLEAR_NO_USED_DATA_FAIL.getValue(), FileCode.CLEAR_NO_USED_DATA_FAIL.getText());
        }
    }
    /**
     * 上传文件
     *
     * @return 结果
     */
    @RequestMapping(value = "/upload-file/{version}", method = RequestMethod.POST)
    @ApiVersion(1)
    public String uploadFile(HttpServletRequest request) {
        try {
            Object bean = request.getAttribute(CoreConst.API_POST_REQUEST_DATA);
            RequestParameterEntity rpe = (RequestParameterEntity) bean;
            FieldSetEntity fieldSetEntity = fileManagerService.uploadFile(rpe);
            return OK_List(fieldSetEntity);
        } catch (BaseException e) {
            SpringMVCContextHolder.getSystemLogger().error(e);
            e.printStackTrace();
            return error(e.getCode(), e.getMessage());
        } catch (Exception e) {
            SpringMVCContextHolder.getSystemLogger().error(e);
            e.printStackTrace();
            return error(FileCode.UPLOAD_FILE_FAIL.getValue(), FileCode.UPLOAD_FILE_FAIL.getText());
        }
    }
    /**
     * 下载文件或者在线预览
     *
     * @return 结果
     */
    @RequestMapping(value = "/get-file-content/{version}", method = RequestMethod.GET)
    @ApiVersion(1)
    public String getFileContents(HttpServletRequest request, HttpServletResponse response) {
        try {
            FieldSetEntity fse = null;
            String uuid = request.getParameter(CoreConst.UUID);
            String onlineView = request.getParameter(CmnConst.NEED_ONLINE_VIEW);
            if (StringUtils.isEmpty(uuid)) {
                SpringMVCContextHolder.getSystemLogger().error(FileCode.FORM_NODATA.getValue(), FileCode.FORM_NODATA.getText());
                return this.error(FileCode.FORM_NODATA.getValue(), FileCode.FORM_NODATA.getText());
            }
            fse=new FieldSetEntity();
            fse.setTableName(CmnConst.PRODUCT_SYS_ATTACHMENTS);
            fse.setValue(CoreConst.UUID, uuid);
            fse.setValue(CmnConst.NEED_ONLINE_VIEW, onlineView);
            SpringMVCContextHolder.getSystemLogger().info("通过GET请求获取附件内容");
            // 正式代码
            fileManagerService.getFileContent(fse, response);
            return OK();
        } catch (Exception e) {
            SpringMVCContextHolder.getSystemLogger().error(e);
            e.printStackTrace();
            return error(FileCode.GET_FILE_CONTENT_FAIL.getValue(), FileCode.GET_FILE_CONTENT_FAIL.getText());
        }
    }
    /**
     * 下载文件或者在线预览
     *
     * @return 结果
     */
    @RequestMapping(value = "/get-file-content/{version}", method = RequestMethod.POST)
    @ApiVersion(1)
    public String getFileContent(HttpServletRequest request, HttpServletResponse response) {
        try {
            FieldSetEntity fse = null;
            Object bean = request.getAttribute(CoreConst.API_POST_REQUEST_DATA);
            RequestParameterEntity rpe = (RequestParameterEntity) bean;
            if (null != rpe && null != rpe.getFormData()) {
                fse = rpe.getFormData();
            }
            if (fse == null) {
                SpringMVCContextHolder.getSystemLogger().error(FileCode.FORM_NODATA.getValue(), FileCode.FORM_NODATA.getText());
                return this.error(FileCode.FORM_NODATA.getValue(), FileCode.FORM_NODATA.getText());
            }
            // 正式代码
            fileManagerService.getFileContent(fse, response);
            /*===test-start===*/
    /**
     * 上传文件
     *
     * @return 结果
     */
    @RequestMapping(value = "/upload-file/{version}", method = RequestMethod.POST)
    @ApiVersion(1)
    public String uploadFile(HttpServletRequest request) {
        try {
            Object bean = request.getAttribute(CoreConst.API_POST_REQUEST_DATA);
            RequestParameterEntity rpe = (RequestParameterEntity) bean;
            FieldSetEntity fieldSetEntity = fileManagerService.uploadFile(rpe);
            return OK_List(fieldSetEntity);
        } catch (BaseException e) {
            SpringMVCContextHolder.getSystemLogger().error(e);
            e.printStackTrace();
            return error(e.getCode(), e.getMessage());
        } catch (Exception e) {
            SpringMVCContextHolder.getSystemLogger().error(e);
            e.printStackTrace();
            return error(FileCode.UPLOAD_FILE_FAIL.getValue(), FileCode.UPLOAD_FILE_FAIL.getText());
        }
    }
    /**
     * 下载文件或者在线预览
     *
     * @return 结果
     */
    @RequestMapping(value = "/get-file-content/{version}", method = RequestMethod.GET)
    @ApiVersion(1)
    public String getFileContents(HttpServletRequest request, HttpServletResponse response) {
        try {
            FieldSetEntity fse = null;
            String uuid = request.getParameter(CoreConst.UUID);
            String onlineView = request.getParameter(CmnConst.NEED_ONLINE_VIEW);
            if (StringUtils.isEmpty(uuid)) {
                SpringMVCContextHolder.getSystemLogger().error(FileCode.FORM_NODATA.getValue(), FileCode.FORM_NODATA.getText());
                return this.error(FileCode.FORM_NODATA.getValue(), FileCode.FORM_NODATA.getText());
            }
            fse = new FieldSetEntity();
            fse.setTableName(CmnConst.PRODUCT_SYS_ATTACHMENTS);
            fse.setValue(CoreConst.UUID, uuid);
            fse.setValue(CmnConst.NEED_ONLINE_VIEW, onlineView);
            SpringMVCContextHolder.getSystemLogger().info("通过GET请求获取附件内容");
            // 正式代码
            fileManagerService.getFileContent(fse, response);
            return OK();
        } catch (Exception e) {
            SpringMVCContextHolder.getSystemLogger().error(e);
            e.printStackTrace();
            return error(FileCode.GET_FILE_CONTENT_FAIL.getValue(), FileCode.GET_FILE_CONTENT_FAIL.getText());
        }
    }
    /**
     * 下载文件或者在线预览
     *
     * @return 结果
     */
    @RequestMapping(value = "/get-file-content/{version}", method = RequestMethod.POST)
    @ApiVersion(1)
    public String getFileContent(HttpServletRequest request, HttpServletResponse response) {
        try {
            FieldSetEntity fse = null;
            Object bean = request.getAttribute(CoreConst.API_POST_REQUEST_DATA);
            RequestParameterEntity rpe = (RequestParameterEntity) bean;
            if (null != rpe && null != rpe.getFormData()) {
                fse = rpe.getFormData();
            }
            if (fse == null) {
                SpringMVCContextHolder.getSystemLogger().error(FileCode.FORM_NODATA.getValue(), FileCode.FORM_NODATA.getText());
                return this.error(FileCode.FORM_NODATA.getValue(), FileCode.FORM_NODATA.getText());
            }
            // 正式代码
            fileManagerService.getFileContent(fse, response);
            /*===test-start===*/
//            String tempPath = fse.getString("tempPath");
//            File file = new File(tempPath);
//            OutputStream sos = new FileOutputStream(file);
//            fileManagerService.getFileContent(fse, sos);
//            sos.close();
            /*===test-start===*/
            return OK();
        } catch (Exception e) {
            SpringMVCContextHolder.getSystemLogger().error(e);
            e.printStackTrace();
            return error(FileCode.GET_FILE_CONTENT_FAIL.getValue(), FileCode.GET_FILE_CONTENT_FAIL.getText());
        }
    }
            /*===test-start===*/
            return OK();
        } catch (BaseException e) {
            e.printStackTrace();
            return error(e);
        } catch (Exception e) {
            SpringMVCContextHolder.getSystemLogger().error(e);
            e.printStackTrace();
            return error(FileCode.GET_FILE_CONTENT_FAIL.getValue(), FileCode.GET_FILE_CONTENT_FAIL.getText());
        }
    }
    /**
     * 批量打包下载
     *
     * @return 结果
     */
    @RequestMapping(value = "/download-file-zip/{version}", method = RequestMethod.POST)
    @ApiVersion(1)
    public String downLoadFileZip(HttpServletRequest request, HttpServletResponse response) {
        try {
            FieldSetEntity fse = null;
            Object bean = request.getAttribute(CoreConst.API_POST_REQUEST_DATA);
            RequestParameterEntity rpe = (RequestParameterEntity) bean;
            if (null != rpe && null != rpe.getFormData()) {
                fse = rpe.getFormData();
            }
            if (fse == null) {
                SpringMVCContextHolder.getSystemLogger().error(FileCode.FORM_NODATA.getValue(), FileCode.FORM_NODATA.getText());
                return this.error(FileCode.FORM_NODATA.getValue(), FileCode.FORM_NODATA.getText());
            }
    /**
     * 批量打包下载
     *
     * @return 结果
     */
    @RequestMapping(value = "/download-file-zip/{version}", method = RequestMethod.POST)
    @ApiVersion(1)
    public String downLoadFileZip(HttpServletRequest request, HttpServletResponse response) {
        try {
            FieldSetEntity fse = null;
            Object bean = request.getAttribute(CoreConst.API_POST_REQUEST_DATA);
            RequestParameterEntity rpe = (RequestParameterEntity) bean;
            if (null != rpe && null != rpe.getFormData()) {
                fse = rpe.getFormData();
            }
            if (fse == null) {
                SpringMVCContextHolder.getSystemLogger().error(FileCode.FORM_NODATA.getValue(), FileCode.FORM_NODATA.getText());
                return this.error(FileCode.FORM_NODATA.getValue(), FileCode.FORM_NODATA.getText());
            }
            response.setContentType("multipart/form-data");
            // 正式代码
            fileManagerService.downLoadFileZip(fse, response);
            response.setContentType("multipart/form-data");
            // 正式代码
            fileManagerService.downLoadFileZip(fse, response);
            /*===test-start===*/
            /*===test-start===*/
//            String tempPath ="D:\\Desktop\\ccc.zip";
//            File file = new File(tempPath);
//            OutputStream sssos = new FileOutputStream(file);
//            fileManagerService.downLoadFileZip(fse, sssos);
//            sssos.close();
            /*===test-start===*/
            return OK();
        } catch (Exception e) {
            SpringMVCContextHolder.getSystemLogger().error(e);
            e.printStackTrace();
            return error(FileCode.GET_FILE_CONTENT_FAIL.getValue(), FileCode.GET_FILE_CONTENT_FAIL.getText());
        }
    }
            /*===test-start===*/
            return OK();
        } catch (Exception e) {
            SpringMVCContextHolder.getSystemLogger().error(e);
            e.printStackTrace();
            return error(FileCode.GET_FILE_CONTENT_FAIL.getValue(), FileCode.GET_FILE_CONTENT_FAIL.getText());
        }
    }
}