基于java物业管理信息系统设计(含源文件)

欢迎添加微信互相交流学习哦!

二维码

项目源码:https://gitee.com/oklongmm/biye

基于B/S模式的物业管理信息系统设计

摘  要

随着市场经济的发展和人们生活水平的提高,大量的住宅小区已遍布城区,人们对于居住环境的要求也越来越高,住宅小区的物业管理工作也变得更加繁重,利用物业管理信息系统来实现对小区物业管理工作的信息化正成为人们的共识。 
小区物业管理系统在现代社会中是非常热门的软件,是最关切群众实际生活的。它的使用使物业管理者和业主对住宅小区中的事物能更方便、更快捷、更满意的得到答复。伴随着小区的规模不断扩大和住户的不断增多,工作量也将越来越大。但一直以来人们使用传统人工的方式管理各种数据,这种管理方式存在着许多缺点:效率低、保密性差,另外时间一长,将产生大量的文件和数据,这对于查找、更新和维护都带来了不少的困难。 
随着科学技术的不断提高,计算机科学技术日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。作为计算机应用的一部分,使用计算机对企业单位的各项信息进行管理,具有手工管理所无法比拟的优点。这些优点能够极大地提高工作效率,也是企业的科学化、正规化管理与世界接轨的重要条件。 
因此,开发这样一套小区物业管理信息系统成为很有必要的事情,在下面的各章中我将就本次毕业设计所开发的小区物业管理系统,谈谈其开发过程和所涉及到的问题及解决方法。

关键词:物业; 信息管理系统; JSP

The design and realization of a property management information system based on B/S mode

 Abstract 

With the development of market economy and the improvement of people's living standard, a large number of residential area, people around for a living environment more and more is also high, residential property management has become more onerous, use property management information system of residential property management informatization has become the common people.
Area property management system in modern society is a very popular software, is the most concerned about the actual life of the masses. Its use so that property managers and owners of residential quarters on things more convenient, faster and more satisfactory reply had been received. Along with the size of the area continued to expand and develop the growing number of households, will also be increasing the workload. However, it has been the use of traditional manual data management, such management, there are many disadvantages: low efficiency, poor confidentiality, and over time, will have a large number of documents and data, which is to find, update and maintenance bring a lot of difficulties.
With the continuous improvement of science and technology, computer science and technology maturity, its powerful features have a profound understanding of people, it has access to all areas of human society and play an increasingly important role. As part of computer applications, the use of computer-to-business unit to manage the information with the manual management of unmatched advantages. These advantages can greatly improve efficiency, but also the scientific enterprise, standardized management and an important condition for the rest of the world.
Therefore, the development of such a residential property management information system as a necessary thing, in the following chapters I will be graduating from the design of the development of residential property management systems, to talk about the development process and the issues involved in and solutions.

Key words:  Property;MIS; JSP

目 录

