基于spring boot+vue+mysql+element-ui的私人文档在线预览系统 project name -privatedocumentsystem-day01

一、前言:

      最近在复习关于spring boot 的东西,无聊的复习过程真的是太无趣了,于是基于以前做过的一个项目来基于boot写一个简单的demo,有兴趣的同学可以来看看!同时欢迎大神们的指点与探讨。

项目名称:私人在线文档在线预览系统。英文名叫;pdsys(别见笑!!!!)

二、项目需求

     注册:新用户注册

     登录:基于jwt的token验证登录,支持验证码

     前台管理:个人端

                1.支持各个用户的对于限定格式的文件的上传,下载,预览,删除。

                2.文件格式限定类别包括:

                             (1)文档类:word,excel.ppt,txt

                             (2)音频类:mp3,wave,wmv

                             (3)视频类:mp4, asx, mpg, wmv, avi,  mpeg, asf, 3gp, mov,  flv,  mkv

                             (4)图片类:jpg,png,gif,jepg等常见图片格式

               3:支持断点续传,大文件上传

               4:获取本人文档历史操作记录。

               5:支持文件名称加密,文件存储路径加密

  后台管理:管理员端

              1.用户信息监测

              2:系统日志监测

              3:文件处理信息监测

    难点概述

         关于各类型文档的在线预览方案

 三、关于文件预览现有解决方案

              文档类处理:基于aspose-*.jar来进行文档转换,将所有文档转换成pdf形式来在h5标签中预览输出

              音频类处理:基于h5标签的音频播放。

              视频类:将ffmpeg第三方解析工具支持的视频格式转化成基于h264编码的mp4格式文件来在h5标签中进行预览。

                       如果视频格式ffmpeg不支持可以用mencode工具将视频转化成基于h264编码的MP4文件在h5中进行预览。

四、项目初始化的数据结构如下(只是一些基本性的数据结构设计)

           用户信息表:sys_user_info

         结构说明

字段名称

 

值类型

 

大小

 

是否可以为空

 

字段描述

 

Id

 

bigint

 

1

 

 

自增主键,无符号

 

user_login_name

 

char

 

50

 

 

用户登录名

 

user_password

 

char

 

36

 

 

用户密码

 

user_name

 

char

 

50

 

 

用户姓名

 

user_email

 

varchar

 

100

 

 

用户邮箱

 

user_phone

 

char

 

15

 

 

用户电话或手机号

 

user_photo_path

 

varchar

 

255

 

 

用户头像上传路径

 

create_time

 

datetime

 

 

 

创建时间

 

create_user_id

 

bigint

 

1

 

 

创建人id,无符号

 

update_user_id

 

bigint

 

1

 

 

更新人id,无符号

 

update_time

 

date_time

 

 

 是

 

更新时间

     数据字典类型表:sys_dict_type

         结构说明

字段名称

 

值类型

 

大小

 

是否可以为空

 

字段描述

 

id

 

bigint

 

1

 

 

自增主键,无符号

 

type

 

varchar

 

20

 

 

字典类型

 

description

 

varchar

 

50

 

 

字典类型描述

 

deleted_flag

 

tinyint

 

1

 

无符号

删除标识。1是0否

 

create_user_id

 

bigint

 

1

 

创建人

用户表自增主键,无符号

 

create_time

 

datetime

 

 

 

 

 

创建时间

 

update_user_id

 

bigint

 

1

 

更新人

用户表自增主键,无符号

 

update_time

 

datetime

 

 

 

 

 

更新时间

        数据字典值表: sys_dict_value

    结构说明

 

字段名称

 

 

值类型

 

 

大小

 

 

是否可以为空

 

 

字段描述

id

bigint

1

表主键自增,无符号

dic_type_id

bigint

1

字典类型id,无符号

label

char

10

字典值标签

dict_value

tinyint

1

字典值,无符号

deleted_flag

tinyint

1

字典删除标志1是0否,无符号

create_user_id

bigint

1

表主键自增,创建人,无符号

create_time

datetime

 

创建时间

update_user_id

bigint

1

更新人,无符号

update_time

datetime

 

