可白嫖源码---课程设计--毕业设计--23243springboot高效企业事务管理平台(案例分析)-附源码

 摘  要

在现代企业管理中,高效的事务管理平台对于提高工作效率、降低成本和提升员工满意度至关重要。随着信息技术的不断进步,引入现代化技术的企业管理解决方案逐渐受到关注。本研究旨在设计并实现一个功能全面、操作简单且用户友好基于Spring Boot框架的高效企业事务管理平台,以满足不同角色用户的需求。通过需求分析,确定了主要功能模块,包括用户登录、部门及职位管理、考勤及打卡管理、薪资及绩效考核管理、人事办理及财务管理、项目管理等。在实现过程中,采用前后端分离架构,利用微信小程序作为前端展示,基于Spring Boot作为后端服务框架,确保平台的高性能与易维护性。经过测试,本平台不仅能够实现日常事务的高效管理,还显著提升了信息的实时性和可视化水平,为企业决策提供了有力支持,最终达成了预期的研究目标。

关键词:高效企业事务管理平台;Spring Boot框架;微信小程序;MySQL;企业管理

Abstract

In modern enterprise management, an efficient transaction management platform is crucial for improving work efficiency, reducing costs, and enhancing employee satisfaction. With the continuous advancement of information technology, enterprise management solutions that introduce modern technology are gradually receiving attention. The aim of this study is to design and implement a comprehensive, easy-to-use, and user-friendly enterprise transaction management platform based on the Spring Boot framework to meet the needs of users with different roles. Through requirement analysis, the main functional modules have been determined, including user login, department and position management, attendance and clock in management, salary and performance evaluation management, personnel processing and financial management, project management, etc. In the implementation process, a front-end and back-end separation architecture is adopted, using WeChat mini programs as the front-end display and Spring Boot as the back-end service framework to ensure the high performance and ease of maintenance of the platform. After testing, this platform not only achieves efficient management of daily affairs, but also significantly improves the real-time and visualization level of information, providing strong support for enterprise decision-making and ultimately achieving the expected research goals.

Key words: Efficient Enterprise Affairs Management Platform; Spring Boot framework; WeChat Mini Program; MySQL; business managementy

目  录

1 前  言

1.1 选题背景

1.2 研究意义

1.3 国内外研究现状

1.3.1 国内研究现状

1.3.2 国外研究现状

1.4 系统的特点

1.5 论文结构与章节安排

2 关键技术

2.1 Java编程语言

2.2 MySQL数据库

2.3 Spring Boot开发框架

2.4 B/S模式

2.5 微信小程序与微信开发者工具

3 系统分析

3.1 可行性分析

3.1.1 技术可行性

3.1.2 经济可行性

3.1.3 操作可行性

3.2 功能需求分析

3.3 系统性能分析

3.4 系统流程分析

3.4.1 程序操作流程

3.4.2 登录流程

3.4.3 注册流程

4 系统设计

4.1 总体设计

4.1.1 系统架构设计

4.1.2 功能模块设计

4.2 数据库设计

4.2.1 数据库E-R图

4.2.1 数据库表结构设计

5 系统实现

5.1 系统环境分析

5.2 系统前台模块

5.2.1 用户登录界面

5.2.2 用户注册界面

5.2.3 首页界面

5.2.4 我的界面

5.3 后台管理模块

5.3.1 后台首页界面

5.3.2 系统用户界面

5.3.3 考勤申请管理界面

5.3.4 定点打卡管理界面

5.3.5 系统管理界面

5.3.6 资源管理界面

6 系统测试

6.1 测试目的

6.2 测试用例

6.3 测试分析

7 结束语

参考文献

致  谢

 

1   

1.1选题背景

在数字化转型的大背景下,越来越多的企业意识到信息化管理的重要性。传统的企业事务管理方式往往依赖于纸质文档和人工操作,效率低下且容易导致信息滞后和错误。为了提高管理效率,减少人工成本,企业纷纷探索基于新兴技术的信息管理平台。而微信小程序以其便捷的访问方式和广泛的用户基础,为企业提供了一个理想的管理工具。结合Spring Boot的高性能后端开发能力,可以实现一个功能完善的企业事务管理平台,有效提升企业运营效率。

本文研究的高效企业事务管理平台以快速开发、灵活性、高效性为优点Spring Boot为后端框架,结合了前端微信小程序应用程序提供用户友好可移动的交互界面,利用MySQL关系型数据库储存数据,保证数据持久化与安全性,通过以上技术,不仅能够实现平台的快速迭代更新和稳定性维护,提高系统性能的同时确保平台长期稳定运行,还能为用户提供更好的使用体验。

1.2研究意义

本文旨在以微信小程序为载体,结合Spring Boot开发技术,为企业构建一个高效的事务管理平台。本高效企业事务管理平台的部署和实施,不仅可以通过智能化、数字化的手段,有效整合企业内部的信息资源,减少人力资源的浪费,简化管理流程,提高工作效率,降低企业运营成本,还能够借助数据管理和分析,帮助企业领导做出科学决策,提升整体运营效率和竞争力。同时,系统为不同的用户角色提供了个性化的功能,确保信息流的顺畅,为企业内部提供一个透明的信息沟通渠道,让每位职工都能及时获取相关信息,增强团队协作。身处移动互联网时代,平台利用小程序模式还可以为职工提供便捷的考勤、打卡、薪资、任务管理等职工服务,提升员工满意度和工作积极性。此外,研究可以为其他企业在数字化转型过程中提供借鉴,为实现信息共享与高效管理开辟新的路径。因此,本高效企业事务管理平台的研究不仅具有理论意义,还有实践应用价值,能够为企业在激烈的市场竞争中获得先机。

1.3国内外研究现状

1.3.1国内研究现状

近年来,国内对于企业事务管理的平台研究和开发已逐渐引起重视。一些企业,如腾讯和阿里巴巴,推出了各自的企业管理工具,如企业微信和钉钉,这些工具综合了即时通讯、任务管理和考勤等功能,受到企业广泛欢迎。此外,众多初创公司也开始进入这一市场,提供定制化的管理平台,旨在满足特定行业需求。例如,中小企业通过使用定制的微信小程序,成功实现了考勤管理、数据汇报的线上化,提升了企业的管理效率。

1.3.2国外研究现状

在国外,企业事务管理平台同样受到高度重视。像Salesforce、Asana、Trello等管理工具已经在市场上占据一席之地,这些平台都提供了丰富的功能模块,例如项目管理、绩效考核、资源分配等,帮助企业整合和优化了内部资源。国外的一些研究,例如MIT发布的《企业数字化转型的关键成功要素》一文中,强调了数字化工具在企业管理中的重要性,指出了高效的系统可以推动企业创新和迅速适应市场变化。

通过以上现状的分析,可以看出,无论是国内外,企业事务管理平台的研究和实践都在不断发展,随着市场需求的变化,未来将会有更多创新的解决方案涌现出来。

1.4系统的特点

(1)高效企业事务管理平台中的web后台管理中的后端不再使用古老的jsp+javabean+servlet技术,而是使用当前主流的Spring Boot框架,它减少Java配置代码,简化编程代码,目前Spring Boot框架也是很多企业选择的框架之一。

(2)高效企业事务管理平台中的前端使用的是微信小程序技术,它是不需要下载安装即可使用的应用程序,具有使用方便、传播快速、体验优秀等优势。

(3)高效企业事务管理平台中数据库用的MySQL,它执行效率高,运行速度快,安全性能也很高,同时无平台限制。

1.5论文结构与章节安排

本文共分为七章,章节内容安排如下:

第一章:前言,主要介绍高效企业事务管理平台领域研究的背景和意义,概述研究的现状和系统特点。

第二章:关键技术,主要探讨和说明实现高效企业事务管理平台的关键技术。

第三章:系统分析,主要从高效企业事务管理平台的可行性、功能、性能等方面进行分析,为后续系统设计提供理论支持。

第四章:系统设计,主要对高效企业事务管理平台功能模块、数据库进行功能设计。

第五章:系统实现,主要介绍了高效企业事务管理平台各个用户的功能、系统界面的实现。

第六章:系统测试,主要对高效企业事务管理平台进行测试,验证功能完整性、稳定性和安全性,评估系统在实际运行中的性能表现。

