基于SpringBoot+Vue小型企业办公动化系统的设计和开发(源码+部署说明+演示视频+源码介绍+lw)

 您好,我是码农飞哥(wei158556),感谢您阅读本文,欢迎一键三连哦
💪🏻 1. Python基础专栏,基础知识一网打尽,9.9元买不了吃亏,买不了上当。 Python从入门到精通
😁 2.
❤️ 3. Python爬虫专栏,系统性的学习爬虫的知识点。9.9元买不了吃亏,买不了上当 。python爬虫入门进阶
❤️ 4. Ceph实战,从原理到实战应有尽有。 Ceph实战
❤️ 5. Java高并发编程入门,打卡学习Java高并发。 Java高并发编程入门​​

第1章绪论​

1.1 课题背景​

互联网发展至今,无论是其理论还是技术都已经成熟,而且它广泛参与在社会中的方方面面。它让信息都可以通过网络传播,搭配信息管理工具可以很好地为人们提供服务。所以各行业,尤其是规模较大的企业和学校等都开始借助互联网和软件工具管理信息,传播信息,共享信息等等,以此可以增强自身实力,提高在同行业当中的竞争能力,并从各种激烈的竞争中获取发展的机会。针对小型企业办公信息管理混乱,出错率高,信息安全性差,劳动强度大,费时费力等问题,经过分析和考虑,在目前的情况下,可以引进一款小型企业办公自动化系统这样的现代化管理工具,这个工具就是解决上述问题的最好的解决方案。它不仅可以实时完成信息处理,还缩短小型企业办公信息管理流程,使其系统化和规范化。同时还可以减少工作量,节约小型企业办公信息管理需要的人力和资金。所以小型企业办公自动化系统是信息管理环节中不可缺少的工具,它对管理者来说非常重要。​

1.2 课题意义 ​

现如今,信息种类变得越来越多,信息的容量也变得越来越大,这就是信息时代的标志。近些年,计算机科学发展得也越来越快,而且软件开发技术也越来越成熟,因此,在生活中的各个领域,只要存在信息管理,几乎都有计算机的影子,可以说很多行业都采用计算机的方式管理信息。信息计算机化处理相比手工操作,有着保密性强,效率高,存储空间大,成本低等诸多优点。针对小型企业办公信息管理,采用小型企业办公自动化系统可以有效管理,使信息管理能够更加科学和规范。​

总之,在实际中使用小型企业办公自动化系统,其意义如下:​

第一点:小型企业办公自动化系统的实际运用,可以帮助管理人员在短时间内完成信息处理工作;​

第二点:通过系统页面的合理排版布局,可以更加直观的展示系统的内容,并且使用者可以随时阅读页面信息,随时操作系统提供的功能;​

第三点:可以实现信息管理计算机化;​

第四点:可以降低信息管理成本;​

1.3 研究内容​

对小型企业办公自动化系统设计制作,不仅需要技术支撑,也需要大量的理论研究。本文在对小型企业办公自动化系统进行介绍时,将按照如下内容进行。​

第一部分:介绍小型企业办公自动化系统研究的背景意义,便于用户了解系统;​

第二部分:介绍开发小型企业办公自动化系统需要搭建的环境,包括技术和工具;​

第三部分:介绍用户对小型企业办公自动化系统的功能要求,以及对小型企业办公自动化系统的性能要求等;​

第四部分:介绍数据库的设计方案,以及根据功能要求设计的功能结构;​

第五部分:介绍通过编码最终实现的系统功能运行效果;​

第六部分:介绍系统的功能测试,对系统进行综合检测,并及时解决系统出现的问题,直至系统运行正常。​

第2章 开发环境与技术​

小型企业办公自动化系统的编码实现需要搭建一定的环境和使用相应的技术,接下来的内容就是对小型企业办公自动化系统用到的技术和工具进行介绍。​

2.1 MYSQL数据库​

本课题所开发的应用程序在数据操作方面是不可预知的,是经常变动的,没有办法直接把数据写在文档里,这样不仅仅不安全,也不能实现应用程序的功能。如果要能实现应用程序所需要的数据存储功能,就避免不了要进行专业数据库存储软件的选择。基本上应用程序实现的功能不算太复杂,市面上任何一个关系型数据库软件都可以实现。参考自己的学习进度和操作习惯来讲,Oracle数据库是适合的,但是所需要的的安装软件很大,并且有好多不需要的功能都是开启的状态,十分消耗电脑资源,所以没有选择Oracle数据库,而SQL Server数据库虽然学过,但是安装的时候因为电脑上可能有其他的软件存在,经常性的出问题,而安装问题不好解决就需要重新安装操作系统,这样对已经存在的软件来讲又是一种时间上的浪费。只有MySQL数据库,安装包小,安装速度快,操作简单,哪怕安装出问题也好解决,不用重装操作系统,也不影响电脑上运行的其他软件,消耗资源也少,最重要的是在功能方面完全的符合设计需要,所以最后选择了MySQL数据库作为应用软件开发需要的数据库。​

