『7x24小时有问必答』

前言

在企业日常运营中,文档管理常常面临版本混乱、访问不便、反馈脱节等问题。传统的文件夹共享或邮件传递方式已难以满足高效协作的需求。为此,我们开发了一套轻量但功能完整的在线文档管理系统——它不仅支持文档上传与预览,还能通过二维码实现移动端快速访问,并打通用户反馈闭环。整个系统采用现代化全栈技术构建,兼顾安全性、易用性与可维护性,适用于中小团队或内部知识库场景。

项目介绍

本系统是一套企业级文档管理解决方案,采用前后端分离架构,包含两个核心部分:
PC 后台管理系统:供管理员进行文档、用户、反馈的集中管理;
H5 移动端预览页面:用户扫码即可查看文档并提交意见,无需登录。
系统默认提供超级管理员与普通管理员两种角色,支持细粒度权限控制,所有操作均有安全防护。项目完全开源,部署简单,开箱即用。

项目功能

1、用户认证与权限管理

基于 JWT 实现登录态,支持多角色权限控制,密码采用 BCrypt 加密存储。

2、文档全生命周期管理

支持 .doc/.docx 文件上传、按出厂编号筛选、逻辑删除及列表分页查询。

3、二维码自动生成

每份文档自动绑定唯一二维码,扫码直达 H5 预览页;支持重新生成。

4、意见反馈闭环

H5 端匿名提交反馈,后台统一查看、标记处理状态,形成有效沟通链路。

5、响应式体验

PC 管理端与 H5 预览页均适配不同设备,界面简洁直观。

6、API 文档集成

通过 Knife4j 自动生成交互式接口文档,便于调试与二次开发。

项目特点

1、安全可靠:JWT 认证 + Spring Security 权限控制 + 文件类型校验 + SQL 注入防护。
2、移动端友好:二维码一键跳转 H5,无需安装 App,降低使用门槛。
3、开箱即用:提供初始化 SQL 脚本、默认账号、详细部署文档,10 分钟完成本地运行。
4、结构清晰:前后端代码模块化组织,注释完整,适合学习或二次开发。
5、无外部依赖:不依赖第三方云服务,所有功能本地闭环,数据完全自主可控。

项目技术

后端技术栈
核心框架:Spring Boot 3.2.0
安全框架:Spring Security 6.x + JWT 0.12.3
ORM 框架:MyBatis-Plus 3.5.5
数据库:MySQL 8.0+
工具库:Apache POI 5.2.5(Word 处理)、ZXing 3.5.2(二维码生成)
API 文档:Knife4j 4.4.0
前端技术栈
框架:Vue 3.4+
构建工具:Vite 5.0+
状态管理:Pinia 2.1+
路由:Vue Router 4.2+
UI 组件:Element Plus 2.5+
HTTP 客户端:Axios 1.6+

项目效果

启动后端服务(http://localhost:8080)和前端(http://localhost:8081
使用默认账号登录:
账号
密码
角色
admin
123456
超级管理员
testuser
123456
普通管理员
超级管理员可管理用户、文档、反馈;
普通管理员仅能操作文档和反馈;
手机浏览器扫描文档二维码,即可进入 H5 预览页并提交意见;
所有 API 接口均可在  http://localhost:8080/doc.html  在线测试。
注意:生产环境务必修改默认密码并更换 JWT 密钥!

项目源码

项目采用标准前后端分离结构:
ODM_System/

├── backend/                                # 后端项目

│    ├── src/main/java/com/document/

│    │    ├── config/                     # 安全、CORS、Swagger 配置

│    │    ├── controller/               # REST 控制器

│    │    ├── service/                    # 业务逻辑

│    │    ├── mapper/                     # MyBatis 映射

│    │    ├── entity/                     # 实体类

│    │    ├── util/                        # JWT、二维码、文件工具

│    │    ├── security/                  # 认证过滤器

│    │    └── exception/                 # 全局异常处理

│    ├── src/main/resources/application.yml

│    └── db/init.sql                     # 数据库初始化脚本

├── frontend/                              # 前端项目

│    ├── src/

│    │    ├── api/                          # 接口封装

│    │    ├── views/admin/              # 后台页面

│    │    ├── views/h5/                  # H5 预览页

│    │    ├── router/                     # 路由

│    │    ├── store/                       # Pinia 状态

│    │    └── utils/                       # Axios 封装

│    └── vite.config.js

└── DEPLOYMENT.md                        # 详细部署指南

GitHub 开源地址(示例):
后端:yourname/odm-backend
前端:yourname/odm-frontend

Gitee:https://gitee.com/cold-and-warm/odm_-system

总结

这套文档管理系统虽小,却涵盖了企业级应用的核心要素:安全、权限、文件处理、移动端适配与用户反馈。它没有过度设计,也没有冗余功能,一切以"实用"为出发点。对于希望快速开发内部知识平台的团队,或正在学习 Vue 3 + Spring Boot 3.0 全栈开发的开发来说,它是一个不错的参考项目。

关键词

文档管理系统Vue  3、Spring Boot 3.0、JWT二维码H5预览、Element Plus、MyBatis-Plus、全栈开发企业级
作者:小码编匠
出处:gitee.com/smallcore/DotNetCore
声明:网络内容,仅供学习,尊重版权,侵权速删,歉意致谢!

END

备注【开源
方便大家交流、资源共享和共同成长
纯技术交流群、需要的小伙伴请扫码

有收获?不妨分享让更多人受益
关注「程序员开源栈」,共同提升技术实力

点分享
点收藏
点在看
点点赞

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

上一主题上一主题         下一主题下一主题
QQ手机版小黑屋粤ICP备17165530号

关于我们·投诉举报· 用户帮助· 联系我们 · 本站服务 · 版权声明· 隐私政策 · 投搞指南

法律保护:PLC技术网,plcjs.com,plcjs.net等字样
Copyright 2010-2030. All rights reserved. 


微信公众号二维码 抖音二维码 百家号二维码 今日头条二维码哔哩哔哩二维码