第七章:结束语。总结全文研究内容,提出对该研究未来发展的展望和建议,指出研究的不足和可优化之处,为相关领域的进一步探索提供参考。

2  关键技术

本高效企业事务管理平台的设计与开发,主要基于Spring Boot框架,结合MySQL数据库,使用Java语言进行业务逻辑的实现和构建系统后端业务;前端采用微信小程序技术,利用微信开发者工具进行开发与设计用户友好且可移动的交互界面;同时系统采用B/S(Browser/Server)模式,实现了前后端分离,满足不同用户的使用需求。

2.1Java编程语言

Java是一种面向对象的编程语言,具有跨平台、安全性高、性能优秀的特性,被广泛用于开发各种类型的应用程序,包括Web应用、移动应用和大型软件系统。Java使用Java虚拟机(JVM)来运行程序,具有良好的可移植性和健壮性。Java广泛应用于企业级应用、Web应用和移动应用的开发。在Spring Boot框架中,Java语言被广泛应用于后端业务逻辑的实现。

2.2MySQL数据库

MySQL是一种开源的关系型数据库管理系统(RDBMS),广泛用于Web应用程序的数据存储。它具有高性能、高可靠性和易扩展性的特点,符合ACID事务规则,支持多种存储引擎,如InnoDB、MyISAM等,是Spring Boot项目中常用的数据库,用于存储和管理数据,提供多种安全机制,以保证数据安全性。

2.3Spring Boot开发框架

Spring Boot是一个用于快速构建基于Spring的应用程序的框架。它简化了Spring应用程序的初始搭建及开发过程,它通过约定优于配置的原则,减少了繁琐的配置,使开发者能够更加专注于业务逻辑的编写,快速开发出可运行的Spring应用程序。Spring Boot还内置了许多常用的配置,提供了强大的自动配置功能,实现各种模块的集成和管理。

2.4B/S模式

B/S(Browser/Server)模式是一种软件系统的结构模式,该模式基于浏览器的C/S(Client/Server)架构,通过浏览器访问服务器上的应用程序。B/S模式具有易于部署、维护成本低、跨平台等优点,适用于Web应用的开发。

2.5微信小程序与微信开发者工具

微信小程序是一种不需要下载安装即可使用的应用程序,它基于微信公众平台开发,可以在微信内被便捷地获取和传播,用户只需通过微信扫一扫或搜索即可启动。小程序具有加载速度快、使用方便、用户体验好的特点,适用于轻量级的应用开发。微信小程序的开发采用前端技术栈,主要包括WXML、WXSS、JavaScript和wxs等。

微信开发者工具是一个集成开发环境(IDE),用于开发、调试和发布微信小程序。它提供了丰富的开发工具和调试功能,包括编码、预览、上传等功能,方便开发者快速开发和测试小程序。

3  系统分析

3.1可行性分析

3.1.1技术可行性

从技术角度来看,Spring Boot作为一种轻量级、快速构建的Java框架,能够提高开发效率,降低系统的复杂程度,易于维护和升级。小程序无需下载即可使用,并具有加载速度快、使用方便的特点,适用于轻量级的应用开发。同时,MySQL作为关系型数据库,能够支持平台数据的存储与管理,保障系统的稳定性和高效性。因此,本系统具有技术可行性。

3.1.2经济可行性

从经济角度来看,基于Spring Boot搭建高效企业事务管理平台的投入成本相对较低,因为Spring Boot本身是一个免费、开源的框架,可以节省开发成本。同时,使用MySQL作为数据库也具有成本效益高的优势。基于微信公众平台开发的小程序,可以在微信内被便捷地获取和传播,方便用户快速上手使用,能够更好地吸引用户参与,从而提升平台的商业化价值,增加商业合作和推广等收入来源。因此,本系统具有经济可行性。

3.1.3操作可行性

从操作角度来看,Spring Boot的简洁性和高度集成的特点使得系统的部署和运行相对简单,容易维护和管理。同时,微信小程序作为用户主要的操作入口,界面友好且操作简单,有利于用户体验的优化,提升用户的参与度和留存率。因此,本系统具有操作可行性。

综合来看,基于Spring Boot的高效企业事务管理平台的设计与实现在经济、技术、操作等方面都具有较高的可行性,能够为用户提供便捷的服务,促进共建共享的理念。

3.2功能需求分析

根据用户需求分析,基于Spring Boot开发的高效企业事务管理平台可以分为职工用户和管理员两大角色,各角色用例图及相应功能分析说明如下。

系统前台小程序端职工用户角色用例如下图所示。

图3.1职工用户用例图

系统前台小程序端职工用户具体功能说明如下所示。

  1. 注册登录:用户注册并登录系统,使用系统各项功能,注册信息需经过后台管理员的审核才可登录系统,提供人脸认证功能。
  2. 首页:用户登录系统后首先进入首页界面,可查看轮播图、公告信息、企业资讯等系统概览和推荐信息,并提供考勤申请、定点打卡等系统功能入口子菜单。
  3. 企业资讯:当职工用户点击“企业资讯”这一菜单时,可查看关于家教辅导的相关资讯、新闻或者是文章,可进行点赞、评论、收藏操作。
  4. 我的:职工用户在前台点击“我的”可以对用户的基本信息、收藏、考勤申请、打卡记录、任务安排、任务汇报、职工薪资、人事办理、财务信息、绩效信息、项目信息、消息提醒等信息进行管理。

系统后台管理端管理员角色用例如下图所示。

图3.2管理员用例图

系统后台管理端管理员具体功能说明如下所示。

  1. 登录:管理员的账号是在数据列表中直接设置生成的,不需要进行注册,直接输入账号密码,进行人脸认证后可登录系统,同时可对管理员资料进行修改。
  2. 后台首页:管理员登录系统后首先进入后台首页界面,该界面主要提供系统重要信息概览、及数据分析统计图表,包括职工薪资统计图表。
  3. 系统用户:管理员可管理系统的所有系统用户信息,包括管理员、职工用户等,支持用户权限管理和角色设置,可增改删查和封禁审核系统用户信息。
  4. 部门信息管理:管理员可管理所有部门信息的添加、删除、更新等操作,提供搜索功能。
  5. 职位信息管理:管理员可管理所有职位信息,包括新增、编辑、删除、查询职位信息。
  6. 年月信息管理:管理员可管理所有年月信息的添加、删除、更新等操作,提供搜索功能。
  7. 考勤申请管理:管理员可管理所有考勤申请信息,包括添加、查询、删除、审核考勤申请,支持审核状态更新和审核回复编辑。
  8. 定点打卡管理:管理员可管理所有定点打卡信息,包括添加、查询、删除定点打卡,可限制打卡次数。
  9. 打卡记录管理:管理员可管理所有打卡记录信息,包括查询、删除、编辑打卡记录。
  10. 任务安排管理:管理员可管理所有任务安排的发布、删除、更新等操作,提供搜索功能,支持任务汇报操作,可限制汇报次数。
  11. 任务汇报管理:管理员可管理所有任务汇报信息,包括查询、删除、编辑任务汇报。
  12. 职工薪资管理:管理员可管理所有职工薪资信息的添加、删除、更新等操作,提供搜索功能。
  13. 人事办理管理:管理员可管理所有人事办理信息,包括添加、查询、删除、审核人事办理,支持审核状态更新和审核回复编辑。
  14. 财务信息管理:管理员可管理所有财务信息,包括添加、查询、删除、审核财务信息,支持审核状态更新和审核回复编辑。
  15. 绩效信息管理:管理员可管理所有绩效信息的添加、删除、更新等操作,提供搜索功能,支持考核评估编辑。
  16. 项目信息管理:管理员可管理所有项目信息的添加、删除、更新等操作,提供搜索功能,了解职工用户更新的项目进度情况。
  17. 消息提醒管理:管理员可管理所有消息提醒信息的添加、删除、更新等操作,提供搜索功能。
  18. 系统管理:管理员可管理系统的轮播图信息,包括新增、编辑、删除轮播图。
  19. 公告信息管理:管理员可管理平台发布的公告信息信息,包括新增、编辑、删除公告信息。
  20. 资源管理:管理员可管理企业资讯和资讯分类的新增、编辑、删除等操作,提供搜索功能,支持对企业资讯的评论管控和查看。