更新时间

       文件基本信息表:file_base_info

              结构说明

字段名称

 

值类型

 

大小

 

是否可以为空

 

字段描述

 

id

 

bigint

 

1

 

 

表主键自增

 

file_name

 

varchar

 

200

 

 

文件名称

 

file_path

 

varchar

 

255

 

 

文件存储路径

 

file_size

 

varchar

 

50

 

 

文件大小

 

file_type_dict_value

 

tinyint

 

1

 

 

文件类型id

 

file_deleted_flag

 

tinyint

 

1

 

 

文件删除标识,1是0否

 

file_name_is_encryption

 

tinyint

 

1

 

文件名称加密标识

1是0否

 

file_path_is_encryption

 

tinyint

 

1

 

文件路径加密标识

1是0否

 

file_is_setting_keywords

 

tinyint

 

1

 

文件是否设置关键字

1是0否

 

file_upload_user_name

 

char

 

50

 

 

文件上传人姓名

 

file_upload_time

 

datetime

 

 

 

文件上传时间

 

file_upload_user_id

 

bigint

 

1

 

 

文件上传人id

 

update_user_name

 

char

 

50

 

 

文件更新人姓名

 

update_time

 

datetime

 

 

 

文件更新时间

 

update_user_id

 

bigint

 

1

 

 

文件更新者id

       文件转换信息表:file_transcoding_info

       结构说明

字段名称

 

值类型

 

大小

 

是否可以为空

 

字段描述

 

id

 

bigint

 

1

 

 

表主键id,自增

 

file_baseinfo_id

 

bigint

 

1

 

 

文件基本信息id,自增

 

file_transcoding_path

 

varchar

 

255

 

 

文件转码后的存储路径

 

create_time

 

datetime

 

 

 

创建时间

 

update_time

 

datetime

 

 

 

 

create_user_id

 

bigint

 

1

 

 

创建人id

 

update_user_id

 

bigint

 

1

 

 

更新人id

       系统日志信息表:sys_log

       结构说明

字段名称

 

值类型

 

大小

 

是否可以为空

 

字段描述

id

bigint

1

自增主键

title

varchar

50

操作的标题

remote_address

varchar

15

远程Ip地址

user_agent

char

50

浏览器类型

method

char

5

访问方式

params

varchar

255

访问参数

exception

varchar

255

异常信息

 

create_user_id

 

bigint

 

1

 

 

创建人id

create_time

datetime

 

创建时间

request_url

varchar

100

请求路径

       系统业务操作日志表:sys_file_operator_log

      结构说明

字段名称

 

值类型

 

大小

 

是否可以为空

 

字段描述

id

bigint

1

自增主键

file_baseinfo_id

bigint

 

文件基本信息id

file_optype_dic_value

tinyint

1

文件操作类型,字典获取

create_time

datetime

 

创建时间

create_user_id

bigint

1

创建人

 注:以上表的左上角单元格都有对角线但是CSDN好像复制不过来

五、初步的基于restful 的api接口设计如下:

          Restulful api接口预定义

              系统访问根路径:rt/api/

              版本:v1.0

   模块名称 :系统用户

预计功能

请求url

请求方式

注册(添加用户)

/sys/users

post

登录

/sys/login

get

查询一个id查询用户

/sys/users/{id }

get

查询所有用户

/sys/users/

get

修改一个用户根据id

/sys/users/{id}

put

删除一个用户根据id

/sys/users /{id}

delete

批量删除用户

/sys/users/

delete

模块名称 :文件处理

预计功能

请求url

请求方式

上传文件

/files

post

下载多个文件

/files/download/

get

下载一个文件根据id

/files/download/{id}

get

删除一个文件

/files/{id}

delete

删除多个文件

/files

delete

查询一个文件

/files/{id}

get

查询所有文件

/files

get

修改文件信息

/files/{id}

put

模块名称:业务日志

预计功能

请求url

请求方式

添加日志

/files/logs

post

查询日志

/files/logs

get

查询某个文件下的日志

/files/{id}/logs

get

注:基于restful 的api接口原则上访问路径中是不能有动词的,此处的download作名词解释

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值