Springboot 实验室设备管理系统-计算机毕业设计源码76503

目录

摘要

1 绪论

1.1 选题背景与意义

1.2国内外研究现状

1.3论文结构与章节安排

2系统分析

2.1.1 技术可行性分析

2.1.2 经济可行性分析

2.1.3 法律可行性分析

2.2 系统流程分析

2.2.1 数据新增流程

2.2.2 数据删除流程

2.3 系统功能分析

2.3.1 功能性分析

2.3.2 非功能性分析

2.4 系统用例分析

2.5本章小结

3 系统总体设计

3.1 系统架构设计

3.2 系统功能模块设计

3.3 数据库设计

3.3.1 数据库概念结构设计

3.3.2 数据库逻辑结构设计

3.4本章小结

4系统关键模块设计与实现

4.1用户功能模块

4.1.1 用户功能界面

4.1.2用户登录界面

4.1.3 设备入库管理界面

4.1.4设备报废管理界面

4.2管理员功能模块

4.2.1 系统用户管理界面

4.2.2设备分类管理界面

4.2.3实验设备管理界面

5系统测试

5.1测试定义及目的

5.2性能测试

5.3测试模块

5.4测试结果

结论

参考文献

致  谢

摘要

随着科学技术的飞速发展,社会的方方面面、各行各业都在努力与现代的先进技术接轨,通过科技手段来提高自身的优势,实验室设备管理系统当然也不能排除在外。实验室设备管理系统是以实际运用为开发背景,运用软件工程开发方法,采用springboot技术构建的一个管理系统。整个开发过程首先对软件系统进行需求分析,得出系统的主要功能。接着对系统进行总体设计和详细设计。总体设计主要包括系统总体结构设计、系统数据结构设计、系统功能设计和系统安全设计等;详细设计主要包括模块实现的关键代码,系统数据库访问和主要功能模块的具体实现等。最后对系统进行功能测试,并对测试结果进行分析总结,及时改进系统中存在的不足,为以后的系统维护提供了方便,也为今后开发类似系统提供了借鉴和帮助。

本实验室设备管理系统采用的数据库是Mysql,使用springboot技术开发。在设计过程中,充分保证了系统代码的良好可读性、实用性、易扩展性、通用性、便于后期维护、操作方便以及页面简洁等特点。

关键词:实验室设备管理系统;springboot框架,Mysql 数据库

Abstract

With the rapid development of science and technology, all aspects of society and industries are striving to integrate with modern advanced technology and improve their advantages through technological means. Of course, laboratory equipment management systems cannot be excluded. The laboratory equipment management system is a management system developed based on practical application, using software engineering development methods and Springboot technology. The entire development process begins with a requirement analysis of the software system to determine its main functions. Then proceed with the overall and detailed design of the system. The overall design mainly includes system overall structure design, system data structure design, system function design, and system security design, etc; The detailed design mainly includes the key code for module implementation, system database access, and the specific implementation of the main functional modules. Finally, functional testing was conducted on the system, and the test results were analyzed and summarized to promptly improve the shortcomings in the system, providing convenience for future system maintenance and reference and assistance for the development of similar systems in the future.

The database used for the equipment management system in this laboratory is MySQL, developed using Springboot technology. During the design process, the system code was fully ensured to have good readability, practicality, scalability, universality, ease of maintenance, ease of operation, and concise pages.

Keywords:Laboratory equipment management system; Springboot framework, MySQL database

1 绪论

1.1 选题背景与意义

在科研工作中,实验室设备是不可或缺的重要资源。然而,传统的实验室设备管理方式往往面临着一些问题,如设备预约困难、维护保养不及时、数据追踪不完善等。这导致了设备利用率低下、操作风险增加以及科研进展受阻。因此,建立一个实验室设备管理系统具有重要的意义。该系统可以通过信息技术手段,实现对实验室设备的全生命周期管理,包括设备的入库、报修和报废等环节。通过系统化的管理流程和自动化的操作,可以提高设备的利用率和运行效率,避免冲突和浪费。同时,通过设备数据的记录和分析,可以更好地跟踪设备的使用情况和维护状态,为决策提供依据。