3.3系统性能分析

对于Spring Boot高效企业事务管理平台的设计与实现,下面是系统性能分析表:

表3.1性能需求表

项目

内容

响应时间

系统对用户请求的响应时间需在500ms以内

并发用户数

系统需要支持1000个并发用户同时访问

吞吐量

系统每秒需要处理1000个请求

可用性

系统需要保证每月99.9%的可用性

数据安全

用户敏感数据需要加密存储,并支持数据库备份和恢复

数据一致性

系统中的数据操作需保证ACID特性,确保数据一致性

扩展性

系统需要支持水平扩展,能够方便地增加服务器节点以应对高请求量

可维护性

系统代码需要清晰易懂、结构良好,方便团队成员维护和修改

日志记录

系统需要记录用户操作日志、异常日志以及系统运行日志

监控报警

系统需要实时监控运行状态,当系统异常时能够及时发送警报通知相关人员

缓存设置

针对频繁使用的数据,系统需要进行合适的缓

3.4系统流程分析

3.4.1程序操作流程

用户访问平台网站,可以选择进行注册或登录操作。注册成功后,用户可以使用注册的账号登录平台。登录后的用户可以进入系统功能界面,使用自己权限内的功能操作。程序操作流程图如下图所示。

图3.3程序操作流程图

3.4.2登录流程

用户访问平台的网站,进入登录页面页面,入其用户名和密码,后端服务接收登录请求,验证用户提供的用户名和密码是否匹配数据库中存储的信息,验证通过即可登录成功。登录流程图如下图所示。

图3.4登录流程图

3.4.3注册流程

未有账号的用户可进入注册界面进行注册操作,填写注册表格,包括用户名、密码、电子邮件等必要信息。后台系统验证并保存用户提交的信息。分配唯一用户标识符。注册成功后,用户可以使用账号密码进行登录。用户注册流程图如下图所示。

图3.5注册流程图

4  系统设计

4.1总体设计

4.1.1系统架构设计

目前B/S体系的系统主要的数据访问方式是:通过浏览器页面用户可以进入系统,系统可以自动对用户向服务器发送的请求进行处理,处理请求是在系统后台中进行的,用户在浏览器页面上进行相应操作,就能够看到服务端传递的处理结果。高效企业事务管理平台主要分为视图-模型-控制三层架构设计。在视图层中,主要是操作在服务器端向客户端反馈并显示的数据,在模型层中,主要处理相关的业务逻辑、数据整合等,最后的控制层它介于视图和模型之间,主要是调整两层之间的关系,最终落实数据的传递。B/S架构的优势在于其跨平台性和易于维护性,开发者可以通过更新服务器端的代码来实现整个系统的升级和维护,而无需逐一更新客户端。

图4.1系统架构图

4.1.2功能模块设计

功能模块设计是系统开发过程中的重要阶段,它旨在将系统划分为不同的模块,每个模块负责完成特定的功能或任务。高效企业事务管理平台由多个功能模块组成,每个模块下又包含具体的功能操作。功能模块图如下图所示。

图4.2系统功能模块图

4.2数据库设计

4.2.1数据库E-R

E-R图有助于理清系统中的数据结构和关系,为后续的数据库表结构设计提供指导。在进行数据库设计之前,首先需要先绘制实体-关系(E-R)图。E-R图将帮助我们理清业务中的实体(Entity)及它们之间的关系(Relationship),从而为后续的数据库表设计提供基础。根据前文可以得出本高效企业事务管理平台拥有多个实体,在此列举主要实体,各个实体之间联系总E-R图如下图所示。

图4.3系统总E-R图

4.2.1数据库表结构设计

在E-R图确定后,接下来可以根据实体和关系的属性设计数据库表结构。在E-R图明确了实体和它们之间的关系后,接下来可以开始设计数据库表结构。每个实体对应一个数据库表,每个属性对应表中的字段。如下列表格所示,在此列举主要数据表。

表access_token (登陆访问时长)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

token_id

int

10

0

N

Y

临时访问牌ID

2

token

varchar

64

0

Y

N

临时访问牌

3

info

text

65535

0

Y

N

4

maxage

int

10

0

N

N

2

最大寿命:默认2小时

5

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

创建时间:

6

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间:

7

user_id

int

10

0

N

N

0

用户编号:

表article (文章:用于内容管理系统的文章)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

article_id

mediumint

8

0

N

Y

文章id:[0,8388607]

2

title

varchar

125

0

N

Y

标题:[0,125]用于文章和html的title标签中

3

type

varchar

64

0

N

N

0

文章分类:[0,1000]用来搜索指定类型的文章

4

hits

int

10

0

N

N

0

点击数:[0,1000000000]访问这篇文章的人次

5

praise_len

int

10

0

N

N

0

点赞数

6

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

创建时间:

7

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间:

8

source

varchar

255

0

Y

N

来源:[0,255]文章的出处

9

url

varchar

255

0

Y

N

来源地址:[0,255]用于跳转到发布该文章的网站

10

tag

varchar

255

0

Y

N

标签:[0,255]用于标注文章所属相关内容,多个标签用空格隔开

11

content

longtext

2147483647

0

Y

N

正文:文章的主体内容

12

img

varchar

255

0

Y

N

封面图

13

description

text

65535

0

Y

N

文章描述

表article_type (文章分类)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

type_id

smallint

5

0

N

Y

分类ID:[0,10000]

2

display

smallint

5

0

N

N

100

显示顺序:[0,1000]决定分类显示的先后顺序

3

name

varchar

16

0

N

N

分类名称:[2,16]

4

father_id

smallint

5

0

N

N

0

上级分类ID:[0,32767]

5

description

varchar

255

0

Y

N

描述:[0,255]描述该分类的作用

6

icon

text

65535

0

Y

N

分类图标:

7

url

varchar

255

0

Y

N

外链地址:[0,255]如果该分类是跳转到其他网站的情况下,就在该URL上设置

8

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

创建时间:

9

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间:

表attendance_application (考勤申请)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

attendance_application_id

int

10

0

N

Y

考勤申请ID

2

employee_users

int

10

0

Y

N

0

职工用户

3

employee_name

varchar

64

0

Y

N

职工姓名

4

employee_id

varchar

64

0

Y

N

职工工号

5

department_name

varchar

64

0

Y

N

部门名称

6

employee_positions

varchar

64

0

Y

N

职工职位

7

attendance_type

varchar

64

0

Y

N

考勤类型

8

start_time

datetime

19

0

Y

N

开始时间

9

end_time

datetime

19

0

Y

N

结束时间

10

information_remarks

text

65535

0

Y

N

信息备注

11

examine_state

varchar

16

0

N

N

未审核

审核状态

12

examine_reply

varchar

16

0

Y

N

审核回复

13

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

14

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表auth (用户权限管理)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

auth_id

int

10

0

N

Y

授权ID:

2

user_group

varchar

64

0

Y

N

用户组:

3

mod_name

varchar

64

0

Y

N

模块名:

4

table_name

varchar

64

0

Y

N

表名:

5

page_title

varchar

255

0

Y

N

页面标题:

6

path

varchar

255

0

Y

N

路由路径:

7

parent

varchar

64

0

Y

N

父级菜单

8

parent_sort

int

10

0

N

N

0

父级菜单排序

9

position

varchar

32

0

Y

N

位置:

10

mode

varchar

32

0

N

N

_blank

跳转方式:

11

add

tinyint

3

0

N

N

1

是否可增加:

12

del

tinyint

3

0

N

N

1

是否可删除:

13

set

tinyint

3

0

N

N

1

是否可修改:

14

get

tinyint

3

0

N

N

1

是否可查看:

15

field_add

text

65535

0

Y

N

添加字段:

16

field_set

text

65535

0

Y

N

修改字段:

17

field_get

text

65535

0

Y

N

查询字段:

18

table_nav_name

varchar

500

0

Y

N

跨表导航名称:

19

table_nav

varchar

500

0

Y

N

跨表导航:

20

option

text

65535

0

Y

N

配置:

21

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

创建时间:

22

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间:

表check_in_record (打卡记录)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

check_in_record_id

int

10

0

N

Y

打卡记录ID

2

employee_users

int

10

0

Y

N

0

职工用户

3

employee_name

varchar

64

0

Y

N

职工姓名

4

employee_id

varchar

64

0

Y

N

职工工号

5

department_name

varchar

64

0

Y

N

部门名称

6

employee_positions

varchar

64

0

Y

N

职工职位

7

check_in_number

varchar

64

0

Y

N

打卡编号

8

check_in_location

varchar

64

0

Y

N

打卡地点

9

attendance_date

date

10

0

Y

N

考勤日期

10

check_in_type

varchar

64

0

Y

N

打卡类型

11

check_in_time

datetime

19

0

Y

N

打卡时间

12

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

13

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

14

source_table

varchar

255

0

Y

N

来源表

15

source_id

int

10

0

Y

N

来源ID

16

source_user_id

int

10

0

Y

N

来源用户

表code_token

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

code_token_id

int

10

0

N

Y

2

token

varchar

255

0

Y

N

3

code

varchar

255

0

Y

N

验证码

4

expire_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

失效时间

5

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

创建时间

6

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间:

表collect (收藏)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

collect_id

int

10

0

N

Y

收藏ID:

2

user_id

int

10

0

N

N

0

收藏人ID:

3

source_table

varchar

255

0

Y

N

来源表:

4

source_field

varchar

255

0

Y

N

来源字段:

5

source_id

int

10

0

N

N

0

来源ID:

6

title

varchar

255

0

Y

N

标题:

7

img

varchar

255

0

Y

N

封面:

8

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

创建时间:

9

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间:

表comment (评论)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

comment_id

int

10

0

N

Y

评论ID:

2

user_id

int

10

0

N

N

0

评论人ID:

3

reply_to_id

int

10

0

N

N

0

回复评论ID:空为0

4

content

longtext

2147483647

0

Y

N

内容:

5

nickname

varchar

255

0

Y

N

昵称:

6

avatar

varchar

255

0

Y

N

头像地址:[0,255]

7

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

创建时间:

8

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间:

9

source_table

varchar

255

0

Y

N

来源表:

10

source_field

varchar

255

0

Y

N

来源字段:

11

source_id

int

10

0

N

N

0

来源ID:

表department_information (部门信息)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

department_information_id

int

10

0

N

Y

部门信息ID

2

department_name

varchar

64

0

Y

N

部门名称

3

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

4

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表employee_salary (职工薪资)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

employee_salary_id

int

10

0

N

Y

职工薪资ID

2

employee_users

int

10

0

Y

N

0

职工用户

3

employee_id

varchar

64

0

Y

N

职工工号

4

employee_name

varchar

64

0

Y

N

职工姓名

5

department_name

varchar

64

0

Y

N

部门名称

6

employee_positions

varchar

64

0

Y

N

职工职位

7

year_and_month_of_issuance

varchar

64

0

Y

N

发放年月

8

base_pay

double

9

2

Y

N

0.00

基本工资

9

achievement_bonus

double

9

2

Y

N

0.00

绩效奖金

10

other_supplementary_payments

double

9

2

Y

N

0.00

其他补款

11

social_security_payment_agency

double

9

2

Y

N

0.00

社保代缴

12

attendance_deduction

double

9

2

Y

N

0.00

考勤扣款

13

personal_income_tax_withholding

double

9

2

Y

N

0.00

个税代扣

14

net_salary

varchar

64

0

Y

N

实发工资

15

salary_remarks

text

65535

0

Y

N

工资备注

16

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

17

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表employee_users (职工用户)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

employee_users_id

int

10

0

N

Y

职工用户ID

2

employee_name

varchar

64

0

Y

N

职工姓名

3

employee_id

varchar

64

0

N

N

职工工号

4

employee_gender

varchar

64

0

Y

N

职工性别

5

phone_number

varchar

16

0

Y

N

手机号码

6

department_name

varchar

64

0

Y

N

部门名称

7

employee_positions

varchar

64

0

Y

N

职工职位

8

employee_age

double

9

2

Y

N

0.00

职工年龄

9

date_of_employment

date

10

0

Y

N

入职日期

10

examine_state

varchar

16

0

N

N

未审核

审核状态

11

user_id

int

10

0

N

N

0

用户ID

12

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

13

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表financial_information (财务信息)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

financial_information_id

int

10

0

N

Y

财务信息ID

2

employee_users

int

10

0

Y

N

0

职工用户

3

employee_name

varchar

64

0

Y

N

职工姓名

4

employee_id

varchar

64

0

Y

N

职工工号

5

department_name

varchar

64

0

Y

N

部门名称

6

employee_positions

varchar

64

0

Y

N

职工职位

7

application_matters

varchar

64

0

Y

N

申办事项

8

submission_time

datetime

19

0

Y

N

提交时间

9

application_instructions

text

65535

0

Y

N

申办说明

10

examine_state

varchar

16

0

N

N

未审核

审核状态

11

examine_reply

varchar

16

0

Y

N

审核回复

12

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

13

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表fixed_point_clock_in (定点打卡)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

fixed_point_clock_in_id

int

10

0

N

Y

定点打卡ID

2

check_in_number

varchar

64

0

Y

N

打卡编号

3

check_in_location

varchar

64

0

Y

N

打卡地点

4

check_in_type

varchar

64

0

Y

N

打卡类型

5

attendance_date

date

10

0

Y

N

考勤日期

6

start_clocking_in

datetime

19

0

Y

N

开始打卡

7

deadline_for_clock_in

datetime

19

0

Y

N

截止打卡

8

check_in_record_limit_times

int

10

0

N

N

1

打卡限制次数

9

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

10

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表hits (用户点击)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

hits_id

int

10

0

N

Y

点赞ID:

2

user_id

int

10

0

N

N

0

点赞人:

3

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

创建时间:

4

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间:

5

source_table

varchar

255

0

Y

N

来源表:

6

source_field

varchar

255

0

Y

N

来源字段:

7

source_id

int

10

0

N

N

0

来源ID:

表job_information (职位信息)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

job_information_id

int

10

0

N

Y

职位信息ID

2

job_title

varchar

64

0

Y

N

职位名称

3

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

4

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表message_reminder (消息提醒)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

message_reminder_id

int

10

0

N

Y

消息提醒ID

2

employee_users

int

10

0

Y

N

0

职工用户

3

employee_name

varchar

64

0

Y

N

职工姓名

4

employee_id

varchar

64

0

Y

N

职工工号

5

reminder_topic

varchar

64

0

Y

N

提醒主题

6

reminder_time

datetime

19

0

Y

N

提醒时间

7

content_details

text

65535

0

Y

N

内容详情

8

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

9

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表notice (公告)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

notice_id

mediumint

8

0

N

Y

公告id:

2

title

varchar

125

0

N

N

标题:

3

content

longtext

2147483647

0

Y

N

正文:

4

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

创建时间:

5

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间:

表performance_information (绩效信息)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

performance_information_id

int

10

0

N

Y

绩效信息ID

2

employee_users

int

10

0

Y

N

0

职工用户

3

employee_name

varchar

64

0

Y

N

职工姓名

4

employee_id

varchar

64

0

Y

N

职工工号

5

department_name

varchar

64

0

Y

N

部门名称

6

employee_positions

varchar

64

0

Y

N

职工职位

7

assessment_month

varchar

64

0

Y

N

考核月份

8

job_content

text

65535

0

Y

N

工作内容

9

submission_time

datetime

19

0

Y

N

提交时间

10

assessment_and_evaluation

text

65535

0

Y

N

考核评估

11

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

12

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表personnel_handling (人事办理)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

personnel_handling_id

int

10

0

N

Y

人事办理ID

2

employee_users

int

10

0

Y

N

0

职工用户

3

employee_name

varchar

64

0

Y

N

职工姓名

4

employee_id

varchar

64

0

Y

N

职工工号

5

department_name

varchar

64

0

Y

N

部门名称

6

employee_positions

varchar

64

0

Y

N

职工职位

7

application_matters

varchar

64

0

Y

N

申办事项

8

submission_time

datetime

19

0

Y

N

提交时间

9

application_instructions