2.2技术 ​

在动态网站的兴起之初,作为高级编程语言的Java自然不会放弃这个领域的蛋糕。Sun公司推出了Servlet作为输出动态网站的一种技术标准,虽然不怎么受当时程序员的喜爱,但是当初也没有太多的选择,随后几个月PHP语言问世,不考虑性能和效率如何,起码在书写网页所需要的动态代码块和静态代码块方面进行了区分,让书写效率和可读效率大大的提升,所以很多Java程序员以及刚入行的初级程序员都选择了PHP语言作为自己职业的发展方向,Sun公司为了维护Java语言在高级编程语言上的江湖地位,防止PHP继续抢走市场份额占有率,Sun公司联合Apache基金会研发了一个关于Java动态网页的一个新型的技术标准,这就是JSP技术。JSP吸取了PHP语言在页面书写上面的所有优点,但是又背靠Java EE的庞大后台,又能实现很多通过Java组件就能实现的功能,在JSP页面上可以直接引用那些组件,让JSP更加的强壮丰富。保证了Java技术纵向的可持续发展,并且在动态网站开发领域终于站稳了脚跟,其他PHP开发人员可以很快的转移到JSP进行开发,不考虑一些特殊组件或者功能的开发,只从动态页面的开发上来讲,完全实现了PHP程序和JSP程序的几乎无成本的转换,JSP技术就这样的发展了起来。​

2.3 SSM框架​

SSM框架不是一个框架的名称,而是三个框架的首字母缩写,分别是Spring框架、SpringMVC框架、MyBatis框架。是目前Java开发者中学习的首选框架。​

Spring框架继承了JavaEE和EJB框架的优点,在依赖注入方面去掉了臃肿的配置,在面向切面方面也简化了代码数量,提高了代码品质。依赖注解进行配置,让所有的依赖都可以通过程序的自动配置和寻找,减少了代码写作数量,提高了代码阅读性。​

SpringMVC框架与Spring只是一个公司的,在底层代码结构上可以复用,但是最主要的功能是对数据提交请求进行过滤,并且对数据的返回进行过滤,不限于页面是JSP技术,也可以是其他的技术,更容易大型开发的集合技术。​

MyBatis框架摒弃了Hibernate框架的配置臃肿方面,有时候Hibernate框架业务比较复杂的时候,代码量反而增加,性能下降,无法对底层的数据库语句优化,而MyBatis框架则有效的解决了这个方面,可以通过Java语句,对数据库操作语句进行优化,代码更简洁,执行效率更高,并且可以生产一些模块化代码,解决了开发过程中容易出现的实体映射方面的操作。​

2.4 Vue框架​

Vue是最近几年最火的前端应用,在H5以及APP和小程序上面,有着很大的市场份额。作为一个不断的向前发展的生态系统,Vue不仅仅只是作为了网页的开发,Vue的概念主要是让以前静态写的DOM,变成了动态生成,超快运行虚拟DOM,DOM就是HTML里面W3C设置的标准,是文档对象模型。使用Vue,让文档对象生成变得更加智能化,在使用过程中对该机构进行访问,就能改变文档的结构、样式以及内容。让用户能体现到极简界面,急速打开,从上往下的打开层次感,使用的更加舒适。​

第3章系统分析​

面对即将开发的系统,进行提前的分析是必要的。这也是开发流程中必须有的环节。通常分析系统期间,主要涉及的内容包括系统开发可行性问题,对系统功能和性能的分析等问题。​

3.1 可行性分析​

在正式对需要建设的项目进行投资前,有一个比较关键的步骤是不能缺少的,那就是可行性分析。它主要从当前技术,经济等角度去评估系统的可行性,在投资决策中常常采用这种科学的方法来论证项目。​

3.1.1 技术可行性​

当前,系统开发的技术已经发展成熟,而且通过计算机网络可以获取开发工具的使用方法,以及规范化编写的模块化代码,这些知识可以帮助开发者顺利完成本系统的编码工作。​

3.1.2 经济可行性​

本系统开发期间需要配置的软件环境,可以免费通过开发类官网下载安装,需要配置的硬件设备也不需要具备很高的性能,通常网吧电脑,或学校计算机机房的电脑都符合要求。因此,从经济方面考虑,小型企业办公自动化系统开发可行。​

3.1.3 操作可行性​

