38.社区信息管理系统(基于springboothtml)
目录
1.系统的受众说明
2.需求分析及相关技术
2.1设计目的
2.2社区信息管理系统的特点
2.3可行性分析
2.3.1技术可行性
2.3.2运行可行性
2.4系统设计
2.4.1系统功能分析
2.4.2管理员权限功能设计
2.4.3业主权限功能设计
2.5系统的技术介绍
2.5.1 Html
2.5.2 Ajax
2.5.3 JAVA
2.5.4 Mysql数据库
2.5.5 SpringBoot框架
3.数据库设计
3.1系统E-R图分析
3.2创建数据库连接
3.2数据库设计
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 物业费查询
4.2.4 生活缴费记录
4.2.5 我的投诉
4.2.6 我的报修
5. 系统功能模块具体实现
5.1登录功能
5.2管理员功能模块
5.2.1首页
5.2.2社区信息管理
5.2.3用户管理
5.2.4业主信息处理
5.2.5数据统计分析
5.3业主功能模块
5.3.1车位费查询
5.3.2物业费查询
5.3.3生活缴费记录
5.3.4我的投诉
5.3.5我的报修
1.系统的受众说明
1 在校学习的学生,可用于日常学习使用或是毕业设计使用
2 毕业一到两年的开发人员,用于锻炼自己的独立功能模块设计能力,增强代码编写能力。
3 亦可以部署为商化项目使用。
2.需求分析及相关技术
2.1设计目的
随着信息技术的不断发展和生活质量的逐步提高,人们对社区生活的智能化提出了要求越来越高[3]。针对社区管理工作的需求,构建了一个社区信息管理系统,设计并实现了系统的相应的功能,满足社区的管理要求和居民对生活质量的期望,提高对社区规范化管理的效率。
2.2社区信息管理系统的特点
社区信息管理系统特色介绍:
- 界面前端使用了Layui框架,简单清新,色彩搭配和交互性都很好;没有过于花哨的界面,用户使用也十分方便,能快速的熟悉其功能。
- 操作简单方便,才有友好文字提示框提醒用户,用户很快就能熟悉该系统。
- 功能齐全,用户会有较好的体验。
- 本系统是基于Web在B/S结构下[4],使用JAVA编程语言,前端使用了Layui框架,后端使用了Springboot框架,结合Mysql数据库完成设计,数据库逻辑相对简单,数据量适中。
2.3可行性分析
一个系统的可行性[5]分析有很多项,主要是从以下两方面对能否实现本系统目标进行可行性分析:
2.3.1技术可行性
根据本系统的功能,从开发项目的角度分析,本系统在IntelliJ IDEA平台下,使用java的编程语言完成,使用了Mysql数据库,编程环境比较成熟。利用现代技术实现本系统的功能,本系统能够在规定的时间完成,并且界面设计和功能都能完美的实现[6]。
2.3.2运行可行性
从系统功能结构上分析,以管理和服务为纽带,将管理人员和小区住户紧密地联系在一起,管理人员可以对小区信息、楼栋信息、车位信息、业主信息等进行管理,通过提醒业主缴纳物业费和车位费和业主进行互动,业主可以通过提交投诉建议和保修请求与管理员进行互动,管理员通过业主提供的信息进行相应的处理,完成业主的需求,给业主创造一个舒适的生活环境。
2.4系统设计
2.4.1系统功能分析
经过可行性分析、需求分析[7]等各个方面的考虑设计.
管理员所具备的功能:
1.社区信息管理:
对小区信息、楼栋信息、房屋信息、业主信息、车位信息、收费信息管理、信息的添加,单个删除和批量删除,分页查询和高级查询,社区相关信息的编辑。对登录用户进行管理:添加用户,删除用户,给用户修改密码。
2.对业主基本生活进行管理:
提醒业主提交车位费和物业费,如果用户提交了,修改用户的缴费状态。接收业主提交的投诉信息和保修信息,处理以后修改状态。
3.数据统计分析:
根据业主、业主的投诉信息和保修信息进行统计,通过图表进行展示。
业主所具备的功能:
1.缴费查询:
业主通过自己的缴费情况查看自己的缴费状态,查看自己的缴费记录。
2.投诉和保修请求:
业主可以进行投诉和保修情况,根据处理状态查看是否被处理。
2.4.2管理员权限功能设计
1.管理员操作部分:
进入登录页面输入账号密码,如果账号密码正确进入管理员界面。
进入管理员界面可以对社区信息进行管理:
可以对小区信息、楼栋信息、房屋信息、业主车位等信息进行增加删除、编辑、搜索的操作。可对登录用户进行增加、删除、修改密码的操作。
2.业主信息处理:
可以对车位费和物业费进行管理,提醒业主交物业费和车位费。如果已缴费,可以修改业主缴费状态。可以添加用户的生活缴费信息。可以对业主的投诉信息和报修信息进行处理,处理后修改状态。
管理员操作流程,如图2-1所示:
图2-1管理员模块功能
2.4.3业主权限功能设计
业主操作部分:
进入登录页面输入账号密码,如果账号密码正确进入业主界面。进入业主界面可以查看自己的车位费缴费情况。可以查看自己的物业费费缴费情况。可以查看自己的生活缴费记录。可以进行业主投诉、报修操作。
业主操作流程,如图2-2所示:
2.5系统的技术介绍
2.5.1 Html
Html名为超文本标记语言。它包含了一系列标签,形成了分散性的逻辑整体。Html其实就是文本,需要浏览器的解释,通过使用Html[8]可以实现网页的制作。
Html文件可以引用相关的Css,Js文件,使得制作的网页界面更为美观,也可以完成更多的效果。
2.5.2 Ajax
Ajax[9]名为Web数据交互方式,他不是一个新的编程语言,而是实现前后端交互更好的Web应用程序技术,Ajax与Web服务器之间使用异步数据传输。Ajax最大的特点就是能在不更新页面的情况下维持数据。jQuery[10]框架结合Ajax可以使开发更为简单,快捷,并且方便地为网站提供Ajax交互。。
2.5.3 JAVA
2.5.4 Mysql数据库
MySQL是一款安全、跨平台、高效的,并与Java、PHP等主流编程语言紧密结合的数据库系统。Mysql[13]使用的Sql语句是访问数据库最标准的语句,目前MySQL被广泛地应用在Internet上的中小型网站中,其特点是体积小,速度快,成本低。
2.5.5 SpringBoot框架
SpringBoot[14]是基于Spring4.0的Java平台上的开源应用框架,继承了Spring的特点,通过简易的配置简化的Spring应用的搭建和开发过程。SpringBoot内嵌了Tomcat[15]或Jetty等Servlet容器,简单使用Mavan插件管理依赖包。使用Java进行编写,前端使用Bootstrap、JQuery等,数据传值使用Json类型。
3.数据库设计
3.1系统E-R图分析
E-R图,也称为实体联系图,用于描述实体与实体之间的关系。它提供了一种表示实体类型、属性和连接的方法[16]。
根据对社区信息管理的需求分析,得到实体:管理员,业主,缴费,投诉,报修。一个管理员可以处理多个业主的信息,实现一对多的关系。由此得到系统的E-R图。
系统总体E-R图,如图3-1所示:
图3-1 系统E-R图
3.2创建数据库连接
使用Navicat premium数据库管理工具创建数据库连接,并命名为“社区信息管理”。如图3-2所示:
创建一个数据库,并命名为“community”。如图3-3所示:
图3-3 创建数据库
3.2数据库设计
1.用户登录信息表(userinfo),记录用户的用户名,密码,用户类型,备注。该表结构如表3-1所示:
表3-1 userinfo表
字段名称 | 数据类型(大小) | 是否为空 | 主键 | 备注 |
id | int | N | √ | 用户ID |
username | varchar(20) | Y | × | 登录名 |
password | varchar(20) | Y | × | 登录密码 |
type | int | Y | × | 登录类型 |
remarks | varchar(200) | Y | × | 备注 |
2.小区信息表(community),记录小区的小区名称,备注。该表结构如表3-2所示:
表3-2 community表
字段名称 | 数据类型(大小) | 是否为空 | 主键 | 备注 |
id | int | N | √ | 小区ID |
name | varchar(255) | Y | × | 小区名称 |
remarks | varchar(255) | Y | × | 备注 |
3.楼栋信息表(building),记录楼栋的楼号,单元,所属小区,备注。该表结构如表3-3所示:
表3-3 building表
字段名称 | 数据类型(大小) | 是否为空 | 主键 | 备注 |
id | int | N | √ | 楼栋ID |
number | varchar(50) | Y | × | 楼号 |
uints | varchar(50) | Y | × | 单元 |
community_id | int | Y | × | 所属小区ID |
remarks | varchar(250) | Y | × | 备注 |
4.房屋信息表(house),记录房屋的房屋号,入住状态,入住时间,所属小区ID,所属楼栋ID,面积,备注。该表结构如表3-4所示:
表3-4 house表
字段名称 | 数据类型(大小) | 是否为空 | 主键 | 备注 |
id | int | N | √ | 房屋ID |
numbers | varchar(50) | Y | × | 房屋号 |
status | Int | Y | × | 入住状态 |
into_date | datetime | Y | × | 入住时间 |
community_id | int | Y | × | 所属小区ID |
building_id | int | Y | × | 所属楼栋ID |
area | double | Y | × | 面积 |
remarks | varchar(250) | Y | × | 备注 |
5.业主信息表(owner),记录业主的业主名,电话,性别,所属小区ID,所属房屋ID,身份证号,身份证号,初始密码,备注。该表结构如表3-5所示:
表3-5 owner表
字段名称 | 数据类型(大小) | 是否为空 | 主键 | 备注 |
id | int | N | √ | 业主ID |
username | varchar(25) | Y | × | 业主名 |
tel | varchar(25) | Y | × | 电话 |
sex | varchar(5) | Y | × | 性别 |
community_id | int | Y | × | 所属小区ID |
house_id | int | Y | × | 所属房屋ID |
identity | varchar(25) | Y | × | 身份证号 |
password | varchar(28) | Y | × | 初始密码 |
remarks | varchar(255) | Y | × | 备注 |
6.车位信息表(parking),记录车位的车位号,车位状态,所属业主ID,备注。该表结构如表3-6所示:
表3-6 parking表
字段名称 | 数据类型(大小) | 是否为空 | 主键 | 备注 |
id | int | N | √ | 车位ID |
numbers | varchar(25) | Y | × | 车位号 |
status | int | Y | × | 车位状态 |
owner_id | int | Y | × | 所属业主ID |
7.生活缴费信息表(property_info),记录缴费信息的缴费类型ID,金额,开始时间,结束时间,状态,所属房屋ID,备注。该表结构如表3-7所示:
表3-7 property_info表
字段名称 | 数据类型(大小) | 是否为空 | 主键 | 备注 |
id | int | N | √ | 生活缴费ID |
type_id | int | Y | × | 缴费类型ID |
money | double | Y | × | 金额 |
start_date | datetime | Y | × | 开始时间 |
end_date | datetime | Y | × | 结束时间 |
status | int | Y | × | 状态 |
house_id | int | Y | × | 所属房屋ID |
remarks | varchar(255) | Y | × | 备注 |
8.缴费类型表(property_type),记录缴费名称,单价,单位,备注。该表结构如表3-8所示:
表3-8 property_type表
字段名称 | 数据类型(大小) | 是否为空 | 主键 | 备注 |
id | int | N | √ | 缴费类型ID |
name | varchar(25) | Y | × | 缴费名称 |
price | double | Y | × | 单价 |
unit | varchar(25) | Y | × | 单位 |
remarks | varchar(255) | Y | × | 备注 |
9.缴费信息表(records),记录缴费的缴费类型ID,开始金额,最终金额,所属房屋ID,开始时间,结束时间,提交时间,处理时间,处理人员,备注。该表结构如表3-9所示:
表3-9 records表
字段名称 | 数据类型(大小) | 是否为空 | 主键 | 备注 |
id | int | N | √ | 缴费ID |
type_id | int | Y | × | 缴费类型ID |
num | double | Y | × | 上次 |
num2 | double | Y | × | 本次 |
house_id | int | Y | × | 所属房屋ID |
up_time | datetime | Y | × | 开始时间 |
on_time | datetime | Y | × | 提交时间 |
check_time | datetime | Y | × | 处理时间 |
meter | varchar(25) | Y | × | 处理人员 |
remarks | varchar(255) | Y | × | 备注 |
10.车位费缴费信息表(carcharge),记录车位费ID,开始时间,结束时间,金额,缴费状态,业主ID,备注,类型,车位ID。该表结构如表3-10所示:
表3-10 carcharge表
字段名称 | 数据类型(大小) | 是否为空 | 主键 | 备注 |
id | int | N | √ | 车位费ID |
pay_date | datetime | Y | × | 开始时间 |
end_date | datetime | Y | × | 结束时间 |
money | double | Y | × | 金额 |
status | int | Y | × | 缴费状态 |
owner_id | int | Y | × | 业主ID |
remarks | varchar(25) | Y | × | 备注 |
type | int | Y | × | 类型 |
park_id | int(25) | Y | × | 车位ID |
11.投诉信息表(complaint),记录投诉信息的投诉ID,投诉类型ID,投诉时间,处理时间,所属业主ID,状态,公共,备注。该表结构如表3-11所示:
表3-11 complaint表
字段名称 | 数据类型(大小) | 是否为空 | 主键 | 备注 |
id | int | N | √ | 投诉ID |
com_id | varchar(25) | Y | × | 投诉类型ID |
com_date | datetime | Y | × | 投诉时间 |
handle_date | datetime | Y | × | 处理时间 |
owner_id | int | Y | × | 所属业主ID |
status | int | Y | × | 状态 |
clr | int | Y | × | 公共 |
remarks | varchar(25) | Y | × | 备注 |
12.投诉类型表(complaint_type),记录投诉信息的投诉类型ID,投诉名称,备注,状态。该表结构如表3-12所示:
表3-12 complaint_type表
字段名称 | 数据类型(大小) | 是否为空 | 主键 | 备注 |
id | int | N | √ | 投诉类型ID |
name | varchar(25) | Y | × | 投诉名称 |
remarks | varchar(255) | Y | × | 备注 |
status | int | Y | × | 状态 |
13.报修表(repair),记录报修信息的报修ID,报修类型ID,报修时间,处理时间,所属业主ID,状态,公共,备注。该表结构如表3-13所示:
表3-13 repair表
字段名称 | 数据类型(大小) | 是否为空 | 主键 | 备注 |
id | int | N | √ | 报修ID |
com_id | int | Y | × | 报修类型ID |
com_date | datetime | Y | × | 报修时间 |
handle_date | datetime | Y | × | 处理时间 |
owner_id | int | Y | × | 所属业主ID |
status | int | Y | × | 状态 |
clr | int | Y | × | 公共 |
remarks | varchar(255) | Y | × | 备注 |
14.报修类型表(repair_type),记录报修信息的报修ID,报修名称,备注,状态。该表结构如表3-14所示:
表3-14 repair_type表
字段名称 | 数据类型(大小) | 是否为空 | 主键 | 备注 |
id | int | N | √ | 报修类型ID |
name | varchar(50) | Y | × | 报修名称 |
remarks | varchar(255) | Y | × | 备注 |
status | int | Y | × | 状态 |
15.物业费信息表(property),记录报修信息的报修ID,报修名称,备注,状态。该表结构如表3-15所示:
表3-15 property表
字段名称 | 数据类型(大小) | 是否为空 | 主键 | 备注 |
id | int | N | √ | 物业缴费ID |
type_id | int | Y | × | 缴费类型ID |
money | double | Y | × | 金额 |
start_date | datetime | Y | × | 开始时间 |
end_date | datetime | Y | × | 结束时间 |
status | int | Y | × | 状态 |
house_id | int | Y | × | 所属房屋ID |
4.系统详细设计
在详细设计阶段,主要是通过需求分析的结果,设计出满足用户的功能[17]。
4.1管理员模块
4.1.1登录功能
进入登录页面,输入自己的登录名和密码,选择自己登录的类型,点击登录。如果查询不到任何一条用户信息,提示框显示“必填项不能为空”,如果登录名,密码或者类型选择为业主,显示“用户名或者密码不正确,重新登录”。导航栏有个显示管理员登录名的地方有个下拉列表,点击退出登录,进入登录页面。管理员登录算法流程图,如图4-2所示。
图4-1 管理员登录算法流程图
4.1.2社区信息管理
社区信息管理中有很多模块:小区管理,楼栋管理,房屋管理,业主管理,车位管理,缴费管理,用户管理。这些模块都显示该模块的数据信息,包含的增加,删除,查询,编辑的操作。在缴费管理中,可以添加该业主的缴费记录。在业主管理中,添加一个业主就会创建一个登录账户,方便业主登录,初始密码为“123456”,如需修改,管理员可以在用户管理中修改业主的登录密码[19]。
4.1.3业主信息管理
业主信息管理中,车位收费管理,其中显示车位号,所属业主,需缴纳金额等信息。车位收费管理,可以通知在社区中有车位的业主缴纳车位费。物业收费管理,可以通知住房业主缴纳物业费,如果物业费提交的业主显示状态可以修改。投诉信息管理,可以收到业主的投诉信息。报修信息管理,可以看到业主提交的报修信息,如果已处理则把投诉状态修改。
4.1.4数据统计分析
将业主投诉信息,报修统计信息,社区业主信息,业主生活缴费信息通过可视化视图的方式展现出来,有饼图,折线图,柱状图。
投诉统计通过饼图展现出来可观察到投诉信息的百分比,分析出那种情况出现的最多。
社区业主统计通过柱状图展现出来,可以分析出各小区的业主总数。
生活缴费统计用了饼状图,通过饼状图可展示出社区业主缴费情况的占比。
报修统计用了折线图,通过折线图可以反应业主报修的趋势。
4.2业主模块
4.2.1登录功能
业主进入登录页面,输入自己的登录名和密码,选择自己登录的类型,点击登录。如果查询不到任何一条用户信息,提示框显示“必填项不能为空”,如果登录名,密码或者类型选择错误,显示“用户名或者密码不正确,重新登录”。导航栏有个显示业主登录名的地方有个下拉列表,点击退出登录,进入登录页面。业主登录算法流程图[18],如图4-2所示。
4.2.2 车位费查询
在车位费查询页面,业主可以看到自己缴费情况,如果未缴费则显示“待缴费”,如果已缴费则显示“已缴费”。该页面还显示登录业主的车位号码,缴费,开始时间,结束时间,金额等信息。还可根据自己的缴费情况进行搜索。
4.2.3 物业费查询
在物业费查询页面,业主可以看到自己缴费情况,如果未缴费则显示“待缴费”,如果已缴费则显示“已缴费”。该页面还显示登录房间号,自己的姓名,缴费金额等信息。还可根据自己的缴费情况进行搜索。
4.2.4 生活缴费记录
在生活缴费记录页面,可以查看到自己的缴费记录,比如水费,电费,气费等。还显示每次缴费的金额。还可根据自己的缴费情况进行搜索。
4.2.5 我的投诉
在我的投诉页面,业主可以进行投诉操作,选择自己的投诉类型,进行备注,点击“提交”,投诉操作完成。可以查看自己的投诉记录,还有投诉处理的状态,如果管理员已处理则显示“已处理”,如果管理员还未处理,则显示“未处理”。可以通过投诉类型和处理状态进行搜索。
4.2.6 我的报修
在我的报修页面,业主可以进行提交报修操作,选择自己需要报修的类型,进行备注,点击“提交”,提交报修成功。可以查看到自己提交的报修记录。如果管理员已处理则显示“已处理”,如果管理员还未处理,则显示“未处理”。可以通过报修类型和处理状态进行搜索。
5. 系统功能模块具体实现
需求分析和总体设计思想已完成,可以进行项目设计和实现。五层结构设计:分别为表现层(Html),控制层(Controller),业务层(Service,ServiceImpl),持久层(Mapper),实体层(Model)。在软件体系架构设计中,使用了SSM(Spring+SpringMVC+MyBatis)框架集由Spring、MyBatis两个开源框架整合而成(SpringMVC是Spring中的部分内容),常作为数据源较简单的web项目的框架[20]。
5.1登录功能
社区信息管理系统,用户登录需要输入正确的登录账号和密码,还要选择自己的用户类型。通过后台和sql语句查找数据库中是否存在对应的数据。如果查找成功则登录成功,进入登录类型对应界面,如果查找失败则需要输入正确的登录账号和密码,选择正确的类型的重新登录。登录效果,具体如图5-1所示:
图5-1 登录页面效果图
1.登录功能实现:
输入正确的登录名和密码,选择正确的类型,根据自己的登录类型进入对应的页面。
后台:通过HttpServletRequest中request.getSession()获取session的值,登录成功将用户登录信息存入session,用Map方法向前端传递参数。
前端:设置点击事件,通过ajax连接后台接口,如果code等于200则登录成功,跳转到主页,如果登录失败则留在登录页面重新登录。
2.登录拦截器:
判断session的值是否存在,如果session的值不为空,执行放行操作,如果不存在则跳转到登录页面,并且设置登录拦截配置需要拦截的信息和不需要拦截的信息。
3.退出登录功能:
在登录状态下,点击退出登录按钮,进入登录页重新登录
在登录状态下,通过request.getSession()获取session,使用invalidate()方法执行注销操作,然后跳转到登录页面。
5.2管理员功能模块
管理员通过登录进入管理员界面,管理员界面有很多模块信息,有业主信息处理,社区信息处理,数据统计分析。管理员界面效果图,如图5-2所示:
图5-2 管理员界面效果图
关键代码:详见附录A。
5.2.1首页
首页呈现了4个可视化图表,分别为投诉统计,小区业主统计,收费统计,报修统计。首页效果图,如图5-3所示:
图5-3 首页效果图
关键代码:详见附录A。
5.2.2社区信息管理
社区信息管理包括很多个模块,有小区管理,楼栋管理,房屋管理,业主管理,车位管理,用户管理。社区信息管理,如图5-4所示:
图5-4 社区信息管理
关键代码:详见附录A。
社区信息管理里面的子模块实现的功能都是相同的,都有增加,删除,编辑,查询的操作。页面显示,如图5-5所示:
图5-5 社区信息管理页面显示
1.添加操作:
后端使用用BaseMapper中insert()方法。前端添加form表单,将要添加的数据字段与数据库保持一致。点击保存按钮,出发点击事件,获取from的数据信息,通过ajax向后台发送请求,使用json格式进行传输。添加小区添加效果图,如图5-6所示:
图5-6 添加效果图
后台:判断前端传送的数据是否为空,如果为空,提示添加失败,如果不为空则添加成功。
前端:输入添加信息,点击保存,通过ajax向后端发送请求,如果code为200,则添加成功,将数据存入数据库中,表格回显数据。
2.删除操作:
(1)批量删除:
可以选择表格在面的按钮进行选择批量删除,也可以点击全选按钮全部删除。点击批量删除按钮显示提示框,点击确定完成删除。删除效果图,如图5-7所示:
图5-7 删除效果图
后台:使用BaseMapper中的delete()方法。在Controller中运用Arrays.asList()方法,将选中数据转成list集合。通过遍历ID进行删除操作。
前端:判断是否有选择记录,没有则提示选择。获取要删除信息的id,通过ajax向后端发送请求,进行删除操作。
(2)单点删除
和批量删除不同的是,批量删除删除的是list集合,单点删除的是获取table中data信息中id的信息,运用删除方法,通过id进行单点删除操作。
3.分页显示小区信息,通过小区名查询小区
后台:通过Mapper层,调用对应的xml文件,通过Sql语句查询数据库中的信息和通过名高级查询。使用MyBatis分页插件-PageHelper,用PageInfo类实现分页查询操作,并渲染到前台页面。
前端:使用layui的table.rander连接后台的接口访问动态数据,在cols中通过community表设置相应的字段。向后台获取值信息,重载table表格实现搜索。
搜索操作:输入关键字点击搜索,则呈现出该关键字相关的信息。搜索效果图,如图5-8所示:
图5-8 搜索效果图
4.编辑操作:
点击编辑按钮,进入编辑页面,将数据库信息渲染到表单中,重新编辑需要修改的信息,点击保存。返回表格,数据会自动更新。编辑效果图,如图5-9所示:
图5-9 编辑效果图
后台:使用BaseMapper中的updateById()方法。接收前端的数据,将前端数据渲染到from表单中,根据自己需要修改内容。和添加的方法类似,但是接口和方法名不同。
前端:借助layui提供的from渲染的方法,将数据渲染到from中。点击“确认修改”按钮,通过ajax发送给后台,完成修改功能。
关键代码:详见附录A。
5.2.3用户管理
在社区信息管理中,有一个功能是用户管理。他是通过业主管理中的添加业主,在添加业主的同时,在用户表里面添加该用户的信息:登录名,密码(默认为123456),登录类型等信息。
后台:在业主管理添加接口中,向用户在用户表中添加用户的登录名,密码,用户类型,存入数据库中,方便业主登录。
在用户管理中,可以添加管理员和业主用户,这里面的登录名和密码就是登录界面需要的信息,管理员可以修改任何用户的密码。
5.2.4业主信息处理
业主信息处理,包括5个子模块:车位收费管理,物业收费管理,业主收费管理,投诉信息管理,报修信息管理。业主信息处理,如图5-10所示:
图5-10 业主信息处理
1.车位收费管理,物业收费管理,业主收费管理,该模块主要是通知用户缴费和记录用户的缴费情况,如果用户缴费成功则修改缴费状态。
(1)缴费提醒:
点击缴费提醒,现在缴费的起始日期,日期选择运用了Layui时间插件,会弹出日期选择器选择对应的日期,输入对应的金额,点击提醒,则完成操作,就会添加相关业主的缴费提醒,在业主界面显示。如图4-11所示:
图5-11 缴费提醒
(2)删除:可以进行批量删除和单个删除,删除完成之后,自动刷新数据。
(3)缴费:管理员修改缴费状态,如果未缴费则可以进行缴费操作,编辑缴费按钮,则修改业主的缴费状态。
(4)搜索:根据关键字查询。
2.投诉管理,报修管理,该模块主要是管理业主向管理员提交的投诉和报修信息,如果该事件已处理则修改其状态。投诉管理界面,如图5-12所示:
图5-12 投诉管理界面
5.2.5数据统计分析
该模块主要展示,保修信息,投诉信息,业主统计,生活缴费统计。将信息通过可视化图标展示出来,所展示的图放在主页。
5.3业主功能模块
和管理员也一样,通过输入正确的登录名和密码,还要选择正确的类型。如果登录名密码输入成功,则进入业主界面。业主界面,如图5-13所示:
图5-13 业主界面
5.3.1车位费查询
车位费查询,通过管理员页面的缴费提醒操作查看自己的缴费情况。如果没有缴费,显示“未缴费”。如果已缴费,管理员通过修改缴费状态,则在页面状态显示“已缴费”。车位费缴费状态,如图5-14所示:
图5-14
车位费缴费状态
每个业主只能查看自己车位费的缴费情况,通过HttpServletRequest获取session。运用Sql语句,根据session中的username查询业主ID,通过业主ID查询该业主对应的信息,渲染到页面上。
5.3.2物业费查询
物业费,通过管理员页面的缴费提醒操作查看自己的缴费情况,缴费时间。如果没有缴费,显示“未缴费”。如果已缴费,管理员通过修改缴费状态,则在页面状态显示“已缴费”。物业费缴费状态,如图5-15所示:
图5-15 物业费缴费状态
5.3.3生活缴费记录
这是再管理员页面添加的生活缴费记录,显示登录业主的缴费记录,业主看一看到自己的缴费类型,缴费时间,缴费金额等信息。生活缴费记录,如图5-16所示:
图5-16 生活缴费记录
5.3.4我的投诉
业主可以进行添加投诉操作,提交完成之后信息会传至管理员页面,如果被处理,管理员可修改其状态“已处理”。我的投诉页面,如图5-17所示:
图5-17 我的投诉页面
业主可以进行处理信息的添加,点击添加按钮,弹出添加页面,选择自己需要添加信息的类型,再加以备注,点击提交,信息就会传至管理员界面。当业主添加信息时,状态为“0”,就是未处理的状态。我要投诉,如图5-18所示:
图5-18 我要投诉
5.3.5我的报修
业主可以进行添加报修操作,提交完成之后信息会传至管理员页面,如果被处理,管理员可修改其状态“已处理”。
业主也可以添加报修,点击“我要保修”选择需要添加的报修类型,详细描述报修信息,点击“提交”。我要报修,如图5-19所示:
图5-19 我要报修