text

65535

0

Y

N

申办说明

10

examine_state

varchar

16

0

N

N

未审核

审核状态

11

examine_reply

varchar

16

0

Y

N

审核回复

12

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

13

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表praise (点赞)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

praise_id

int

10

0

N

Y

点赞ID:

2

user_id

int

10

0

N

N

0

点赞人:

3

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

创建时间:

4

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间:

5

source_table

varchar

255

0

Y

N

来源表:

6

source_field

varchar

255

0

Y

N

来源字段:

7

source_id

int

10

0

N

N

0

来源ID:

8

status

bit

1

0

N

N

1

点赞状态:1为点赞,0已取消

表project_information (项目信息)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

project_information_id

int

10

0

N

Y

项目信息ID

2

employee_users

int

10

0

Y

N

0

职工用户

3

employee_name

varchar

64

0

Y

N

职工姓名

4

employee_id

varchar

64

0

Y

N

职工工号

5

department_name

varchar

64

0

Y

N

部门名称

6

employee_positions

varchar

64

0

Y

N

职工职位

7

start_time

datetime

19

0

Y

N

启动时间

8

task_node

varchar

64

0

Y

N

任务节点

9

requirement_to_complete

date

10

0

Y

N

要求完成

10

project_progress

text

65535

0

Y

N

项目进度

11

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

12

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表score (评分)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

score_id

int

10

0

N

Y

评分ID:

2

user_id

int

10

0

N

N

0

评分人:

3

nickname

varchar

64

0

Y

N

昵称:

4

score_num

double

5

2

N

N

0.00

评分:

5

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

创建时间:

6

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间:

7

source_table

varchar

255

0

Y

N

来源表:

8

source_field

varchar

255

0

Y

N

来源字段:

9

source_id

int

10

0

N

N

0

来源ID:

表slides (轮播图)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

slides_id

int

10

0

N

Y

轮播图ID:

2

title

varchar

64

0

Y

N

标题:

3

content

varchar

255

0

Y

N

内容:

4

url

varchar

255

0

Y

N

链接:

5

img

varchar

255

0

Y

N

轮播图:

6

hits

int

10

0

N

N

0

点击量:

7

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

创建时间:

8

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间:

表task_arrangement (任务安排)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

task_arrangement_id

int

10

0

N

Y

任务安排ID

2

employee_users

int

10

0

Y

N

0

职工用户

3

employee_name

varchar

64

0

Y

N

职工姓名

4

employee_id

varchar

64

0

Y

N

职工工号

5

department_name

varchar

64

0

Y

N

部门名称

6

employee_positions

varchar

64

0

Y

N

职工职位

7

release_time

datetime

19

0

Y

N

下达时间

8

task_name

varchar

64

0

Y

N

任务名称

9

requirement_to_complete

date

10

0

Y

N

要求完成

10

task_requirements

text

65535

0

Y

N

任务要求

11

task_report_limit_times

int

10

0

N

N

1

任务汇报限制次数

12

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

13

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表task_report (任务汇报)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

task_report_id

int

10

0

N

Y

任务汇报ID

2

employee_users

int

10

0

Y

N

0

职工用户

3

employee_name

varchar

64

0

Y

N

职工姓名

4

employee_id

varchar

64

0

Y

N

职工工号

5

department_name

varchar

64

0

Y

N

部门名称

6

employee_positions

varchar

64

0

Y

N

职工职位

7

task_name

varchar

64

0

Y

N

任务名称

8

requirement_to_complete

date

10

0

Y

N

要求完成

9

actual_completion

date

10

0

Y

N

实际完成

10

completion_status

text

65535

0

Y

N

完成情况

11

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

12

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

13

source_table

varchar

255

0

Y

N

来源表

14

source_id

int

10

0

Y

N

来源ID

15

source_user_id

int

10

0

Y

N

来源用户

表upload (文件上传)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

upload_id

int

10

0

N

Y

上传ID

2

name

varchar

64

0

Y

N

文件名

3

path

varchar

255

0

Y

N

访问路径

4

file

varchar

255

0

Y

N

文件路径

5

display

varchar

255

0

Y

N

显示顺序

6

father_id

int

10

0

Y

N

0

父级ID

7

dir

varchar

255

0

Y

N

文件夹

8

type

varchar

32

0

Y

N

文件类型

表user (用户账户:用于保存用户登录信息)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

user_id

int

10

0

N

Y

用户ID:[0,8388607]用户获取其他与用户相关的数据

2

state

smallint

5

0

N

N

1

账户状态:[0,10](1可用|2异常|3已冻结|4已注销)

3

user_group

varchar

32

0

Y

N

所在用户组:[0,32767]决定用户身份和权限

4

login_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

上次登录时间:

5

phone

varchar

11

0

Y

N

手机号码:[0,11]用户的手机号码,用于找回密码时或登录时

6

phone_state

smallint

5

0

N

N

0

手机认证:[0,1](0未认证|1审核中|2已认证)

7

username

varchar

16

0

N

N

用户名:[0,16]用户登录时所用的账户名称

8

nickname

varchar

16

0

Y

N

昵称:[0,16]

9

password

varchar

64

0

N

N

密码:[0,32]用户登录所需的密码,由6-16位数字或英文组成

10

email

varchar

64

0

Y

N

邮箱:[0,64]用户的邮箱,用于找回密码时或登录时

11

email_state

smallint

5

0

N

N

0

邮箱认证:[0,1](0未认证|1审核中|2已认证)

12

avatar

varchar

255

0

Y

N

头像地址:[0,255]

13

open_id

varchar

255

0

Y

N

针对获取用户信息字段

14

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

创建时间:

表user_group (用户组:用于用户前端身份和鉴权)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

group_id

mediumint

8

0

N

Y

用户组ID:[0,8388607]

2

display

smallint

5

0

N

N

100

显示顺序:[0,1000]

3

name

varchar

16

0

N

N

名称:[0,16]

4

description

varchar

255

0

Y

N

描述:[0,255]描述该用户组的特点或权限范围

5

source_table

varchar

255

0

Y

N

来源表:

6

source_field

varchar

255

0

Y

N

来源字段:

7

source_id

int

10

0

N

N

0

来源ID:

8

register

smallint

5

0

Y

N

0

注册位置:

9

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

创建时间:

10

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间:

表year_and_month_information (年月信息)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

year_and_month_information_id

int

10

0

N

Y

年月信息ID

2

year_and_month_name

varchar

64

0

Y

N

年月名称

3

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

4

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

5  系统实现

5.1系统环境分析

考虑到高效企业事务管理平台主要面对部分人群,网站的访问量不大。系统处理、统计分析工作简单,Tomcat服务器能够满足中小型网络用户的数据处理,通过互联网Internet 接入及MySQL 5.6以上的数据库应用的需求点。系统具体开发环境如下表所示:

表5.1系统环境表

项目

开发环境

操作系统

Windows 11、Windows 10、Windows 8、Windows 7

开发语言

Java

使用框架

Spring Boot、小程序

体系结构

三层B/S体系结构

开发工具

IDEA(2020版)/MyEclipse(2017)/Eclipse、Vs Code/微信开发者工具

数据库

MySQL 5.6以上

数据库管理工具

Navicat

JDK版本

Java 1.8

Maven

apache-maven 3.6.1-bin

Tomcat

apache-tomcat-7.0.88

移动端

iOS、Android、Web(响应式)、以及各种小程序

5.2系统前台模块

5.2.1用户登录界面

用户输入用户名和密码后并进行人脸认证,系统首先对这些输入进行基本的格式验证,确保用户名和密码符合系统设定的格式要求(如长度、特殊字符要求等)。系统接收到用户输入后,会根据用户名查找系统中存储的用户信息数据库或者其他持久化存储方式。系统需要验证密码的正确性,验证成功即可成功登录。

图5.1用户登录界面设计