小型企业办公自动化系统根据用户使用习惯进行开发,设计的界面具有统一性,并具备优秀的导航功能。所以,只要会简单操作电脑的人员,可以无压力操作小型企业办公自动化系统。​

总之,从上述的论证来看,本系统可以开发。​

3.2 系统流程​

流程图这样的工具可以直观反映出系统内部的操作逻辑,可以帮助用户更好的理解系统。​

3.2.1 操作流程​

进入本系统需要访问者提供验证信息。验证合格的访问者才能获取访问资格。其具体的操作流程见下图。访问者根据登录界面设置的信息项如实填写,待信息通过验证后,访问者可以进入指定的页面享受本系统提供的服务和阅读本系统的相关信息。​

图3.1 操作流程图​

3.2.2 登录流程​

本系统的登录模块,其内部的流程见下图。主要对访问本系统的人员提供的验证信息进行逐个判断,系统面对录入错误的信息会给出提示,比如,提示账号不对,或提示密码不匹配等提示信息。总之,在登录页面填写的所有信息都符合要求,访问者就登录成功了。​

图3.2 登录流程图​

3.2.3 删除信息流程​

本系统在经常性的使用后,会产生很多失去价值的信息,因此就需要及时清理数据,腾出系统的空间。对这些数据进行清理时,其对应的流程见下图。先选中要清理的数据,通过反复确认需要清理的数据,避免操作人员误删。已经删除的数据就不会出现在系统里面。​

图3.3 删除信息流程图​

3.2.4 添加信息流程​

本系统主要用于显示信息,提供服务,其中,数据添加功能就是其中的服务之一,具体流程见下图。让操作者在信息添加的页面录入数据,待这些数据被提交检验合格后,就会在系统指定页面显示出来。​

图3.4添加信息流程图​

3.3 性能需求​

进行需求分析,包括了根据用户实际需求制定功能,也涵盖了对即将设计的系统进行性能上的需求分析。所以一般分析系统时,一方面要分析系统功能,另一方面也要分析系统的性能。毕竟设计开发出一个好性能的系统可以确保系统的质量可靠。​

接下来分析系统的性能,还要从界面友好性,系统的时间特性,系统的可靠性等方面来分析说明。​

(1)时间特性要求:系统处理数据都有时间要求,这也是系统的时间特性。通常都会把数据处理的时间进行分析,也会设置用户请求的响应时间,还有系统在满负荷运行时可以偏离的范围数值等都需要提前分析确定。​

(2)界面友好性:除了功能上需要考虑用户需求外,在人机交互界面的设计上,也需要考虑用户的使用习惯,包括界面的布局,界面基调选择以及颜色搭配等。尽量做到用户在接受简单的培训之后,可以对系统进行独立操作。​

(3)系统可靠性:对于初学者而言,很容易出现一个问题,就是设计开发的系统,因为人为的误操作出现崩溃,有些也会导致电脑死机。这样的现象也说明这种容错能力低下的系统是不可靠的。完全不能作为生活中处理信息的系统。当下,系统开发要保证可靠性,设计时,把模块化和结构化的设计理念也考虑进来。如果遇到对时效性要求比较严格的系统,也需要采取其它的措施,比如双机系统,还有磁盘阵列等方式。还有就是一个可靠性的系统,对设备的供电能力也有要求。​

3.4 功能需求​

不同的系统提供的服务也不相同,其对应的功能也不相同,所以,系统开工前,需要明确其用途,确定其功能。由此,才可以进行各个任务的开展。​

小型企业办公自动化系统经过分析,确定了其需要设置管理员的角色,其操作的功能通过用例图展示(见下图)。管理员管理部门经理,管理总经理,管理员工和员工留言以及员工工资,管理内部邮件,管理审批流程,管理离职申请。​

图3.5 管理员用例图​

小型企业办公自动化系统经过分析,确定了其需要设置部门经理的角色,其操作的功能通过用例图展示(见下图)。部门经理给员工发放工资,审核并回复员工留言,管理员工工资,审核员工的离职申请信息,查询和下载内部邮件以及审批流程。​

图3.6 部门经理用例图​

小型企业办公自动化系统经过分析,确定了其需要设置总经理的角色,其操作的功能通过用例图展示(见下图)。总经理查询下载内部邮件和审批流程,审核员工离职申请,查询员工工资,查询员工和部门经理。​

图3.7 总经理用例图​

小型企业办公自动化系统经过分析,确定了其需要设置员工的角色,其操作的功能通过用例图展示(见下图)。员工发布留言,发布内部邮件,发布离职申请,查询通知公告和审批流程,查看员工本人工资。​

图3.8 员工用例图​

第4章 系统设计​

