本文通过采用B/S架构,springboot框架以及MySQL数据库技术,结合国内工地管理系统现状,开发了一个智慧工地管理系统。本系统实现了系统设计目标,相对于人工管理方式,本系统有效的减少了工地管理的经济投入,并且将进一步推动智慧工地事业的现代化和智能化进程。
关键词:智慧工地;springboot;MySQL数据库
This paper develops an intelligent site management system by using B/S architecture, springboot framework and MySQL database technology, combined with the current situation of domestic site management system. Compared with manual management, this system effectively reduces the economic input of site management, and will further promote the modernization and intelligent process of smart site business.
Key words: smart construction site; springboot; MySQL database
目 录
4.4.3 管理员修改用户信息时序图...................................................................... 29
1 绪 论
随着城市化进程的加速,建筑施工行业在国民经济中的地位日益重要。然而,传统的建筑施工管理方式已经难以满足现代社会对工程质量、安全、环保和效率的要求。为了应对这些挑战,智慧工地管理系统应运而生。智慧工地管理系统是一种基于互联网的创新型建筑施工管理解决方案。它通过在线管理,实现了对工地人员、设备、材料和环境的全面管理,提高了施工效率和安全性,降低了成本和风险。
智慧工地管理系统为建筑施工行业带来了革命性的变革。它不仅提高了施工效率和质量,降低了成本和风险,还为管理者提供了更加便捷、高效的工作方式。随着互联网技术的不断发展和完善,智慧工地管理系统将在未来的建筑市场中发挥越来越重要的作用。
智慧工地管理系统是一种基于互联网的创新型建筑施工管理解决方案。它通过在线管理,实现了对管理员,供应商,施工方,设计方,监理方的全面管理,提高了施工效率和安全性,降低了成本和风险。
本课题的研究具有重要的理论意义和实践价值。通过对智慧工地管理系统的深入研究,可以为建筑施工行业提供更加先进、高效的管理工具和方法,促进行业的可持续发展。同时,本课题的成果也将为相关领域的研究和实践提供有益的启示和借鉴。
1.3 课题研究现状
在国外,智慧工地管理系统的研究和应用已经取得了一定的成果。许多发达国家的建筑施工企业已经开始尝试使用这种系统,以提高施工效率和安全性。例如,美国的一些大型建筑公司已经开始使用基于互联网技术的智慧工地管理系统,实现了对工地人员、设备、材料和环境的实时监控和管理。此外,欧洲和澳大利亚等国家也在积极探索智慧工地管理系统的应用,以应对日益严峻的环境和安全挑战。
在国内,智慧工地管理系统的研究和应用也呈现出蓬勃发展的态势。许多高校和研究机构已经开始开展相关研究,探讨如何将互联网应用于建筑施工管理。一些建筑施工企业也开始尝试使用智慧工地管理系统,以提高施工效率和安全性。
1.4 论文主要工作内容
本系统开发时,选择了Java作为后端开发语言,并采用Spring Boot框架,后者带来了开箱即用的便利性,大大加快了开发速度。数据存储和操作则采用了MySQL数据库。前端开发部分,使用了HTML、CSS、JavaScript以及Vue.js这一流行的前端框架,使得界面设计和用户交互变得更加直观和便捷。在开发工具方面,选用了Eclipse以及Navicat,其中Eclipse作为一款成熟的开发工具,带来了丰富的功能和强大的支持,而Navicat作为数据库管理工具,提供了友好的用户界面和强大的SQL处理能力,从而大大提高了开发效率。系统分为管理员,供应商,施工方,设计方,监理方共5个角色,主要包括供应商管理, 施工方管理,设计方管理,监理方管理,施工信息管理,区域管理,施工进度管理,安全管理,报警通知管理,协同工作管理,考勤信息管理,物料信息管理,物料分类管理,物料配送管理,用户信息等功能。
2 系统关键技术
2.1 java简介
本套系统的开发环境主要是使用了Java编程语言,Java是作为一种高级面向对象编程语言,不但充分吸取到了C++等编程语言里的几乎所有的优势,还完全摒弃掉了在C++语言里所无法完全理解到的诸如多态继承、指针映射等概念,Java吸收了C++等语言中好的一面,将不好之处,删除替换。取其精华,使得它的功能更加强大,且十分简洁。
Java语言的特点特色十分多,它不仅简单性、健壮,并且可移植性很好,相比其他语言Java语言更加安全和独立,它还具有多线程和动态性的特点。Java语言常用于编写桌面开发,系统的前端设计以及嵌入式开发系统的应用开发等。
2.2 MySQL数据库
数据库系统是一个进行数据存储的系统,数据库就是这个系统的库,用来存放通过系统的数据,数据库在开发人员的日常生活中,占据了很大的地位。因为使用数据可以使自己系统存储数据更加方便、快捷。
MySQL之所以受到广大开发人员的欢迎,主要原因使因为数据库的使用是免费的。最开始的数据库研发出后,是需要收费的,但是随着MySQL的出现和不断更新,越来越多的用户去使用这款软件。首先它是开源且免费的,这样大大减少了开发的成本;第二MySQL可以在多个系统上使用,在MAC、Windows和Linux上都可以使用。其次它的性能也是十分强大的,性价比极高。最后,MySQL相比其他数据库语言来说,更加简单易于上手;可以与很多系统搭建联系,比如本文使用的Java。
2.3 B/S结构
B/S架构,也就是浏览器/Server (Browser/Server),是在因特网技术发展过程中, C/S架构的一种改变和完善。采用该架构,可以充分利用 WWW的浏览器来完成用户接口,而在前端完成交易的部分业务,而服务端则完成了交易的基本功能。这就构成了3- tier的构造。B/S体系架构,采用了日益完善的 WWW技术,将各种 Script、 VBScript、 JavaScript、 ActiveX等技术相融合,通过一款普通的网络浏览器,既可以完成一些复杂的特定程序,又可以节省大量的资源,又可以节省大量的资源。由于视窗98/2000把浏览器技术移植到了操作系统中,所以这个架构现在已经是目前最受欢迎的应用程序架构了。
B/S架构,也就是浏览/伺服器(Browser/Server)架构,是指仅有一个伺服器(Server)被安装,而客户机则使用浏览(Browse)来执行该软件。这是因特网技术出现后, C/S架构的一种改变与完善。它充分运用日益完善的 WWW技术,并将各种 Script、 JavaScript、 ActiveX等 Script技术相融合,形成了一个崭新的体系结构技术。
2.4 SpringBoot框架
Spring Boot是由Pivotal的开发团队在2013年开发的一个免费、轻量级、开源的系统框架。SpringBoot的主要设计思想是约定大于配置,因此SpringBoot在设计时几乎达到零配置。SpringBoot集成了业界的开源框架。
SpringBoot是一个非常强大的后台框架,因为SpringBoot的开发基本上不需要写配置文件,所以利用SpringBoot来构建网站的后台环境,在SpringBoot的YML配置文件中写项目启动端口,项目就可以启动了。项目的Java和静态文件由SpringBoot管理。
3 系统分析
3.1 可行性分析
智慧工地管理系统主要目标是实现网上的相关信息管理服务。在确定了目标后,我们从以下四方面对能否实现本系统目标进行可行性分析。
3.1.1 技术可行性
技术上的可操作性是项目建设顺利进行的一个关键因素,技术措施必须达到要求,方能使项目顺利进行。该方案使用了开放源码的代码,并使用 Java等技术,对软件的设计具有适度的困难和对电脑的硬件需求。所有的语言都很容易使用。该项目具有技术上的可行性。
3.1.2 操作可行性
当今社会,电脑已经是耳熟能详的存在了,绝大部分用户都可以通过电脑轻松操作本系统。由此可知,我们的管理系统对于绝大部分用户来说,操作是完全可行的,并不存在操作上的盲区。
3.1.3 经济可行性
本系统所需要用到的所以的工具都是开源,不收费的,并且本系统因为不具有太过于复杂的结构,用户维护系统的费用也不高。所以,本系统的经济可行性是可行的。
3.1.4 法律可行性
此智慧工地管理系统是自己设计的管理系统,具有很大的实际意义。因为无论是软件还是数据库,采用的都是开源代码,因此这个系统的开发和设计,并不存在侵权等问题,在法律上完全具有可行性。
综上所述,智慧工地管理系统在技术、经济、操作和法律上都具有很高的可行性,开发此程序是可行的。
3.2 系统性能分析
3.2.1 系统安全性
智慧工地管理系统必须由领导机构严格执行。具体要求如下:
(1)如果要使用智慧工地管理系统,必须先注册才能进行登录。未获许可的使用者,不可以任意的方法,进入或浏览系统资讯及资料,因而本系统将会得到保护。
(2)在不同司法管辖区的具体实施。使用其他权限登录时,无法跳过此操作。
(3)如果专门应用,该系统将包含许多必须保密的数据和信息。该系统存在系统漏洞,发布此信息将给客户造成重大损失。因此,我们充分保证了该规则和系统的发展趋势。
3.2.2 数据完整性
(1)必须对所有的数据进行详尽的记载,而该信息的内容不得为空白。
(2)各种资料的关联一定要恰当。
(3)在不同的档案中,同一资料资讯应该互相相符。
3.3 系统功能分析
智慧工地管理系统主要有管理员,供应商,施工方,设计方和监理方五个功能模块。以下将对五个功能的作用进行详细的剖析。
管理员模块:管理员是系统中的核心用户,管理员登录后,可以对后台系统进行管理。主要功能有供应商管理, 施工方管理,设计方管理,监理方管理,施工信息管理,区域管理,施工进度管理,安全管理,报警通知管理,协同工作管理,考勤信息管理,物料信息管理,物料分类管理,物料配送管理,用户信息等功能。管理员用例如图3-1所示。
图3-1 管理员用例图
施工方:施工方进入系统可以实现对施工信息管理,施工进度管理,安全管理,报警通知管理,协同工作管理,考勤信息管理,物料信息管理,物料配送管理,用户信息等信息进行操作。施工方用例如图3-2所示。
图3-2 施工方用例图
供应商:供应商进入系统可以实现对物料信息管理,物料分类管理,物料配送管理,用户信息等信息进行操作。供应商用例如图3-3所示。
图3-3供应商用例图
设计方:设计方进入系统可以实现对施工信息管理,施工进度管理,安全管理,协同工作管理,用户信息等信息进行操作。设计方用例如图3-4所示。
图3-4 设计方用例图
监理方:监理方进入系统可以实现对施工信息管理,施工进度管理,安全管理,协同工作管理,用户信息等信息进行操作。监理方用例如图3-5所示。
图3-5 监理方用例图
3.4 系统流程分析
3.4.1 数据开发流程
智慧工地管理系统开发时,首先对此系统进行需求分析,进而对系统进行模块、编码等详细设计总体的设计规划,设计系统功能模块,数据库的选择等,本系统的开发流程如图3-6所示
图3-6系统开发流程图
3.4.2 用户登录流程
要想利用这个软件来进行系统的安全管理,首先需要登录到该软件中。如图3-7所示。
图3-7 登录流程图
3.4.3 系统操作流程
用户登录系统时需要输入正确的用户名和密码,数据库在进行匹配核实后匹配结果正确才能进入系统,若错误则提示用户名或密码错误,即无法登录。操作流程如图3-8所示。
图3-8 系统操作流程图
3.4.4 添加信息流程
管理员可以添加信息,用户添加可以自己权限内的信息,输入信息后,要想利用这个软件来进行系统的安全管理,首先需要登录到该软件中。添加信息流程如图3-9所示。
图3-9 添加信息流程图
3.4.5 修改信息流程
管理员可以修改智慧工地管理信息,用户可以修改自己权限内的信息,首先进入修改信息界面,输入需要修改信息,在系统进行判定为正确和合规后修改成功,并将数据更新至数据库。信息不合法则修改失败,重新输入。修改信息流程图如图3-10所示。
图3-10修改信息流程图
3.4.6 删除信息流程
管理员可以删除智慧工地管理信息,点击删除按钮,系统会提示是否删除信息,点击确定,则信息被删除,数据库中的信息随之删除,删除信息流程图如图3-11所示。
图3-11 删除信息流程图
4 系统设计
4.1 系统概要
在对该方法进行了系统的解析之后,进行了一个包括了整体和细节的记性系统的设计。整体的设计仅仅是一个整体的方案,通过整体的方案,我们可以将整个体系中的某些部分分割开来,比如文件,文档,数据等等。经过整体的规划,我们可以将这些软件的各个部分,都分成了不同的部分。不过这仅仅是一种初步的分类,并未实际实施。
总体来说,这是一个初步的方案,也是一个工程。我们可以进行多种方案的综合,在比较中,从性能、成本、效益三方面进行比较,最后得出最佳的产品,选用好的总体设计能够减少成本,提高企业效益,从这一点来讲,整体设计非常重要的。
智慧工地管理系统工作原理图如图4-1所示:
图4-1 系统工作原理图
4.2 系统结构设计
架构图是系统的体系结构,体系结构是体系结构体系的重要组成部分。智慧工地管理系统的总体结构设计如图4-2所示。
图4-2 系统总体架构图
4.3数据库设计
在电脑资讯系统中,以资料库为基础。当前计算机体系中最重要的是数据库。数据库的发展好坏,直接关系到整个系统的性能与运行效率。
4.3.1 数据库设计原则
利用 ER模式进行数据库的概念结构设计。E-R模型法的组成元素有:实体、属性、联系,E-R模型用E-R图表示,是一个关于工作环境中的事件的信息,而一个属性是关于物理特征的说明。在系统的设计过程中,资料库发挥了关键作用。下面设计出这几个关键实体的实体—关系图。
4.3.2 数据库实体
在一个资料模式中,一个被称作“实例”的实体,与真实的“事件”或者“物体”相匹配,可以与其它物体区分开来。例如,公司中的每个员工,家里中的每个家具。
本系统的实体属性图如下图所示:
1、施工方实体图如图4-3所示:
图4-3施工方实体图
2、设计方实体图如图4-4所示:
图4-4设计方实体图
3、监理方实体图如图4-5所示:
图4-5监理方实体图
4、供应商实体图如图4-6所示:
图4-6供应商实体图
4.3.3 数据库表设计
智慧工地管理系统有一个内部数据库。对于数据库系统设计一般基于对我国现有企业数据库系统进行优化管理的操作系统。通常广泛采用的企业数据库资源管理软件系统主要类型包括mysqlserver、mysql、oracle等。该管理系统主要采用了mysql大型数据库资源管理软件。
下表将详细列出智慧工地管理系统的数据库中所有列表。每一份量表的设计成果列出数据库的表信息属于设计的一部分,下面介绍数据库中的各个表的详细信息。
表4-1:施工方
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
renyuanzhanghao | varchar | 200 | 人员账号 | ||
mima | varchar | 200 | 密码 | ||
renyuanxingming | varchar | 200 | 人员姓名 | ||
xingbie | varchar | 200 | 性别 | ||
touxiang | longtext | 4294967295 | 头像 | ||
renyuanshouji | varchar | 200 | 人员手机 |
表4-2:设计方
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
shejizhanghao | varchar | 200 | 设计账号 | ||
mima | varchar | 200 | 密码 | ||
shejixingming | varchar | 200 | 设计姓名 | ||
xingbie | varchar | 200 | 性别 | ||
shejidianhua | varchar | 200 | 设计电话 |
表4-3:区域
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
quyu | varchar | 200 | 区域 |
表4-4:考勤信息
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
renyuanzhanghao | varchar | 200 | 人员账号 | ||
renyuanxingming | varchar | 200 | 人员姓名 | ||
renyuanshouji | varchar | 200 | 人员手机 | ||
kaoqinyuefen | varchar | 200 | 考勤月份 | ||
yingchuqintianshu | int | 应出勤天数 | |||
queqintianshu | double | 缺勤天数 | |||
qingjiatianshu | double | 请假天数 | |||
zaotuitianshu | double | 早退天数 | |||
chidaotianshu | double | 迟到天数 | |||
shijichuqintianshu | double | 实际出勤天数 | |||
dengjishijian | datetime | 登记时间 |
表4-5:监理方
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
jianlizhanghao | varchar | 200 | 监理账号 | ||
mima | varchar | 200 | 密码 | ||
jianlixingming | varchar | 200 | 监理姓名 | ||
xingbie | varchar | 200 | 性别 | ||
jianlidianhua | varchar | 200 | 监理电话 |
表4-6:协同工作
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
xiangmubianhao | varchar | 200 | 项目编号 | ||
xiangmumingcheng | varchar | 200 | 协同名称 | ||
xietongneirong | longtext | 4294967295 | 协同内容 | ||
xietongyuanyin | longtext | 4294967295 | 协同原因 | ||
xietongmude | longtext | 4294967295 | 协同目的 | ||
renyuanzhanghao | varchar | 200 | 人员账号 | ||
renyuanxingming | varchar | 200 | 人员姓名 | ||
shejizhanghao | varchar | 200 | 设计账号 | ||
shejixingming | varchar | 200 | 设计姓名 | ||
jianlizhanghao | varchar | 200 | 监理账号 | ||
jianlixingming | varchar | 200 | 监理姓名 | ||
xietongriqi | date | 协同日期 |
表4-7:供应商
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
gongyingshangzhanghao | varchar | 200 | 供应商账号 | ||
mima | varchar | 200 | 密码 | ||
gongyingshangmingcheng | varchar | 200 | 供应商名称 | ||
tupian | longtext | 4294967295 | 图片 | ||
lianxidianhua | varchar | 200 | 联系电话 | ||
gongyingshangdizhi | varchar | 200 | 供应商地址 |
表4-8:物料分类
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
wuliaofenlei | varchar | 200 | 物料分类 |
表4-9:物料信息
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
wuliaobianhao | varchar | 200 | 物料编号 | ||
wuliaomingcheng | varchar | 200 | 物料名称 | ||
wuliaofenlei | varchar | 200 | 物料分类 | ||
shuliang | int | 库存数量 | |||
wuliaoyongtu | longtext | 4294967295 | 物料用途 | ||
wuliaoxiangqing | longtext | 4294967295 | 物料详情 | ||
gongyingshangzhanghao | varchar | 200 | 供应商账号 | ||
gongyingshangmingcheng | varchar | 200 | 供应商名称 | ||
lianxidianhua | varchar | 200 | 联系电话 | ||
dengjiriqi | date | 登记日期 |
表4-10:配置文件
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
name | varchar | 100 | 配置参数名称 | ||
value | varchar | 100 | 配置参数值 | ||
url | varchar | 500 | url |
表4-11:用户表
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
username | varchar | 100 | 用户名 | ||
password | varchar | 100 | 密码 | ||
image | varchar | 200 | 头像 | ||
role | varchar | 100 | 角色 | 管理员 | |
addtime | timestamp | 新增时间 | CURRENT_TIMESTAMP |
表4-12:物料配送
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
wuliaobianhao | varchar | 200 | 物料编号 | ||
wuliaomingcheng | varchar | 200 | 物料名称 | ||
wuliaofenlei | varchar | 200 | 物料分类 | ||
shuliang | int | 配送数量 | |||
wuliaoyongtu | varchar | 200 | 物料用途 | ||
gongyingshangzhanghao | varchar | 200 | 供应商账号 | ||
gongyingshangmingcheng | varchar | 200 | 供应商名称 | ||
lianxidianhua | varchar | 200 | 联系电话 | ||
peisongshijian | date | 配送时间 |
表4-13:报警通知
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
baogaomingcheng | varchar | 200 | 报告名称 | ||
xiangmubianhao | varchar | 200 | 项目编号 | ||
xiangmumingcheng | varchar | 200 | 项目名称 | ||
shigongdanwei | varchar | 200 | 施工单位 | ||
quyu | varchar | 200 | 报警区域 | ||
shigongtupian | longtext | 4294967295 | 施工图片 | ||
jiankongshipin | longtext | 4294967295 | 报警视频 | ||
shigongdizhi | varchar | 200 | 报警地址 | ||
baojingyuanyin | longtext | 4294967295 | 报警原因 | ||
baojingshijian | datetime | 报警时间 | |||
renyuanzhanghao | varchar | 200 | 人员账号 | ||
renyuanxingming | varchar | 200 | 人员姓名 | ||
renyuanshouji | varchar | 200 | 人员手机 |
表4-14:token表
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
userid | bigint | 用户id | |||
username | varchar | 100 | 用户名 | ||
tablename | varchar | 100 | 表名 | ||
role | varchar | 100 | 角色 | ||
token | varchar | 200 | 密码 | ||
addtime | timestamp | 新增时间 | CURRENT_TIMESTAMP | ||
expiratedtime | timestamp | 过期时间 | CURRENT_TIMESTAMP |
表4-15:安全管理
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
xiangmubianhao | varchar | 200 | 项目编号 | ||
xiangmumingcheng | varchar | 200 | 项目名称 | ||
quyu | varchar | 200 | 区域 | ||
shigongdanwei | varchar | 200 | 施工单位 | ||
shigongtupian | longtext | 4294967295 | 施工图片 | ||
jiankongshipin | longtext | 4294967295 | 监控视频 | ||
shigongdizhi | varchar | 200 | 施工地址 | ||
guizhangzhidu | longtext | 4294967295 | 规章制度 | ||
gengxinshijian | datetime | 更新时间 |
表4-16:施工信息
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
xiangmubianhao | varchar | 200 | 项目编号 | ||
xiangmumingcheng | varchar | 200 | 项目名称 | ||
shigongdanwei | varchar | 200 | 施工单位 | ||
shigongtupian | longtext | 4294967295 | 施工图片 | ||
quyu | varchar | 200 | 区域 | ||
xiangmufuzeren | varchar | 200 | 项目负责人 | ||
shigongneirong | longtext | 4294967295 | 施工内容 | ||
shigongzhuangtai | varchar | 200 | 施工状态 | ||
shigongdizhi | varchar | 200 | 施工地址 | ||
kaishishijian | date | 开始时间 | |||
jieshushijian | date | 结束时间 | |||
dengjishijian | datetime | 登记时间 | |||
renyuanzhanghao | varchar | 200 | 人员账号 | ||
renyuanxingming | varchar | 200 | 人员姓名 | ||
renyuanshouji | varchar | 200 | 人员手机 |
表4-17:施工进度
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
xiangmubianhao | varchar | 200 | 项目编号 | ||
xiangmumingcheng | varchar | 200 | 项目名称 | ||
xiangmufuzeren | varchar | 200 | 项目负责人 | ||
shigongtupian | longtext | 4294967295 | 施工图片 | ||
quyu | varchar | 200 | 区域 | ||
shigongdizhi | varchar | 200 | 施工地址 | ||
shigongjindu | varchar | 200 | 施工进度 | ||
jinduxiangqing | longtext | 4294967295 | 进度详情 | ||
anquanzhuangkuang | longtext | 4294967295 | 安全状况 | ||
zhiliangqingkuang | longtext | 4294967295 | 质量情况 | ||
shigongdanwei | varchar | 200 | 施工单位 | ||
dengjishijian | datetime | 登记时间 | |||
renyuanzhanghao | varchar | 200 | 人员账号 | ||
renyuanxingming | varchar | 200 | 人员姓名 | ||
renyuanshouji | varchar | 200 | 人员手机 |
4.4 系统时序图
对于系统设计的详细描述主要采用了时序图的方式,时序图描述了对象之间传递消息的时间顺序, 用来表示用例中的行为顺序, 是强调消息时间顺序的交互图; 时序图描述的事物: 时序图描述系统中类和类之间的交互, 将这些交互建模成消息交换, 时序图描述了类以及类之间的交换以完成的期望行为的消息, 时序图中每条消息都代表了类的一个操作或者引起状态机改变的触发事件。
4.4.1 注册时序图
注册时序图,如图4-7所示。
图4-7注册时序图
4.4.2 登录时序图
登录时序图如图4-8所示。
图4-8 登录时序图
4.4.3 管理员修改用户信息时序图
管理员修改用户信息时序图如图4-9所示。
图4-9 管理员修改用户信息时序图
5 系统的实现
5.1 基本任务
该系统的实施方式是指能精确地描绘要实施的对象,以便后续的代码可以按照系统的实际情况用编程的方式来写相应的软件。
系统实现的基本任务如下:
(1)模块的数据结构进行设计,在之前的需求分析、概要设计中更加明确地界定更加含糊的资料类型。
(2)更加精确地对每个模板进行了更加细致的算法设计,并对每个组件的处理过程进行了算法的说明。
(3)执行实体化的资料库。
(4)其他设计:有时候,还要考虑到系统的不同,如:输入/输出格式设计、代码设计、人机对话设计等。
(5)对系统的说明书进行编写。
(6)评审:审查程序中的规则和数据库的实体构造。
系统结构可分为具有三个不同功能的包的java源代码、系统的数据库文件、界面代码。java源代码中三个不同包分别为控制、逻辑、缩写层,分别控制也不同的程序具有不同的性质。有了他们就能对系统的数据进行增删改查,完成界面的显示和数据统计,产生随机数和属性文件的读取。定时器类、翻页工具类等,包含了日期转换、字符串处理、获取编译环境等信息。这些类极大地方便了Java编程,日常开发中,经常要用来这些类。
5.2 管理员功能模块
系统登录,在登录页面选择需要登录的角色,在正确输入用户名和密码后,进入操作系统进行操作;如图5-1所示。
图5-1系统登录界面
管理员进入主页面,主要功能包括对供应商管理, 施工方管理,设计方管理,监理方管理,施工信息管理,区域管理,施工进度管理,安全管理,报警通知管理,协同工作管理,考勤信息管理,物料信息管理,物料分类管理,物料配送管理,用户信息等进行操作。管理员主页面如图5-2所示:
图5-2管理员主界面
管理员点击供应商管理。进入供应商管理页面输入供应商名称可以搜索、新增、删除供应商管理列表,并根据需要对供应商管理列表进行详情、更改和删除等操作。如图5-3所示:
图5-3供应商管理界面
管理员点击施工信息。进入施工信息页面输入项目名称可以搜素或删除施工信息列表,并根据需要对施工信息列表进行详情、管理、更改或删除操作。如图5-4所示:
图5-4施工信息界面
管理员点击施工进度。进入施工进度页面输入项目名称和施工进度可以搜索或删除施工进度列表,并根据需要对施工进度列表进行详情、更改或删除操作。如图5-5所示:
图5-5施工进度界面
5.3 施工方功能模块
施工方进入主页面,主要功能包括对施工信息管理,施工进度管理,安全管理,报警通知管理,协同工作管理,考勤信息管理,物料信息管理,物料配送管理,用户信息等进行操作。施工方主页面如图5-6所示:
图5-6施工方主界面
5.4 供应商功能模块
供应商进入主页面,主要功能包括对物料信息管理,物料分类管理,物料配送管理,用户信息等进行操作。供应商主页面如图5-7所示:
图5-7供应商主界面
5.5 设计方功能模块
设计方进入主页面,主要功能包括对施工信息管理,施工进度管理,安全管理,协同工作管理,用户信息等进行操作。设计方主页面如图5-8所示:
图5-8设计方主界面
5.6 监理方功能模块
监理方进入主页面,主要功能包括对施工信息管理,施工进度管理,安全管理,协同工作管理,用户信息等进行操作。监理方主页面如图5-9所示:
图5-9监理方主界面
6 系统测试
6.1 测试环境
智慧工地管理系统的测试环境如表6-1所示。
表6-1 测试环境信息表
分类 | 名称 | 版本 |
操作系统 | Windows | 7 |
数据库 | MySQL | 8.0 |
浏览器 | Chrome | 87.0.4280.88 |
6.2 测试目的
进行软件测试主要是为了验证产品或者系统是否完成了实现功能,测试能够防止系统出现错误,还能降低开发成本减少不必要的花销,其次测试的好处包括防止错误、降低开发成本和提高性能。其次,通过软件的检测可以对项目的安全性进行鉴别。向开发人员提供软件测试的反馈,并为项目的安全性评价提供必要的资料。此外,软件的检测保证在正式发布之前能够满足在线要求。在每一个开发过程中不断跟踪和对软件的测试。还有,软件测试还能保证系统到达预期的标准,从而能够尽快上线。
在本系统中,主要测试前端和后端,分别对系统的不同模块进行测试,比如用户主持、用户登录等功能是否实现,实现过程中是否出现问题等。是否能够处理不同的数据。前端主要测试:用户界面的实现和不同界面的交互情况,后端主要测试系统经过管理后前后端链接是否顺畅,前端界面是否及时更新,更新是有误。
6.3 测试概述
1.测试的原则
(1)测试应该以顾客的需要为基础。从用户的观点来考虑,最大的问题是软件不能达到用户的预期。有时候,软件产品的测试结果非常完美,但却不是客户最终想要的产品,那么软件产品的开发就是失败的,而测试工作也是没有任何意义的。因此测试应依照客户的需求配置环境,并且按照客户的使用习惯进行测试并评价结果。
(2)尽早测试。由于软件开发过程中的各种不同的环节都会出现问题,所以要及早进行测试,将软件的检测工作渗透到整个软件的整个寿命过程,使测试者可以及早地察觉并防止这些缺陷。减少了 bug修理费用。
(3)穷尽测试是不可能的。因为受时间和财力的制约,无法实现所有不同的输入和输出的综合测试,测试者能够基于测试的风险和轻重缓急等来决定测试的重点,由此来进行测试,并在测试成本、风险和收益间找到一个平衡点。
(4)遵循GoodEnough原则。GoodEnough原则是指测试的投入与产出要适当权衡,形成充分的质量评估过程,这个过程建立在测试花费的代价之上。测试不充分无法保证软件产品的质量,但测试投入过多会造成资源的浪费。随着测试资源投入的增加,测试的产出也是增加的,但当投入达到饱和时,测试的效果也逐渐达到饱和。
(5)测试缺陷要符合“二八”定理。缺陷“二八”理论又名 Pareto原理、缺陷集群效应,通常80%的缺陷都会出现在20%的组件上,缺陷的分配并不均匀。所以在测试中要把握好问题的关键,当发现一些问题较多的时候,就需要花更多的时间和精力来测试它们,以增加测试的效果。
(6)避免缺陷免疫:我们都了解昆虫耐药的原则,也就是长期服用某种药品后,昆虫会对其有抵抗力。而在软件测试中,缺陷也是会产生免疫性的。重复地重复同一个测试案例,找出 bug的机会就会变得更糟;对于软件来说,越是熟练的测试员,就越是忽视那些看似很微小的问题,越是难以找到错误,而这就是所谓的“杀虫剂”效应。这是因为测试者不能按时进行测试案例的升级,也可能是因为他们太了解测试案例和目标而导致的。
2.测试的方法
测试方法主要有人工测试和机器测试两种测试方法。
(1)人工测试
人工测试又称代码复审,包括个人复查、走查、会审三种方法。
(2)机器测试
计算机检测有两种方式:黑盒测试和白盒测试。黑盒测试:从外观上找出它的缺点和错误。黑盒测试是在编程接口上进行的,它仅仅是为了检验样品的执行情况,而不是根据要求规范的要求进行;白盒测试:对软件的内在构造进行了剖析,即在编程接口上进行了试验,其目的仅仅在于检验样品的执行情况,而不能满足要求规范的要求,检测来寻找问题。
在最终的检测中,本研究采取了将后黑盒子检测与白盒子检测相融合的方式。黑箱试验是为了对系统的输入、输出性能进行测试,以发现其性能上的误差和潜在的不足。白箱试验的目的是为了检测程序和程序的运行路线,从而找出运行中的问题。该系统有两种方式:单位试验和综合试验。
6.4 单元测试
6.4.1 注册测试
在对登录模块进行测试时,先键入登录名称和密码,再按下登录键测试是否能正常登录系统。如果信息填写错误,能否弹出弹框,用来提示用户何处输入错误。
注册测试用例如下表所示。
表6-2注册测试用例
测试模块 | 用户注册模块测试 |
测试目的 | 测试当注册信息输入不符合要求时,系统是否能进行相应处理并给出提示。 |
测试方法 | 黑盒测试 |
测试数据 | 1不输入用户名和密码,直接点击注册。 2输入未注册过的用户名。例如:qwer 3输入正确用户名,两次密码不一样。例如:用户名qwerty、密码 0001,确认密码1111 |
预期结果 | 1 界面不跳转,弹出对话框,提示用户输入必填项。 2界面跳转,弹出对话框,提示用户注册成功。 3界面不跳转,弹出对话框,提示两次密码不一致。 |
实际结果 | 与预期结果相同。 |
结论 | 注册模块实现成功。 |
6.4.2 登录测试
登录模块需要测试的功能有:输入登录名和密码,点击“登录”按钮,如果信息添加正确,是否正常进入系统首页。如果信息填写错误,能否弹出弹框,提示用户信息输入有误。登录测试用例如下表所示。
表6-3登录测试用例
6.5 集成测试
集成测试的方案主要如下所述:
(1)在完成安装部署后,将该系统移植到其他电脑,并可以顺利地运行该系统。
(2)用户信息管理模块综合测试,新增一个新的使用者 qq,指定一个普通的 角色,查看普通角色的特权,并储存设定。作为 qqq登录,以了解所具有的权利。
(3)根据智慧工地管理系统的具体设计和实施,采用多种角色的方式,对各个模块的性能进行检测,并检测各个模块之间的逻辑功是否正确。
通过实验证明,该开发的系统能够满足智慧工地管理程序和基础需求。
结 论
智慧工地管理系统是一款公平、包容、易操作的系统,基本上能满足使用者的需求,也符合本人的初始发展目的与发展方向。本文主要研究了 Java语言和 MySQL等技术时的应用,它们都具有自己的优势,使其在实际应用中可以实现功能的稳定,同时也可以实现用户的各种需要。在具体的系统要求和功能模块的具体分析之后,进行了有针对性的设计,最终经过了测试,使整个系统可以正常工作,该智慧工地管理系统设计完成。
在这个智慧工地管理的过程中,我参照了许多有关的案例,互相学习,互相借鉴。目前已逐渐改进,但仍存在许多缺陷,需要今后继续研究。在设计过程中我遇到了很多困难,包括知识上和技术上,同时由于长时间没有进行独立开发工作,编码熟练度有了明显的下降,一些常用的函数和编码技巧也变得生疏,但好在我及时做出了学习,查阅各种资料,进行广泛的钻研,多做请教,依靠互联网和书籍不断吸取知识,完善自己,最终在师生的协助下,成功完成了该系统。
[1]张继东.Mysql数据库基于java的访问技术[J/OL].电子技术与软件工程,2019,(15):169(2017-08-03).
[2]李春燕,李根.基于java技术的网络信息用户系统设计[J/OL].电子技术与软件工程,2021,(20):9(2017-10-26).
[3]王浩.基于java技术的在线技能评测系统的设计与实现[J].数字技术与应用,2020,(12):171-172.
[4]郑戟明,董云朝,柳青.MySQL数据库数据导入导出方法的探讨[J].电脑知识与技术,2022,18(22):24-25.
[5]潘国荣.基于java+JavaBean+Servlet实现模式的增删改模块的设计与实现[J].信息通信,2018,(08):101-103.
[6]单树倩,任佳勋.基于SpringBoot和Vue框架的数据库原理网站设计与实现[J].电脑知识与技术.2021,17(30).
[7]邱小群,邓丽艳,陈海潮.基于B/S的信息管理系统设计和实现[J].信息与电脑(理论版),2022,34(20):146-148.
[8]文欣.以应用型人才培养为导向的“Java框架技术”课程改革的研究[J].南方农机,2022,53(24):188-191.
[9]杜少波.BOPPPS教学模式在Java程序设计课程混合式教学中的应用研究[J].科教导刊,2022(22):99-101.
[10]李乐.Java语言应用研究[J].智慧中国,2022(09):80-81.
[11]付昕. 基于B/S调度信息管理系统的实现[J].山东省农业管理干部学院学报, 2019, 27(4):166-168.
[12]张志云.探究计算机软件开发中Java编程语言的应用[J].信息记录材料,2023,24(04):110-112.DOI:10.16009/j.cnki.cn13-1295/tq.2023.04.003.
[13] 赵钢. java Servlet+EJB的Web模式应用研究[J]. 电子设计工程,2019, 21(13):47-49.
[14] 肖英. 解决java/Servlet开发中的中文乱码问题[J]. 科技传播, 2018, (1)11-25.
[15] Hsiao I H, Sosnovsky S, Brusilovsky P. Guiding students to the right questions: adaptive navigation support in an e-learning system for Java programming[J]. Journal of Computer Assisted Learning, 2019, 26(4):270-283.
[16]Xue Qingshui,Hou Zongyang,Ma Haifeng,Zhu Haozhi,Ju Xingzhong,Sun Yue. Housing rental system based on blockchain Technology[J]. Journal of Physics: Conference Series,2021,1948(1) .
致 谢
时光是这个世界上最快而又最慢,最长而又最短,最平凡而又最珍贵,最容易被忽略又最令人难忘的东西,回望大学三载,可谓白驹过隙,匆匆而已。
然而,时光虽逝,宝贵的情谊却是永恒的,在这三年的光阴里,我最想感谢的就是我的家人、老师以及同窗。寸草之心,难报三春之晖,感谢我的家人,不辞辛劳,让我在求学期间,能够心无旁鹜,不为世俗所扰;天涯有尽,师恩无穷,感谢我的恩师,他温文尔雅、学识渊博让我领略到了何谓学者风范,他乐观、豁达让我体会到了广阔的胸襟与格局,尤其要感谢他在我论文撰写期间的辛勤付出,无论他工作多忙,都会给予我细致耐心地指导;山水一程,三生有幸,感谢法我的兄弟姐妹们,你们的每一次鼓励与帮助都让我倍感温暖。
最后,借此机会,祝愿身边遇到的每一位:万般熙攘化清风朗月,四方梦想皆如愿以偿。