登录关键代码如下:

 /**

     * 登录

     * @param data

     * @param httpServletRequest

     * @return

     */

    @PostMapping("login")

    public Map<String, Object> login(@RequestBody Map<String, String> data, HttpServletRequest httpServletRequest) {

        log.info("[执行登录接口]");

        String username = data.get("username");

        String email = data.get("email");

        String phone = data.get("phone");

        String password = data.get("password");

        List resultList = null;

        Map<String, String> map = new HashMap<>();

        if(username != null && "".equals(username) == false){

            map.put("username", username);

            resultList = service.selectBaseList(service.select(map, new HashMap<>()));

        }

        else if(email != null && "".equals(email) == false){

            map.put("email", email);

            resultList = service.selectBaseList(service.select(map, new HashMap<>()));

        }

        else if(phone != null && "".equals(phone) == false){

            map.put("phone", phone);

            resultList = service.selectBaseList(service.select(map, new HashMap<>()));

        }else{

            return error(30000, "账号或密码不能为空");

        }

        if (resultList == null || password == null) {

            return error(30000, "账号或密码不能为空");

        }

        //判断是否有这个用户

        if (resultList.size()<=0){

            return error(30000,"用户不存在");

        }

        User byUsername = (User) resultList.get(0);

        Map<String, String> groupMap = new HashMap<>();

        groupMap.put("name",byUsername.getUserGroup());

        List groupList = userGroupService.selectBaseList(userGroupService.select(groupMap, new HashMap<>()));

        if (groupList.size()<1){

            return error(30000,"用户组不存在");

        }

        UserGroup userGroup = (UserGroup) groupList.get(0);

        //查询用户审核状态

        if (!StringUtils.isEmpty(userGroup.getSourceTable())){

            String res = service.selectExamineState(userGroup.getSourceTable(),byUsername.getUserId());

            if (res==null){

                return error(30000,"用户不存在");

            }

            if (!res.equals("已通过")){

                return error(30000,"该用户审核未通过");

            }

        }

        //查询用户状态

        if (byUsername.getState()!=1){

            return error(30000,"用户非可用状态,不能登录");

        }

        String md5password = service.encryption(password);

        if (byUsername.getPassword().equals(md5password)) {

            // 存储Token到数据库

            AccessToken accessToken = new AccessToken();

            accessToken.setToken(UUID.randomUUID().toString().replaceAll("-", ""));

            accessToken.setUser_id(byUsername.getUserId());

            Duration duration = Duration.ofSeconds(7200L);

            redisTemplate.opsForValue().set(accessToken.getToken(), accessToken,duration);

            // 返回用户信息

            JSONObject user = JSONObject.parseObject(JSONObject.toJSONString(byUsername));

            user.put("token", accessToken.getToken());

            JSONObject ret = new JSONObject();

            ret.put("obj",user);

            return success(ret);

        } else {

            return error(30000, "账号或密码不正确");

        }

    }

5.2.2用户注册界面

用户注册时,系统要求用户提供必要的信息,例如用户名、密码、电子邮件地址等。这些信息通常由用户在注册表单中输入,并通过前端验证确保格式的正确性。注册过程完成后,系统会为新用户创建一个账户。这包括分配一个唯一的用户ID和设置初始的权限或者角色。

图5.2用户注册界面设计

注册关键代码如下:

       /**

     * 注册

     * @param user

     * @return

     */

    @PostMapping("register")

    public Map<String, Object> signUp(@RequestBody User user) {

        // 查询用户

        Map<String, String> query = new HashMap<>();

        Map<String,Object> map = JSON.parseObject(JSON.toJSONString(user));

        query.put("username",user.getUsername());

        List list = service.selectBaseList(service.select(query, new HashMap<>()));

        if (list.size()>0){

            return error(30000, "用户已存在");

        }

        map.put("password",service.encryption(String.valueOf(map.get("password"))));

        service.insert(map);

        return success(1);

}     

5.2.3首页界面

用户登录系统后首先进入首页界面,可查看轮播图、公告信息、企业资讯等系统概览和推荐信息,并提供考勤申请、定点打卡等系统功能入口子菜单。

例如,职工用户前台首页主界面图如下所示。

图5.3首页主界面设计

当用户点击首页的“考勤申请”这一菜单时,可输入考勤申请信息内容并提交,提交的申请可在“我的”模块中进行管理,申请由管理员在后台审核。

例如,前台首页考勤申请界面图如下所示。

图5.4首页考勤申请界面设计

当用户点击首页的“定点打卡”这一菜单时,可搜索和浏览发布的定点打卡信息,进行详情页可查看详细内容,并进行打卡。

例如,前台首页定点打卡界面图如下所示。

图5.5定点打卡详情页界面设计

5.2.4我的界面

职工用户在前台点击“我的”可以对用户的基本信息、收藏、考勤申请、打卡记录、任务安排、任务汇报、职工薪资、人事办理、财务信息、绩效信息、项目信息、消息提醒等信息进行管理。

例如,职工用户我的主界面图如下所示。

图5.6我的主界面设计

可在“基本信息”中修改资料和密码;可在“收藏”中查看管控自己收藏的各类系统信息;可提交考勤申请,确认审核状态;可管理打卡记录;可查阅任务安排信息,进行任务汇报提交;可查询和浏览职工薪资信息;可添加人事办理和财务信息等申办信息,确认其审核状态;可提交绩效信息,确认评估情况;可查阅项目信息,更新项目进度;可查看消息提醒等信息。

例如,职工用户我的任务安排界面图如下所示。

图5.7我的任务安排界面设计

5.3后台管理模块

5.3.1后台首页界面

管理员登录系统后首先进入后台首页界面,该界面主要提供系统重要信息概览、及数据分析统计图表,包括职工薪资统计图表。。界面设计如下图所示。

图5.8后台首页界面设计

5.3.2系统用户界面

管理员登录系统后首先进入后台首页界面,该界面主要提供系统重要信息概览、及数据分析统计图表,包括职工薪资统计图表。。界面设计如下图所示。

图5.9系统用户界面设计

5.3.3考勤申请管理界面

管理员可管理所有考勤申请信息,包括添加、查询、删除、审核考勤申请,点击详情可进入详情页浏览,支持审核状态更新和审核回复编辑。

考勤申请管理界面设计如下图所示。

图5.10考勤申请管理界面设计

如需审核职工用户提交的考勤申请信息,点击“审核”操作按钮,编辑更新审核信息并提交即可。

审核考勤申请界面设计如下图所示。

图5.11审核考勤申请界面设计

审核考勤申请关键代码:

      @PostMapping("/set")

@Transactional

    public Map<String, Object> set(HttpServletRequest request) throws IOException {

        service.update(service.readQuery(request), service.readConfig(request), service.readBody(request.getReader()));

        return success(1);

    }

5.3.4定点打卡管理界面

管理员可管理所有定点打卡信息,包括添加、查询、删除定点打卡,可限制打卡次数,点击“详情”可进入详情页,浏览详细内容。

定点打卡管理界面设计如下图所示。

图5.12定点打卡管理界面设计

如需添加新的定点打卡信息,点击“定点打卡添加”,输入正确的定点打卡信息并提交,即可成功发布定点打卡信息至平台。添加定点打卡界面设计如下图所示。

图5.13添加定点打卡信息界面设计

添加定点打卡信息关键代码:

@PostMapping("/add")

    @Transactional

    public Map<String, Object> add(HttpServletRequest request) throws IOException {

        service.insert(service.readBody(request.getReader()));

        return success(1);

    }

public Map<String, Object> addMap(Map<String,Object> map){

    service.insert(map);

     return success(1);

 }

5.3.5系统管理界面

当管理员点击“系统管理”这一菜单时,可进行系统首页轮播图的设置和修改,可点击添加,上传新的图片并入可附带图片链接。界面设计如下图所示。

图5.14系统管理界面设计

上传图片关键代码如下:

      @PostMapping("/upload")

    public Map<String, Object> upload(@RequestParam("file") MultipartFile file) {

        log.info("进入方法");

        if (file.isEmpty()) {

            return error(30000, "没有选择文件");

        }

        try {

            //判断有没路径,没有则创建

            String filePath = System.getProperty("user.dir") + "/src/main/resources/static/";

            File targetDir = new File(filePath);

            if (!targetDir.exists() && !targetDir.isDirectory()) {

                if (targetDir.mkdirs()) {

                    log.info("创建目录成功");

                } else {

                    log.error("创建目录失败");

                }

            }

            String fileName = file.getOriginalFilename();

            File dest = new File(filePath + fileName);

            log.info("文件路径:{}", dest.getPath());

            log.info("文件名:{}", dest.getName());

            file.transferTo(dest);

            JSONObject jsonObject = new JSONObject();

            jsonObject.put("url", "/api/upload/" + fileName);

            return success(jsonObject);

        } catch (IOException e) {

            log.info("上传失败:{}", e.getMessage());

        }

        return error(30000, "上传失败");

    }

