小区物业管理系统数据库系统的设计与实现.docx
《小区物业管理系统数据库系统的设计与实现.docx》由会员分享,可在线阅读,更多相关《小区物业管理系统数据库系统的设计与实现.docx(23页珍藏版)》请在冰豆网上搜索。
小区物业管理系统数据库系统的设计与实现
题目:
小区物业管理系统数据库系统的设计与实现
目录
1.系统概况3
1.1系统设计的目的3
1.2系统开发的背景与意义3
1.3系统实现的目标3
2系统需求分析4
2.1系统总体需求4
2.2系统整体功能介绍4
2.3系统元素、实体介绍5
2.3.1.分流程图5
2.3.2.总体流程图8
2.3.3实体介绍与数据字典8
2.4软硬件平台介绍10
3概念结构设计11
3.1概念设计11
3.1.1住户与投诉信息之间的联系11
3.1.2住户与报修信息之间的联系11
3.1.3外来用户与物业管理员之间的联系11
3.1.4住户与收费信息之间的联系12
3.1.5物业管理员与收费信息之间的联系12
3.1.6物业管理员与投诉信息之间的联系12
3.1.7物业管理员与报修信息之间的联系13
3.2系统总体功能13
4逻辑设计13
4.1任务与目的13
4.2关系模式13
4.3数据关系图14
5物理结构设计15
5.1数据库的物理结构15
5.2界面设计17
5.3部分代码19
7心得与体会23
1.系统概况
本章需简单介绍开发项目基本情况,如系统的编写目的,系统的开发背景,系统的实现目标等。
1.1系统设计的目的
以传统的管理方式,小区管理员对各种信息的采集和管理存在很大问题,但若使用小区物业管理系统可以简单很多。
设计一个小区管理系统,能够迅速、正确地解决住户以及小区管理员的各种问题,并能做到合理收费,真正为居民排忧解难,服务周到。
而且该系统不需要一个专业的计算机工作人员,只要安排会简单操作人员即可;节省了大量的数据统计处理时间。
1.2系统开发的背景与意义
随着我国经济发展和城市开发,住宅小区越来越成为居住的主流,小区物业管理是针对当代社会这一市场需要应运而生的。
用计算机操作的小区物业管理系统是为小区管理者和小区用户更好的维护各项物业管理业务处理工作而开发的管理软件,根据需求分析,实现小区管理业务,效益已越来越明显。
因此,开发这样一套小区物业管理系统软件成为很有必要的事情。
物业管理常常要把本小区业主的基本情况(身份证号、姓名、联系方式,房屋号、房屋面积等)存放在数据库中,有了这个“数据仓库”我们就可以根据需要随时查询某业主的基本情况,也可以查询关于投诉和维修的信息等等。
这些工作如果都能在计算机上自动进行,那我们的管理就可以达到极高的水平。
此外,在收费管理、访客信息中也需要建立众多的这种“数据库”,使其可以利用计算机实现投诉、维修等的自动化管理。
1.3系统实现的目标
本着简单、实用、全面、科学的精神,开发出适合中国国情的物业管理管理软件,为物业管理提供全面的电脑化管理的解决方案。
工作人员只需输入一些简单的汉字、数字,即可达到自己的目标。
系统开发的总体任务是实现各种信息的系统化,规范化和自动化。
经过分析和研究,系统对各功能模块的操作都应有查询,添加,删除,更新功能。
涉及住户信息管理,投诉信息管理,报修信息管理,外来人员信息管理,收费信息管理,物业管理人员信息管理等模块的信息都可以方便的操作,界面友好。
2系统需求分析
2.1系统总体需求
系统总体需求主要根据系统功能分析系统设计之前的规划工作,包括分析系统元素的种类、功能、各数据项以及系统整体性能模式。
另外,也包括系统各实体之间的联系,系统各模块功能的分析,软硬件平台的介绍等。
本系统用于小区的物业管理。
主要任务是用计算机对小区住户进行日常管理,如小区住户信息的添加、删除、修改、查询。
该系统总共包含六种基本信息:
住户信息、住户投诉信息、住户报修信息、外来访客信息、住户缴费信息物业管理人员信息,还可根据需要对其进行信息更新,包括对住户信息进行查询、添加、修改和删除,对住户投诉信息、住户报修信息、住户缴费信息进行查询和修改等,对外来访客信息的查询和添加,监管后期住户的管理工作,能进行多条件的住户信息查询的查询。
通过以上分析,小区物业管理系统有基础住户信息管理、住户投诉项目管理、住户报修项目管理、外来访客信息管理、住户缴费信息管理和物业管理人员信息管理等六个模块组成。
2.2系统整体功能介绍
针对某一特定的系统,介绍该整体系统的功能结构,最好给出整体的功能结构图。
根据需求分析,小区物业管理系统的主要功能模块,如下图所示:
(1).住户信息管理
在维护本系统的时候,要不断地更新系统的数据,其中住户的信息在不断的进行着更新,为了保证客户信息的同步更新,本模块主要将增加、删除、修改、查询住户的基本信息录入保存在系统的数据库中,为用户对客户个人信息的管理提供接口。
(2).投诉项目管理
在维护本系统的时候,需要对信息进行不断的更新,其中住户的投诉信息也需要不断更新,为了保证客户信息的同步更新,本模块主要将增加、修改、查询住户投诉的基本信息录入保存在系统的数据库中,为管理员对住户投诉信息的管理提供接口。
(3).报修项目管理
在住户居住本小区期间,其中住户的报修信息是需要不断更新,为了保证住户居住的安心,对报修信息需要进行同步更新,本模块主要将增加、修改、查询住户投诉的基本信息录入保存在系统的数据库中,为管理员对住户报修信息的管理提供接口。
(4).收费信息管理
在住户居住本小区期间,其中住户的收费信息是必不可少的,为了方便主队自己交费信息的了解,需要对收费信息进行同步更新,本模块主要将增加、修改、查询住户投诉的基本信息录入保存在系统的数据库中,为管理员对住户缴费信息的管理提供接口。
(5).访客信息管理
每个小区每一天都多多少少有外来访客进行访问,为了小区住户的安全起见,需要对每个进入的访客进行基本信息的采集,而本模块主要将查询和增加的访客信息录入保存到数据库中,为管理员对访客信息管理提供接口。
(6).物业管理员信息管理
每个小区都需要物业管理员对小区的基本信息进行管理,本模块主要将增加的管理员信息录入保存到数据库中。
2.3系统元素、实体介绍
2.3.1.分流程图
登陆界面
报修管理
投诉管理
收费管理
2.3.2.总体流程图
2.3.3实体介绍与数据字典
该系统为小区物业管理系统,实体有住户、投诉信息、报修信息、收费信息、访客信息和物业管理人员。
(1)住户信息表
数据项名称
数据项类型
长度
是否为主键
是否可为空
门牌号
Int
8
是
否
户主
Varchar(50)
50
否
是
户型
Varchar(50)
50
否
是
电话
Varchar(50)
50
否
是
常住人口
Varchar(50)
50
否
是
车位号
Varchar(50)
50
否
是
产权证号
Varchar(50)
50
否
否
楼盘编号
Varchar(50)
50
否
否
面积
Varchar(50)
50
否
否
(2)投诉项目管理表
数据项名称
数据项类型
长度
是否为主键
是否可为空
ID
Int
8
是
否
门牌号
Int
8
否
否
姓名
Varchar(50)
50
否
是
投诉项目
Varchar(50)
50
否
是
投诉日期
Varchar(50)
50
否
是
物业编号
Varchar(50)
50
否
否
受理日期
Varchar(50)
50
否
是
(3)保修项目管理表
数据项名称
数据项类型
长度
是否为主键
是否可为空
ID
Int
8
是
否
门牌号
Int
8
否
否
姓名
Varchar(50)
50
否
是
报修项目
Varchar(50)
50
否
是
报修日期
Varchar(50)
50
否
是
维修员
Varchar(50)
50
否
是
维修日期
Varchar(50)
50
否
是
(4)收费项目管理表
数据项名称
数据项类型
长度
是否为主键
是否可为空
ID
Int
8
是
否
门牌号
Int
8
否
否
水费
Varchar(50)
50
否
是
电费
Varchar(50)
50
否
是
气费
Varchar(50)
50
否
是
物业费
Varchar(50)
50
否
是
停车费
Varchar(50)
50
否
是
其他费
Varchar(50)
50
否
是
收费时间
Varchar(50)
50
否
是
物业编号
Varchar(50)
50
否
否
(5)访客信息登记表
数据项名称
数据项类型
长度
是否为主键
是否可为空
ID
Int
8
是
否
门牌号
Int
8
否
否
日期
Varchar(50)
50
否
是
来访者姓名
Varchar(50)
50
否
是
身份证号
Varchar(50)
50
否
是
进入时间
Varchar(50)
50
否
是
来访事由
Varchar(50)
50
否
是
离开时间
Varchar(50)
50
否
是
物业编号
Varchar(50)
50
否
否
(6)物业管理人员信息表
数据项名称
数据项类型
长度
是否为主键
是否可为空
物业编号
Varchar(50)
50
是
否
管理员姓名
Varchar(50)
50
否
否
用户名
Varchar(50)
50
否
否
密码
Varchar(50)
50
否
否
2.4软硬件平台介绍
对系统中应用到的软硬件平台给予简单的介绍。
本系统选用VS2010作为系统开发环境,还有SQLServer2008作为数据库,因为所作系统是基于.NET,而以上工具完全符合设计要求所需环境,并且运用起来相当方便,特别是SQLServer2008省去了一些数据库连接配置的麻烦。
并且以前学习过相关课程,不懂的地方可以问老师或和同学进行交流,解决设计过程中遇到的问题。
因此技术的可行性是具备的。
3概念结构设计
根据需求分析中的数据字典、数据流程图,设计概念结构
3.1概念设计
(先局部ER图,然后全局ER图)
给出系统各实体之间关系的E-R图,并作相应的介绍,并给出系统整体结构功能。
3.1.1住户与投诉信息之间的联系
3.1.2住户与报修信息之间的联系
3.1.3外来用户与物业管理员之间的联系
3.1.4住户与收费信息之间的联系
3.1.5物业管理员与收费信息之间的联系
3.1.6物业管理员与投诉信息之间的联系
3.1.7物业管理员与报修信息之间的联系
3.2系统总体功能
(全局ER图的构建,需要写明如何由局部ER图合并成全局ER图)
给出总体系统设计的介绍,并给出相应的E-R图。
4逻辑设计
4.1任务与目的
逻辑结构设计的任务是把概念结构设计阶段设计好的基本E-R图转换为选用DBMS产品所支持的数据模型相符合的逻辑结构
4.2关系模式
E-R图向关系模型得到转换,实现将实体型和实体间的联系转换为关系模式,把E-R图转换为关系模型如下:
住户(门牌号、户主、户型、常住人口、电话、车位号、楼盘编号、产权证号、面积)
报修(报修编号、门牌号、报修日期、报修项目、维修员、维修日期、物业编号)
收费(收费编号、门牌号、水费、电费、气费、停车费、物业费、其他费、收费时间、物业编号)
投诉(投诉编号、门牌号、投诉项目、投诉日期、受理日期、物业编号)
外来用户(编号、日期、来访者姓名、身份证号、进入时间、来访事由、离开时间、物业编号)
物业管理人员(物业编号、管理员姓名、用户名、密码)
4.3数据关系图
5物理结构设计
5.1数据库的物理结构
(根据逻辑结构中的关系,及数据字典实现数据库以及各表的结构,并输入各表的数据,要求每个表的数据不少于30条记录)
(1)住户信息表
(2)物业管理人员信息表
(3)投诉项目管理表
(4)报修项目管理表
(5)访客信息管理表
(6)收费信息管理表
5.2界面设计
(1)登录界面
(2)管理界面
(3)住户管理
(4)投诉项目管理
(5)维修项目管理
(6)访客信息管理
(7)收费信息管理
(8)物业管理员信息管理
5.3部分代码
查询代码
stringZHXmph=textBox1.Text;
stringZHXhz=textBox2.Text;
stringZHXhx=textBox3.Text;
stringZHXcwh=textBox4.Text;
stringZHXdh=textBox5.Text;
stringZHXczrk=textBox6.Text;
stringZHXlbh=textBox7.Text;
stringZHXcqzh=textBox8.Text;
stringZHXmj=textBox9.Text;
stringsql=string.Format("select门牌号,户主,户型,车位号,电话,常住人口"
+"from住户信息表where门牌号like'%{0}%'and户主like'%{1}%'and户型like'%{2}%'and车位号like'%{3}%'and电话like'%{4}%'and常住人口like'%{5}%'and楼盘编号like'%{6}%'and产权证号like'%{7}%'and面积like'%{8}%'",ZHXmph,ZHXhz,ZHXhx,ZHXcwh,ZHXdh,ZHXczrk,ZHXlbh,ZHXcqzh,ZHXmj);
DataTabledt=SqlHelper.ExeTable(SqlHelper.StrConDB,sql);
dataGridView1.DataSource=dt;
删除代码
DataGridViewRowdgvr=dataGridView1.SelectedRows[0];
stringZHXmph=dgvr.Cells["门牌号"].Value.ToString();
DialogResultdr=MessageBox.Show("你确定要删除门牌号为'门牌号'的住户信息吗?
","提示",MessageBoxButtons.YesNo);
if(dr==System.Windows.Forms.DialogResult.No)
return;
stringsql=string.Format("deletefrom住户信息表where门牌号='{0}'",ZHXmph);
SqlHelper.ExecuteNonQuery(SqlHelper.StrConDB,sql);
button1_Click(sender,e);
MessageBox.Show("删除成功");
增加代码
stringZHXmph=textBox1.Text;
stringZHXhz=textBox2.Text;
stringZHXhx=textBox3.Text;
stringZHXcwh=textBox4.Text;
stringZHXdh=textBox5.Text;
stringZHXczrk=textBox6.Text;
stringZHXlbh=textBox7.Text;
stringZHXcqzh=textBox8.Text;
stringZHXmj=textBox9.Text;
Stringsql=string.Format("insertinto住户信息表(门牌号,户主,户型,车位号,电话,常住人口,楼盘编号,产权证号,面积)values('{0}','{1}','{2}','{3}','{4}','{5}','{6}','{7}','{8}')",ZHXmph,ZHXhz,ZHXhx,ZHXcwh,ZHXdh,ZHXczrk,ZHXlbh,ZHXcqzh,ZHXmj);
SqlHelper.ExecuteNonQuery(SqlHelper.StrConDB,sql);
button1_Click(sender,e);
MessageBox.Show("新增成功");
修改代码
stringZHXmph=textBox1.Text;
stringZHXhz=textBox2.Text;
stringZHXhx=textBox3.Text;
stringZHXcwh=textBox4.Text;
stringZHXdh=textBox5.Text;
stringZHXczrk=textBox6.Text;
stringZHXlbh=textBox7.Text;
stringZHXcqzh=textBox8.Text;
stringZHXmj=textBox9.Text;
//构造sql语句
stringsql=string.Format("update住户信息表set户主='{0}',户型='{1}',车位号='{2}',电话='{3}',常住人口='{4}',楼盘编号='{5}',产权证号='{6}',面积='{7}'where门牌号='{8}'",ZHXhz,ZHXhx,ZHXcwh,ZHXdh,ZHXczrk,ZHXmph,ZHXlbh,ZHXcqzh,ZHXmj);
//执行
SqlHelper.ExecuteNonQuery(SqlHelper.StrConDB,sql);
button1_Click(null,null);
MessageBox.Show("修改成功");
6系统总结
本小区物业管理系统主要实现小区物业管理员对于住户信息与其他信息的管理。
本系统只要使用visualstudio2012应用程序用C#将其与数据库连接,界面简单,便于操作。
C#语言主要用查询、修改等基本代码,完成对信息的基本操作。
虽然完成了一定的功能,但还是一些不完美,没有设置登录权限,无法保证他的安全性。
7心得与体会
通过这次课程设计让我对前面学过的许多课程有了更为深刻的理解。
然而这次设计让我感受颇深,让我真正体会到了在整个过程给我带来的无奈与快乐。
综合起来,主要体现在以下几个方面:
首先,由于自己对数据库不是很了解,一拿到题目脑子一顿混乱。
以前自己只是做些数据库的基本操作。
要具体化还真不知道怎么做,后来通过讨论我们大概理出了大概,分配了各自的任务。
并画出了流程图,这让我对接下来做什么都有了目标。
其次,在编程语言的熟悉程度也让我对整个开发过程受到了一定的阻碍。
因为以前只是学习了基础的C#编程,而那些基本的编程代码涉及面比较窄,实现的功能相当有限,从而对语言的熟悉程度不高,然而这次很多都不同,这次设计,相较于平常的学习难度较大,所以必须停下来再去学习,因而,本系统还有一些不尽如意之处。
总的来说,这次的课程设计为我提供了一次锻炼的舞台,经过开发这个系统,这不仅仅是一次课程设计,不仅仅是学会了一门开发语言,更重要的是在学习的过程中,所有的问题要自已去面对,有问题也只有靠自已去解决,这们,在学习和解决这些困难的过程中提高了我学习的能力、解决问题的能力,学到了许多书本以外的知识。
在本次课程设计和过程中,由于时间不是很长,再加上要求独立完成,系统需求分析上可能不是很全面,程序中还存在很多缺,希望老师能给予批评和指导。
经过这次课程设计,我的知识得到了很大提高,经验也更加丰富。
希望能在今后的不断的学习中和努力中,把程序做得更好。
最后,感谢指导老师所给我的帮助。