1.  需求分析    1
1.1  系统分析    1
1.2  用户需求    1
1.2.1  普通用户:    1
1.2.2  管理员用户:    2
1.3  可行性研究    2
1.3.1  管理上的可行性    2
1.3.2  技术上的可行性    2
1.3.3  经济上的可行性    3
1.3.4  系统运行的可行性分析    3
2.  系统设计    4
2.1  系统功能划分    4
2.1.1  用户功能:    4
2.1.2  管理员功能:    5
2.2  系统流程图    6
2.3  系统用例图    7
2.4  系统结构图    7
2.5  系统框架    9
2.5.1  管理员框架:    10
2.5.2  业主框架:    10
2.6  处理封装    11
2.6.1  报表处理类的封装:    11
2.6.2  数据库表处理类的封装:    11
2.7  系统子模块设计    11
2.7.1  用户管理子系统:    11
2.7.2  用户注册、登记:    12
2.7.3  用户信息查询子:    12
2.7.4  管理员管理:    12
3.  数据库设计    13
3.1  数据库分析    13
3.2  数据库结构    13
3.3  数据库字段说明    13
4.  页面设计与编码    16
4.1  界面设计    16
4.1.1  登陆主界面    16
4.1.2  注册界面    17
4.1.3  管理员登陆    17
4.1.4  管理员管理    18
4.1.5  用户信息修改    19
4.2  系统核心代码    19
4.2.1  新用户注册代码:    19
4.2.2  注册数据库连接代码:    23
4.2.3  用户修改信息代码:    23
4.2.4  信息查询代码:    25
5.  程序测试    27
5.1  软件测试    27
5.2  测试目标与方法    27
结  论    28
致  谢    29
参考文献    30
附录1  外文参考文献(译文)    31
附录2  外文参考文献(原文)    34 
1.  需求分析
1.1  系统分析
此系统要求实现社区物业最大程度的信息化,物业公司和业主将可以借用本管理系统来完成信息管理及信息查询。本系统要求实现功能如下: 
用户信息
物业费信息
业务信息
缴费欠费信息
现有社区物业管理网站要求:
系统要求采用B/S模式进行架构,分为前台浏览器端和后台服务器端两个部分。浏览器段主要功能有:    
用户登陆(普通业主和管理员):判断用户身份。
用户信息管理:用户注册、自己信息添加查询、密码修改系统将会把修改结果保存到物业社区用户信息数据库中)。 
物业费信息管理:各项相关费用明细(查看、添加、修改、删除)(系统将最终结果保存到社区物业用户数据库中)。
业务信息管理:业主业务办理,更新数据库以及数据录入与维护,数据处理统计与查询等。
缴费欠费信息管理:业主使用的水电气,缴费和欠费清单,费用催缴。
1.2  用户需求
1.2.1  普通用户:
普通用户就是该社区的业主,用户们可以通过自己的帐号和自己设置的对应的密码来进入管理系统,用户可以查询自己的信息,看自己的房产资源及所用的的水电气等费用,添加自己不完整的信息资料、修改自己的密码。
1.2.2  管理员用户:
管理员用户就是该社区的物业管理人员,管理员也有自己的帐号和密码来进入社区物业用户的管理系统,管理员可以查看、修改用户的信息,还可以根据用户的具体某项信息来决定要不要这个信息,可以修改管理系统的任何信息。
1.3  可行性研究
可行性研究的目的不是解决问题,而是确定问题是否值得去解决。怎样达到这个目的呢,当然不能凭主观猜想而只能靠客观分析。必须分析几种主要的可能解决方案的利弊,从而判断原定的系统规模和目标是否现实,系统完成后所能带来的效益是否大到值得投资开发这个系统的程度。因此,可行性研究实质上时要进行一次大大压缩简化了的系统分析和设计的过程。
为了把工作人员从繁重的工作中解脱出来,提高安全和服务质量,建立小区物业管理信息系统是非常必要的。随着物业管理信息系统的建成后,小区管理工作可以走向科学化,正规话的道路。 
1.3.1  管理上的可行性 
改进管理手段,可以将原来由手工完成的登记、验收等工作由计算机来完成,实现办公自动化智能化,这将大大改进管理手段,提高和改进管理信息服务质量。使用管理信息系统后,统计报表,查询功能将大大方便了业主和管理人员查询和使用各种情况,可以提高服务质量,避免浪费。 
增强资源共享,使用此系统后,各部门可以直接了解情况,输入相关问题,减少中间环节,提高工作效率。 
提高工作效率,减轻劳动强度。使用本系统后可以节省人力,减少劳动负荷,提高信息处理的速度和准确性。 
1.3.2  技术上的可行性 
目前已经成功的开发出了许多管理信息系统,信息技术和计算机软硬件发展已经完全可以满足本系统的技术要求,本方案技术要求比较高,安全性和可靠性较强,但通过后面的综合分析,可以知道从技术上来说是可行的。
1.3.3  经济上的可行性 
本方案采用网络方式,因此投入比较多,此系统建成后,可实现资源共享,支持用户查询,可以与财务处直接进行信息交换。另外,此系统可以减少失误,还会带来其他经济效益。所以从经济上说是可行的。 
1.3.4  系统运行的可行性分析 
本系统使用后,要对组织结构产生一定影响,要有人员的变动,但这些变动是局部的,不会影响整个组织,所以具有系统运行的可行性。 
通过前面的分析论证,我们认为本系统的开发是非常可行的。

 
2.  系统设计
2.1  系统功能划分
小区物业管理系统是物业部门用来对住宅小区内的建筑、住户、设备、人员等信息进行综合管理的一个信息管理系统。根据客户要求,系统要能对小区内建筑、公共设备、住户等基本信息实现录入、修改、查询和删除等操作,并且还要实现包括水、电、煤气费在内的各项物业管理费用的统计、查询和报表生成。因此,实现该物业管理系统功能模块图如下:
2.1.1  用户功能:
 