一个成功设计的系统在内容上必定是丰富的,在系统外观或系统功能上必定是对用户友好的。所以为了提升系统的价值,吸引更多的访问者访问系统,以及让来访用户可以花费更多时间停留在系统上,则表明该系统设计得比较专业。​

4.1 设计原则​

本系统在设计过程中需要依照一定的设计原则进行,目的就是为了让开发的系统具备高质量,齐全完备的功能,方便简单的操作,如此才可以最大限度的满足使用者的要求。系统设计原则除了基本的易操作原则外,还有安全性原则,准确性原则。​

第一个设计原则:易操作原则,针对本系统设计的功能要完备齐全,编码时,设计的各个接口要具备友好性,使用者一旦使用本系统时,要能够轻松上手,操作本系统处理数据时,要具备便利性。此外,也需要设计一些必要提示,引导使用者操作系统。​

第二个设计原则:安全性原则,本系统在登录模块要对各个访问者进行身份验证,系统会通过访问者输入的信息进行判断,使用提前编写的安全验证代码进行数据比对,引导匹配成功的访问者进入指定的操作界面。这样可以避免无关性访问者窃取系统的数据。​

第三个设计原则:准确性原则,为了保证使用者登记的数据是正确的,需要提前设计数据纠错机制,让使用者可以通过系统的报错提示,仔细检查登记的错误信息,并及时纠正错误,填写规范正确的信息。比如设置密码时,要求密码的长度不能低于6个字符,且数据类型要求不能全部是数字等都能进行规范。​

4.2 功能结构设计​

在前面分析的管理员功能的基础上,进行接下来的设计工作,最终展示设计的管理员结构图(见下图)。管理员管理部门经理,管理总经理,管理员工和员工留言以及员工工资,管理内部邮件,管理审批流程,管理离职申请。​

图4.1 管理员功能结构图​

在前面分析的部门经理功能的基础上,进行接下来的设计工作,最终展示设计的部门经理结构图(见下图)。部门经理给员工发放工资,审核并回复员工留言,管理员工工资,审核员工的离职申请信息,查询和下载内部邮件以及审批流程。​

图4.2 部门经理功能结构图​

在前面分析的总经理功能的基础上,进行接下来的设计工作,最终展示设计的总经理结构图(见下图)。总经理查询下载内部邮件和审批流程,审核员工离职申请,查询员工工资,查询员工和部门经理。​

图4.3 总经理功能结构图​

在前面分析的员工功能的基础上,进行接下来的设计工作,最终展示设计的员工结构图(见下图)。员工发布留言,发布内部邮件,发布离职申请,查询通知公告和审批流程,查看员工本人工资。​

图4.4 员工功能结构图​

4.3 数据库设计​

开发一个系统也需要提前设计数据库。这里的数据库是相关数据的集合,存储在一起的这些数据也是按照一定的组织方式进行的。目前,数据库能够服务于多种应用程序,则是源于它存储方式最佳,具备数据冗余率低的优势。虽然数据库为程序提供信息存储服务,但它与程序之间也可以保持较高的独立性。总而言之,数据库经历了很长一段时间的发展,从最初的不为人知,到现在的人尽皆知,其相关技术也越发成熟,同时也拥有着坚实的理论基础。​

4.3.1 数据库概念设计​

这部分内容需要借助数据库关系图来完成,也需要使用专门绘制数据库关系图的工具,比如Visio工具就可以设计E-R图(数据库关系图)。设计数据库,也需要按照设计的流程进行,首先还是要根据需求完成实体的确定,分析实体具有的特征,还有对实体间的关联关系进行确定。最后才是使用E-R模型的表示方法,绘制本系统的E-R图。不管是使用亿图软件,还是Visio工具,对于E-R模型的表示符号都一样,通常矩形代表实体,实体间存在的关系用菱形符号表示,实体的属性也就是实体的特征用符号椭圆表示。最后使用直线将矩形,菱形和椭圆等符号连接起来。接下来就开始对本系统的E-R图进行绘制。​

(1)下图是员工留言实体和其具备的属性。​

图4.4 员工留言实体属性图​

(2)下图是员工工资实体和其具备的属性。​

图4.5 员工工资实体属性图​

(3)下图是审批流程实体和其具备的属性。​

图4.6 审批流程实体属性图​

  1. 下图是内部邮件实体和其具备的属性。

图4.7 内部邮件实体属性图​

  1. 下图是管理员实体和其具备的属性。

图4.8 管理员实体属性图​

  1. 下图为上述各实体间相互之间的关系。​

图4.9 实体间关系E-R图​

4.3.2 数据库物理设计

本数据库是关系型数据库,因此对二维表的结构设计也比较关键。毕竟二维表格模型就是关系型数据库中的关系模型。而一些常用的关系模型中的概念也需要了解,才可以对关系模型进行设计。下面就简单介绍关系,元组,属性,域,关键字等常用概念的含义。​

关系:关系就是数据库中的一张数据表,每张数据表都有命名,也就是每个关系也有名字,那就是数据表名;​

元组:元组就是数据表中的一行记录;​

属性:属性就是数据表中的字段,也就是数据表中的一列;​

域:域就是对数据表中属性的取值进行限定;​

关键字:关键字就是数据表中的主键;​

在了解了表结构设计的常用概念后,接下来就需要使用前面绘制的E-R模型完成表结构的设计工作,并在数据库中创建数据表,并为各个数据表进行命名。以下就对设计的结果通过表格形式进行展示。​

表4.1 部门经理信息表 ​

字段​

类型​

空​

默认​

注释​

id ​

bigint(20)​

否​

主键​

addtime ​

timestamp​

否​

CURRENT_TIMESTAMP​

创建时间​

bumenbianhao ​

varchar(200)​

是​

NULL​

部门编号​

mima ​

varchar(200)​

是​

NULL​

密码​

bumen ​

varchar(200)​

是​

NULL​

部门​

jinglixingming ​

varchar(200)​

是​

NULL​

经理姓名​

lianxidianhua ​

varchar(200)​

是​

NULL​

联系电话​

youxiang ​

varchar(200)​

是​

NULL​

邮箱​

shenfenzheng ​

varchar(200)​

是​

NULL​

身份证​

ruzhiriqi ​

date​

是​

NULL​

入职日期​

表4.2离职申请信息表 ​

字段​

类型​

空​

默认​

注释​

id ​

bigint(20)​

否​

主键​

addtime ​

timestamp​

否​

CURRENT_TIMESTAMP​

创建时间​

gonghao ​

varchar(200)​

是​

NULL​

工号​

yuangongxingming ​

varchar(200)​

是​

NULL​

员工姓名​

bumenbianhao ​

varchar(200)​

是​

NULL​

部门编号​

bumen ​

varchar(200)​

是​

NULL​

部门​

lizhiyuanyin ​

longtext​

是​

NULL​

离职原因​

shenqingriqi ​

date​

是​

NULL​

申请日期​

sfsh ​

varchar(200)​

是​

否​

是否审核​

shhf ​

longtext​

是​

NULL​

审核回复​

表4.3内部邮件信息表 ​

字段​

类型​

空​

默认​

注释​

id ​

bigint(20)​

否​

主键​

addtime ​

timestamp​

否​

CURRENT_TIMESTAMP​

创建时间​

gonghao ​

varchar(200)​

是​

NULL​

工号​

yuangongxingming ​

varchar(200)​

是​

NULL​

员工姓名​

bumenbianhao ​

varchar(200)​

是​

NULL​

部门编号​

bumen ​

varchar(200)​

是​

NULL​

部门​

zhuti ​

varchar(200)​

是​

NULL​

主题​

neirong ​

longtext​

是​

NULL​

内容​

fujian ​

varchar(200)​

是​

NULL​

附件​

riqi ​

date​

是​

NULL​

日期​

表4.4审批流程信息表 ​

字段​

类型​

空​

默认​

注释​

id ​

bigint(20)​

否​

主键​

addtime ​

timestamp​

否​

CURRENT_TIMESTAMP​

创建时间​

bumen ​

varchar(200)​

是​

NULL​

部门​

shenpixiangmu ​

varchar(200)​

是​

NULL​

审批项目​

shenpiliucheng ​

longtext​

是​

NULL​

审批流程​

xiangguanfujian ​

varchar(200)​

是​

NULL​

相关附件​

gengxinriqi ​

date​

是​

NULL​

更新日期​

表4.5通知公告信息表 ​

字段​

类型​

空​

默认​

注释​

id ​

bigint(20)​

否​

主键​

addtime ​

timestamp​

否​

CURRENT_TIMESTAMP​

创建时间​

biaoti ​

varchar(200)​

是​

NULL​

标题​

neirong ​

longtext​

是​

NULL​

内容​

xiangguanfujian ​

varchar(200)​

是​

NULL​

相关附件​

faburiqi ​

date​

是​

NULL​

发布日期​

表4.6 管理员信息表​

字段​

类型​

空​

默认​

注释​

id ​

bigint(20)​

否​

主键​

username ​

varchar(100)​

否​

用户名​

password ​

varchar(100)​

否​

密码​

role ​

varchar(100)​

是​

管理员​

角色​

addtime ​

timestamp​

否​

CURRENT_TIMESTAMP​

新增时间​

表4.7员工信息表 ​

字段​

类型​

空​

默认​

注释​

id ​

bigint(20)​

否​

主键​

addtime ​

timestamp​

否​

CURRENT_TIMESTAMP​

创建时间​

gonghao ​

varchar(200)​

是​

NULL​

工号​

mima ​

varchar(200)​

是​

NULL​

密码​

yuangongxingming ​

varchar(200)​

是​

NULL​

员工姓名​

xingbie ​

varchar(200)​

是​

NULL​

性别​

shouji ​

varchar(200)​

是​

NULL​

手机​

youxiang ​

varchar(200)​

是​

NULL​

邮箱​

bumenbianhao ​

varchar(200)​

是​

NULL​

部门编号​

bumen ​

varchar(200)​

是​

NULL​

部门​

ruzhiriqi ​

date​

是​

NULL​

入职日期​

xueli ​

varchar(200)​

是​

NULL​

学历​

anquandengji ​

varchar(200)​

是​

NULL​

安全等级​

表4.8 员工工资信息表 ​

字段​

类型​

空​

默认​

注释​

id ​

bigint(20)​

否​

主键​

addtime ​

timestamp​

否​

CURRENT_TIMESTAMP​

创建时间​

gonghao ​

varchar(200)​

是​

NULL​

工号​

yuangongxingming ​

varchar(200)​

是​

NULL​

员工姓名​

faxinyuefen ​

varchar(200)​

是​

NULL​

发薪月份​

jibengongzi ​

varchar(200)​

是​

NULL​

基本工资​

ticheng ​

varchar(200)​

是​

NULL​

提成​

butie ​

varchar(200)​

是​

NULL​

补贴​

koukuan ​

varchar(200)​

是​

NULL​

扣款​

shifagongzi ​

varchar(200)​

是​

NULL​

实发工资​

koukuanbeizhu ​

longtext​

是​

NULL​

扣款备注​

表4.9员工留言信息表 ​

字段​

类型​

空​

默认​

注释​

id ​

bigint(20)​

否​

主键​

addtime ​

timestamp​

否​

CURRENT_TIMESTAMP​

创建时间​

gonghao ​

varchar(200)​

是​

NULL​

工号​

yuangongxingming ​

varchar(200)​

是​

NULL​

员工姓名​

bumenbianhao ​

varchar(200)​

是​

NULL​

部门编号​

bumen ​

varchar(200)​

是​

NULL​

部门​

liuyanneirong ​

longtext​

是​

NULL​

留言内容​

xiangguanfujian ​

varchar(200)​

是​

NULL​

相关附件​

liuyanriqi ​

date​

是​

NULL​

留言日期​

sfsh ​

varchar(200)​

是​

否​

是否审核​

shhf ​

longtext​

是​

NULL​

审核回复​

表4.10总经理信息表 ​

字段​

类型​

空​

默认​

注释​

id ​

bigint(20)​

否​

主键​

addtime ​

timestamp​

否​

CURRENT_TIMESTAMP​

创建时间​

zhanghao ​

varchar(200)​

是​

NULL​

账号​

mima ​

varchar(200)​

是​

NULL​

密码​

xingming ​

varchar(200)​

是​

NULL​

姓名​

xingbie ​

varchar(200)​

是​

NULL​

性别​

shouji ​

varchar(200)​

是​

NULL​

手机​

youxiang ​

varchar(200)​

是​

NULL​

邮箱​

第5章 系统实现

进入到这个环节,也就可以及时检查出前面设计的需求是否可靠了。一个设计良好的方案在运用于系统实现中,是会帮助系统编制人员节省时间,并提升开发效率的。所以在系统的编程阶段,也就是系统实现阶段,对于一些不合理的设计需求,也是可以及时发现。因为设计的方案是完全指导系统的编码过程的。​

5.1 管理员功能实现

5.1.1 部门经理管理

管理员进入指定功能操作区之后可以管理部门经理信息。其页面见下图。管理员可以增删改查部门经理信息。​

图5.1 部门经理管理页面​

5.1.2 总经理管理

管理员进入指定功能操作区之后可以管理总经理。其页面见下图。管理员增删改查总经理信息。​

图5.2 总经理管理页面​

5.1.3 审批流程管理

管理员进入指定功能操作区之后可以管理审批流程。其页面见下图。管理员对各部门的项目审批流程进行规范,包括审批流程的增删改查管理。​

图5.3 审批流程管理页面​

5.1.4 通知公告管理

管理员进入指定功能操作区之后可以管理通知公告。其页面见下图。管理员实现通知公告的新增,删除,查询,修改以及附件下载功能。​

图5.4 通知公告管理页面​

5.2 部门经理功能实现

5.2.1 员工管理

部门经理进入指定功能操作区之后可以管理员工。其页面见下图。部门经理修改,查询,删除员工信息,对各个员工发放工资。​

图5.5 员工管理页面​

5.2.2 员工留言管理

部门经理进入指定功能操作区之后可以管理员工留言。其页面见下图。部门经理查询员工留言,删除员工留言,审核并回复员工留言。​

图5.6 员工留言管理页面​

5.2.3 员工工资管理

部门经理进入指定功能操作区之后可以管理员工工资。其页面见下图。部门经理查看各个员工的工资详情,删除,修改,查询员工的工资信息。​

图5.7 员工工资管理页面​

5.3 总经理功能实现

5.3.1 审批流程管理

总经理进入指定功能操作区之后可以查询项目审批流程。其页面见下图。总经理也能下载审批流程的附件文件。​

图5.8 审批流程管理页面​

5.3.2 离职申请管理

总经理进入指定功能操作区之后可以管理离职申请。其页面见下图。总经理查看离职申请的详情,审核并回复员工的离职申请信息。​

图5.9 离职申请管理页面​

5.3.3 内部邮件管理

总经理进入指定功能操作区之后可以管理内部邮件。其页面见下图。总经理查询内部邮件,下载内部邮件附件文件。​

图5.10 内部邮件管理页面​

5.4 员工功能实现

5.4.1 新增留言

员工进入指定功能操作区之后可以发布留言。其页面见下图。员工发布的留言在未审核前,员工可以删除或修改。​

图5.11 新增留言页面​

5.4.2 员工工资管理

员工进入指定功能操作区之后可以查看工资。其页面见下图。员工通过详情按钮可以查看工资明细,员工也能在本页面查询工资。​

图5.12 员工工资管理页面​

5.4.3 新增内部邮件

员工进入指定功能操作区之后可以新增内部邮件。其页面见下图。员工新增内部邮件,也能在内部邮件管理模块修改,删除本人发布的内部邮件。​

图5.13 新增内部邮件页面​

第6章 系统测试

进入这个环节就代表着系统已经结束了编码实现功能阶段,接下来要做的事情,就是对该系统进行检测,也就是系统测试,这个环节是很有必要进行的,原因是开发本系统的人员,其自身具备的开发技术以及开发思维是有限的,在面对具有复杂性操作逻辑的系统,都会出现大大小小的错误,并且这样的错误还都是不可避免的。通过及时的测试,可以尽早排除程序中的错误,这样也可以减少实际运行中产生的问题,从而真正避免在后期使用中为修复这些问题所付出的高昂代价。及时测试,及时发现问题并解决,也是提高开发过程的效率的一种表现形式。总而言之,在软件开发生命周期的每个阶段都需要加以重视,并做好每个阶段需要做的任务,从开始到结尾都需要保证开发软件的质量。​

6.1 功能测试

通过设计一些数据检验小型企业办公自动化系统的功能是否根据预定进行数据输出,以此检验系统功能是否合格。接下来就选取部分功能进行检测。​

6.1.1 登录功能测试

小型企业办公自动化系统提供的服务是给规定的用户使用的,其他无关用户是无法进入的,登录功能就是检验访问者是否是符合要求的用户,及时将不符合要求的用户拒之门外。以此保证系统安全。这里以管理员身份进行检测,测试的内容见下表。​

表6.1 登录功能测试表​

账号​

密码​

身份​

结果​

guanliyuan​

guanliyuan​

管理员​

提示成功,进入系统后台​

user​

guanliyuan​

管理员​

提示失败,停留在登录页面​

guanliyuan​

user​

管理员​

提示失败,停留在登录页面​

小型企业办公自动化系统在面对正确的账号,不匹配的密码时,会有相应的反馈,其反馈结果见下图。​

图6.1 登录错误反馈提示​

6.1.2 修改密码功能测试

这个功能的设置也是出于对系统的保护,让操作人员的密码可以一直变化,减少泄露的几率。测试的数据见下表。通过验证旧密码,确认操作者是本人,然后开始对新密码进行登记。一般修改完密码后,需要再次登录。​

表6.2 修改密码功能测试表​

旧密码​

新密码​

密码修改结果​

guanliyuan​

gly​

成功​

user​

gly​

失败​

guanliyuan​

失败​

本系统在面对登记错误的旧密码信息时,有相应的反馈提示,见下图。​

图6.2 旧密码错误提示​

6.2 测试结果

经过测试,从小型企业办公自动化系统功能的角度来看,本系统各个功能在符合用户要求的情况下,也能保持运行正常。从小型企业办公自动化系统性能的角度来看,本系统可以保持24小时不间断运行,而且面对用户的误操作行为,有提前设置的错误反馈机制应对,另外,本系统界面布局考虑用户阅读习惯,可以让用户短时间内获取需要的内容。总之,本系统可以投入生产,帮助用户解决实际问题,发挥其应用价值。​


 更多毕业设计请联系 码农飞哥,还有一对一的毕设定制服务。

  加微信还送详细的RPA教程。

关注下方「码农飞哥」 公众号 回复 「搞钱」 获取 450个赚钱秘籍

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/595795.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Ubuntu/Centos文件误删恢复

Linux服务器上的文件存储都承载着大量的重要信息。然而,文件误删、软件故障或恶意攻击等风险总是伴随着我们。当这些不幸发生时,如何有效地恢复数据成为了一个亟待解决的问题。幸运的是,有相关的数据恢复工具,它能够帮助我们解决Linux服务器上的文件误删问题。 注意:该软…

Unity性能优化篇(十四) 其他优化细节以及UPR优化分析器

代码优化: 1. 使用AssetBundle作为资源加载方案。 而且经常一起使用的资源可以打在同一个AssetBundle包中。尽量避免同一个资源被打包进多个AB包中。压缩方式尽量使用LZ4,少用或不要用LZMA的压缩方式。如果确定后续开发不会升级Unity版本,则可…

C++不知算法系列之滑动指针

公众号:编程驿站 1. 前言 双指针搜索算法,常见的有左右双指针;快慢双指针;先后双指针以及多指针……其中还包括一类滑动指针。滑动指针也称为滑动窗口指针,其搜索实现即有灵性又透着优雅。 本文通过几个案例聊聊滑动…

【Java EE】初识Spring Web MVC

文章目录 🌴什么是Spring Web MVC?🌸什么是Servlet呢? 🌲MVC 定义🌸再理解Spring MVC 🌳如何学习Spring MVC呢?⭕总结 🌴什么是Spring Web MVC? Spring Web MVC 是基于…

Github 2024-04-05Java开源项目日报Top9

根据Github Trendings的统计,今日(2024-04-05统计)共有9个项目上榜。根据开发语言中项目的数量,汇总情况如下: 开发语言项目数量Java项目9TypeScript项目1OpenAPI 生成器:基于规范自动生成API工具 创建周期:2155 天开发语言:Java协议类型:Apache License 2.0Star数量:1…

二叉树oj题(1)

1.检查两棵树是否相同 解题思路: 1.两棵树都为空,return true 2.一个为空,一个不为空,return false 3.节点不为空,但值不相同,return false 以上都是特殊情况,如果没有这些情况,就…

NoSQL概述

NoSQL概述 目录 一、为什么用NoSQL 二、什么是NoSQL 三、经典应用分析 四、N o S Q L 数 据 模 型 简 介 五、NoSQL四大分类 六、CAP BASE 一、为什么用NoSQL 1、单机MySQL的美好年代 在90年代,一个网站的访问量一般不大,用单个数据库完全可以轻松应…

理解Go语言中的并发和并行

即使有多年的并发编程经验,有些开发人员也可能无法清楚地理解并发(concurrency)和并行(parallelism)之间的区别。下面我们以一个真实的例子来说明:一家咖啡店。 在这家咖啡店中,一名服务员负责接收订单并使用一台咖啡机进行准备。顾客下订单,然后等待他们的咖啡。 …

99%的人不知道,Oracle resetlogs强制开库需要推进SCN?

📢📢📢📣📣📣 哈喽!大家好,我是【IT邦德】,江湖人称jeames007,10余年DBA及大数据工作经验 一位上进心十足的【大数据领域博主】!😜&am…

蓝桥杯 十一届C++A组 字符排序 21分(运行超时)

思路: 1. 此题考查的冒泡排序中的交换次数,其实就是考察当前数与后面的逆序对个数问题。而为了最大利用位数,应当使每一位都不小于后面的字符,否则会造成一次逆序对的浪费(贪心,为了使总位数最少&#xff…

贪心算法|55.跳跃游戏

力扣题目链接 class Solution { public:bool canJump(vector<int>& nums) {int cover 0;if (nums.size() 1) return true; // 只有一个元素&#xff0c;就是能达到for (int i 0; i < cover; i) { // 注意这里是小于等于covercover max(i nums[i], cover);if…

了解IP地址的基本概念和修改步骤

在数字化时代&#xff0c;IP地址作为网络设备的唯一标识&#xff0c;其重要性不言而喻。无论是为了提升网络性能&#xff0c;还是出于隐私保护的需求&#xff0c;修改IP地址都是网络使用者可能遇到的操作。虎观代理将详细介绍如何修改IP地址&#xff0c;并探讨在修改过程中需要…