企业OA管理系统:Spring Boot技术实现与案例研究
摘要
随着信息技术在管理上越来越深入而广泛的应用,管理信息系统的实施在技术上已逐步成熟。本文介绍了企业OA管理系统的开发全过程。通过分析企业OA管理系统管理的不足,创建了一个计算机管理企业OA管理系统的方案。文章介绍了企业OA管理系统的系统分析部分,包括可行性分析等,系统设计部分主要介绍了系统功能设计和数据库设计。
本企业OA管理系统有管理员和用户。管理员功能有个人中心,用户管理,公告信息管理,客户关系管理,通讯录管理,日程安排管理,车辆信息管理,文件信息管理,工作日志管理,上班考勤管理,工资信息管理。用户功能有个人中心,公告信息管理,客户关系管理,通讯录管理,日程安排管理,车辆信息管理,文件信息管理,工作日志管理,上班考勤管理,工资信息管理。因而具有一定的实用性。
本站是一个B/S模式系统,采用Spring Boot框架,MYSQL数据库设计开发,充分保证系统的稳定性。系统具有界面清晰、操作简单,功能齐全的特点,使得企业OA管理系统管理工作系统化、规范化。本系统的使用使管理人员从繁重的工作中解脱出来,实现无纸化办公,能够有效的提高企业OA管理系统管理效率。
关键词:企业OA管理系统;Spring Boot框架;MYSQL数据库
Abstract
With the deepening and extensive application of information technology in management, the implementation of management information systems has gradually matured in technology. This article introduces the whole process of the development of enterprise OA management system. By analyzing the deficiencies of enterprise OA management system management, a program of computer management enterprise OA management system was created. The article introduces the system analysis part of the enterprise OA management system, including feasibility analysis, etc. The system design part mainly introduces the system function design and database design.
The enterprise OA management system has administrators and users. Administrator functions include personal center, user management, announcement information management, customer relationship management, address book management, schedule management, vehicle information management, file information management, work log management, work attendance management, salary information management. User functions include personal center, announcement information management, customer relationship management, address book management, schedule management, vehicle information management, file information management, work log management, work attendance management, salary information management. So it has a certain practicability.
This site is a B/S model system, using Spring Boot framework, MYSQL database design and development, fully guarantee the stability of the system. The system has the characteristics of clear interface, simple operation and complete functions, which makes the management of enterprise OA management system systematized and standardized. The use of this system frees managers from heavy work, realizes paperless office, and can effectively improve the management efficiency of the enterprise OA management system.
Keywords: Enterprise OA management system; Spring Boot framework; MYSQL database
目录
1系统概述 1
1.1 研究背景 1
1.2研究目的 1
1.3系统设计思想 1
2相关技术 2
2.1 MYSQL数据库 2
2.2 B/S结构 3
2.3 Spring Boot框架简介 4
3系统分析 4
3.1可行性分析 4
3.1.1技术可行性 4
3.1.2经济可行性 5
3.1.3操作可行性 5
3.2系统性能分析 5
3.2.1 系统安全性 5
3.2.2 数据完整性 6
3.3系统界面分析 6
3.4系统流程和逻辑 7
4系统概要设计 8
4.1概述 8
4.2系统结构 9
4.3.数据库设计 9
4.3.1数据库实体 9
4.3.2数据库设计表 11
5系统详细实现 16
5.1 管理员模块的实现 16
5.1.1 用户信息管理 16
5.1.2 公告信息管理 16
5.1.3 客户关系管理 17
5.1.4 通讯录管理 17
5.2 用户模块的实现 18
5.2.1 客户关系添加 18
5.2.2 通讯录添加 18
5.2.3 日程安排添加 19
6系统测试 20
6.1概念和意义 20
6.2特性 20
6.3重要性 21
6.4测试方法 21
6.5 功能测试 21
6.6可用性测试 22
6.7性能测试 22
6.8测试分析 23
6.9测试结果分析 23
结论 23
致谢语 24
参考文献 24
4系统概要设计
4.1概述
本系统采用B/S结构(Browser/Server,浏览器/服务器结构)和基于Web服务两种模式,是一个适用于Internet环境下的模型结构。只要用户能连上Internet,便可以在任何时间、任何地点使用。系统工作原理图如图4-1所示:
图4-1系统工作原理图
4.2系统结构
本系统是基于B/S架构的网站系统,设计的功能结构图如下图所示:
图4-2功能结构图
4.3.数据库设计
4.3.1数据库实体
概念设计的目标是设计出反映某个组织部门信息需求的数据库系统概念模式,数据库系统的概念模式独立于数据库系统的逻辑结构、独立于数据库管理系统(DBMS)、独立于计算机系统。
概念模式的设计方法是在需求分析的基础上,用概念数据模型(例如E-R模型)表示数据及数据之间的相互联系,设计出反映用户信息需求和处理需求的数据库系统概念模式。概念设计的目标是准确描述应用领域的信息模式,支持用户的各种应用,这样既容易转换为数据库系统逻辑模式,又容易为用户理解。数据库系统概念模式是面向现实世界的数据模型,不能直接用于数据库系统的实现。在此阶段,用户可以参与和评价数据库系统的设计,从而有利于保证数据库系统的设计与用户的需求相吻合。在概念模式的设计中,E-R模型法是最常见的设计方法。本系统的E-R图如下图所示:
(1)管理员信息的实体属性图如下:
图4.12 管理员信息实体属性图
(2)公告信息实体属性图如图4.13所示:
图4.13 公告信息实体属性图
(3)车辆信息实体属性图如图4.14所示:
图4.14 车辆信息实体属性图
4.3.2数据库设计表
企业OA管理系统需要后台数据库,下面介绍数据库中的各个表的详细信息:
表4. 车辆信息
字段 类型 空 默认 注释
id (主键) bigint(20) 否 主键
addtime timestamp 否 CURRENT_TIMESTAMP 创建时间
cheliangmingcheng varchar(200) 否 车辆名称
chepaihao varchar(200) 否 车牌号
cheliangleixing varchar(200) 是 NULL 车辆类型
cheliangyanse varchar(200) 是 NULL 车辆颜色
tingfangweizhi varchar(200) 是 NULL 停放位置
cheliangxiangqing longtext 是 NULL 车辆详情
shiyongzhuangkuang varchar(200) 是 NULL 使用状况
thumbsupnum int(11) 是 0 赞
crazilynum int(11) 是 0 踩
表4. 公告信息
字段 类型 空 默认 注释
id (主键) bigint(20) 否 主键
addtime timestamp 否 CURRENT_TIMESTAMP 创建时间
biaoti varchar(200) 否 标题
leixing varchar(200) 否 类型
fabushijian datetime 是 NULL 发布时间
gonggaoneirong longtext 是 NULL 公告内容
表4. 工资信息
字段 类型 空 默认 注释
id (主键) bigint(20) 否 主键
addtime timestamp 否 CURRENT_TIMESTAMP 创建时间
mingcheng varchar(200) 否 名称
yonghuming varchar(200) 否 用户名
xingming varchar(200) 是 NULL 姓名
bumen varchar(200) 是 NULL 部门
zhiwei varchar(200) 是 NULL 职位
jibengongzi int(11) 否 基本工资
jiabangongzi int(11) 否 加班工资
fuli int(11) 否 福利
shebao int(11) 否 社保
koufei int(11) 否 扣费
shifagongzi int(11) 否 实发工资
riqi date 是 NULL 日期
表4. 工作日志
字段 类型 空 默认 注释
id (主键) bigint(20) 否 主键
addtime timestamp 否 CURRENT_TIMESTAMP 创建时间
biaoti varchar(200) 否 标题
dengjishijian datetime 是 NULL 登记时间
gongzuoneirong longtext 是 NULL 工作内容
yonghuming varchar(200) 是 NULL 用户名
xingming varchar(200) 是 NULL 姓名
bumen varchar(200) 是 NULL 部门
zhiwei varchar(200) 是 NULL 职位
表4. 客户关系
字段 类型 空 默认 注释
id (主键) bigint(20) 否 主键
addtime timestamp 否 CURRENT_TIMESTAMP 创建时间
kehuxingming varchar(200) 否 客户姓名
xingbie varchar(200) 是 NULL 性别
nianling varchar(200) 是 NULL 年龄
shengri date 是 NULL 生日
gongsimingcheng varchar(200) 否 公司名称
lianxidianhua varchar(200) 是 NULL 联系电话
youxiang varchar(200) 是 NULL 邮箱
hezuoneirong longtext 是 NULL 合作内容
yonghuming varchar(200) 是 NULL 用户名
xingming varchar(200) 是 NULL 姓名
表4. 日程安排
字段 类型 空 默认 注释
id (主键) bigint(20) 否 主键
addtime timestamp 否 CURRENT_TIMESTAMP 创建时间
bianhao varchar(200) 是 NULL 编号
mingcheng varchar(200) 否 名称
leixing varchar(200) 是 NULL 类型
riqi date 是 NULL 日期
shijian varchar(200) 是 NULL 时间
richengneirong longtext 是 NULL 日程内容
yonghuming varchar(200) 是 NULL 用户名
xingming varchar(200) 是 NULL 姓名
bumen varchar(200) 是 NULL 部门
zhiwei varchar(200) 是 NULL 职位
表4. 上班考勤
字段 类型 空 默认 注释
id (主键) bigint(20) 否 主键
addtime timestamp 否 CURRENT_TIMESTAMP 创建时间
bianhao varchar(200) 是 NULL 编号
mingcheng varchar(200) 否 名称
riqi date 是 NULL 日期
yonghuming varchar(200) 否 用户名
xingming varchar(200) 是 NULL 姓名
bumen varchar(200) 是 NULL 部门
zhiwei varchar(200) 是 NULL 职位
zaotuicishu varchar(200) 否 早退次数
chidaocishu varchar(200) 否 迟到次数
qingjiacishu varchar(200) 否 请假次数
kuanggongcishu varchar(200) 否 旷工次数
userid bigint(20) 是 NULL 用户id
表4. 通讯录
字段 类型 空 默认 注释
id (主键) bigint(20) 否 主键
addtime timestamp 否 CURRENT_TIMESTAMP 创建时间
xingming varchar(200) 否 姓名
nianling varchar(200) 是 NULL 年龄
xingbie varchar(200) 是 NULL 性别
touxiang varchar(200) 是 NULL 头像
bumen varchar(200) 是 NULL 部门
shoujihao varchar(200) 是 NULL 手机号
dizhi varchar(200) 是 NULL 地址
youxiang varchar(200) 是 NULL 邮箱
beizhu longtext 是 NULL 备注
表4. 管理员表
字段 类型 空 默认 注释
id (主键) bigint(20) 否 主键
username varchar(100) 否 用户名
password varchar(100) 否 密码
role varchar(100) 是 管理员 角色
addtime timestamp 否 CURRENT_TIMESTAMP 新增时间
表4. 文件信息
字段 类型 空 默认 注释
id (主键) bigint(20) 否 主键
addtime timestamp 否 CURRENT_TIMESTAMP 创建时间
biaoti varchar(200) 否 标题
fujian varchar(200) 是 NULL 附件
wenjianneirong longtext 是 NULL 文件内容
fabushijian datetime 是 NULL 发布时间
yonghuming varchar(200) 是 NULL 用户名
xingming varchar(200) 是 NULL 姓名
bumen varchar(200) 是 NULL 部门
zhiwei varchar(200) 是 NULL 职位
sfsh varchar(200) 是 否 是否审核
shhf longtext 是 NULL 审核回复
表4. 用户
字段 类型 空 默认 注释
id (主键) bigint(20) 否 主键
addtime timestamp 否 CURRENT_TIMESTAMP 创建时间
yonghuming varchar(200) 否 用户名
mima varchar(200) 否 密码
xingming varchar(200) 是 NULL 姓名
xingbie varchar(200) 是 NULL 性别
touxiang varchar(200) 是 NULL 头像
bumen varchar(200) 是 NULL 部门
zhiwei varchar(200) 是 NULL 职位
youxiang varchar(200) 是 NULL 邮箱
shouji varchar(200) 是 NULL 手机
相关文章:

企业OA管理系统:Spring Boot技术实现与案例研究
摘要 随着信息技术在管理上越来越深入而广泛的应用,管理信息系统的实施在技术上已逐步成熟。本文介绍了企业OA管理系统的开发全过程。通过分析企业OA管理系统管理的不足,创建了一个计算机管理企业OA管理系统的方案。文章介绍了企业OA管理系统的系统分析部…...

(免费送源码)计算机毕业设计原创定制:Java+JSP+HTML+JQUERY+AJAX+MySQL springboot计算机类专业考研学习网站管理系统
摘 要 大数据时代下,数据呈爆炸式地增长。为了迎合信息化时代的潮流和信息化安全的要求,利用互联网服务于其他行业,促进生产,已经是成为一种势不可挡的趋势。在大学生在线计算机类专业考研学习网站管理的要求下,开发一…...
Go语言工程测试的基本规则和流程
Go语言工程测试的基本规则和流程 在Go语言的工程实践中,测试是确保软件质量和稳定性的关键环节。本文将深入探讨Go语言中的工程测试,包括单元测试、性能测试和集成测试等,以及它们的编写规则、组织方式和执行流程。 单元测试(Unit Testing) 单元测试是针对软件中最小可…...
阿里云cdn配置记录和nodejs手动安装
cdn 登录阿里云 域名解析权限 开启cdn,接引导流程, 源可以设置 域名或者ip等 配置好域名解析 上传https证书 图片不显示,后端开发需要配置 回源配置的回源协议 ,配置跟随客服端【如果浏览器多次重定向错误,客服或者改…...
PTC在电池中的作用
一、电池安全性的重要性 在现代电子设备中,电池作为能源储存和供应的核心组件,其性能和安全性一直是关注的重点。尤其是在锂离子电池等高能量密度电池的广泛应用中,电池发生过流、过热、短路等问题可能导致电池失效,甚至引发热失控和火灾等安全事故。因此,如何提高电池的…...
嵌入式C语言面试题 - 2024/11/18
欢迎找我进行职业规划,超值的自我投资 -> 嵌入式软件工程师一对一指导 转载请注明来源: 下边代码,x值是? int x10;x 3x%(3); 解析: 初始值:x 10 计算 x % 3: 10 % 3 的结果是 1&#…...