5.3.6资源管理界面

管理员可管理企业资讯和资讯分类的新增、编辑、删除等操作,提供搜索功能,支持对企业资讯的评论管控和查看。界面设计如下图所示。

图5.15资源管理界面设计

6  系统测试

6.1测试目的

在软件开发生命周期中,系统测试占据着举足轻重的地位。通过进行全面而系统的测试,我们能够确保软件在实际使用环境中具备稳定运行的能力,从而满足用户的多样化需求,并显著提升软件的整体质量与可靠性。这一过程不仅有助于识别并修复潜在问题,还能为软件的持续优化提供有力支撑。

随着现代信息的快速发展,在社会各大领域中已经都开始应用网络信息技术,在应用网络技术的同时人们也开始把软件的质量问题作为了一个重要焦点来关注,因为一个软件的好与坏它决定着这个系统在市场上的生存,所以我们必须要把软件质量来做好,这样才有一定的生存能力。对于用户来说它们首先选用的都是保证这个系统软件的质量问题,因为一个系统的软件质量决定着用户在后期上成本经济的问题。图6-1就是纠错测试流程。

图6.1测试与纠错信息流程

6.2测试用例

在系统的功能验证阶段,我们将对全部的功能界面进行全面测试。具体而言,我们将模拟用户行为,输入各类数据并进行提交操作,随后仔细观察和分析每个页面的响应反馈。这一过程旨在验证系统的功能完整性,确保页面所呈现的功能与预期相符,并能够完全实现预设的交互逻辑。通过这种全面细致的测试方法,我们将确保系统在实际应用中能够稳定、准确地响应用户需求。

下表是系统登录功能测试用例,检测了用户名和密码的不同的输入情况,观察系统的响应情况。得出该功能达到了设计目标。

表6.1系统登录功能测试用例

功能描述

用于系统登录

测试目的

检测登录时的合法性检查

测试数据以及操作

预期结果

实际结果

输入的用户名和密码带有非法字符

提示用户名或者密码错误

与预期结果一致

输入的用户名或者密码为空

提示用户名或者密码错误

与预期结果一致

输入的用户名和密码不存在

提示用户名或者密码错误

与预期结果一致

输入正确的用户名和密码

登录成功

与预期结果一致

下表是注册功能测试用例,检测了各种数据的输入情况,观察系统的响应情况。得出该功能达到了设计目标。

表6.2注册功能测试用例

功能描述

用于用户注册

测试目的

检测用户注册时的合法性检查

测试数据以及操作

预期结果

实际结果

输入的手机号不合法

提示请输入正确的手机号码

与预期结果一致

输入的字段为空

提示必填项不能为空

与预期结果一致

输入的密码少于6位

提示密码必须为6-12位

与预期结果一致

输入的密码大于12位

提示密码必须为6-12位

与预期结果一致

下表是考勤申请管理功能的测试用例,检测了考勤申请中对考勤申请的增加,删除,修改,查询操作是否成功运行。观察系统的响应情况,得出该功能也达到了设计目标,系统运行正确。

前置条件;管理员登录系统。

表6.3考勤申请管理的测试用例

功能描述

用于考勤申请

测试目的

检测考勤申请时的各种操作的运行情况

测试数据以及操作

预期结果

实际结果

点击添加考勤申请,必填项合法输入,点击保存

提示添加成功

与预期结果一致

点击添加考勤申请,必填项输入不合法,点击保存

提示必填项不能为空

与预期结果一致

点击修改考勤申请,必填项修改为空,点击保存

提示必填项不能为空

与预期结果一致

点击修改考勤申请,必填项输入不合法,点击保存

提示必填项不能为空

与预期结果一致

点击删除考勤申请,选择考勤申请删除

提示删除成功

与预期结果一致

点击搜索考勤申请,输入存在的考勤申请名

查找出相应考勤申请信息

与预期结果一致

点击搜索考勤申请,输入不存在的考勤申请名

不显示考勤申请信息

与预期结果一致

下表是定点打卡管理功能的测试用例,检测了定点打卡中对定点打卡的增加,删除,审核,查询操作是否成功运行。观察系统的响应情况,得出该功能也达到了设计目标,系统运行正确。

前置条件;管理员登录系统。

表6.4定点打卡管理的测试用例

功能描述

用于定点打卡

测试目的

检测定点打卡时的各种操作的运行情况

测试数据以及操作

预期结果

实际结果

点击添加定点打卡,必填项合法输入,点击保存

提示添加成功

与预期结果一致

点击添加定点打卡,必填项输入不合法,点击保存

提示必填项不能为空

与预期结果一致

点击审核定点打卡,必填项修改为空,点击保存

提示必填项不能为空

与预期结果一致

点击审核定点打卡,必填项输入不合法,点击保存

提示必填项不能为空

与预期结果一致

点击删除定点打卡,选择定点打卡删除

提示删除成功

与预期结果一致

点击搜索定点打卡,输入存在的定点打卡名

查找出相应定点打卡信息

与预期结果一致

点击搜索定点打卡,输入不存在的定点打卡名

不显示定点打卡信息

与预期结果一致

下表是任务安排管理功能的测试用例,检测了任务安排中对任务安排的增加,删除,修改,查询操作是否成功运行。观察系统的响应情况,得出该功能也达到了设计目标,系统运行正确。

前置条件;管理员登录系统。

表6.5任务安排管理的测试用例

功能描述

用于任务安排

测试目的

检测任务安排时的各种操作的运行情况

测试数据以及操作

预期结果

实际结果

点击添加任务安排,必填项合法输入,点击保存

提示添加成功

与预期结果一致

点击添加任务安排,必填项输入不合法,点击保存

提示必填项不能为空

与预期结果一致

点击修改任务安排,必填项修改为空,点击保存

提示必填项不能为空

与预期结果一致

点击修改任务安排,必填项输入不合法,点击保存

提示必填项不能为空

与预期结果一致

点击删除任务安排,选择任务安排删除

提示删除成功

与预期结果一致

点击搜索任务安排,输入存在的任务安排名

查找出相应任务安排信息

与预期结果一致

点击搜索任务安排,输入不存在的任务安排名

不显示任务安排信息

与预期结果一致

下表是职工薪资管理功能的测试用例,检测了职工薪资中对职工薪资的增加,删除,修改,查询操作是否成功运行。观察系统的响应情况,得出该功能也达到了设计目标,系统运行正确。

前置条件;管理员登录系统。

表6.6职工薪资管理的测试用例

功能描述

用于职工薪资

测试目的

检测职工薪资时的各种操作的运行情况

测试数据以及操作

预期结果

实际结果

点击添加职工薪资,必填项合法输入,点击保存

提示添加成功

与预期结果一致

点击添加职工薪资,必填项输入不合法,点击保存

提示必填项不能为空

与预期结果一致

点击修改职工薪资,必填项修改为空,点击保存

提示必填项不能为空

与预期结果一致

点击修改职工薪资,必填项输入不合法,点击保存

提示必填项不能为空

与预期结果一致

点击删除职工薪资,选择职工薪资删除

提示删除成功

与预期结果一致

点击搜索职工薪资,输入存在的职工薪资名

查找出相应职工薪资信息

与预期结果一致

点击搜索职工薪资,输入不存在的职工薪资名

不显示职工薪资信息

与预期结果一致

6.3测试分析

本高效企业事务管理平台开发与设计满足相关信息的管理需求,在设计时借鉴了国内外优秀网站的优点,从界面到系统设计都保证了管理员以及用户能够方便操作。系统的主要特点和优点归纳如下:

(1)本系统用的移置性和针对性都比较高,因为针对性高可以提供更好的服务而移置性可以在多个系统上运行,更给客户带来了极大的方便。

