文件管理
这篇解决什么
企业云盘的目录、版本、在线编辑走哪几个接口。读完能对上 /oa/file 和 OnlyOffice,不要把它当成公文发文或附件组件。
云盘 没有 processDefinitionKey。附件列表用公共 AttachmentList,见 公共业务组件。本篇是独立台账。
示意图:一条文件信息。版本和权限旁表。编辑另走 OnlyOffice。
从哪改
| 名称 | 说明 | 仓库路径 |
|---|---|---|
| 文件 API | 上传 / 建文件夹 / 列表 | ruoyi-office/yudao-module-oa/.../FileInfoController.java |
| 版本 | /oa/file/version | FileVersionController.java |
| 在线编辑 | /oa/file/onlyoffice | OaFileOnlyOfficeController.java |
| 表 | 信息 / 版本 / 权限 | oa_file_info、oa_file_version、oa_file_permission |
| 前端 | 左树右表 | ruoyi-office-vben/apps/web-antd/src/views/oa/file/ |
| 存储 | 实际字节走基础设施文件服务 | FileApi(yudao-module-infra) |
fileType:0 文件 / 1 文件夹。parentId 默认 0 是根。分类 fileCategory:image / document / video 等,给筛选用。
上传 POST /oa/file/upload,权限 oa:file:create。二进制进 Infra 文件库,oa_file_info 只存路径和元数据。
在线编辑页 views/oa/file/editor/。本机没起 OnlyOffice 时不要在指南里链截图。演示环境 OnlyOffice 在内网 130,不是 48080。
分享、历史在同目录 FileShareModal、FileHistoryDrawer。不要和公文归档表混用。
字段
| 名称 | 说明 | 仓库路径 |
|---|---|---|
parentId | 目录树 | FileInfoDO |
fileType | 文件或文件夹 | 同上 |
fileSize | 字节 | 同上 |
filePath / URL | 存储与访问 | 同上 |
云盘不是流程附件
用车 / 用印 info 上的 AttachmentList 挂在单据业务 id 上。云盘是另一棵目录树。不要把 oa_file_info 当附件表查。
删文件夹会看权限表
oa_file_permission 管谁能进哪一层。只改 file_info 不改权限,别人仍可能列到已删路径的缓存。
@RequestMapping("/oa/file")
public class FileInfoController { }
@TableName("oa_file_info")
public class FileInfoDO extends BaseDO { }配置与操作
打开 OA → 企业云盘。左侧目录、右侧文件。上传走 POST /oa/file/upload,字节进 Infra 文件库。在线编辑要本机或演示站 OnlyOffice 已起,没起不要在指南里装截图。
分享和历史在同一页的弹窗 / 抽屉。不要和公文归档表混用,也不要把云盘当用车附件表。

本系统截图:OA → 企业云盘。左树右表,没有流程 key。

本系统截图:目录树。parentId=0 是根,权限在 oa_file_permission。
