一、部分业务需求

用户隶属于部门,一个用户只属于一个部门。用户包括信息为:
姓名,出生日期,学历,学位,性别,个人简介,个人照片,职称,邮箱,QQ,登录用户名,登录密码。用户可以修改自己信息,系统管理员可以修改、删除任意用户。
(1) 用户角色管理
一个用户可以拥有多重身份,每个身份被称为一个角色。以我学院教师为例,可以有角色“党员”、“辅导员”、“班主任”等。因此一个用户通常是拥有多个角色的。用户角色的变化和角色维护只能由系统管理员来进行操作。
(2)文档分类层次管理
每个文档都归属于一个分类,每个分类又可能有若干子分类,类似于我们的文件系统,文档分类层次的维护只能由系统管理员来进行。 (3)管理
系统管理员可以向某个分类下上传文档,上传的文档可以通过至多5个关键词来描述,关键词可以帮助查找文档。其他人上传文档时,则需要系统管理员进行审核,审核通过的文档才成为正式文档,否则是临时文档,正式文档才可以被其他人查看到。另外,对于每个文档可以指定那些用户可以查看
(默认是所有人都可以),这些用户也可以通过用户角色来指定,例如某个文档只能被具有党员角色的用户查看。也可以形成复杂的限制条件:
比如,性别为男且职称为教授或者副教授并且是党员且年龄大于50岁的。对于常用的word,ppt;pdf,和excel文件支持在线查看。每个文档包含如下的信息:
文档名,文档附件,上传者,上传时间,关键词,查看次数,历史查看记录(什么时候谁查看了),文档所属分类,文档的权限信息 (那些人可以查看)
(4) 限时批次文档上传任务
系统管理员可以指定一组用户,在指定的时间期限内,每个人上传文档,在任务结束后,系统管理员可以导出一个压缩包,压缩包中包含了所有指定用户所上传的文档,并且还可以查看任务的换成情况,包括:
哪些人已经完成了,哪些人还没有完成,完成情况列表 (列表每项为上传者,上传时间)

二、主要技术

本文档管理系统采用前后端分离模式前端采用vue、elementUi技术,后端使用spring Boot + mybatis + Maven + security进行后台的搭建。
Vue:主要负责页面的渲染显示,用vue来实现。
Controller:负责读取视图表现层的数据,控制用户的输入,并调用业务层的方法,通过controller实现。
Model:对需求分析之后的对象模型分析,主要负责数据的管理。

三、项目运行环境

环境项参数
JDK1.8
数据库Mysql5.7
Java开发工具IntelliJ IDEA 2020.3
Web服务器Tomcat8.x 64 位
浏览器Google Chrome

第二章

一、功能描述。