SSM山河物业管理系统 计算机毕设源码90788

                                       

摘  要

在网络信息的时代,众多的软件被开发出来,给用户带来了很大的选择余地,而且人们越来越追求更个性的需求。在这种时代背景下,山河物业管理只能以客户为导向,以产品的持续创新作为山河物业最重要的竞争手段。

采取MySQL作为后台数据的主要存储单元,采用SSM框架、JSP技术、Ajax技术进行业务系统的编码及其开发。基本实现了 山河物业管理系统应有的主要功能模块,本系统有管理员、业主用户、保安人员、保洁人员、维修人员五大功能模块,管理员:首页、人员管理(管理员、业主用户、保安人员、保洁人员、维修人员)、模块管理(房产信息、缴费信息、车位信息、车位缴费、安保日志、保安休假记录、保洁任务、处理完成、保洁日志、保洁员休假记录、报修信息、维修分配、维修完成、维修员休假记录、维修日志、公共设施)、个人管理(个人信息、修改密码);保安人员:首页、模块管理(安保日志、保安休假记录)、个人管理(个人信息、修改密码);保洁人员:首页、模块管理(保洁任务、处理完成、保洁日志、保洁休假记录)、个人管理(个人信息、修改密码);维修人员:首页、模块管理(维修任务、维修完成、维修员休假记录、维修日志、公共设施)、个人管理(个人信息、修改密码);业主用户:首页、模块管理(房产信息、缴费信息、车位信息、车位缴费、报修信息、维修信息、维修完成、公共设施)、个人管理(个人信息、修改密码)等操作。

对系统进行测试后,改善了程序逻辑和代码。同时确保系统中所有的程序都能正常运行,所有的功能都能操作,并且该系统有很好的操作体验,实现了对于管理员和业主双赢。

关键词: 山河物业管理系统;Mysql数据库; SSM框架;

                                                                Abstract

In the era of network information, numerous software have been developed, providing users with great choices, and people are increasingly pursuing more personalized needs. In this era, Shanhe Property Management can only be customer-oriented, with continuous product innovation as the most important competitive means for Shanhe Property.

Adopting MySQL as the main storage unit for backend data, using SSM framework, JSP technology, and Ajax technology for business system coding and development. The main functional modules of the Shanhe Property Management System have been basically implemented. This system includes five major functional modules: administrator, owner user, security personnel, cleaning personnel, and maintenance personnel. The administrator includes the homepage and personnel management (administrator, owner user, security personnel, cleaning personnel, and maintenance personnel) Module management (real estate information, payment information, parking space information, parking space payment, security logs, security leave records, cleaning tasks, processing completion, cleaning logs, cleaning staff leave records, repair information, repair allocation, repair completion, maintenance staff leave records, maintenance logs, public facilities), personal management (personal information, password modification); Security personnel: homepage, module management (security logs, security leave records), personal management (personal information, password modification); Cleaning personnel: homepage, module management (cleaning tasks, processing completion, cleaning logs, cleaning leave records), personal management (personal information, password modification); Maintenance personnel: homepage, module management (maintenance tasks, maintenance completion, maintenance personnel leave records, maintenance logs, public facilities), personal management (personal information, password modification); Owners and users: Homepage, module management (real estate information, payment information, parking space information, parking space payment, repair information, repair information, repair completion, public facilities), personal management (personal information, password modification), and other operations.

After testing the system, the program logic and code were improved. At the same time, it ensures that all programs in the system can run normally, all functions can be operated, and the system has a good operating experience, achieving a win-win situation for both administrators and owners.

Key words:Shanhe Property Management System; MySQL database; SSM framework;

目录

毕业设计

摘  要

Abstract

第1章  前  言

1.1  研究背景

1.2  研究现状

1.3  系统开发目标

第2章  相关技术

2.1开发技术说明:

2.2 JAVA简介

2.3 MySQL数据库

2.4 SSM框架

2.5 MVVM模式介绍:

第3章  需求分析

3.1  需求分析

3.2  系统可行性分析

3.2.1 技术可行性

3.2.2 经济可行性

3.2.3 操作可行性

3.3  项目设计目标与原则

1、关于 山河物业管理系统的基本要求

2、开发目标

3、设计原则

3.4  系统流程分析

第4章  架构设计

4.1  系统体系结构

4.2  数据库实体设计

4.3  数据库表设计

第5章  系统实现

5.1  业主功能模块

5.2  管理员功能模块

5.3  维修员后台功能模块

5.4  保安人员后台功能模块

5.5  保洁人员后台功能模块

第6章  系统测试

6.1  测试目的

6.2  测试方法

6.3  功能测试

6.4  测试结论

第7章 结  论

参考文献

致  谢

第1章  前  言

1.1  研究背景

传统的物业管理方式是在线下实体进行的,由于山河物业信息构造的差异,用户需要到线下进行实际的体验,有很大的空间和时间限制。而随着山河物业信息种类的不断普及,其性能、模块的透明化,越来越多的人群也开始出于各种各样的理由而热衷网上消费,传统的管理模式已经无法满足人的需求了。

互联网的产生,带来了网络的再次高速发展,人们的生活得到了翻天覆地的变化。人们可以随时随地的享受互联网带来的方便快捷,在生活工作中的方方面面的需要都能在网络上实现,比如学习、消费等等。也就是说网络成了人们目前最直接、最方便、最轻松的接入口。

在当今世界,互联网快速发展的现在,如何利用互联网创造更简单高效的生活,这是我们首要讨论的。需要山河物业信息管理相关网站,一方面使得管理员可以对山河物业的信息进行及时更新和信息化的管理,可以较为容易的获取各山河物业信息的管理情况。另一方面用户可以利用互联网更直观的查看山河物业的相关信息。与传统的管理方式相比,用户消费的方式更加轻松,系统的操作更加的准确,这是一种潜在趋势,或许可以有效加快山河物业的普及情况。

1.2  研究现状

