一、开源项目简介
基于WPS在线编辑、在线预览服务,Spring Boot+Vue/React前后端分离。
二、开源协议
三、界面展示
四、功能概述
基于WPS在线编辑、在线预览服务,支持wps、doc、docx、xls、xlsx、ppt、pptx、pdf。
本次更新01-23
新增对minio对象存储支持 感谢zhuoran提交的PR
本次更新11-24
集成wps官方文档转换API,配合VUE前端项目,实现文件的转换
代码样式调整
用阿里oss的用户,增加一个阿里官方转换文档方法
本次更新06-28
升级oss-sdk(强,不升级可能导致上传oss报错)
修改在线文档预览获取文件大小
本次更新05-07
增加七牛文件存储,可在配置文件中配置切换
重构部分结构
本次更新03-10
增加前端调用的新建模版接口,快速新建文件
w_user_acl_t权限表中rename字段更改为re_name,避免和mysql关键字冲突报错
满足你的OSS所有需求,util中OSSUtil包含了所有常用的oss方法,全部测试可用
增加上传、删除等文件管理接口
五、技术选型
5.1 表结构
5.2 环境准备
1、前提
- 申请wps在线编辑服务,获取到appid和appsecret
- 设置wps回调url,如http://127.0.0.1:8080(此端口号必须与java项目中端口号一致)
- 申请阿里oss,获取到access_key和access_secret等相关参数(其它云存储请自行集成)
- 不想使用oss的,或者是想使用其它云,以及服务文件的,可屏蔽版本更新接口中的代码,或者重构,或者不管(只是保存版本的时候有异常),先整体拉通工程
java编译器安装lombok插件,详见lombok安装说明
2、服务
初始化mysql,执行resources下的wpsinit.sql文件(数据库可自己改,以及其中文件url,头像url,请自行填写)
- 配置resources下application.properties中的mysql、wps以及oss相关参数
- 打包后部署到回调服务器(注意端口号)
-
3、设计
详见resources下的 导图.png 和 表结构.png
5.3 配置文件中的参数部分可做参考
1、代码结构可自行调整
ApplicationTests类文件中,有个OSS地址转在线预览地址方法,以及文档转换方法,但是是收费的,相关费用自行了解
2、wps-view-java
基于WPS在线编辑、在线预览后台服务,基于 Spring Boot 开发。
3、wps-view-vue
基于wps在线编辑、在线预览前端vue项目,基于es6。
本项目采用VUE + ES6实现,其中jwps.es6.js是由WPS开发组特别提供,本项目对该js做了部分调整。4、wps-view-react
基于wps在线编辑、在线预览前台 react,与之前的java后台共用,也可替换之前的前台vue项目,推荐使用此react项目。
本项目采用react + ES6 + ant-design实现,其中jwps.es.js是由WPS开发组特别提供,本项目对该js源码做了部分调整react-roter-dom 5.x
- react-dom
- ant
- react-hot-loader
- axios
-
5、后台Java代码地址
访问Gitee开源:https://gitee.com/mose-x/wps-view-java
6、前端代码地址
vue: 访问Gitee开源:https://gitee.com/mose-x/wps-view-vue
- react: 访问Gitee开源:https://gitee.com/mose-x/wps-view-react
六、演示地址
vue: https://ljserver.cn/wpsonline
react: https://ljserver.cn/wpsonline-react
https://gitee.com/8686555/wps-view-java