图2.1用户功能图
2.1.2  管理员功能:
 
图2.2管理员功能图
实现的功能如下:
(1)系统管理
系统管理模块是整个物业管理系统的核心,在区分不同用户的使用权限、加强软件使用安全性和保证数据安全方面起着关键的作用。具体包括:用户管理、用户授权、更改密码、系统设置、系统初始化、数据库备份、恢复这几个子模块。
(2)住户管理
该模块完成对新增住户基本信息(姓名、人口、住房面积等)的登记和已有住户信息的修改、查询和删除,是系统最基本的功能。该模块具体又分为住户登记、住户修改、住户修改、住户查询和住户删除四个子模块。
(3)设备管理
该模块实现对小区内各项公共设备(如:路灯、排水管等)的管理,为各项设备建立信息档案,记录各设备检查\维修\保养记录。具体又分为设备登记、设备报修、设备检查和设备保养这四个子模块。
(4)收费管理
该模块主要实现对已经入住的住户进行费用(物业管理费、水费、电费和煤气费)缴纳的各方面管理,具体包括以下几个部分:收费类别设置、收费项目设置、计量单位设置、表设置、用户抄表、应收款和收款单等。

2.2  系统流程图

 
图2.3用户流程图

 
图2.4管理员流程图

2.3  系统用例图
 
                               图2.5系统用例图
根据用例图,可以得到此系统的大致结构。系统的结构图如图2.6所示:
2.4  系统结构图

 
图2.6 系统结构图
此图是对物业管理信息系统结构的总体设计的图形显示,系统按功能逐次分割成层次结构,使每一部分完成简单的功能且各个部分之间又保持一定的联系。
2.5  系统框架
系统框架描述了系统的基本结构和模块之间的调用关系,下面一系列的图反映了整个系统的模块间的关系,同样他也揭示了与此系统相关的各个角色的使用权限。如:普通用户只能查看社区物业用户系统里面的社区通告信息、自己的相关信息;管理员用户可以查看所有社区用户的信息、还可以删除此人、能上传用户的信息资料。
 
图2.7 系统框架
2.5.1  管理员框架:
 
图2.8 管理员管理
2.5.2  业主框架:
 
图2.9普通业主管理

根据第二章的概要设计对本系统的问题描述、系统模块的规划、系统结构的设计以及对数据库的设计,其系统的规划就比较清晰了。此系统采用的是JSP+VISIO的设计理念,并使用现在比较流行的三层结构模式架构。
此系统采用MVC模式进行设计,以此其中包含了大量的时局处理类,在这里将描述其具体的功能,采用简单的图形表示一个类,然后给出相应的说明;由于这章节不要求编码,所以对于具体的界面也就是视图,在这里做详细的描述,对于各个方面的布局和规划都将一一展示清楚,其基本的功能我将给予简单的说明。对于控制器,我只能用一个图形表示,具体的功能只要看图与图之间的联系就一目了然了。
2.6  处理封装
2.6.1  报表处理类的封装:
这些类负责处理用户所需要的报表,这些类分别提供了一些方法处理用户所需要的数据。
 
图2.10报表封装图
2.6.2  数据库表处理类的封装:
Connection类负责专门连接数据库并且被其他的数据库表处理类的使用。userCommand类负责处理针对user表的所有操作,此类提供了公有方法供其他类或方法来调用处理与user表的交互。
2.7  系统子模块设计
系统子模块设计,也就是B/S浏览器端具体设计,包括各个子系统。
2.7.1  用户管理子系统:
该系统可实现业主登录,根据不同用户提供不同的系统服务。如普通用户登录只能查询自己的相关信息以及业务通知等。
2.7.2  用户注册、登记:
新用户注册填写用户信息(住房编号、业主姓名、性别、职业、入住时间、联系方式等信息),标示出必填信息栏,用户登记、资料登记(水费、电费、燃气费)、房产资源登记(添加、打印等操作)。填写后的结果将保存到社区物业用户信息数据库中。
2.7.3  用户信息查询子:
住户查询、房产资源查询、费用资料查询(按一定条件查询),及本业主信息修改(修改后的信息将保存到社区物业用户信息数据库中)。
2.7.4  管理员管理:
用户管理(添加、删除)、住户单查询、房产资源管理(添加、删除)、费用资源管理(修改、作废,增加一个住户水电燃气表资料)、用户信息管理(查询、删除)。用户费用录入,费用催缴。

 
3.  数据库设计
3.1  数据库分析
由于涉及到业主信息、缴费、欠费等相关信息,小区物业管理信息系统对于数据的安全性及完整性要求比较高,并且为了增加程序的及时更新,还要确保系统可以拥有存储足够多数据的能力,来保证管理员对数据库的正常维护。
SQL Server 2000是一种高性能的关系型数据库管理系统,它在SQL Server 7.0的基础上又扩展了系统性能、可靠性、安全性和易用性,逐渐成为在线事务进程和数据仓库等最好的数据库平台。综上所述,本系统采用SQL Server 2000数据库。
3.2  数据库结构
 
图3.1 数据库结构图
3.3  数据库字段说明
表3.1  UserInformation表结构
字段名    属性    长度    是否主键    备注
userName    字符    20    是    用户帐号
User_password    字符    20    否    用户密码
userstatus    字符    20    否    用户身份
UserInformation表:业主基本信息,字段有用户名(userName)、密码(password)、用户身份(userstatus);
表3.2  costInfo表结构
字段名    属性    长度    是否主键    备注
houseId    字符    20    是    住房编号
ownerName    字符    20    否    业主姓名
User_sex    字符    4    否    性别
occupation    字符    20    否    职业
movesTime    字符    20    否    入住时间
Zf_mj    字符    20    否    住房面积
zc_rk    字符    20    否    常住人口数
tel    字符    20    否    联系电话
cost    字符    20    否    物业费用
inhabitantInfo表:住户信息,字段有住房编号(houseId)、业主姓名(ownerNmae)、性别(sex)、职业(occupation)、入住时间(movesTime)、住房面积(housingArea)、常住人口数(constaPopulation)、联系电话(tel)、物业费用(cost);
表3.3  ownerInfo表结构
字段名    属性    长度    是否主键    备注
houseId    字符    20    是    住房编号
service    字符    20    否    服务项目
standard    字符    20    否    收费标准
baoxiutime    字符    20    否    报修时间
anpaitime    字符    20    否    安排时间
finishtime    字符    20    否    完工日期
chargetime    字符    20    否    缴费时间
money    字符    20    否    缴费金额
ownerInfo表:业主服务信息,字段有住房编号(houseId)、服务项目(service)、收费标准(standard)、报修时间(baoxiutime)、安排时间(anpaitime)、完工时间(finishtime)、缴费时间(chargetime)、缴费金额(money);
表3.4   jiaofei表
字段名    属性    长度    是否主键    备注
starttime    字符    20    否    起始日期
endtime    字符    20    否    终止日期
money    字符    20    否    物业费总额
stoppay    字符    20    否    停车费总额
water    字符    20    否    水费总额
electric    字符    20    否    电费总额
gas    字符    20    否    燃气费总额
service    字符    20    否    服务费总额
jiaofei表:缴费表单,主要字段有:起始日期(starttime)、终止日期(endtime)、物业费(money)、停车费(stoppay)、水费(water)、电费(electric)、燃气费(gas)、服务费(service);
表3.5   qianfei表
字段名    属性    长度    是否主键    备注
starttime    字符    20    否    起始日期
endtime    字符    20    否    终止日期
ownername    字符    20    否    欠费业主姓名
houseId    字符    20    是    房屋编号
money    字符    20    否    欠费金额
qianfei表:欠费表单,主要字段有:起始日期(starttime)、终止日期(endtime)、欠费业主姓名(ownername)、房屋编号(houseId)、欠费金额(money);

4.  页面设计与编码
4.1  界面设计
4.1.1  登陆主界面
 
图4.1 主界面登陆图
4.1.2  注册界面
 
图4.2 用户注册图
4.1.3  管理员登陆
 
图4.3 管理员登陆
4.1.4  管理员管理
 
图4.4 管理员管理界面
4.1.5  用户信息修改
 
图4.5 管理员修改用户信息界面

4.2  系统核心代码
4.2.1  新用户注册代码:

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>Request</title>
<style type="text/css">
<!--
.STYLE1 {
font-size: xx-large;
font-weight: bold;
font-family: Verdana, Arial, Helvetica, sans-serif;
}
body {
background-color: #999900;
}
-->
</style>
<script type="text/JavaScript">
<!--
function MM_goToURL() { //v3.0
var i, args=MM_goToURL.arguments; document.MM_returnValue = false;
for (i=0; i<(args.length-1); i+=2) eval(args[i]+".location='"+args[i+1]+"'");
}
//-->
</script>
<div align="center">
<SCRIPT LANGUAGE="JavaScript">
function check(){
if(document.form.id.value==""){
alert("请输入用户姓名!");
document.form.id.focus();
return false;
}
if(document.form.code.value==""){
alert("请输入身份证号!");
document.form.code.focus();
return false;
}
if(document.form.password.value.length<6||
document.form.password.value.length>20){
alert("密码长度应该在6到20位之间,请重新输入!");
document.form.password.focus();
return false;    
}
if(document.form.password.value!=document.form.password2.value){
alert("您两次输入的密码不同,请重新输入!");
document.form.password2.focus();
return false;
}
}
</head>
<body>
</div>
<div align="center" class="STYLE1">
<h1 align="center">新用户注册</h1>
</div>
<form action="zhuce.jsp" id="zhuce" name="form" method="post" onSubmit = "return check()">
<div align="center">
<table width="697" border="0" align="center">
<tr>
<td width="242"><div align="right"><strong>用户姓名:</strong></div></td>
<td width="439"><label>
<input name="id" type="text" id="id" />
</label></td>
</tr><tr>
<td><div align="right"><strong>密码:</strong></div></td>
<td><label>
<input name="password" type="PASSWORD" id="password" size="12"/>
<strong>*长度在6到20位之间 </strong></label></td>
</tr><tr>
<td><div align="right"><strong>再输一次:</strong></div></td>
<td><label>
<input name="password2" type="PASSWORD"id="password2" size="12"/>
</label></td>
</tr><tr>
<td><div align="right"><strong>性别:</strong></div></td>
<td><label>
<input  type="radio" name="sex" value="男" checked=checked/>
<strong>男</strong>
<input type="radio" name="sex" value="女" />
<strong>女</strong></label></td>
</tr><tr>
<td><div align="right"><strong>年龄:</strong></div></td>
<td><label>
<input name="age" type="text" id="age" />
</label></td>
</tr><tr>
<td><div align="right"><strong>地址:</strong></div></td>
<td><label>
<input name="address" type="text" id="address" />
</label></td><tr>
<td><div align="right"><strong>联系电话:</strong></div></td>
<td><label>
<input name="phone" type="text" id="phone" />
</label></td>
</tr><tr>
<td><div align="right"></div></td>
<td><label></label></td>
</tr>
</table>
<p>
</div>
<label></label>
<label>
<div align="center">
<div align="center">
<div align="center">
<input type="reset" name="Submit" value="重新填写" />
</div>
<div align="center">
<input type="submit" name="Submit2" value="提交我的申请"  /> 
</div>
</label>
<label>
<input name="Submit3" type="reset" onClick="MM_goToURL('parent','huanying.jsp');return document.MM_returnValue" value="退出">
</label> </div>
</form>
<p align="center">&nbsp;</p>
</body>
</html>

猜你喜欢

转载自blog.csdn.net/weixin_55459367/article/details/114183248