网络硬盘设计文档
1.系统概要
INTERNET(在线备份、文件加密、数据监控、资源共享等)
上
传
共
享
下
载
下
载
上
传
共
享
用
户
用
户
下
载
上
传
共
享
用
户
下
载
上
传
共
享
用
户
下
载
上
传
共
享
....
2.系统功能和目标
本系统的功能主要有:
2_1.普通用户
普通会员的登录和注册
普通会员可以申请成为超级会员
文件的上传和下载、文件的删除
文件夹的新建和管理
文件的共享访问权限
个人信息的修改
好友的添加
2_2.超级用户
开通圈子
硬盘容量更大
加速等级提升
上传下载速度更快
摇奖的机会,活动优惠
昵称变为红色
好友数量更大等等
2_3.管理员
前台功能:上传、下载、删除、个人资料修改、文件夹的创建和管理
后台功能:网络硬盘系统数据的管理(上传、下载、删除、个人资料修改、文件夹
的创建和管理)
上传下载加速、扩大容量、好友权限更大...
管
理
员
登录
审查
后台程序
网
络
硬
盘
系
统
数
据
库
文件上传
文件下载
文件删除
创建目录
修改个人资料
用户的管理
登录、审查
前台面板
VIP
用
户
申
请
登录、审查
用
户
<系统目标>:
本系统是基于 WEB 开发的 B/S 的网络硬盘项目,网络硬盘最终要求普通用户能够实现
注册以及登录之后能够完成文件的上传、下载、文件加密、文件共享、文件的更新、文件夹
目录的创建,个人空间资料的修改等功能,普通用户也可申请成为超级会员,享受 VIP 级用
户的权限;用户管理员需要实现普通用户的功能,还要实现对于整个网盘系统数据的管理以
及对于用户信息的管理等功能。
3.技术使用选取
开发环境: VS2013、IIS7.0、IE11
开发语言:C#(.net mvc4 web 应用)、MD5 加密、Uploadify 无刷新上传
数据库:SQL Server 2008
浏览器/浏览页面
浏览器发送请求报文
服务器
Html+javaScript+css/View 显示
服务器 路由/URL
软件
IIS
Control
Models
View
数据
4.数据流程分析
用户
登录/注册
Y
登录
验证
错误 N
功能
模版
登录/注册
验证
返回用户信息
操作失败
功能
上传文件
下载文件
目录管理
删除文件
个人空间管理
VIP 权限添加
其他.....
返回 Y/N
管理员
登录/注册
错误
登录
验证
管理员后台管理程序设计:
对数据库进行操作管理
后台管理程序
操 作
状 态
将操作数据存入
数据库
网 盘 数
据库
相关动态管理
网盘资料管理
用户信息管理
管理员信息管理
资料分类
资源共享情况
等级管理
好友管理
6.数据库表格建立及表格关系
数据库(WebDiskDB)
主键 允许
默认值
说明
标
识
小
数
位
是 是
是
0
0
0
0
0
0
0
3
3
空
否
否
否
是
是
是
是
是
是
0.1.2
((0))
((0))
((0))
(getdate())
(getdate())
主键 允许
默认值
说明
标
识
小
数
位
是 是
空
否
是
是
是
是
是
是
是
是
是
0.1.2
((0))
((0))
((0))
((0))
((0))
(getdate())
表名:Users(用户表)
名称
列名
数据类型 长
用户 ID
UserID
int
用户名
UserName
密码
UserPwd
用户类型 UserType
等级
Grade
vip 等级 VipGrade
nvarchar
nvarchar
int
int
int
度
4
200
200
4
3
3
登录 IP
LoginIp
nvarchar
20
创建时间 CreateDate
datetime
上次登录 LastLoginDate
datetime
8
8
表名:Directory(目录)
名称
列名
数据类型 长
度
文件 ID
DirID
int
4
文件名
Name
nvarchar
200
父目录 ID
ParentID
文件大小 Contain
文件数目 FileCount
文件夹数 DirCount
逻辑删除 IsDel
是否共享 Flag
int
int
int
int
bit
bit
创建时间 CreateDate
datetime
用户 ID
UsersID
int
4
4
3
3
3
2
8
8
表名:Url(地址 URL)
名称
列名
数据类型 长
度
地址 ID
UrlID
int
4
地址名
Url
nvarchar
200
文件类型 Type
目录 ID
DirID
int
int
创建时间 CreateDate
datetime
4
4
8
0
0
0
0
0
0
0
0
3
3
小
数
位
0
0
0
0
3
主键 允许
默认值
说明
标
识
是 是
空
否
是
是
是
是
(getdate())
表名:DownloadHistory(下载历史记录[共享、非共享])
名称
列名
数据类型 长
度
标
识
小
数
位
主键 允许
默认值
说明
空
下载 ID
DownloadHisto
bigint
ryID
下载总数 DownLoadAccou
nvarchar
50
nt
文件名
FileName
nvarchar
50
是否存在 Flag
bit
下载时间 DownDatetime
datetime
用户 ID
UsersID
文件 ID
DirID
int
int
2
8
8
4
表名:ResourcesManager(资源管理)
名称
列名
数据类型 长
度
资源类别
RsTypeID
int
4
ID
资源类型 RsTypeName
nvarchar
200
表名:Resources(资源)
名称
列名
数据类型 长
度
资源 ID
RsID
int
4
资源名称 RsName
nvarchar
200
资源类型 RsTypeName
Varchar
资源大小 RsSize
bigint
资源创建
CreateDate
datetime
时间
用户 ID
UsersID
资源类别
RsTypeID
int
Int
50
50
8
4
4
ID
表名:FriendList(好友)
名称
列名
数据类型 长
度
ID
FID
int
4
用户名
UserName
nvarchar
200
0
0
0
0
3
3
0
小
数
位
0
0
小
数
位
0
0
0
0
3
0
0
小
数
位
0
0
是 是
否
是
是
是
是
是
是
((1))
(getdate())
外键
标
识
主键 允许
默认值
说明
空
是 是
否
否
主键 允许
默认值
说明
标
识
是 是
空
否
是
是
是
是
是
是
外键
外键
主键 允许
默认值
说明
标
识
是 是
空
否
是
好友名
MakeFName
Varchar
是否在线 Flag
Bit
用户 ID
UsersID
datetime
50
2
8
0
0
3
是
是
是
((0))
(getdate())
表名:Dish(网盘容量)
名称
列名
数据类型 长
网盘容量 DishSize
int
可用容量 AvailableSize
bigint
容量变更
UpdateDate
datetime
时间
用户 ID
UsersID
网盘 Id
DishID
int
Int
度
4
8
4
小
数
位
0
0
3
0
标
识
是 是
主键 允许
默认值
说明
空
否
是
是
是
否
外键
主键