Skip to content

文档与协作 ​

这篇解决什么 ​

资料库里的文件怎么上传、谁能改、版本怎么回滚、OnlyOffice 从哪接。读完能对上 project_document_version、project_document_acl,以及独立编辑页 /project/document-editor。

默认端口 48080,管理端前缀 /admin-api。空间和文件夹见 知识库管理。文件客户端见 文件存储。

示意图:元数据和权限在项目模块。二进制走文件服务。在线编辑另开 Document Server。

从哪改 ​

名称说明仓库路径
模块项目文档实现ruoyi-office/yudao-module-project/
文档表@TableName("project_document").../dal/dataobject/document/ProjectDocumentDO.java
版本project_document_versionProjectDocumentVersionDO
ACLproject_document_aclProjectDocumentAclDO
接口上传、移动、版本、ACLProjectDocumentController
OnlyOffice配置、下载、回调@RequestMapping("/project/document/onlyoffice")
编辑页独立路由,不进菜单views/project/document/editor/、core.ts

上传先走统一文件接口拿到 URL,再 POST /project/document/upload 登记到树。移动 PUT /move,归档 PUT /archive。

台账项目文档页签

本系统截图:台账详情 → 项目文档。树、上传和权限入口都在这一页。OnlyOffice 没开也能上传下载。

权限 ​

ProjectDocumentAclPermissionEnum:0 仅查看,1 可编辑(含在线编辑),2 可管理。未授权是 -1。

ACL 目标:0 人员,1 部门,2 岗位。可勾继承。接口 GET /acl/list、POST /acl/save、DELETE /acl/delete。详情里的 canPreview / canEdit / canManage 由 checkPermission 填。

文档还有两层可见性:visibility 常规 / 受限,deptVisible 项目内 / 仅本部门。先过这两层,再看 ACL。

管理权限才能改 ACL

保存、删除 ACL 需要 project:document:update。只有查看权的人能预览,不能改授权名单。

版本与在线编辑 ​

每次替换源文件或 OnlyOffice 回写,会加一条版本。GET /version/list 看历史,POST /version/restore 回滚,POST /version/name 给当前版本写备注。

名称说明仓库路径
是否启用GET /onlyoffice/enabledProjectDocumentOnlyOfficeService
编辑器配置GET /onlyoffice/config给前端 Document Server
拉文件GET /onlyoffice/downloadDocument Server 用 token 拉
独立页/project/document-editorcore.ts 软依赖注册

本地没装 Document Server 时,enabled 为 false,页面只提供上传、预览、下载。不要把空编辑页写成故障。

示意图:编辑器只是外壳。回写仍进 project_document_version。

配置与操作 ​

有上传权的人在文档中心或台账「项目文档」页签先走统一文件接口拿 URL,再 POST /project/document/upload 挂到树。移动 PUT /move,归档 PUT /archive。

改 ACL 要 project:document:update,且级别是可管理。目标:0 人员、1 部门、2 岗位,权限 0 仅查看、1 可编辑、2 可管理。先过 visibility / deptVisible,再看 ACL。保存后详情上的 canPreview / canEdit / canManage 立刻按 checkPermission 生效。

版本:替换源文件或 OnlyOffice 回写加一条 project_document_version。回滚 POST /version/restore。本地没开 Document Server 时 GET /onlyoffice/enabled 为 false,只上传下载,不要当故障。

相关篇 ​

联系我们

获取报价、演示和二开方案

微信咨询二维码

微信咨询

17156169080

添加时备注「RuoYi Office」

在线体验商业版