实验室设备管理系统的建立不仅有助于提高实验室设备的管理效率,还能提升科研工作的质量和效果。科研人员可以更方便地查找和预约需要的设备,减少时间和资源的浪费,提高实验数据的准确性和可靠性。此外,系统还可以提供设备故障的实时监测和报警功能,及时处理设备异常,保证实验室安全。本系统在于提高实验室设备管理的效率和精确性,促进科研工作的顺利进行,提升实验室的整体管理水平。这样的系统将为实验室管理者提供科学决策和精细化管理的支持,推动科研工作的创新与发展。

1.2国内外研究现状

在国内,实验室设备管理系统的研究主要集中在高校、科研院所和企业实验室等领域。一些学者从信息技术、工程管理和资源优化等角度进行深入研究,探讨如何构建高效、智能的实验室设备管理系统。同时,一些高校和科研机构也积极开展相关研究,并通过建设实验室设备管理系统来提升实验室的管理水平和科研效率。

在国外,实验室设备管理系统的研究同样受到重视。一些国际知名大学和科研机构开展了相关研究,并致力于开发先进的实验室设备管理系统。这些系统不仅着眼于设备的预约和调度,还强调设备维护和安全管理等方面。通过整合先进的信息技术、数据分析和人工智能等技术手段,这些系统提供了更高效、智能化的实验室设备管理解决方案。

综合来看,实验室设备管理系统的研究在国内外都取得了一定的进展。国内研究主要关注实验室管理的实际需求和技术应用,而国外研究则更加注重技术创新和智能化管理的发展。未来的研究可以进一步深入探讨实验室设备管理系统的功能扩展、数据分析等方面,结合具体的实验室环境和管理需求,进一步完善和推广实验室设备管理系统的设计和应用。这将为实验室提供更高效、智能化的设备管理解决方案,优化资源配置,推动科学研究的创新与发展。

1.3论文结构与章节安排

论文将分层次经行编排,除去论文摘要致谢文献参考部分,正文部分还会对系统需求做出分析,以及阐述大体的设计和实现的功能,最后罗列部分调测记录,论文主要架构如下:

第一章:引言。第一章主要介绍了课题研究的背景和意义,系统开发的国内外研究现状和本文的研究内容与主要工作。

第二章:系统需求分析。主要从系统的用户、功能等方面进行需求分析。

第三章:系统设计。主要对系统框架、系统功能模块、数据库进行功能设计。

第四章:系统实现。主要介绍了系统框架搭建、系统界面的实现。

第五章:系统测试。主要对系统的部分界面进行测试并对主要功能进行测试

第六章:总结。

2系统分析

系统分析是开发一个项目的先决条件,通过系统分析可以很好的了解系统的主体用户的基本需求情况,同时这也是项目的开发的原因。进而对系统开发进行可行性分析,通常包括技术可行性、经济可行性等,可行性分析同时也是从项目整体角度进行的分析。然后就是对项目的具体需求进行分析,分析的手段一般都是通过用户的用例图来实现。接下来会进行详细的介绍。

2.1.1 技术可行性分析

实验室设备管理系统在数据的存储上使用的MYSQL数据库,在实验室设备管理系统开发中使用了JAVA、HTML、TOMCAT、Springboot这些开发工具的使用,能够给我们的编写工作带来许多的便利。系统使用B/S模式进行开发,使系统的可扩展性和维护性更佳,减少系统配置代码,简化编程代码,目前B/S模式是目前最受欢迎的一种模式。

2.1.2 经济可行性分析

从经济可行性上看项目在开发阶段需要一台开发PC,在生产阶段需要web服务器和数据库服务器。一台个人PC从经济上来看也不是太多问题,在后期的系统部署生产上来说,服务器的投入也不会过高,在经济层面上是一个比较可行的。

2.1.3 法律可行性分析

