# oa-management-system **Repository Path**: wgxuejava/oa-management-system ## Basic Information - **Project Name**: oa-management-system - **Description**: 云上办公OA系统是一个采用分布式架构的办公OA系统,系统主要包含:管理端和员工端。 管理端包含:权限管理、审批管理、公众号菜单管理 - **Primary Language**: Java - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 0 - **Created**: 2023-03-01 - **Last Updated**: 2026-03-22 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README 项目名称:云上办公 OA 系统 开发环境: IDEA、VS Code 、Maven、Linux 后端技术栈: SpringBoot +Spring Security +MyBatis-Plus + Activiti +Redis +MySQL 前端技术栈:Vue +Axios +Node.js +Npm +ElementUI 项目地址:https://gitee.com/wgxuejava/oa-management-system.git 项目描述: 云上办公 OA 系统是一个采用分布式架构的办公 OA 系统,系统主要包含:管理端和员工端。 管理端包含:权限管理、审批管理、公众号菜单管理。员工端采用微信公众号操作,包含:办公审批、微 信授权登录、消息推送等功能。OA 办公系统将工作流程规范化、标准化、程序化,强化规章制度的落地, 督促审批、申请、请假、加班的执行,明确各职能部门负责人的作用,有效推动各项管理制度的落地。本 系统的信息采用了安全访问控制、加密措施、权限控制等方式,可有效提高信息传递的安全性,让信息沟 通更安全高效。 职责描述: 1. 主要负责权限管理模块的接口设计、编写及接口文档的编写,实现基于 RBAC 的权限访问控制。 2. 结合 Spring Security 完成接口实现和类的继承及封装,通过过滤器链认证成功之后生成 JWT 登录令牌 并存入 Redis,完成用户跟踪,实现登录的安全访问控制及授权、认证。 3. 封装 MyBatis-Plus 分页对象,实现多表查询,封装数据,完成前端页面内容显示。 4. 将用户权限缓存到 Redis 中,并完成数据的主动更新。 5. 封装前端 Api 请求,完成前后端的页面交互。 技术要点: 1. 使用 Redis 缓存用户的权限数据和 JWT 登录令牌数据。 2. 使用 Spring Security 编写拦截器链,校验登录令牌和用户身份。 3. MyBatis -Plus 的数据封装及增删改查。 难点: 1. 使用递归算法将权限 list 集合封装成用户的权限菜单树,实现多级菜单。 2. 使用集合以及 Stream 流式处理业务。 3. 封装前端的动态路由菜单,实现物理权限控制。