理解原子变量之四:可见性、memory_order_acquire与 memory_order_release
在理解原子变量之二:从volatile到内存序-进一步的认识-CSDN博客里的实例3里面,我们看到,如果在一个线程里修改原子变量done,另一个线程读取done时,就会看到这个变化。这就是原子变量的可见性。其实这个认识是不全面的。…...
requests的session
如果有cookie,能够自动关联,可以使用如下: session对象能够帮我们自动管理和传递cookie,但是后续的请求,必须使用session对象发起 session requests.session() re session.get() re session.post()或 session reque…...

MySQL面试题补
内连接和外连接的区别: ○1.功能和用法不同:内连接是连接两表都满足情况的数据;而外连接是以一边的表为主表,另一个表只显示匹配的行; ○2.用途:内连接一般是用于检索不同表需要根据共同的列值进行匹配的&a…...

Windows系统编程 - 进程遍历
文章目录 前言进程的遍历CreateToolhelp32SnapshotProcess32FirstProcess32Next进程遍历 总结 前言 各位师傅好,我是qmx_07,今天给大家讲解进程遍历的相关知识点 进程的遍历 快照:使用vmware虚拟机的时候,经常需要配置环境服务…...
从零开始创建一个 Vue3+Vite+TS+Eslint项目
一、创建一个最简单的 Vue3 项目 pnpm create vuelatest只设置项目名,其它任何功能都不加。 二、引入 Typescript 详见 Vue3 Vite 项目引入 Typescript 三、引入 Eslint Pritter 详见 Vue3 Vite TS 项目引入 Eslint Pritter 四、配置自动导入插件引入 El…...
Python操作neo4j库py2neo使用(一)
Python操作neo4j库py2neo使用(一) 安装(只用于测试) docker-compose .yml 文件 version: 3.8 services:neo4j:image: neo4j:5.6.0-enterprise #商业版镜像hostname: neo4jcontainer_name: neo4jports:- "7474:7474"-…...