系统从法律层面上来没有对第三方有其他放有法律层面的问题,系统数据库采用的Mysql 开源社区数据库、框架采用的是开源的Springboot。系统资讯和相关内容也是呵呵法律层面的。在源码的管理上采用git开源进行管理,所以在法律可行性上是成立的。

2.2 系统流程分析

2.2.1 数据新增流程

用户成功登入系统后能够实现增加数据的操作,增加数据的编号系统生成,用户不能随意填写,除了编号以外,其他增加信息用户自己填写,填写后的信息经过系统验证,验证通过后即可完成数据新增数据新增的流程图如下图2-1所示

图2-1 数据新增流程图

2.2.2 数据删除流程

如果系统里面存在一些没有用的数据,相关的管理人员还可以对这些数据进行删除,数据删除时流程图如下图2-2所示

图2-2数据删除流程图

2.3 系统功能分析

2.3.1 功能性分析

实验室设备管理系统我划分为了用户管理模块和管理员模块这两大部分。

用户角色:

(1)登录:用户可以通过登录功能进入系统,验证身份并访问相应的功能模块。

(2)实验设备管理:用户可以查询已借用或分配给自己的实验设备信息,包括设备名称、状态和归还日期等。

(3)设备入库管理:用户可以申请设备入库,并提供相应的设备信息,以便管理员审核和处理。

(4)设备报修管理:用户可以提交设备报修请求,描述设备故障情况,并跟踪维修进度。

(5)设备报废管理:用户可以申请设备报废,并提供报废原因和相关证明。

管理员角色:

(1)系统用户管理:管理员可以添加、删除和修改系统用户的信息,并分配相应的权限,(2)例如管理员权限和普通用户权限。

(3)实验设备管理:管理员可以录入、编辑和删除实验设备的信息,包括设备名称、型号、购买日期、供应商等。

(4)设备入库管理:管理员可以记录设备的入库信息,包括设备来源、采购价格、存放位置等,并进行设备的分配或领用。

(5)设备报修管理:管理员可以接收并处理设备报修请求,安排维修任务,并跟踪维修进度,以保持设备的正常运行。

(6)设备报废管理:管理员可以审核和处理设备报废申请,记录设备报废原因和相关信息,并进行设备的处置和清理工作。

(7)设备类型管理:管理员可以管理设备的分类和类型,包括添加、修改和删除设备类型,以便更好地组织和管理设备。

(8)个人信息:管理员和员工点击“个人信息”按钮,可以对个人的头像、昵称、手机号码等信息进行更新。

(9)修改密码:管理员和员工点击“修改密码”按钮,可以对登录密码进行更改,首先输入原密码,然后再输入新密码和确认密码,当原密码正确,输入两次新密码一致,则修改成功,否则给出错误提示信息。

2.3.2 非功能性分析

实验室设备管理系统的非功能性需求比如平台的安全性怎么样,可靠性怎么样,性能怎么样,可拓展性怎么样等。具体可以表示在如下2-3表格中:

2-3实验室设备管理系统非功能需求表

安全性

主要指实验室设备管理系统数据库的安装,数据库的使用和密码的设定必须合乎规范。

可靠性

可靠性是指实验室设备管理系统能够安装用户的指示进行操作,经过测试,可靠性90%以上。

性能

性能是影响实验室设备管理系统占据市场的必要条件,所以性能最好要佳才好。

可扩展性

比如数据库预留多个属性,比如接口的使用等确保了系统的非功能性需求。

易用性

用户只要跟着实验室设备管理系统的页面展示内容进行操作,就可以了。

可维护性

实验室设备管理系统开发的可维护性是非常重要的,经过测试,可维护性没有问题

2.4 系统用例分析

通过2.3功能的分析,得出了系统的用例图:

普通用户角色用例如图2-4所示。

图2-4普通用户角色用例图

管理员是维护整个实验室设备管理系统中所有数据信息的。管理员角色用例如图2-5所示。

图2-5实验室设备管理系统管理员角色用例图

