概述
在完成文件夹配置工作后,接下来配置文档管理系统最核心的管理对象“文档”。
依旧是使用平台低代码配置工作来配置,配置流程跟文件夹的配置是相同的,以下简要说明,重点是新涉及到的功能或注意点。
创建实体
配置模型属性
文件夹
文档所属的文件夹,类型为实体。
名称
非空、主属性,同一文件夹下不能同名
长度
文件长度,整形,保存文档原始长度信息。
大小
通过文档原始长度计算出来的友好显示长度,小文件以B、KB为单位,大文件以M、G为单位。
类型
文档的类型,如word、png、txt等
保存名称
文档实际存盘时的文件名称,与原始上传的名称会有差异,避免同名覆盖,会附加标识来解决,主要用于异常排查或不通过应用系统来找文件,为运维便利提供的冗余属性。
路径
文档存储的相对路径
阅读量与下载量
显示该文档被阅读和被下载的次数。
文档状态
正常及锁定两种,使用锁定来防止多人协作情况下相互覆盖。
使用平台的数据字典功能来配置状态功能。
创建模块及字典类型,如下图所示:
维护字典项
创建状态属性
类型注意选择数据字典,在字典类型选择窗口中选中上一步骤中新创建的字典“文档状态”。
上传时间
记录文档的上传时间,虽然平台通用预置字段的创建时间实际上也就是文档的上传时间,不过预置字段通常只用于通用功能处理,如增量数据同步和异常排查。对于业务上需要的这种上传时间,建议单独配置属性来存储和处理。
配置视图
文档视图与文件夹视图的配置流程和方式完全相同,不再详述,只提重点和差异点。
对于文档来说,跟普通的实体不一样,不是通过新增页面录入表单数据保存后产生的,而是通过上传文件操作产生的,因此也就没有新增视图、修改视图和查看视图。
但文档通过文件夹来组织,因此需要配置树表视图。
列表视图
使用平台功能配置查询条件和查询结果,通过加号来增加自定义按钮,如页面上的上传、复制、移动……,行记录上的预览、下载、更名……这些自定义的按钮具体功能实现后面再说,先把整体页面配置出来。
树表视图
特别注意树路径的规则。
对于自关联的实体,如前文中的文件夹,保持留空即可,平台可自动识别和处理。
对于非关联自身的实体,需要填写路径,规则如下:从模块编码开始,中间有view路径,然后是实体编码,最后是树视图的vue页面,如上图所示。
运行效果如下:
辅助操作
生成库表
回到实体列表,勾选“文档”,点击生成库表按钮,平台提示成功后,查看数据库,库表正常。
生成代码
实体列表页面上勾选“文档”,点击生成代码按钮,平台提示成功后,查看输出目录,生成了各层代码。
拷贝代码
将前后端代码分别拷贝到对应的的位置,后端编译,前端执行eslint命令格式化。
增加API
前端edoc模块下api中增加对文档实体document的处理。
// 文档
export const document = Object.assign({}, COMMON_METHOD, {serveUrl: '/' + moduleName + '/' + 'document' + '/'
})
配置权限
使用系统管理模块下的权限项菜单,通过复制新增的模式,拷贝文件夹的权限项,然后修改为文档的权限项
注意上图中名称把文档修改为了文档库,对应菜单的名字,虽然实体是文档,但从用户角度,实际是文档库与业务含义更贴切。
为当前用户所在的管理员组,配置文档库权限。
运行效果
重启后端服务,运行效果如下:
开发平台资料
平台名称:一二三应用开发平台
平台简介:企业级通用低代码应用开发平台,免费全开源可商用
设计资料:csdn专栏
开源地址:Gitee
开源协议:MIT
应用系统资料
应用名称:一二三文档管理系统
应用简介: 企事业单位一站式文档管理系统,让组织内文档管理有序,协作高效、安全可控
设计文档:csdn专栏
开源地址:Gitee
开源协议:MIT
如果您在阅读本文时获得了帮助或受到了启发,希望您能够喜欢并收藏这篇文章,为它点赞~
请在评论区与我分享您的想法和心得,一起交流学习,不断进步,遇见更加优秀的自己!