Oracle - 多区间按权重取值逻辑 ,分时区-多层级-取配置方案(二)
Oracle - 多区间按权重取值逻辑 ,分时区-多层级-取配置方案https://blog.csdn.net/shijianduan1/article/details/133386281 某业务配置表,按配置的时间区间及组织层级取方案,形成报表展示出所有部门方案的取值; 例如࿰…...

leetcode刷题记录(四十二)——101. 对称二叉树
(一)问题描述 . - 力扣(LeetCode). - 备战技术面试?力扣提供海量技术面试资源,帮助你高效提升编程技能,轻松拿下世界 IT 名企 Dream Offer。https://leetcode.cn/problems/symmetric-tree/description/给你…...

AutoDL安装docker问题
在AutoDL上租了卡,安装docker遇到一些问题: 1.执行 sudo docker run hello-world 报错 docker: Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running? 解决方法 先查看docker有没有启动,…...
C++头文件大全(要是还有请帮忙)
以下是 C 中常见的各类头文件分类列举(但实际远不止这些,随着标准库扩充及第三方库使用会有更多): 输入 / 输出流相关头文件 <iostream>:用于标准输入输出,定义了 cin、cout 等对象。<fstream>…...

深度学习实战人脸识别
文章目录 前言一、人脸识别一般过程二、人脸检测主流算法1. MTCNN2. RetinaFace3. CenterFace4. BlazeFace5. YOLO6. SSD7. CascadeCNN 三、人脸识别主流算法1.deepface2.FaceNet3.ArcFace4.VGGFace5.DeepID 四、人脸识别系统实现0.安装教程与资源说明1. 界面采用PyQt5框架2.人…...