(2)该高效企业事务管理平台开发与设计内容全面,管理方便可以及时的全面的处理各种错误,异常,这样避免了很多因用户的马虎操作而出现的失误,其操作方便,用户界面友好,能够上网的人都可以很好的进行操作。

经过对上述的测试结果分析,所有基本功能齐全,操作简单,系统运行性能良好,系统安全可靠,能促进高效企业事务管理平台的发展,发展前景广阔。

7  结束语

通过开发高效企业事务管理平台,深刻体会到软件开发的完整流程。首先,在确定开发目标后,进行了详细的需求分析,明确了系统所需的各项功能。接下来,设计了系统的功能框架和数据库结构,包括实体和数据表的设计。随后,实现了各个功能模块的详细界面,并进行了全面的功能测试。尽管在这个过程中遇到了各种挑战,但通过反复分析和深入思考,借助相关文献和解决方案,成功地解决了这些问题,最终使高效企业事务管理平台顺利运行。

虽然该系统在功能上基本满足了用户的需求,但仍有许多需要改进的地方。在接下来的开发阶段,我计划进行以下改进:

用户界面设计:目前的操作页面虽然满足了简易操作的要求,但在多样化设计方面还有提升空间。我将考虑引入更多丰富的设计元素,使界面更加美观和用户友好。

安全性能优化:针对系统安全性能的增强,需要进一步优化系统的整体防护能力。具体而言,将要对程序退出的安全性进行加强,确保在退出过程中不存在数据泄露或系统不稳定的风险。同时,对系统的并发处理能力进行升级,以确保在高并发场景下系统能够保持稳定的运行状态。这些改进措施将共同提升系统的安全性能,确保在各种使用场景下,系统都能为用户提供安全、可靠的服务。

性能优化:在性能优化方面,将着重于对程序的数据结构和代码逻辑进行精细化调整。通过优化,旨在确保系统能在高负载下保持稳定且高效的运行状态。优化后的系统应具备快速处理大量事务的能力,显著缩短事务处理时间,从而提高整体工作效率。同时,致力于降低服务器资源的占用率,以实现资源的高效利用和成本的有效控制。这些优化措施将共同提升系统的整体性能,为用户提供更加流畅、高效的服务体验。

通过这些改进,希望能够进一步提升高效企业事务管理平台的用户体验和性能,使其更加贴合实际需求。

参考文献

[1]方志文.基于Java微服务架构的ERP系统设计与实现[J].信息与电脑(理论版),2024,36(15):84-86.

[2]白昌盛.Java Web开发中前后端分离的性能分析[J].电子元器件与信息技术,2024,8(07):36-38.DOI:10.19772/j.cnki.2096-4455.2024.7.011.

[3]甘利英,张舒心.互联网时代背景下企业信息系统集成管理探究[J].中国管理信息化,2024,27(12):113-115.

[4]Jiajun L ,Zhaoying J ,Fen W .Construction of enterprise comprehensive management system based on information reconstruction and IoT[J].International Journal of System Assurance Engineering and Management,2024,15(7):2914-2930.

[5]陆晓岚.基于微信小程序的项目管理应用[J].中国新通信,2024,26(04):79-81.

[6]吴展腾.基于微信小程序的“社区云”社区事务管理平台[J].电脑编程技巧与维护,2023,(09):42-46.DOI:10.16184/j.cnki.comprg.2023.09.013.

[7]陈蓓蕾,洪年松.基于SpringBoot的数据库接口设计[J].信息与电脑(理论版),2023,35(16):181-183.

[8]Ma Z .Design of the Enterprise Information Management System Based on the Big Data Technology of the Internet of Things[J].Advances in Computer, Signals and Systems,2023,7(6):

[9]汪涛.基于SpringBoot和人脸识别的企业考勤管理系统设计与实现[D].阜阳师范大学,2023.DOI:10.27846/d.cnki.gfysf.2023.000144.

[10]张汉昌.基于MVVM模式的企业人事管理系统设计与实现[D].西南民族大学,2023.DOI:10.27417/d.cnki.gxnmc.2023.000318.

[11]刘汀.基于SpringBoot的微服务体系在企业信息管理系统中的应用[J].信息技术与信息化,2023,(05):23-26.

[12]庄惠雯.基于云计算的现代企业人力资源信息管理系统设计[J].信息记录材料,2023,24(04):143-145.DOI:10.16009/j.cnki.cn13-1295/tq.2023.04.030.

[13]陈世仙.企业信息管理系统项目实施及运维[J].大众标准化,2023,(03):165-167.

[14]张引,赵玉丽,张斌,等.微信小程序全栈开发技术与实战[M].人民邮电出版社:202212.258.

[15]贾保敏.基于微信小程序的高校人事办公服务平台设计与实现[J].软件,2022,43(07):34-38.

[16]尹杰.浅析企业信息管理系统安全策略研究[J].网络安全和信息化,2022,(04):113-115.

[17]张军.基于Java的企业人力资源管理系统的设计与实现[J].中国信息化,2022,(03):42-44.

[18]郗炯.行政事务管理工作创新方法探析[J].办公室业务,2021,(22):11-12.

[19]吴亮.中小企业人事管理系统设计[J].科学技术创新,2020,(31):73-74.

[20]李灿灿.企业内部管理系统的设计与实现[D].山东大学,2020.DOI:10.27272/d.cnki.gshdu.2020.003410.

致  谢

这次毕业设计能够完成,最重要的就是来自指导老师的帮助,老师不厌其烦的对我的论文及毕业设计提出非常有建设性的建议,我的毕设施能够完成离不开老师的帮助。我对老师由衷的表示感谢,

其次要感谢大学四年里学院里所有的任课老师的教导,老师们在我整个大学四年里给予了我丰富的知识,让我能够在大学中不虚度光阴,踏踏实实的学习,没有这些老师不辞辛劳的教诲,我无法完成这四年的学业。

最后,我要感谢我的家人和同学们。感谢父母在物质与精神上给予我无限的支持和鼓励。感谢我的同学们,在论文写作期间,你们给予了我许多宝贵的建议和帮助,让我在学术研究的道路上不再孤单。

再次感谢所有在我大学生活中给予我帮助和支持的人们。您们的关怀和鼓励将永远铭刻在我的心中,成为我未来前行的动力。

由于自己的水平有限,毕设仍然存在着很大的缺陷,各位老师若提出意见,我会努力改正。

点赞+收藏+关注  →私信领取本源代码、数据库

关注博主下篇更精彩
一键三连!!!
一键三连!!!
一键三连!!!
感谢一键三连!!!

内容概要:本文介绍了一项创新性未发表的研究,即利用多元宇宙优化算法(Multiverse Optimizer, MVO)对分时电价下的需求响应与综合能源系统调度问题进行建模与求解,旨在实现能源系统的经济性、高效性与可持续性运行。该研究构建了包含多种能源设备(如光伏、风机、燃气轮机、储能系统等)及可调节负荷的综合能源系统模型,充分考虑了用户侧的需求响应行为在分时电价机制下的响应特性,通过MVO算法对系统运行成本、能源利用率、碳排放等多目标进行协同优化,实现了日前调度计划的智能决策。研究还提供了完整的MATLAB码实现,便于研究人员复现实验、验证算法性能,并为进一步研究提供可靠的仿真基础。; 适合人群:具备一定电力系统、优化算法及MATLAB编程基础的科研人员、研究生以及从事能源互联网、综合能源系统规划与运行的技术工程师。; 使用场景及目标:① 学习并掌握多元宇宙优化算法在复杂能源系统调度中的具体应用方法;② 研究分时电价机制如何通过需求响应引导用户参与电网互动,实现削峰填谷;③ 实现综合能源系统(IES)中冷、热、电、气等多种能源的协同优化调度,以降低运行成本、提高新能源消纳能力和系统可靠性;④ 为相关领域的学术研究提供可复现的码实例和仿真平台。; 阅读建议:此资源以MATLAB码为核心载体,深入剖析了算法应用与系统建模的全过程。建议读者在学习时,不仅应关注码的实现细节,更要理解其背后的数学模型、优化目标设定和约束条件的物理意义。建议结合文档中的模型描述,逐步调试码,观察不同参数和场景下的优化结果,从而深刻掌握综合能源系统优化调度的设计思想与关键技术。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值