2.5本章小结

本章主要通过对实验室设备管理系统的可行性分析、流程分析、功能需求分析、系统用例分析,确定整个系统要实现的功能。同时也为系统的代码实现和测试提供了标准。

3 系统总体设计

本章主要讨论的内容包括系统的功能模块设计、数据库系统设计。

3.1 系统架构设计

本系统从架构上分为三层:表现层(UI)、业务逻辑层(BLL)以及数据层(DL)。

图3-1系统架构设计图

表现层(UI):又称UI层,主要完成本系统的UI交互功能,一个良好的UI可以打打提高用户的用户体验,增强用户使用本系统时的舒适度。UI的界面设计也要适应不同版本的实验室设备管理系统以及不同尺寸的分辨率,以做到良好的兼容性。UI交互功能要求合理,用户进行交互操作时必须要得到与之相符的交互结果,这就要求表现层要与业务逻辑层进行良好的对接。

业务逻辑层(BLL):主要完成本系统的数据处理功能。用户从表现层传输过来的数据经过业务逻辑层进行处理交付给数据层,系统从数据层读取的数据经过业务逻辑层进行处理交付给表现层。

数据层(DL):由于本系统的数据是放在服务端的mysql数据库中,因此本属于服务层的部分可以直接整合在业务逻辑层中,所以数据层中只有数据库,其主要完成本系统的数据存储和管理功能。

3.2 系统功能模块设计

在上一章节中主要对系统的功能性需求和非功能性需求进行分析,并且根据需求分析了本系统中的用例。那么接下来就要开始对本系统的架构、主要功能和数据库开始进行设计。实验室设备管理系统根据前面章节的需求分析得出,其总体设计模块图如图3-2所示。

图3-2系统功能模块图

3.3 数据库设计

数据库设计一般包括需求分析、概念模型设计、数据库表建立三大过程,其中需求分析前面章节已经阐述,概念模型设计有概念模型和逻辑结构设计两部分。

3.3.1 数据库概念结构设计

下面是整个实验室设备管理系统中主要的数据库表总E-R实体关系图。

图3-3实验室设备管理系统总E-R关系图

3.3.2 数据库逻辑结构设计

通过上一小节中实验室设备管理系统中总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

用户编号:

表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

position

varchar

32

0

Y

N

位置:

8

mode

varchar

32

0

N

N

_blank

跳转方式:

9

add

tinyint

3

0

N

N

1

是否可增加:

10

del

tinyint

3

0

N

N

1

是否可删除:

11

set

tinyint

3

0

N

N

1

是否可修改:

12

get

tinyint

3

0

N

N

1

是否可查看:

13

field_add

text

65535

0

Y

N

添加字段:

14

field_set

text

65535

0

Y

N

修改字段:

15

field_get

text

65535

0

Y

N

查询字段:

16

table_nav_name

varchar

500

0

Y

N

跨表导航名称:

17

table_nav

varchar

500

0

Y

N

跨表导航:

18

option

text

65535

0

Y

N

配置:

19

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

创建时间:

20

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间:

表equipment_baox (设备入库)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

equipment_baox_id

int

10

0

N

Y

设备入库ID

2

regular_users

int

10

0

Y

N

0

普通用户

3

user_name

varchar

64

0

Y

N

用户名称

4

device_name

varchar

64

0

Y

N

设备名称

5

equipment_type

varchar

64

0

Y

N

设备类型

6

equipment_number

varchar

64

0

Y

N

设备编号

7

inventory_quantity

varchar

64

0

Y

N

入库数量

8

running_state

varchar

64

0

Y

N

运行状态

9

storage_date

date

10

0

Y

N

入库日期

10

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

11

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表equipment_repair_report (设备报修)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

equipment_repair_report_id

int

10

0

N

Y

设备报修ID

2

regular_users

int

10

0

Y

N

0

普通用户

3

user_name

varchar

64

0

Y

N

用户名称

4

device_name

varchar

64

0

Y

N

设备名称

5

equipment_type

varchar

64

0

Y

N

设备类型

6

running_state

varchar

64

0

Y

N

运行状态

7

equipment_number

varchar

64

0

Y

N

设备编号

8

number_of_repairs_reported

int

10

0

Y

N

0

报修数量

9

repair_date

date

10

0

Y

N

报修日期

10

repair_details

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

更新时间

表equipment_scrapping (设备报废)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

equipment_scrapping_id

int

10

0

N

Y

设备报废ID

2

regular_users

int

10

0

Y

N

0

普通用户

3

user_name

varchar

64

0

Y

N

用户名称

4

device_name

varchar

64

0

Y

N

设备名称

5

equipment_type

varchar

64

0

Y

N

设备类型

6

running_state

varchar

64

0

Y

N

运行状态

7

equipment_number

varchar

64

0

Y

N

设备编号

8

scrap_quantity

int

10

0

Y

N

0

报废数量

9

scrap_date

date

10

0

Y

N

报废日期

10

scrap_details

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

更新时间

表equipment_type (设备类型)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

equipment_type_id

int

10

0

N

Y

设备类型ID

2

equipment_type

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

更新时间

表experimental_equipment (实验设备)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

experimental_equipment_id

int

10

0

N

Y

实验设备ID

2

regular_users

int

10

0

Y

N

0

普通用户

3

user_name

varchar

64

0

Y

N

用户名称

4

device_name

varchar

64

0

Y

N

设备名称

5

equipment_type

varchar

64

0

Y

N

设备类型

6

device_images

varchar

255

0

Y

N

设备图片

7

equipment_number

varchar

64

0

Y

N

设备编号

8

number_of_devices

int

10

0

Y

N

0

设备数量

9

running_state

varchar

64

0

Y

N

运行状态

10

device_details

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

更新时间

表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:

表regular_users (普通用户)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

regular_users_id

int

10

0

N

Y

普通用户ID

2

user_name

varchar

64

0

Y

N

用户名称

3

user_gender

varchar

64

0

Y

N

用户性别

4

contact_information

varchar

64

0

Y

N

联系方式

5

examine_state

varchar

16

0

N

N

已通过

审核状态

6

user_id

int

10

0

N

N

0

用户ID

7

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

8

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表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

mediumint

8

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

创建时间:

15

vip_level

varchar

255

0

Y

N

会员等级

16

vip_discount

double

11

2

Y

N

0.00

会员折扣

表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

更新时间:

3.4本章小结

整个实验室设备管理系统的需求分析主要对系统总体架构以及功能模块的设计,通过建立E-R模型和数据库逻辑系统设计完成了数据库系统设计。

4系统关键模块设计与实现

实验室设备管理系统的详细设计与实现主要是根据前面的需求分析和总体设计来设计页面并实现业务逻辑。主要从界面实现、业务逻辑实现这两部分进行介绍。

4.1用户功能模块

4.1.1 用户功能界面

当用户进入后台实验室设备管理系统的时候,可以看到首页、实验设备管理、设备入库管理、设备报修管理、设备报废管理等功能,用户功能图如下图4-1所示。

图4-1 用户功能界面图

4.1.2用户登录界面

实验室设备管理系统中的注册后的用户是可以通过自己的账户名和密码进行登录的,当用户输入完整的自己的账户名和密码信息并点击“登录”按钮后,将会首先验证输入的有没有空数据,再次验证输入的账户名+密码和数据库中当前保存的用户信息是否一致,只有在一致后将会登录成功并自动跳转到实验室设备管理系统的首页中;否则将会提示相应错误信息,用户登录界面如下图4-2所示。

图4-2用户登录界面图

登录的逻辑代码如下所示。