oracle排查长时间没提交的事务造成的阻塞案例
一 问题描述 开发同事反馈生产环境某个接口慢,一个普通的按主键更新的update竟然需要5分钟,而我手动执行秒返回,猜测是发生了阻塞,需要排查出阻塞源。 有时,一个事务里会包含多个sql,有的还包含上传附件等…...
React第七节 组件三大属性之 refs 的用法注意事项
1、定义 React 中refs 是允许我们操作DOM 访问组件实例的一种方案。开发人员可以直接使用 refs 访问操作DOM,而不用自身的数据状态,这种方案在实际开发过程中是有必要的,但是不建议通篇使用refs操作DOM,如果是这样,那…...
工程企业需要什么样的物资管理系统?为什么需要物资管理系统?
一、背景与意义 在工程项目的建设中,无论是高楼大厦的拔地而起,还是高速公路的绵延铺展,物资都是最基础的要素之一。从钢筋水泥到施工机械,任何一种物资的管理不善都可能导致项目延误、成本超支,甚至质量问题。然而&a…...

龙虎榜——20250610
上证指数放量收阴线,个股多数下跌,盘中受消息影响大幅波动。 深证指数放量收阴线形成顶分型,指数短线有调整的需求,大概需要一两天。 2025年6月10日龙虎榜行业方向分析 1. 金融科技 代表标的:御银股份、雄帝科技 驱动…...
conda相比python好处
Conda 作为 Python 的环境和包管理工具,相比原生 Python 生态(如 pip 虚拟环境)有许多独特优势,尤其在多项目管理、依赖处理和跨平台兼容性等方面表现更优。以下是 Conda 的核心好处: 一、一站式环境管理:…...
java_网络服务相关_gateway_nacos_feign区别联系
1. spring-cloud-starter-gateway 作用:作为微服务架构的网关,统一入口,处理所有外部请求。 核心能力: 路由转发(基于路径、服务名等)过滤器(鉴权、限流、日志、Header 处理)支持负…...

Mybatis逆向工程,动态创建实体类、条件扩展类、Mapper接口、Mapper.xml映射文件
今天呢,博主的学习进度也是步入了Java Mybatis 框架,目前正在逐步杨帆旗航。 那么接下来就给大家出一期有关 Mybatis 逆向工程的教学,希望能对大家有所帮助,也特别欢迎大家指点不足之处,小生很乐意接受正确的建议&…...

Vue2 第一节_Vue2上手_插值表达式{{}}_访问数据和修改数据_Vue开发者工具
文章目录 1.Vue2上手-如何创建一个Vue实例,进行初始化渲染2. 插值表达式{{}}3. 访问数据和修改数据4. vue响应式5. Vue开发者工具--方便调试 1.Vue2上手-如何创建一个Vue实例,进行初始化渲染 准备容器引包创建Vue实例 new Vue()指定配置项 ->渲染数据 准备一个容器,例如: …...

2021-03-15 iview一些问题
1.iview 在使用tree组件时,发现没有set类的方法,只有get,那么要改变tree值,只能遍历treeData,递归修改treeData的checked,发现无法更改,原因在于check模式下,子元素的勾选状态跟父节…...

DIY|Mac 搭建 ESP-IDF 开发环境及编译小智 AI
前一阵子在百度 AI 开发者大会上,看到基于小智 AI DIY 玩具的演示,感觉有点意思,想着自己也来试试。 如果只是想烧录现成的固件,乐鑫官方除了提供了 Windows 版本的 Flash 下载工具 之外,还提供了基于网页版的 ESP LA…...

Psychopy音频的使用
Psychopy音频的使用 本文主要解决以下问题: 指定音频引擎与设备;播放音频文件 本文所使用的环境: Python3.10 numpy2.2.6 psychopy2025.1.1 psychtoolbox3.0.19.14 一、音频配置 Psychopy文档链接为Sound - for audio playback — Psy…...
Robots.txt 文件
什么是robots.txt? robots.txt 是一个位于网站根目录下的文本文件(如:https://example.com/robots.txt),它用于指导网络爬虫(如搜索引擎的蜘蛛程序)如何抓取该网站的内容。这个文件遵循 Robots…...

《基于Apache Flink的流处理》笔记
思维导图 1-3 章 4-7章 8-11 章 参考资料 源码: https://github.com/streaming-with-flink 博客 https://flink.apache.org/bloghttps://www.ververica.com/blog 聚会及会议 https://flink-forward.orghttps://www.meetup.com/topics/apache-flink https://n…...