在目前互联网需求萎缩,基于企业数字化与外包项目需求增长时代背景下.市面上大部分后台开发框架,仍然采用的是分布式,模块化,或者“炫技”的开发方式,导致结果就是项目结构臃肿,维护复杂且远离实际需求.youzhi是从实际业务需求的角度出发,打造的一款基于springboot,vue2.x,vue3.x适用于中小型项目简单易用的web快速开发框架.
名称 | 描述 | 技术框架 |
backend | 后台服务提供后台API接口 | Spring Boot 2.7.5 |
message | 提供与前端项目的websocket消息通知能力 | Netty 3.10.5.Final |
webend | vue2前端项目提供后台管理界面 | Vue 2.6.14,Element-UI 2.15.12 |
webend3 | vue3前端项目提供后台管理界面 | Vue 3.2.41,TypeScript 4.7.4,element-plus 2.3.3 |
功能 | 描述 |
用户管理 | 包括用户信息的编辑,给用户选定身份,部门,重置用户密码,删除用户等操作 |
角色管理 | 包括添加角色,给角色分配权限,删除角色等操作 |
组织架构 | 包括部门信息编辑,添加下级部门,添加部门内人员,移出部门内人员,指定部门负责人等操作 |
操作日志 | 记录后台登陆人员操作日志,支撑按操作类型查询,登陆,查看,新增,编辑,删除类型操作日志 |
工作流模版管理 | 工作流定义信息查询,开启工作流等操作 |
工作流实例管理 | 正在运行的实例查询,暂停,恢复工作流实例运行状态,删除流程实例等操作 |
历史工作流实例管理 | 查询已经结束运行的工作流实例,查询流程变量,删除历史工作流实例等操作 |
框架 | 说明 | 版本 | 官方文档 |
Spring Boot | Web服务基础框架 | 2.7.5 | 链接 |
Netty | Websocket基础框架 | 3.10.5.Final | 链接 |
Kafka | 服务通信消息中间件 | 3.3 | 链接 |
Mysql | 关系数据库 | 5.7 | 链接 |
Redis | 缓存数据库 | 7.0 | 链接 |
Mybatis-Plus | 持久层框架 | 3.5.1 | 链接 |
Shiro | 权限验证 | 1.10.0 | 链接 |
Activiti | 工作流引擎 | 6.0.0 | 链接 |
Swagger | 接口文档 | 2.9.2 | 链接 |
Hutool | 工具类 | 1.10.0 | 链接 |
Lombok | 简化JavaBean | 1.16.16 | |
Junit | 单元测试 | 5.8.2 | |
Logback | 日志框架 | 1.1.11 |
框架 | 说明 | 版本 | 官方文档 |
Node.js | JavaScript运行环境 | 18.12.1 | 链接 |
Vue2.x | JavaScript框架 | 2.6.14 | 链接 |
Vue-Router | 前端页面路由 | 3.0.7 | 链接 |
Vuex | 存储状态管理 | 3.6.2 | 链接 |
Vuex-Persistedstate | 存储状态实现管理 | 3.2.1 | 链接 |
Element-UI | 基于Vue桌面端组件库 | 2.15.12 | 链接 |
Axios | 基于promise的网络请求库 | 1.2.0 | 链接 |
Font-Awesome | 字体图表库 | 4.7.0 | 链接 |
Node-Sass | CSS扩展 | 8.0.0 | 链接 |
Sass-Loader | webpack打包css插件 | 13.2.0 | 链接 |
el-table-infinite-scroll | 基于element table实现滚动加载数据的vue组件 | 1.0.10 | 链接 |
框架 | 说明 | 版本 | 官方文档 |
Vue3.x | 项目开发框架 | 3.2.47 | |
Element-plus | 前端UI库 | 2.3.3 | |
Pinia | 存储状态管理 | 2.0.32 | |
Vue-router | 页面路由管理 | 4.1.6 | |
typescript | javascript上类型推导 | 4.8.4 | |
unplugin-auto-import | ts,vue函数,自动声明配置 | 0.15.3 |
整个项目依赖jdk1.8,mysql5.7,redis7.0,kafka3.3服务,这些服务请自行部署安装,如果只是开发的话建议使用docker镜像,方便快捷.开发工具后端使用idea,前端使用vscode.或者用自己喜欢的开发工具亦可
只需要将mysql配置与outputDirectory修改为自己本机实际情况,传入需要生成代码的表名,运行main方法即可,main方法执行完毕会生成对应的entity实体类,xml,Dao,Service,Controller类
新增页面以HisoryProcessInstanceManager.vue举例分为三步,第四步为权限校验的规范
后台向前端发送Websocket消息时,需要加上type字段(在后台MessageType枚举类定义),前端对不同的类型的消息进行不同的处理
后台项目已经集成activiti工作流,将自定义的流程文件processes文件夹下,项目每次启动会自动部署该流程(没有改动则不会部署,有改动会生成一个最新的版本,创建工作流实例也是以最新的版本创建),使用activiti工作流需要了解工作流相关概念,项目里面提供一个请假的流程可以供参考,在Spring的test目录下也提供了工作流测试类,里面有工作流的基本使用方法.
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。