/**

     * 登录

     * @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.select(map, new HashMap<>()).getResultList();

        }

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

            map.put("email", email);

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

        }

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

            map.put("phone", phone);

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

        }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.select(groupMap, new HashMap<>()).getResultList();

        if (groupList.size()<1){

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

        }

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

        //查询用户审核状态

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

            String sql = "select examine_state from "+ userGroup.getSourceTable() +" WHERE user_id = " + byUsername.getUserId();

            String res = String.valueOf(service.runCountSql(sql).getSingleResult());

            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());

            tokenService.save(accessToken);

            // 返回用户信息

            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, "账号或密码不正确");

        }

}

4.1.3 设备入库管理界面

当用户点击后台“设备入库管理”后,用户可以申请设备入库,并提供相应的设备信息,以便管理员审核和处理,界面如下图4-3所示。

图4-3设备入库管理界面图

4.1.4设备报废管理界面

当用户点击后台“设备报废管理”后,,用户可以申请设备报废,并提供报废原因和相关证明。界面如图4-4所示。

图4-4 设备报废管理界面图

4.2管理员功能模块

4.2.1 系统用户管理界面

实验室设备管理系统中的管理人员是可以对注册的用户进行管理的,也可以对管理员进行管控。界面如下图4-5所示。

图4-5系统用户管理界面图

用户管理关键代码如下:

  @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);

 }

4.2.2设备分类管理界面

管理员点击“设备分类管理”,管理员可以管理设备的分类和类型,包括添加、修改和删除设备类型,以便更好地组织和管理设备。界面如下图4-6所示。

图4-6设备分类界面图

4.2.3实验设备管理界面

管理员点击“实验设备管理”这一菜单,管理员可以录入、编辑和删除实验设备的信息,包括设备名称、型号、购买日期、供应商等。界面如下图4-7所示。

图4-7实验设备管理界面图

5系统测试

5.1测试定义及目的

关于系统实现的测试,英文名称是System TEST,简称ST,ST是使用完整其系统的各种功能多次、多案例、多环境测试,这是ST的简单描述。ST可以证明该功能对系统的要求是否得到满足以及是否有效。

对于系统开发的实现,不管开发过程多么努力,在系统运行的时候多少都会出现一些错误信息,所以为了系统的安全性及提高系统的使用率及给用户带来更好的体验,系统在完成之前,一定要进行一遍系统的测试,再完美的程序也会有漏洞,再细心的技术开发员也会有疏忽的时候,所以对于程序的测试是必须要做的一步。通过系统测试找到系统存在的问题,并根据问题的原因进行在线解决问题,如果找不到解决问题的办法可以进行通过咨询指导老师或者通过同学帮忙,一定将问题找出,否则将会出现更多的错误。所以程序出现错误时不可避免,系统测试虽然耗时费力,但是为了确保后期系统的长期使用,必须要进行系统测试,问题解决完成后还要再一步测试,直到没有任何问题后方可进行使用。

5.2性能测试

任何一款程序开发成功后都必须通过软件测试,它是保障软件稳定运行的前提。测试最主要的一步就是性能测试,性能测试内容如下:

(1)对于测试的速度有一定的要求,速度必须快,而且对于测试出来的错误问题一定以最快的速度进行处理解决,并且进行再次测试,保证整个系统运行的安全性。

(2)在系统测试的时候要将测试所用到的测试计划和测试报告保管好,方便后期系统的运行使用后的整体维护操作。

(3)软件测试整个过程中的聚类现象应优先考虑。

(4)对于整体系统测试,不要用自己的思想去认可整个系统,而是从公正的角度的进行对系统进行认可,是否符系统的整合应用。

5.3测试模块

测试系统是最新的Windows 10系统,通过对系统实现的功能模块进行每个功能模块的操作测试,查看每个用户的功能模块所对应的权限信息是否可以操作并且数据信息更新一致。

测试需求

测试重点

是否达成需求

结果

用户登录

输入账号密码

需求达成

通过

用户注册

创建新的账号密码

需求达成

通过

登录失败

输入错误账号密码

需求达成

通过

修改信息

修改成功

需求达成

通过

添加信息管理

增删查改

需求达成

通过

回复管理

增删查改

需求达成

通过

搜索查询管理

增删查改

需求达成

通过

                                                                                                                                          

系统测试方面,我们通常运用的是白盒测试以及黑盒测试这两种方法。白盒测试是指在了解系统内部工作流程的前提下,可以根据需求规范验证系统内部操作是否能够正常运行的测试;而黑盒测试指的是,倘若知道了这个系统的全部功能,可以进行测试检测系统中的每一个功能是否满足正常使用。

为了方便用户使用“实验室设备管理系统 ”,以及尽可能少的减少系统测试错误的发生,我们对该系统进行了相对应的测试。

对该系统的全部的功能界面进行测试,简单来说,就是我们输入一些数据并且对其进行提交,之后我们查看每个页面的反馈,检测页面的相关功能可不可以完全实现。

5.4测试结果

测试评估的结果是实验室设备管理系统 满足要求中的所有功能,处理大多数错误条件,修复大多数错误并通过测试。实验室设备管理系统 的基本功能都是可行的,不管是系统里面的功能还是界面的设计都是可值得推广宣传的。

结论

至此,实验室设备管理系统已经结束,在开发前做了许多的准备,在本系统的设计和开发过程中阅览和学习了许多文献资料,从中我也收获了很多宝贵的方法和设计思路,对系统的开发也起到了很重要的作用,系统的开发技术选用的都是自己比较熟悉的,比如Web、JAVA语言、MYSQL,这些技术都是在以前的学习中学到了,其中许多的设计思路和方法都是在以前不断地学习中摸索出来的经验,其实对于我们来说工作量还是比较大的,但是正是由于之前的积累与准备,才能顺利的完成这个项目,由此看来,积累经验跟做好准备是十分重要的事情。

当然在该系统的设计与实现的过程中也离不开老师以及同学们的帮助,正是因为他们的指导与帮助,我才能够成功的在预期内完成了这个系统。同时在这个过程当中我也收获了很多东西,此系统也有需要改进的地方,但是由于专业知识的浅薄,并不能做到十分完美,希望以后有机会可以让其真正的投入到使用之中。

参考文献

  • [1]石雨昕,关家兴,邹博华等. 基于SpringBoot微服务架构设计与实现实验室开放课题管理系统 [J]. 实验室检测, 2024, 2 (01): 101-106.
  • [2]翟祥栩,陈谦民,陈宗玉. 基于SpringBoot的农业大数据一站式分析预测平台的设计与实现 [J]. 现代信息科技, 2023, 7 (24): 6-10+15. DOI:10.19850/j.cnki.2096-4706.2023.24.002.
  • [3]洪保刘. 基于大数据+SpringBoot技术的全国传染病数据分析可视化平台 [J]. 数字技术与应用, 2023, 41 (11): 161-164. DOI:10.19695/j.cnki.cn12-1369.2023.11.50.
  • [4]张豪,朱石磊,胡建华等. 基于B/S架构的校园论坛系统的设计与实现 [J]. 电脑知识与技术, 2023, 19 (33): 32-35. DOI:10.14004/j.cnki.ckt.2023.1779.
  • [5]游晶,邱淑丽,李敬文. 基于SpringBoot的校园智慧报修系统的设计与实现 [J]. 电脑知识与技术, 2023, 19 (32): 50-52+65. DOI:10.14004/j.cnki.ckt.2023.1718.
  • [6]房明. 实验室信息化管理中RFID技术应用探索 [J]. 实验室科学, 2023, 26 (05): 74-79.
  • [7]朱宏涛. 基于JSP的MVC高职开放型实验管理系统的设计和实现 [J]. 信息记录材料, 2023, 24 (09): 224-226+229. DOI:10.16009/j.cnki.cn13-1295/tq.2023.09.077.
  • [8]况成忠,欧世锋. 基于云计算服务的配电设备检测实验室管理系统设计和实现 [J]. 机电信息, 2023, (14): 36-41. DOI:10.19514/j.cnki.cn32-1628/tm.2023.14.009.
  • [9]Xinbin L ,Kang C ,Siliang C , et al. IoT-based intelligent energy management system for optimal planning of HVAC devices in net-zero emissions PV-battery building considering demand compliance [J]. Energy Conversion and Management, 2023, 292
  • [10]申建军. 高校实验室安全管理系统设计 [J]. 山东化工, 2022, 51 (23): 197-200. DOI:10.19319/j.cnki.issn.1008-021x.2022.23.038.
  • [11]Yang Y . Design and Implementation of Student Information Management System Based on Springboot [J]. Advances in Computer, Signals and Systems, 2022, 6 (6):
  • [12]黄柯程. 基于二维码和NET技术的实验设备管理系统设计 [J]. 信息记录材料, 2022, 23 (11): 184-188. DOI:10.16009/j.cnki.cn13-1295/tq.2022.11.021.
  • [13]谢强,张丹丽. 高校实验室信息化管理平台建设 [J]. 数字技术与应用, 2022, 40 (10): 222-224. DOI:10.19695/j.cnki.cn12-1369.2022.10.67.
  • [14]徐佳欣. 基于物联网的无人实验室设备管理系统的设计与实现 [J]. 中国新通信, 2022, 24 (16): 40-42.
  • [15]樊云鹏. 高校实验室信息管理系统的设计与实现 [J]. 电脑知识与技术, 2022, 18 (17): 44-45+60. DOI:10.14004/j.cnki.ckt.2022.1190.
  • [16]邓鹏. 基于云平台的智能实验室重大设备安全管理系统设计 [J]. 机电工程技术, 2022, 51 (04): 139-141+276.
  • [17]Hejing W . Commerce Middle Office Management System Based on Springboot [J]. International Journal of Advanced Network, Monitoring and Controls, 2022, 7 (2): 32-45.
  • [18]孙澄宇,于军,鲁志海. 基于“互联网+”的高校实验室智能管理信息系统构建 [J]. 数字技术与应用, 2021, 39 (10): 129-131. DOI:10.19695/j.cnki.cn12-1369.2021.10.42.
  • [19]Cheng F . Talent Recruitment Management System for Small and Micro Enterprises Based on Springboot Framework [J]. Advances in Educational Technology and Psychology, 2021, 5 (2):
  • [20]A J T ,F T B ,L R P , et al. NexusLIMS: A Laboratory Information Management System for Shared-Use Electron Microscopy Facilities. [J]. Microscopy and microanalysis : the official journal of Microscopy Society of America, Microbeam Analysis Society, Microscopical Society of Canada, 2021, 27 (3): 11-17.

致  谢

转眼间,大学生用户活便已经接近尾声,人面对着离别与结束,总是充满着不舍与茫然,我亦如此,仍记得那年秋天,我迫不及待的提前一天到了学校,面对学校巍峨的大门,我心里充满了期待:这里,就是我新生活的起点吗?那天,阳光明媚,学校的欢迎仪式很热烈,我面对着一个个对着我微笑的同学,仿佛一缕缕阳光透过胸口照进了我心里,同时,在那天我认识可爱的室友,我们携手共同度过了这难忘的两年。如今,我望着这篇论文的致谢,不禁又要问自己:现在,我们就要说再见了吗?

感慨莫名,不知所言。遥想当初刚来学校的时候,心里总是想着学校会过于板正,会缺乏一些柔情,当时心里甚至有一点点排斥,但是随着我对学校的慢慢认识与了解,我才认识到了她的美丽,她的柔情,并且慢慢的喜欢上了这个校园,但是时间太快了,快到我还没有好好体会她的美丽便要离开了,但是她带给我的回忆,永远不会离开我,也许真正离开那天我的眼里会满含泪水,我不是因为难过,我只是想将她的样子映在我的泪水里,刻在我的心里。最后,感谢我的老师们,是你们教授了我们知识与做人的道理;感谢我的室友们,是你们陪伴了我如此之久;感谢每位关心与支持我的人。

免费领取项目源码,请关注❥点赞收藏并私信博主,谢谢~

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值