文件管理系统(开发文档)

茹康裕
2023-12-01

开发步骤:
管理模板修复
确定项目:
项目目标-业务目标
业务分析:(完全分析透了,再下一步)
业务框架
框架的子业务细节
业务的细节指标(细节要求)
数据库分析:
开发框架分析:类组织关系
用户界面处理:
开发过程:
业务难点的时序:-业务闭环,生命周期,分阶段的一套较难业务.Zara软件

项目一:
项目目标-业务目标:
1.内部文档权限管理
2.文档分享评价
3.文档筛查
4.版本管理
业务框架:+细节+更深的描述
登录管理:
权限管理:
登录权限:安全,角色,加密,保证唯一性,不允许注册,内部添加,默认密码,邮箱(发邮件),电话(发短信)
用户名:电话
密码:md5加密
验证码:4~6位数字加字母
提示用户名或密码错误和验证码错误

文件权限:上传(短时间删除权限,防止误上传,或者加作废状态);修改;查看(可限时查看,比如两个月内查看,历史文档不允许查看;);下载;评论(上级对下级),收藏
情景:不允许随便看,随便下载()
系统权限-管理员
操作员管理:
日志管理:
系统设置-组织架构(上下级安排):
上下级管理程序
日志,文件,评论
文件管理:存放为主
上传:
批量上传
误上传处理(删除问题)
版本管理
日志管理
只能新增
修改:版本递增(一个小时内的作为一个版本),修改时间(简单会话的管理);上个版本回滚;;内部上传按钮,版本替换
查看:支持txt,excel,word,pdf,图片(全部只读,不能复制,图片化处理,浏览器不能直接通过地址获取,控制器排查,后台查看需要验证码,一旦查看只能用一次,图片显示出来验证码就失效);禁止右键,禁止缓存
下载:浏览器不能直接通过地址下载(即时授权,即时下载)

通知管理:
文件增改
内部公告:
全公司,部门,指定人员,指定角色
自动生成,人工生成
评论通知
websocket
日志管理:
日志登记:
按文件,部门,人员,时间,操作
日志查看问题
查看自身
管理查看全部
日志统计:
文件版本统计
部门文件活度统计
个人统计
查看处理:用户查看,界面等处理
评论管理:
文件评论
小论坛
管理员禁用–管理员/发布人查看全部

数据库分析
主表:
操作员
文档表
评论
日志
公告
副表:
部门表
角色(权限)
文档类型
业务表:
文件版本表
其他表:
权限
角色权限表

操作员表,全部不为空 fm_operator
id int 自动递增
姓名username varchar 16
密码(md5)userpass varchar 128
电话-登录使用tel varchar 16
角色(权限) roleid 角色表关联键 int
部门 departmentid int
离职禁用(0正常,1禁用)status int
comments 备注 varchar 255

文件表fm_document
id int
文档名称docname varchar 255
文档类型doctypeid int
部门departmentid int
最新文档地址lastpath(一点击文档直接就到最后一个文件,经常访问用,文档类型上加上有效期) varchar255
最新版本号lastversion varchar 32
查出来最后时间(限时访问,控制不能往前翻查太久)lasttime datetime
创建日期createdate varchar 32
operatorid int
状态0 正常1禁用 还有禁止更新,锁定等,暂时先两个 status int
comments varchar255 文档介绍

文档表类型 fm_document_type
id int11
类型名称 typename varchar255
事件处理模式 每周 每月 每年 自定义mode int11 0不限1自定义2当天3当周456
startdate varchar32 有效起始日期
enddate varchar32 截止日期
comments varchar255

fm_department 部门表
id int 11
departmentname varchar16 部门名称

fm_discuss评论表
id int 11
fieldid varchar16 文件id
date varchar32 日期
operator int 评论人
info text 评论信息
status int 状态 0正常 1隐藏 2阻止()

fm_log日志表 (建议变成切面,可以先暂时忽略,但是切得方法尽量规则,容易找)
id
date varchar 32 日期时间
departmentid varchar 部门id
operatorid 人员id
fieldid 文件id
日志类型optiontype 0新增 1修改 23456
描述 info varchar 64 提示信息
status int 64 日志状态(暂无) 0正常 销毁用的
公告表fm_notice
id
date 日期
sendtype 通知类型0全公司 1部门 2角色 3指定
departmentid 部门id
operatorids 指定人员列表 格式12,45,232,544,2323
operatorid 发布人/发生源,有可能是系统
roleid 角色id
createtype 生成类型 0系统 1手工
tltle 小标题
info 内容
url 地址(点击公告时,有则触发)
status 状态 0正常 1隐藏 (发布人可隐藏)

角色表fm_role 角色和权限1对多 一个人只能有一个角色(有增删改查)
id int 11
rolename varchar32 角色名称
key varchar 16 判别key 格式 user

权限表 fm_power(没有增删改查)
id int 11
powername varchar32 权限名称
key varchar 32(shiro用) 判别key 格式:: (manager:user:add)
parentid int 默认0为根权限 上级权限id (权限树列表使用)
角色权限关联表fm_role_power
id
角色 roleid
权限powerid

文件版本表fm_document_file
id int 11
createdate varchar 16 文件更新,创建新文件,复制一份
lasttime(因为一小时之内不更新) datetime 最后修改日期
version varchar 16 版本
path varchar 16 文件路径

增删改查的表:operator,评论,公告,部门,角色,文档类型,角色权限,评论(没有删,修改状态) 日志(没有界面,只有增)
权限处理:shiro 注解模式
类组织关系:

列录入:
录入列
userpass 后续补充赋值的
createdate 后台运算赋值的
operatorid 后台会话来赋值
studentcount 触发器修改||运算累加
可选列(不是每次必须录入的),后台判断赋值
统计列(根本不录入),统计时计算自动赋值,辅助统计

 类似资料: