若依本身有一个文件上传模块,但是实现的功能比较基础。
我打算构建一个更偏应用的附件管理服务,功能更加完整丰富。
功能如下:
- 附件的上传、批量上传、下载、打包下载、查询、删除、假删除
- UI界面包含附件的预览和类似网盘的层级目录
- 完善的权限控制
通过这个附件管理服务的开发,熟悉一下若依框架微服务的添加流程。
想了想大概分这几步:
- 在moudles服务中增加一个ruoyi-annex服务
- 编辑pom文件,添加依赖
- 编辑配置文件,挂接到nacos
- 登录nacos编辑ruoyi-gateway的配置文件,添加路由
- 设计附件表sys_annex,包含字段:文件类型,层级,唯一ID,删除标识,描述,文件名,文件存储空间ID,文件路径,租户ID
- 设计附件权限表sys_annex_role, sys_annex_user
- 设计附件存储空间sys_file_space,(附件管理中心按理说应该支持多种存储方案如 window文件系统、对象存储、mongodb,所以文件存储在哪里就说不定了),包含字段:文件存储空间ID,名称,类型,链接参数(json)
- 启动若依代码生成,将上述表格CURD代码都生成出来
- 添加上传、批量上传、下载、打包下载、查询、删除、假删除的接口
- 实现上述接口
- 在ruoyi-api中暴露上述接口
- 仿造若依代码生成服务,构建UI界面
- 添加类似网盘的层级目录窗体
- 借助KKfileview实现文件预览