一、项目背景

在这里插入图片描述

随着大数据、人工智能、物联网、云计算、5G通讯、千兆光纤通讯等信息化技术和网络通讯技术的飞速发展,信息化技术使当今社会各领域发生了翻天覆地的变化,大部分企业己经迈入信息化办公的时代,自动化办公系统(OA系统)是一个综合性的集事务管理、信息管理为一体的企业用户办公平台,目前已经在大多数企业中得到了广泛的应用。OA系统解决了企业内部部门之间沟通不畅、无法协同工作等问题,提高了企业的办公质量和办公效率,减少了企业部门之间的沟通成本,促进了企业内部的信息交流和共享,能够实现跨部门、跨时间、跨领域的高效率协同办公。国内各大企业努力发展主营业务的同时也在通过整合企业内部资源,研发适合本企业的个性化OA系统。

根据系统分析,OA办公系统需要实现登录、系统管理、用户管理、角色管理、考勤管理等功能,其中管理员可以对 OA 办公系统的所有模块进行管理,部门经理可以设置普通职员的角色和查看考勤等功能,普通职员可以执行考勤打卡、收发邮件、记录笔记和文件、制定任务和修改任务进度。

在这里插入图片描述


二、技术栈

本章主要对基于 Spring Boot 的 OA 办公系统所涉及的相关技术进行介绍,主要概述了 B/S 架构风格、JavaScript、Spring Boot、Maven、MyBatis、MySQL,最后列出了实现该系统所基于的软硬件环境。

2.1 B/S架构
B/S 架构即浏览器和服务器架构风格。它是随着 Internet 的发展,在早期的 C/S 架构基础上进行改进和演进的架构。在这种架构风格下,用户通过浏览器来访问后台,前端是轻量级的,处理少量的事务逻辑,主要应用逻辑在服务器端处理,也属于分层的架构风格。这样大大减少了运行客户端电脑的负载,相比 C/S 架构 B/S 架构增加了可维护性,降低了总体成本。
B/S架构最大的优点是客户端可通过浏览器进行访问服务端,不需要安装其他的客户端软件。一台能上网的电脑就可访问服务,客户端基本零维护成本,系统的可扩展性较高。

在这里插入图片描述

2.2 JavaScript
JavaScript 是一种脚本语言,主要用于客户端开发。它是基于对象和事件驱动的,其安全性较高,广泛用于客户端 Web 开发,与 HTML 结合使用,在网页上添加动态功能,可用于响应用户的操作。

2.3 Spring Boot
Spring Boot 是由 Pivotal 团队提供,用于简化 Spring 应用的搭建和开发过程的全新框架,是整个Spring技术栈的一个大整合,它摒弃了传统的J2EE笨重开发、繁多的配置、低下的开发效率、复杂的部署流程的特点。通过Spring Boot可以快速创建独立运行的Spring项目以及与主流框架集成,使用嵌入式的 Servlet 容器,应用无需打成 WAR 包, starters 自动依赖与版本控制。它具有大量的自动化配置、简化开发、无需配置 XML、无代码生成、开箱即用、与云计算的天然集成等优点。

2.4 vue技术

Vue.js是一种用于构建用户界面的渐进式JavaScript框架。与其他大型框架不同的是,Vue被设计为可以自底向上逐层应用。Vue的核心库只关注视图层,不仅易于上手,还便于与第三方库或既有项目整合。另一方面,当与现代化的工具链以及各种支持类库结合使用时,Vue也完全能够为复杂的单页应用提供驱动。Vue.js的设计目标是通过尽可能简单的API实现响应的数据绑定和组合的视图组件。核心库只关注视图层,易于上手,同时也便于与第三方库或既有项目整合。另一方面,当与现代化的工具链以及各种支持类库结合使用时,Vue也完全能够为复杂的单页应用提供驱动。在Vue中,我们可以轻松地实现数据双向绑定。这意味着当数据发生变化时,视图会自动更新;反之亦然。这种机制使得开发者无需手动操作DOM元素来更新视图,大大提高了开发效率。此外,Vue还提供了指令、过滤器等功能,使得我们可以更加灵活地控制视图的展示。

在这里插入图片描述


三、功能模块

本节前半部分主要描述了管理员和职工、部门经理视角OA 系统所具有的功能,本系统使用面向对象开发方法,主要采用UML用例图对系统的功能进行分析和描述。通过对OA办公系统的详细需求分析,确定本系统的外部参与者有普通用户(职工、经理等)和管理员。以下将分别对这两个外部参与者具有的功能进行描述:

1.、普通用户
普通用户是非管理员,可以是一般员工,也可以是总经理,是 OA 系统的使用频率最高的角色。普通用户可以完成的功能如图3.1所示:
a.登录:填写正确的用户名和密码,输入验证码登录系统。
b.个人信息维护:用户可以通过用户面板的“我的便签”和“个人设置”标签栏对个人信息进行管理和维护。
c.考勤:用户每天在规定的时间内进行考勤,可以查看历史考勤情况。
d.工作计划:用户可通过工作计划管理模块添加工作计划,工作计划包含日计划、周计划和月计划,可指定计划的开始时间和结束时间,上传与计划相关的文件、附件等。通过计划报表可以查看计划完成情况。
e.流程管理:用户可以通过流程管理模块添加费用报销流程、出差申请、加班申请、转正申请、请假申请、离职申请等。
f.邮件:用户可以通过 AO 系统创建自己的邮件账号,通过邮件管理模块查看邮件、编辑邮件、发送邮件和删除邮件。
g.日程:普通用户在首页通过日程界面,添加日程,通知相关的日程关联人员,添加完成后,用户可以查看个人日程信息。
h.公告:普通用户可以查看公告信息,公共信息来自个人添加的日程或者公司其他职员发布的日程信息等。
i.文件管理:用户通过文件管理模块,可以上传本地文件到 OA 系统,可对文件进行共享,其他公司的员工可以查看和下载文件。
j.笔记管理:用户通过笔记管理模块,可以新建笔记和共享笔记,实现知识的分享。

在这里插入图片描述

管理员在系统中具有最高权限,但其不参与公司内部流程、任务、邮件信息、工作计划、文件、笔记等的管理。管理员主要负责给所有用户下发任务,发布公司相关的具体公告信息,设置用户的权限和用户所属角色,定期维护系统,保证系统的安全、可用等。管理员的主要功能如图3.2所示:
a.登录:管理员输入用户名 admin 和密码,输入验证码,登录系统。
b.用户管理:管理员可添加系统用户,设置用户的权限和所属权限组,重置用户密码等操作。
c.任务管理:管理员可以管理任务,包括增删改查任务。
d.公告管理:管理员可以管理公告,包括增删改查公告。
e.通讯录管理:管理员可维护公司通讯录信息,通讯录中不仅包含公司内部人员信息,还支持外部合作企业、客户的联系方式等信息。

在这里插入图片描述

OA办公系统采用 Spring Boot 框架开发,将整个系统模块可分为View层、Controller层、Service层、DAO层和持久化数据存储层。
在这里插入图片描述
登录模块:用户(包括职工、总经理等公司其他员工、系统管理员)可以输入 OA 系统的用户名和密码,输入验证码,点击登录,进入系统首页。
系统管理模块:系统管理员可以更改 OA 系统的菜单,进行菜单导航设置,管理菜单的有效性。
用户管理模块:系统管理员可以设置公司部门,进行部门的增加和删除,管理部门下的所有职位,能增加和删除员工。
角色管理模块:系统管理员可以对公司的职位角色进行增删改查。
考勤管理模块:公司职员需要每日进行考勤打卡,总经理可以查看公司职员的考勤情况,可以查看部门下的考勤周报和月报表。
流程管理模块:工作职员可以提交请假、报销等流程到部门的上级,上级部门经理对职员的流程进行审批。
公告管理模块:管理员和总经理可以发布公司公告,公司所有职员可以登录OA系统查看公司发布的公告信息。
邮件管理模块:管理员可以设置邮件账号信息,公司的所有职员接收和发送邮件。
任务管理模块:公司所有的职员可以创建任务,记录任务的完成情况,最终形成任务报告。
日程、工作计划模块:公司所有职员可以在OA系统上登记日程、个人的工作计划信息,可以作为备忘。
通讯录模块:管理员可以通过该模块增加、修改和删除公司职员的通讯信息,包括电子邮件、电话号码等。

在这里插入图片描述
公司的普通职员登录系统后,首先查验系统信息的正确性,正确性的校验主要针对公司新增职员时。职员每日可通过 OA系统进行考勤、提交请假和报销流程、查看公司公告信息、管理分配的任务、对工作任务进行计划安排、日程管理等。

公司中职位相对高的角色权限高于普通职工,总经理可以进行考勤管理、查看月度和季度考勤情况、发布公告、任务管理和下发、工作计划管理、日程管理等。

OA系统的管理员具有最高级权限,但是重点关注系统的管理、用户的信息管理和角色权限的管理、邮件安全方面的管理、通讯录的维护、讨论区功能的维护和管理等。

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

设计文档学习基于SpringBoot的OA办公系统论文

感兴趣自行下载学习,支持项目定制,支持功能修改!感兴趣留言交流!

Logo

欢迎加入我们的广州开发者社区,与优秀的开发者共同成长!

更多推荐