经过调查,目前现代人的生活节奏加快,生活压力也在逐渐的增加,人们可以使用智能产品的功能给人们带来的便利,随着人们的网上消费不断的增加,越来越多的人们开始加入了网上消费的大潮中,但是我国对于网上山河物业管理信息管理效果低下,而且出错率也很高。因此大家都在寻找一款更加专业化的山河物业管理系统。

随着 山河物业管理系统的不断出现,用户需求的不断增多, 山河物业管理系统也不断的得到壮大,本系统主要根据用户和管理人员的实际需要,方便用户利用互联网实现对 山河物业管理系统的了解、对比,甚至是交易。同时让管理者可以通过这个系统对用户实际需求以及各山河物业信息的所有了解和管理情况进行管理。设计该系统主要目的是为了方便人们的对各种类型的山河物业信息的横向对比,帮助人们节省时间,而且减少管理者资金的投入。

1.3  系统开发目标

对于网站的前台设计,要保证主界面的整洁有序,能够抓住人的眼球,不会产生视觉疲劳,更重要的是,带给人容易操作的直观感受,这样才能留住用户去进行使用,增加三分热度的延续期。在系统的后台设计上,要采取非常简洁有效的技术,开发方便的同时,便于以后的维护。我们不但要确保所有的功能都能够满足用户的需求,用户还要能自己主动通过网站去实现想要的操作,而管理者的简单通过网站对用户的需求情况进行了解和管理。为达到这一目的,提出以下目标:

(1)用户可以实时查看最新的山河物业信息,以及相关资讯;

(2)用户可以对比各大物业信息,选择自己较为满意的物业信息;

(3)用户可以通过论坛互相交流山河物业信息;

(4)管理员可以在后台方便管理前台网页的各种信息;

(5)管理员可以方便查询、汇总用户的使用状态。


第2章  相关技术

2.1开发技术说明:

本系统前端部分基于MVVM模式进行开发,采用B/S模式,后端部分基于Java的ssm框架进行开发。

前端部分:前端框架采用了比较流行的渐进式JavaScript框架Vue.js。使用Vue-Router和Vuex实现动态路由和全局状态管理,Ajax实现前后端通信,Element UI组件库和Lay UI组件库使页面快速成型,项目前端通过栅格布局实现响应式,可适应PC端、平板端、手机端等不同屏幕大小尺寸的完美布局展示。

后端部分:采用ssm作为开发框架,同时集成MyBatis、Redis等相关技术。

2.2 JAVA简介

Java主要采用CORBA技术和安全模型,可以在互联网应用的数据保护。它还提供了对EJB(Enterprise JavaBeans)的全面支持,java servlet API,JSP(java server pages),和XML技术。多进步。例如,当我在微软Word中写这篇文章时,我还打开了一个MP3播放器来播放音乐。偶尔,我也会编辑Word,让学生求聘管理机器执行打印作业,我也喜欢通过IE。对我来说,这些操作是同时执行的,我不需要等待一首歌来完成学生求聘管理论文编辑。似乎他们都在学生求聘管理机器上同时为我工作。事实是,对于一个CPU,它只能在某个时间点执行一个程序。CPU在这些程序之间不断地“跳跃”。那么为什么我们看不到任何破坏呢?这是因为,与我们的感情相比,它的速度太快了。因此,尽管我们看到一些同步操作,实际上对于计算机来说,它只能在某个时间点执行一个程序,除非您的计算机是多CPU的。

Java是一种计算机编程语言,具有封装、继承和多态性三个主要特性,广泛应用于企业Web应用程序开发和移动应用程序开发。

Java语言和一般编译器以及直译的区别在于,Java首先将源代码转换为字节码,然后将其转换为JVM的可执行文件,JVM可以在各种不同的JVM上运行。因此,实现了它的跨平台特性。虽然这使得Java在早期非常缓慢,但是随着Java的开发,它已经得到了明显改进。

2.3 MySQL数据库

Mysql的语言是非结构化的,学生可以在数据上进行工作。MySQL因为其速度、可靠性和适应性而备受关注。大多数人都认为在不需要事务化处理的情况下,MySQL是管理内容最好的选择。并且因为Mysql的语言和结构比较简单,但是功能和存储信息量很强大,所以得到了普遍的应用。

Mysql数据库在编程过程中的作用是很广泛的,为学生进行数据查询带来了方便。Mysql数据库的应用因其灵活性强,功能强大,所以在实现某功能时只需要一小段代码,而不像其他程序需要编写大段代码。总体来说,Mysql数据库的语言相对要简洁很多。

数据流程分析主要就是数据存储的储藏室,它是在计算机上进行的,而不是现实中的储藏室。数据的存放是按固定格式,而不是无序的,其定义就是:长期有固定格式,可以共享的存储在计算机存储器上。数据库管理主要是数据存储、修改和增加以及数据表的建立。为了保证系统数据的正常运行,一些有能力的处理者可以进行管理而不需要专业的人来处理。数据表的建立,可以对数据表中的数据进行调整,数据的重新组合及重新构造,保证数据的安全性。介于数据库的功能强大等特点,本系统的开发主要应用了Mysql进行对数据的管理。

2.4 SSM框架

当今流行的“SSM组合框架”是Spring + SpringMVC + MyBatis的缩写,受到很多的追捧,“组合SSM框架”是强强联手、各司其职、协调互补的团队精神。web项目的框架,通常更简单的数据源。Spring属于一个轻量级的反转控制框架(IoC),但它也是一个面向表面的容器(AOP)。SpringMVC常常用于控制器的分类工作模式,与模型对象分开,程序对象的作用与自动取款机进行处理。这种解耦治疗使整个系统的个性化变得更加容易。MyBatis是一个良好的可持续性框架,支持普通SQL查询,同时允许对存储过程的高级映射进行数据的优化处理。大型Java Web应用程序的由于开发成本太高,开发后难以维护和开发过程中一些难以解决的问题,而采用“SSM组合框架”,它允许建立业务层次结构,并为这个问题提供良好的解决方案。

2.5 MVVM模式介绍:

MVVM是Model-View-ViewModel的简写。它本质上就是MVC 的改进版。MVVM 就是将其中的View 的状态和行为抽象化,让我们将视图 UI 和业务逻辑分开。当然这些事 ViewModel 已经帮我们做了,它可以取出 Model 的数据同时帮忙处理 View 中由于需要展示内容而涉及的业务逻辑。微软的WPF带来了新的技术体验,如Silverlight、音频视频3D动画……,这导致了软件UI层更加细节化、可定制化。同时,在技术层面,WPF也带来了 诸如Binding、Dependency Property、Routed Events、Command、DataTemplate、ControlTemplate等新特性。MVVM(Model-View-ViewModel)框架的由来便是MVP(Model-View-Presenter)模式与WPF结合的应用方式时发展演变过来的一种新型架构框架。它立足于原有MVP框架并且把WPF的新特性糅合进去,以应对客户日益复杂的需求变化。

第3章  需求分析

3.1  需求分析

开发系统的过程中,去调查用户的功能诉求,对需要存在的功能进行需求分析是特别重要的,且对于系统的开发有着实际的意义,设计 山河物业管理系统通过对用户的需求进行分析,结合实际情况进行开发研究,对用户的所有需求做出一个完整的基本的框架,然后一步一步的完成、实现。需求分析可以为系统的开发提供一个目标,只有按照这个目标进行开发设计,才能进行完整的开发,这样设计出的系统才有使用的意义,才能在竞争激烈的软件市场中生存,才能真正的帮助人们解决问题,提高实际的效率。

3.2  系统可行性分析

3.2.1 技术可行性

本系统采取的是目前应用最广泛的程序进行技术的支持,主要的技术支持是java语言,他作为一个相当成熟的语言程序,在众多的软件开发中起着很大作用。而且用java语言编辑出来程序可以直接运行,不需要借助其他的翻译器进行翻译。所以在技术方面是完全可以行的。

3.2.2 经济可行性

本项目开发的初衷就是为了节约,因为系统开发的所有过程都是我自己开发的我,而且在开发过程使用到的技术也都是市面上常见的容易操作的,所以不需要请专业的人士花资金来进行系统的开发,而且在项目开发的过程中我也学到了更多的知识。开发的这个软件可以在网络中进行免费的下载,对计算机的软硬件没有很高的要求,因此这个项目是非常实惠的,在经济方面是完全可性的。

3.2.3 操作可行性

操作可行性也就是系统的可用性,一个系统的操作是否容易决定着这个系统的使用度,在系统的操作方面的设计我都是采取简洁易懂的方式,操作的整个菜单界面整齐有序,所有的功能都有序的排列,不会出现重叠或者需要转换的现象,用户想要哪方面的操作都可以直接进行操作,所以该系统任何人都可以进行操作,不需要有相关专业的技术这样用户在操作起来就容易很多。

3.3  项目设计目标与原则

1、关于 山河物业管理系统的基本要求

(1)功能要求:管理员可以对所有的物业进行查看管理,可以对系统进行管理,可以及时的查看管理的情况,还可以对留言进行查看和管理等功能模块。

(2)性能:因为山河物业管理中有很多的信息需要存储,因此对于系统的存储量有很大的要求,需要有一个强大的数据库的支持才能确保所有的信息都能安全稳定的进行存储。

(3)安全与保密要求:用户都必须通过管理员审核才能进入系统。

(4)环境要求:支持Windows系列、Vista系统等多种操作系统使用。

2、开发目标

 山河物业管理系统的主要开发目标如下:

(1)用户可以实时查看最新的物业信息,以及相关资讯;

(2)用户可以对比各大物业信息,选择自己较为满意的物业信息;

(3)用户可以通过留言互相交流山河物业信息;

(4)管理员可以在后台方便管理前台网页的各种信息;

3、设计原则

本 山河物业管理系统采用SSM技术,Mysql数据库开发,充分保证了系统稳定性、完整性。

(1)系统响应效率:由于是 山河物业管理系统,因此就需要系统的响应效率是非常高的,并且可以支持很多人同时进行系统的使用。

(2)界面简洁清晰:系统界面要简单有序,所有的功能一目了然。

(3)储存性高:因为是 山河物业管理系统,所以就会在数据库要求上比较严格,信息录入的比较多,而且丰富复杂, 这就需要一个强大的数据库来存放更多的数据和保证数据的时时性。

(4)易学性:系统的设计一定要简单,使得人们使用起来非常好的顺手。

(5)稳定性需求:该系统在使用过程中必须保持稳定,不要出现卡顿、模糊等情况。

(6)稳定性:由于是 山河物业管理系统,因此系统运行必须要十分的稳定。

3.4  系统流程分析

用户需要拥有属于自己的账号和密码,且必须正确,这样才能顺利登录到系统中。进入网站后,用户可以自行查询各种山河物业信息,在自己满意的山河物业信息的详情页面的最后,可以直接选择消费操作。具体流程如下图3-1所示:

图3-1 用户操作流程图

为了保证系统的安全性,要使用本系统对系统信息进行管理,必须先登陆到系统中。其具体登录流程图如图3-2所示:

图3-2 系统操作流程图


第4章  架构设计

4.1  系统体系结构

 山河物业管理系统的结构图4-1所示:

图4-1 系统结构

登录系统结构图,如图4-2所示:

图4-2 登录结构图

系统结构图,如图4-3所示:

图4-3 系统结构图

4.2  数据库实体设计

数据库的功能就是对系统中所有的数据进行存储和管理。所有的数据可以在数据库中产时间的进行存储,方便用户的使用。而且所有的数据库中的数据也应该具有一定的共享性,任何的系统可以对一些数据进行使用,同时还应该保持一定的独立性,每一个数据库中的数据都有很强的安全性,可以被很好的存放到数据库,没有进行身份的验证是不能对这些数据进行查看和使用的。数据库的设计需要明确每一个实体之间的联系,系统的E-R图如下图所示::

业主信息属性图如图4-4所示。

图4-4业主信息实体属性图

车位信息管理属性图如图4-5所示。

图4-5车位信息管理实体属性图

报修信息管理实体属性图如图4-6所示。

图4-6报修信息管理实体属性图

4.3  数据库表设计

当 山河物业管理系统在运行的时候,数据库要能确保自己的独立性,想要哪部分

的数据就选择相应的设置选项,对应的数据就会以表格的形式展现出来。当对这一个功能进行设置,他就会与数据库进行连接,会在对话框中弹出相应的数据源。

表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

更新时间:

表cleaner (保洁人员)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

cleaner_id

int

10

0

N

Y

保洁人员ID

2

employee_name

varchar

64

0

Y

N

员工姓名

3

employee_gender

varchar

64

0

Y

N

员工性别

4

examine_state

varchar

16

0

N

N

已通过

审核状态

5

recommend

int

10

0

N

N

0

智能推荐

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

更新时间

表cleaning_attendant_leave_record (保洁员休假记录)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

cleaning_attendant_leave_record_id

int

10

0

N

Y

保洁员休假记录ID

2

cleaner

int

10

0

Y

N

0

保洁人员

3

start_of_vacation

date

10

0

Y

N

休假开始

4

end_of_vacation

date

10

0

Y

N

休假结束

5

vacation_method

varchar

64

0

Y

N

休假方式

6

recommend

int

10

0

N

N

0

智能推荐

7

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

8

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表cleaning_log (保洁日志)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

cleaning_log_id

int

10

0

N

Y

保洁日志ID

2

cleaner

int

10

0

Y

N

0

保洁人员

3

employee_name

varchar

64

0

Y

N

员工姓名

4

record_date

date

10

0

Y

N

记录日期

5

record_content

longtext

2147483647

0

Y

N

记录内容

6

examine_state

varchar

16

0

N

N

未审核

审核状态

7

examine_reply

varchar

16

0

Y

N

审核回复

8

recommend

int

10

0

N

N

0

智能推荐

9

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

10

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表cleaning_tasks (保洁任务)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

cleaning_tasks_id

int

10

0

N

Y

保洁任务ID

2

task_number

varchar

64

0

Y

N

任务编号

3

cleaner

int

10

0

Y

N

0

保洁人员

4

release_date

date

10

0

Y

N

发布日期

5

task_status

varchar

64

0

Y

N

任务状态

6

cleaning_content

longtext

2147483647

0

Y

N

保洁内容

7

recommend

int

10

0

N

N

0

智能推荐

8

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

9

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表communal_facilities (公共设施)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

communal_facilities_id

int

10

0

N

Y

公共设施ID

2

facility_name

varchar

64

0

Y

N

设施名称

3

person_in_charge

varchar

64

0

Y

N

负责人

4

contact_number

varchar

16

0

Y

N

联系电话

5

facility_label

varchar

64

0

Y

N

设施标签

6

facility_introduction

longtext

2147483647

0

Y

N

设施介绍

7

recommend

int

10

0

N

N

0

智能推荐

8

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

9

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:

表maintenance_allocation (维修分配)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

maintenance_allocation_id

int

10

0

N

Y

维修分配ID

2

repair_no

varchar

64

0

N

N

报修号

3

building_name

varchar

64

0

Y

N

楼栋名称

4

house_no

varchar

64

0

Y

N

房屋号

5

owner_user

int

10

0

Y

N

0

业主用户

6

owners_name

varchar

64

0

Y

N

业主姓名

7

repair_request_date

date

10

0

Y

N

报修日期

8

repair_request_name

varchar

64

0

Y

N

报修名称

9

maintainer

int

10

0

Y

N

0

维修员

10

repair_content

longtext

2147483647

0

Y

N

报修内容

11

recommend

int

10

0

N

N

0

智能推荐

12

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

13

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表maintenance_log (维修日志)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

maintenance_log_id

int

10

0

N

Y

维修日志ID

2

maintenance_personnel

int

10

0

Y

N

0

维修员

3

name_of_maintenance_personnel

varchar

64

0

Y

N

维修员姓名

4

record_date

date

10

0

Y

N

记录日期

5

record_content

longtext

2147483647

0

Y

N

记录内容

6

examine_state

varchar

16

0

N

N

未审核

审核状态

7

examine_reply

varchar

16

0

Y

N

审核回复

8

recommend

int

10

0

N

N

0

智能推荐

9

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

10

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表maintenance_personnel (维修员)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

maintenance_personnel_id

int

10

0

N

Y

维修员ID

2

maintenance_employee_number

varchar

64

0

N

N

维修员工号

3

name_of_maintenance_personnel

varchar

64

0

Y

N

维修员姓名

4

examine_state

varchar

16

0

N

N

已通过

审核状态

5

recommend

int

10

0

N

N

0

智能推荐

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

更新时间

表maintenance_personnel_leave_record (维修员休假记录)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

maintenance_personnel_leave_record_id

int

10

0

N

Y

维修员休假记录ID

2

maintenance_personnel

int

10

0

Y

N

0

维修员

3

start_of_vacation

date

10

0

Y

N

休假开始

4

end_of_vacation

date

10

0

Y

N

休假结束

5

vacation_method

varchar

64

0

Y

N

休假方式

6

recommend

int

10

0

N

N

0

智能推荐

7

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

8

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表owners_and_users (业主用户)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

owners_and_users_id

int

10

0

N

Y

业主用户ID

2

owners_name

varchar

64

0

Y

N

业主姓名

3

building_name

varchar

64

0

Y

N

楼栋名称

4

house_no

varchar

64

0

Y

N

房屋号

5

examine_state

varchar

16

0

N

N

未审核

审核状态

6

recommend

int

10

0

N

N

0

智能推荐

7

user_id

int

10

0

N

N

0

用户ID

8

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

9

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表parking_information (车位信息)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

parking_information_id

int

10

0

N

Y

车位信息ID

2

parking_area

varchar

64

0

Y

N

车位区域

3

parking_space_name

varchar

64

0

N

N

车位名称

4

administrative_expenses

int

10

0

Y

N

0

管理费用

5

owner_user

int

10

0

Y

N

0

业主用户

6

owners_name

varchar

64

0

Y

N

业主姓名

7

recommend

int

10

0

N

N

0

智能推荐

8

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

9

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表parking_space_payment (车位缴费)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

parking_space_payment_id

int

10

0

N

Y

车位缴费ID

2

payment_no

varchar

64

0

Y

N

缴费号

3

parking_area

varchar

64

0

Y

N

车位区域

4

parking_space_name

varchar

64

0

Y

N

车位名称

5

administrative_expenses

int

10

0

Y

N

0

管理费用

6

owner_user

int

10

0

Y

N

0

业主用户

7

owners_name

varchar

64

0

Y

N

业主姓名

8

payment_date

date

10

0

Y

N

缴费日期

9

months

varchar

64

0

Y

N

月数

10

total_expenses

varchar

64

0

Y

N

总费用

11

pay_state

varchar

16

0

N

N

未支付

支付状态

12

pay_type

varchar

16

0

Y

N

支付类型: 微信、支付宝、网银

13

recommend

int

10

0

N

N

0

智能推荐

14

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

15

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表payment_information (缴费信息)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

payment_information_id

int

10

0

N

Y

缴费信息ID

2

management_number

varchar

64

0

Y

N

管理编号

3

building_name

varchar

64

0

Y

N

楼栋名称

4

house_no

varchar

64

0

Y

N

房屋号

5

owner_user

int

10

0

Y

N

0

业主用户

6

owners_name

varchar

64

0

Y

N

业主姓名

7

occupancy

int

10

0

Y

N

0

入住人数

8

housing_area

varchar

64

0

Y

N

房屋面积

9

property_fees

int

10

0

Y

N

0

物业费

10

unit_price_of_electricity_bill

varchar

64

0

Y

N

电费单价

11

unit_price_of_water_fee

varchar

64

0

Y

N

水费单价

12

electricity_consumption

int

10

0

Y

N

0

用电度数

13

water_consumption_degree

int

10

0

Y

N

0

用水度数

14

payment_amount

varchar

64

0

Y

N

缴费金额

15

payment_date

date

10

0

Y

N

缴费日期

16

pay_state

varchar

16

0

N

N

未支付

支付状态

17

pay_type

varchar

16

0

Y

N

支付类型: 微信、支付宝、网银

18

recommend

int

10

0

N

N

0

智能推荐

19

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

20

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表processing_completed (处理完成)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

processing_completed_id

int

10

0

N

Y

处理完成ID

2

task_number

varchar

64

0

N

N

任务编号

3

cleaner

int

10

0

Y

N

0

保洁人员

4

release_date

date

10

0

Y

N

发布日期

5

processing_results

longtext

2147483647

0

Y

N

处理结果

6

recommend

int

10

0

N

N

0

智能推荐

7

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

8

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表real_estate_information (房产信息)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

real_estate_information_id

int

10

0

N

Y

房产信息ID

2

management_number

varchar

64

0

Y

N

管理编号

3

building_name

varchar

64

0

Y

N

楼栋名称

4

house_no

varchar

64

0

Y

N

房屋号

5

owner_user

int

10

0

Y

N

0

业主用户

6

owners_name

varchar

64

0

Y

N

业主姓名

7

occupancy

int

10

0

Y

N

0

入住人数

8

housing_area

varchar

64

0

Y

N

房屋面积

9

property_fees

int

10

0

Y

N

0

物业费

10

unit_price_of_electricity_bill

varchar

64

0

Y

N

电费单价

11

unit_price_of_water_fee

varchar

64

0

Y

N

水费单价

12

recommend

int

10

0

N

N

0

智能推荐

13

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

14

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表repair_completed (维修完成)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

repair_completed_id

int

10

0

N

Y

维修完成ID

2

repair_no

varchar

64

0

N

N

报修号

3

building_name

varchar

64

0

Y

N

楼栋名称

4

house_no

varchar

64

0

Y

N

房屋号

5

owner_user

int

10

0

Y

N

0

业主用户

6

owners_name

varchar

64

0

Y

N

业主姓名

7

repair_request_date

date

10

0

Y

N

报修日期

8

repair_request_name

varchar

64

0

Y

N

报修名称

9

maintainer

int

10

0

Y

N

0

维修员

10

maintenance_content

longtext

2147483647

0

Y

N

维修内容

11

examine_state

varchar

16

0

N

N

未审核

审核状态

12

examine_reply

varchar

16

0

Y

N

审核回复

13

recommend

int

10

0

N

N

0

智能推荐

14

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

15

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表repair_information (报修信息)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

repair_information_id

int

10

0

N

Y

报修信息ID

2

repair_no

varchar

64

0

Y

N

报修号

3

building_name

varchar

64

0

Y

N

楼栋名称

4

house_no

varchar

64

0

Y

N

房屋号

5

owner_user

int

10

0

Y

N

0

业主用户

6

owners_name

varchar

64

0

Y

N

业主姓名

7

repair_request_date

date

10

0

Y

N

报修日期

8

repair_request_name

varchar

64

0

Y

N

报修名称

9

repair_content

longtext

2147483647

0

Y

N

报修内容

10

examine_state

varchar

16

0

N

N

未审核

审核状态

11

examine_reply

varchar

16

0

Y

N

审核回复

12

recommend

int

10

0

N

N

0

智能推荐

13

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

14

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表security_leave_record (保安休假记录)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

security_leave_record_id

int

10

0

N

Y

保安休假记录ID

2

security_personnel

int

10

0

Y

N

0

保安人员

3

start_of_vacation

date

10

0

Y

N

休假开始

4

end_of_vacation

date

10

0

Y

N

休假结束

5

vacation_method

varchar

64

0

Y

N

休假方式

6

recommend

int

10

0

N

N

0

智能推荐

7

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

8

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表security_log (安保日志)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

security_log_id

int

10

0

N

Y

安保日志ID

2

security_personnel

int

10

0

Y

N

0

保安人员

3

security_worker_number

varchar

64

0

Y

N

保安工号

4

security_guard_name

varchar

64

0

Y

N

保安姓名

5

record_date

date

10

0

Y

N

记录日期

6

record_content

longtext

2147483647

0

Y

N

记录内容

7

examine_state

varchar

16

0

N

N

未审核

审核状态

8

examine_reply

varchar

16

0

Y

N

审核回复

9

recommend

int

10

0

N

N

0

智能推荐

10

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

11

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表security_personnel (保安人员)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

security_personnel_id

int

10

0

N

Y

保安人员ID

2

security_worker_number

varchar

64

0

Y

N

保安工号

3

security_guard_name

varchar

64

0

Y

N

保安姓名

4

examine_state

varchar

16

0

N

N

已通过

审核状态

5

recommend

int

10

0

N

N

0

智能推荐

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

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

更新时间:

第5章  系统实现

5.1  业主功能模块

 业主登录系统后台可以查看首页、模块管理(房产信息、缴费信息、车位信息、车位缴费、报修信息、维修信息、维修完成、公共设施)、个人管理(个人信息、修改密码)等,并且还可以对其进行相应的操作管理,如图5-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;

        QueryWrapper wrapper = new QueryWrapper<User>();

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

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

        }

}

    public String select(Map<String,String> query,Map<String,String> config){

        StringBuffer sql = new StringBuffer("select ");

        sql.append(config.get(FindConfig.FIELD) == null || "".equals(config.get(FindConfig.FIELD)) ? "*" : config.get(FindConfig.FIELD)).append(" ");

        sql.append("from ").append("`").append(table).append("`").append(toWhereSql(query, "0".equals(config.get(FindConfig.LIKE))));

        if (config.get(FindConfig.GROUP_BY) != null && !"".equals(config.get(FindConfig.GROUP_BY))){

            sql.append("group by ").append(config.get(FindConfig.GROUP_BY)).append(" ");

        }

        if (config.get(FindConfig.ORDER_BY) != null && !"".equals(config.get(FindConfig.ORDER_BY))){

            sql.append("order by ").append(config.get(FindConfig.ORDER_BY)).append(" ");

        }

        if (config.get(FindConfig.PAGE) != null && !"".equals(config.get(FindConfig.PAGE))){

            int page = config.get(FindConfig.PAGE) != null && !"".equals(config.get(FindConfig.PAGE)) ? Integer.parseInt(config.get(FindConfig.PAGE)) : 1;

            int limit = config.get(FindConfig.SIZE) != null && !"".equals(config.get(FindConfig.SIZE)) ? Integer.parseInt(config.get(FindConfig.SIZE)) : 10;

            sql.append(" limit ").append( (page-1)*limit ).append(" , ").append(limit);

        }

        log.info("[{}] - 查询操作,sql: {}",table,sql);

        return sql.toString();

}

    public List selectBaseList(String select) {

        List<Map<String,Object>> mapList = baseMapper.selectBaseList(select);

        List<E> list = new ArrayList<>();

        for (Map<String,Object> map:mapList) {

            list.add(JSON.parseObject(JSON.toJSONString(map),eClass));

        }

        return list;

}

业主注册,在业主注册页面中通过填写账户、设置密码、确认密码、昵称、邮箱、手机号、身份、业主姓名、楼栋名称、房屋号等信息完成注册,如图5-2所示。

图5-2业主注册界面图

用户注册代码如下:

    /**

     * 注册

     * @return

     */

    @PostMapping("register")

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

        // 查询用户

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

        Map<String,Object> map = service.readBody(request.getReader());

        query.put("username",String.valueOf(map.get("username")));

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

}

    public Map<String,Object> readBody(BufferedReader reader){

        BufferedReader br = null;

        StringBuilder sb = new StringBuilder("");

        try{

            br = reader;

            String str;

            while ((str = br.readLine()) != null){

                sb.append(str);

            }

            br.close();

            String json = sb.toString();

            return JSONObject.parseObject(json, Map.class);

        }catch (IOException e){

            e.printStackTrace();

        }finally{

            if (null != br){

                try{

                    br.close();

                }catch (IOException e){

                    e.printStackTrace();

                }

            }

        }

        return null;

    }

    public void insert(Map<String,Object> body){

        E entity = JSON.parseObject(JSON.toJSONString(body),eClass);

        baseMapper.insert(entity);

        log.info("[{}] - 插入操作:{}",entity);

}

房产信息,在房产信息页面中通过管理编号、楼栋名称、房屋号、业主用户、业主姓名、入住人数、房屋面积、物业费、电费单价等信息,并进行查询、报修、删除等操作,如图5-3所示。

图5-3房产信息界面图

车位缴费,在车位缴费页面通过填写缴费号、车位区域、车位名称、管理费用、业主用户、业主姓名、缴费日期、月数、总费用等信息,并根据详情查询,修改等操作,如图5-4所示。

图5-4车位缴费界面图

图5-5管理员登录界面图

管理员登录进入 山河物业管理系统之后,就可以对所有的信息进行查看,可以查看到首页、人员管理(管理员、业主用户、保安人员、保洁人员、维修人员)、模块管理(房产信息、缴费信息、车位信息、车位缴费、安保日志、保安休假记录、保洁任务、处理完成、保洁日志、保洁员休假记录、报修信息、维修分配、维修完成、维修员休假记录、维修日志、公共设施)、个人管理(个人信息、修改密码)等,并且还可以对其进行相应的操作管理,如图5-6所示。

图5-6管理员功能界面图

保洁任务管理,在保洁任务管理页面中可以查看索引、任务编号、保洁人员、发布日期、任务状态等信息,还可以根据需要进行处理完成、修改或删除等详细操作,如图5-7所示。

图5-7保洁任务管理界面图

人员管理管理,在人员管理页面中通过填写昵称、用户名、业主姓名、楼栋名称、居房屋号等信息并提交,如图5-8所示。

图5-8人员管理界面图

公共设施管理,在公共设施管理页面中可以查看索引、设施名称、负责人、联系电话、设施标签等信息,还可以根据需要进行修改或删除等详细操作,如下图5-9所示。

图5-9公共设施管理界面图

5.3  维修员后台功能模块

维修员登录系统后台可以查看首页、模块管理(维修任务、维修完成、维修员休假记录、维修日志、公共设施)、个人管理(个人信息、修改密码)等,并且还可以对其进行相应的操作管理,如图5-10所示。

图5-10维修员后台界面图

维修任务管理,在维修任务管理页面中可以查看索引、报修号、楼栋名称、房屋号、业主用户、业主姓名、报修日期、报修名称、维修员等信息,还可以根据需要进行完成维修、修改或删除等详细操作,如图5-11所示。

图5-11维修任务管理界面图

维修日志管理,在维修日志管理页面中可以查看索引、维修员、维修员姓名、记录日期、审核状态、审核回复等信息,还可以根据需要进行添加、修改或删除等详细操作,如图5-12所示。

图5-12维修日志管理界面图

5.4  保安人员后台功能模块

保安人员登录系统后台可以查看首页、模块管理(安保日志、保安休假记录)、个人管理(个人信息、修改密码)等,并且还可以对其进行相应的操作管理,如图5-13所示。

图5-13保安人员后台界面图

安保日志管理,在安保日志管理页面中可以查看索引、保安人员、保安工号、保安姓名、记录日期、审核状态、审核回复等信息,还可以根据需要进行完成添加修改或删除等详细操作,如图5-14所示。

图5-14安保日志管理界面图

5.5  保洁人员后台功能模块

保洁人员登录系统后台可以查看首页、模块管理(保洁任务、处理完成、保洁日志、保洁休假记录)、个人管理(个人信息、修改密码)等,并且还可以对其进行相应的操作管理,如图5-15所示。

图5-15保洁人员后台界面图

处理完成管理,在处理完成登记管理页面中可以查看索引、任务编号、保洁人员、发布日期等信息,还可以根据需要进行添加、修改或删除等详细操作如图5-16所示。

图5-16处理完成管理界面图

保洁休假记录管理,在保洁休假记录管理页面中可以查看索引、保洁人员、休假开始、休假结束、休假方式等信息,还可以根据需要进行修改或删除等详细操作如图5-17所示。

图5-17保洁休假记录管理界面图

第6章  系统测试

6.1  测试目的

随着互联网不断的发展,目前各大领域都利用互联网进行了信息的管理,因此产品能否存货,质量问题是很重要的标准,也决定着是否有更多的人使用。所以软件的质量我们必须要把关,必须要把软件做好,做到位,少出不必要的问题,这样才能有更多的用户使用,并且得到更多的推广。所以,我们在开发完系统后,需要进行大量的测试,以确保系统的稳定性和可使用性,并要确定系统的质量能否做到满足不同人的需求。这是系统在开发设计中非常重要的环节,测试的结果直接关系到系统的好坏。

集成测试:在系统测试当中会出现很多的问题,我们要及时的进行标注并且在进行测试的时候要采取自动化的测试,这样即准确又快速,而且不会出现疲劳,手动的测试很容易出现疲劳期,而且测试的结果也有时候会出错,所以在测试的时候才去自动测试时最好的测试方法。

在测试的过程中及时的发现问题,并且进行问题的解决,这样设计出的系统可以正常稳定的运行,不会出现重大的问题。我所进行的软件测试参照以下三个步骤进行测试:

(1)模块测试:对系统中的每一项都进行针对的测试,发现并找到问题。

(2)系统测试:让系统长时间进行各种情况下的运行,反馈运行期间的稳定性问题并解决。

(3)验收测试:其他测试完成后,最后检测阶段,确保软件准备就绪。

6.2  测试方法

在对系统进行测试的时候我们主要应用到两种测试的方法,通过测试我们就能找出可能存在的问题保证系统成功运行。

从软件的内部构造和具体实施是否有关系的观点来看:黑盒测试和白盒测试。

1)黑盒测试:测试系统功能,当用户进行相应的操作时,系统是否能够及时且准确的反馈数据,并执行相应功能。需要对功能以及使用方法进行详细的测试,保证所有的操作信息都能够完整的输出输入。

2)白盒测试:主要是对系统的结构进行测试,了解系统在运行过程中是否可以正常的工作。

 山河物业管理系统的测试也会从下面几方面进行:

(1)窗体测试:例如用户登录界面,在用户名和密码输入时,需要界面窗口弹出,给予用户反馈,我对窗口的设计进行了测试,确保每一个窗口在用户进行相应操作后,能够及时的弹出。

(2)数据跟踪:进行数据跟踪,我们就能知道系统功能是否在顺利的执行当中。将数据库中的相关的信息进行调动,弹出我们需要的相对应的数据信息。同时,在追踪过程中,我们也更容易的发现系统的问题所在,便于解决问题和维护系统。

(3)综合测试:完成上述测试后,需要对系统进行由内而外的重新检测,来宏观的发现系统中存在的问题,并且及时的进行解决,系统的设计要结合实际的使用情况有针对性的进行开发,可以满足不同人的需求。

6.3  功能测试

本 山河物业管理系统设计基本达到我理想的开发状态,在各个功能的运行方面,表现较为良好,基本满足用户的使用需求,及时矫正了较多的错误信息。总体说来,软件通过了相应的测试。

表6-1:用户登录测试表

模块名称

测试用例

预期结果

实际结果

是否通过

登录模块

用户名:admin   密码:123  

弹出错误提示,提示密码错误

弹出错误提示,提示密码错误

通过

登录模块

用户名:123   

密码:admin   

弹出错误提示,提示用户名错误

弹出错误提示,提示用户名错误

通过

登录模块

用户名:admin   

密码:admin   

管理员登录成功

管理员登录成功

通过

表6-2:修改密码测试表

模块名称

测试用例

预期结果

实际结果

是否通过

修改密码模块

原密码:666

新密码:123

确认密码:123  

弹出错误提示,提示原密码错误

弹出错误提示,提示原密码错误

通过

修改密码模块

原密码:admin   新密码:123

确认密码:333  

弹出错误提示,提示确认密码不一致

弹出错误提示,提示确认密码不一致

通过

修改密码模块

原密码:admin   新密码:123

确认密码:123  

密码修改成功

密码修改成功

通过

6.4  测试结论

测试的过程要按照指定好的计划一步一步的实行,测试时候一定不要着急,并且将测试的结果进行详细的记录,我们在进行测试的时候做好选择自动化的测试,这样更加的准确也更快捷,如果采用人工测试的方法就不会这么的方便,很可能会出现一些问题,而且极其测试不会疲劳也不会出现问题。在测试的时候一定要非常专注,时刻关注着测试的结果,一旦发现异常及时进行修改,;最后,测试完之后的文档应该保存下来,方便以后测试时用到。

通过测试,我们也可以直观的感受到,在我们最开始进行系统设计的时候,先把思路理清楚,才能有机会把代码写好。有好的逻辑性的代码在后期的测试中才能避免出现问题,也可以给我们节省很多的时间和不必要的操作。


第7章 结  论

  山河物业管理系统为用户提供了公平的、相互包容的、操作方便的使用系统,基本满足了用户的使用需要,以及我最初的开发目标和方向。Java语言、MySQL数据库等技术时是我开发的基础,这些技术都有各自的优点,学好这些技术,至关重要。通过这些优点设计出来的系统能够正常稳定的运行,并且可以满足人们的所有需求,在对系统的需求以及各个模块进行了详细的分析后,有针对性的进行设计,最后通过测试,系统能够正常的运行,该 山河物业管理系统设计完成。

本次开发过程中使用的是Java技术,该技术具有代码编写简单方便,对平台没有要求对技术方面也没有要求,并且有很好的面像对象性,所以在技术方面是相当成熟的。利用java技术作为系统主要的技术支持可以使得系统能够正常的运行并且实现相应的功能。在这次的系统的设计过程中遇到了很多的困难,幸好有老师同学们的帮助,在他们的帮助下完成了这次系统的设计。

除开系统的设计方面,就商业因素而谈,该网站具有很好的商业前景。 山河物业管理系统不像线下实体店,品牌价值在消费影响因素中尚未成较大比例,诸多国内外新兴山河物业信息正纷纷涌进。这也使得品牌复杂多样,山河物业信息种类繁多,而且不能单纯的以山河物业信息论好坏。消费者在选购产品时,容易凌乱,不清楚自己的实际需要,从而造成不必要的耗费。此网站的设立就是为了将各类型山河物业信息的具体信息进行统计规划,让消费者可以方便的在各山河物业信息之间进行横向对比。而且,网站还会提供最新的山河物业信息小时情报,做出新的消息报道。且宣传网站的成本要比品牌低的多,在预算层面,我的网站有着相应的优势。


参考文献

[1]Pommereau Antje,Licher Thomas,Bärenz Felix. Correction: Solid-Supported Membrane (SSM)-Based Electrophysiology Assays Using Surface Electrogenic Event Reader Technology (SURFE<sup>2</sup> R) in Early Drug Discovery.[J]. Current protocols,2023,3(4).

[2]周雨卉,王璐瑶,陈绘.基于SSM的社区健身中心适老化设计策略研究[J].包装工程,2023,44(04):141-149.DOI:10.19554/j.cnki.1001-3563.2023.04.017.

[3]皇甫若桐.基于SSM的环境监测管理系统设计[J].集成电路应用,2023,40(02):340-341.DOI:10.19339/j.issn.1674-2583.2023.02.148.

[4]伍德鹏,李佩学.基于SSM框架的高职院校教学办公用品管理信息系统设计研究[J].轻工科技,2023,39(01):99-101.

[5]陶爱兰. 基于SSM的数字化审计平台的设计与实现[D].南京邮电大学,2021.DOI:10.27251/d.cnki.gnjdc.2021.001665.

[6]唐清华.小区智慧物业管理系统的设计及应用[J].中阿科技论坛(中英文),2022(10):134-139.

[7]田胜男. 基于Flask的智能小区物业管理系统设计与实现[D].华东师范大学,2022.DOI:10.27149/d.cnki.ghdsu.2022.003638.

[8]Li Jinqiu,Zou Yuyou,Li Mingqiu. Synergetic evolution of the regional intellectual property management systems in China based on logistic model[J]. Managerial and Decision Economics,2022,43(8).

[9]刘萍,范蕤.智慧物业管理系统的设计与实现[J].电子元器件与信息技术,2022,6(03):201-203.DOI:10.19772/j.cnki.2096-4455.2022.3.071.

[10]. Ooma Boosts Hotel Guest Experiences and Employee Productivity Through Expanded Integration with Property Management Systems[J]. Manufacturing Close - Up,2022.

[11]. Ooma Boosts Hotel Guest Experiences and Employee Productivity Through Expanded Integration with Property Management Systems[J]. Wireless News,2022.

[12]. Ooma Expands Integration with Property Management Systems[J]. Telecomworldwire,2022.

[13]刘玉贞.基于WEB的社区物业管理系统的设计与实现[J].科技风,2022(06):77-79.DOI:10.19392/j.cnki.1671-7341.202206025.

[14]李继远,伍超婵. 物业公司删除业主身份被起诉[N]. 广西法治日报,2021-12-21(B02).DOI:10.28239/n.cnki.nfzkb.2021.002697.

[15]周蓉,何泓位.智慧物业管理系统设计方案研究[J].内江科技,2021,42(10):39-40.

[16]张驰.基于5G物联网技术的物业管理系统研究[J].数字技术与应用,2021,39(04):31-33.DOI:10.19695/j.cnki.cn12-1369.2021.04.11.

[17]汪康, 智慧小区物业管理应用系统App. 安徽省,黄山徽扬物联科技有限公司,2020-11-08.

[18]刘雷.基于J2EE的智能小区物业管理系统的设计与实现[J].技术与市场,2020,27(11):61-62.

[19]卢任强. 基于微服务架构的智慧小区系统的设计与实现[D].华中科技大学,2020.DOI:10.27157/d.cnki.ghzku.2020.006728.

[20]. Turnkey Vacation Rentals Inc; Researchers Submit Patent Application, "System And Method For Remote Property Management", for Approval (USPTO 20200058212)[J]. Information Technology Newsweekly,2020.

                                                          

                               免费领取源码,请点赞关注私信博主

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值