社区物业管理系统课程设计.docx

上传人:小飞机 文档编号:2068639 上传时间:2023-01-06 格式:DOCX 页数:35 大小:5.97MB
返回 下载 相关 举报
社区物业管理系统课程设计.docx_第1页
第1页 / 共35页
社区物业管理系统课程设计.docx_第2页
第2页 / 共35页
社区物业管理系统课程设计.docx_第3页
第3页 / 共35页
社区物业管理系统课程设计.docx_第4页
第4页 / 共35页
社区物业管理系统课程设计.docx_第5页
第5页 / 共35页
点击查看更多>>
资源描述

《社区物业管理系统课程设计.docx》由会员分享,可在线阅读,更多相关《社区物业管理系统课程设计.docx(35页珍藏版)》请在三一办公上搜索。

1、装订线长 春 大 学 课程设计纸目 录1 引言12 需求分析22.1 问题陈述32.2 可行性研究52.3 需求分析5 2.4 开发环境53 系统总体设计73.1 类设计和数据存储73.2 功能模块设计104 详细设计与实现154.1 数据库设计154.2 功能实现174.2.1 管理员模块的实现174.2.2 用户模块的实现235 系统测试与性能分析265.1管理员模块测试26 5.2 客户端模块测试305.3 亮难点展示326 总结33参考文献34附录35共 1 页 第 1 页装订线长 春 大 学 课程设计纸1引言随着现代科学技术的迅猛发展,计算机技术已渗透到各个领域,成为各行业必不可少的

2、工具,特别是Internet技术的推广和信息高速公路的建立,使IT产业在市场竞争中越发显示出其独特的优势,步入数字化时代,有巨大的数据信息等待着加工处理和传输,这使得对数据库的进一步开发和利用显得尤为迫切。怎样开发出既不过于繁琐又不过分简单,适合管理员和多业主使用的方便便捷的物业管理系统,是软件行业长期思考和努力解决的问题。该款软件四海物业管理系统能为小区带来福音,为物业部门与用户提供桥梁,促进物业管理更加人性透明,更有利于物业管理的发展壮大,也能促进用户和与物业公司的和谐相处。本系统管理员和用户权限分明,既能满足用户自助缴费和足不出户的反映问题,又能满足管理员对费用和业主服务的方便管理。本次

3、设计最大的特点就是图形化界面清晰淡雅,有主色调 ,注重细节的把握。用户和管理员界面设计合理,布局方便使用者易入手本次设计首先调查系统的需求并进行分析整理,用文字与图形工具相结合的方法,描述了系统的功能需求,以便于接下来的开发和后期的维护维护工作。在系统需求分析的基础上进行了系统模块的划分及模块层次关系的确定,对每个模块功能进行了详细的论述和规划;接下来对系统进行详细设计,包括各个功能的代码的详细完成,并进行单元测试;最后对系统进行集成测试并调试,最后,提交一个可以操作的完整系统,并由用户验收。2需求分析2.1 问题陈述怎样开发出既不过于繁琐又不过分简单,适合管理员和多业主使用的方便便捷的物业管

4、理系统,是本该款软件一直致力解决的问题。首先登陆本系统会让操作者选择登陆身份,若是业主的话在注册时就已经注册过用户名和密码,用当时的用户名和密码即可登录客户端,若是管理员则有相应的用户名和密码,登录成功后即可对小区的缴费信息,楼宇信息,和业主的投诉和建议进行管理(1)系统流程本系统的基本流程如图2-1所示: 图2-1 物业管理系统流程2.2 可行性研究该物业管理系统使用当前适合中小型软件最为流行和普及的MySql数据库,因为其操作简单,启动快捷方便所以深受青睐。采用的开发语言为跨平台且纯面向对象的JAVA,逻辑清晰简单且易上手,入门快。这也是许多政府网站用JAVA作为后台语言的原因,安全稳定。

5、开发此次物业系统用到的插件是RCP/SWT这也避免了Swing插件等添加监听很麻烦的特点,能让程序员把重点放在逻辑实现上,而不是具体的界面布局上。本次用到的开发工具是当前最为流行的Eclipse,清晰直观,简单易操作。实现时用到的组件有表格,文本框,按钮,单选框,下拉类表框,Tree,ExtendBar,菜单等来是实现对数据库信息的接收和传送。 该物业管理系统是在Microsoft Windows XP 和 Windows 7系统下进行开发和运行的,这些系统目前已经比较普及,当然由于JAVA的跨平台的关系也可以在LNIUX下运行。2.3 需求分析(1) 用户需求:用户可以修改自己的密码和个人入

6、住信息,能处理自己的维修信息,添加投诉建议,和重点自助缴费,还能查看小区通知和发表论坛等生活交流。(2)管理员需求: 管理员是物业公司的接口,他可以实现对物业费,业主入住,楼宇,生活管理等信息的增删改查和分析工作,还包含修改密码功能。(3) 功能需求 登录模块:主要分为管理员登录及用户登录,系统需根据用户所输入身份信息调用不同的sql语句来判断使用者的登录信息是否存在,若不存在需显示用户友好提示,若管理员输入正确的用户名和密码即可登录到管理员界面实现对物业费、楼宇信息、生活信息的修改。用户登录成功后可以实现对个人信息的修改和自助缴费。添加投诉建议和发表论坛等操作。 物业费管理模块:管理员可根据

7、收据号、缴费年月、业主名等查询业主缴费信息。只要输入年月便可查出本月所有欠费用户信息、本月缴欠费比例、应缴和已缴费用。这也是本系统最复杂的模块部分。不仅用到了三个表的左外连接,还要结合业主的入住时间加以判断。仅需填写业主号其它属性便可自动添加,方便管理员收费,这也是本系统的特色。管理员既可添加户型信息,也可实现物业费的更改。 业主入住管理模块:可支持业主id、身份证号、入住时间、楼宇号、是否楼长等多条件查询;只有查询到该业主的信息才可将其删除,需慎重;只要增加入住信息并成功设置密码,即代表业主已经注册。客户端即可使用。本功能的特色是能动态的更新不同楼宇未入住的房间号,已保证用户准确合理的注册信

8、息;管理员可更改业主的联系方式,是否楼长等信息。实现对楼宇的间接管理。 楼宇管理模块:其中包含本系统中销售部门的重点楼宇分可选择全部楼宇和任一楼宇查询该楼宇的入住率和空置率,已入住房间信息和未入住房间信息;除了基本的操作,增加房间的信息时也有很多预防添加不合理房间的机制。当然还包含增删改查楼宇信息。 日常生活管理模块:管理员不仅可以接受用户的电话报修和亲自来访添加维修信息,还可以根据维修号和房间号对维修信息进行查询和对维修情况及时做到更新修改,可以传达到客户端;管理员可以及时有效的添加通知和消息,用户登录界面的首页也是直接显示此模块,当然也有删除通知的功能;管理员可以及时了解业主的投诉建议,并

9、放映给上级部门,靠用户的监督来促进发展。 个人信息管理:其中包含用户可以修改登录密码,入住信息等,如自己的手机号变更等都是可以通过客户端的修改来同步传达到管理员那端。 住房维护管理:用户不仅可以发表维修信息,还可以可查看自己发表过的维修信息、维修进度等和删除自己的维修信息。自助缴费也是此次设计最大的亮点之一,系统可自动根据用户的户型随机分配相应的优惠金额,从而鼓励用户在优惠额度很大的情况下缴纳多月份的物业费。小区信息处理:其中的社区论坛本系统最大的亮点,也是业主们不在物业公司的干预下唯一个说话交流的平台,用户仅需填写主题和内容,便可半匿名发表,后面还带有准确的发表时间,可以拉近业主之间的距离;

10、还有一个就是业主能及时查看管理员发布的通知。3系统总体设计物业管理系统的设计,主要解决的是对数据库中缴费信息,房屋信息,楼宇信息,生活信息,维修信息等进行的更新操作。首先,需要做好需求分析,确定物业系统中需要解决的问题是什么,然后再详细分析管理员和用户应该具备哪些功能;其次,实现功能模块时,采用先模块化,后集成化,即对系统各个功能模块分别独立设计和调试,在创建系统主登录界面时再将各个功能模块通过主菜单对各个模块的调用集成到一起,最后进行系统整体设计调试。在数据存储和操作方面,采用MySql数据库,通过间接对LinkedList 操作来实现增删改查的更新,然后放进数据库里面;从而提高系统设计的效

11、率。查询操作的时候也是间接通过对LinkedList的操作来并初始化表格或文本框。3.1 类设计和数据存储(1) 类设计 Editor类:首先创建一个Editor类型的类,要implements IEditorInput接口。然后再重写init(IEditorSite site, IEditorInput input)方法this.setInput(input);和this.setSite(site);通过下述方法打开,即可显示在编辑窗口里,然后可以再Editor类上Design界面布局: PlatformUI.getWorkbench().getActiveWorkbenchWindow()

12、.getActivePage().openEditor(obj, editors.+editorName); Shell类: 创建一个Shell类可以一个弹出窗口,它等同于Editor,也可以通过Design来设计界面,添加组件等。它的打开方法是:Display display = Display.getDefault();Shell类 shell = new Shell类(display);shell.open();shell.layout(); while (!shell.isDisposed() if (!display.readAndDispatch() display.sleep()

13、; database类:它封装了数据库加载驱动,建立连接,创建语句对象,执行查询语句,关闭等操作,简化了设计的流程,若用到数据库类时,只需调用该方法来创建即可。它还定义了存取数据的方法,改查数据的方法,将结果集放在Linkedlist或Map里,以减少对数据库的频繁访问,减轻服务器的压力。 view类:视图类,一般用作导航条用,可根据使用者的身份动态的显示导航条,以实现不同功能的调用。 help类:复用率高的代码段都写成了方法以便以后方便调用。譬如有关数据库连接和存取数据的操作方法;打开Shell和Editor的方法;转换String和DateTime类型时间的方法;获取表格中一行关键字的方法

14、;初始化Combo的方法;弹出确认和出错信息窗口的方法等等。详BFenXiShell.java action类:顾名思义,就是动作的意思,也就是监听类。创建一个action类首先得继承action类,然后再重写run方法,在run方法里可以设置打开窗口或者Editor的方法。一般可将action置于菜单栏之下。 system类:这也是RCP工程中最重要的包,所用设计到的逻辑和布局都这里面。其中Application就相当于我们的小应用程序的run()方法,ApplicationActionBarAdvisor类里面可以设置菜单项,添加监听,设置状态栏,工具条等,ApplicationWorkb

15、enchWindowAdvisor里面可以设置窗口的初始大小和位置,和默认打开哪个Editor的方法。Perspective类里面可以根据权限设置显示哪个view。(2) 数据存储本系统使用MySql数据库来存储数据,管理员和用户都是直接对数据库操作,根据其权限执行相应的功能,当需要初始化表格时,就从数据库中查找出数据放在表格中,当需要删除或修改数据时,先执行语句若返回的不是-1则说明它删除成功了;若要添加一条数据,若符合数据格式、主键不同的特性则让他添加进去。3.2 功能模块设计(1)登录管理模块:登录管理模块分为管理员和用户进行登录,其对应的操作流程图如下图3-1所示,对应登录界面如图3-

16、2所示图3-1 登录流程图图3-2 登录界面图管理员登陆成功后进入的界面如图3-3所示: 图3-3 管理员登陆界面图用户登陆成功后的界面如图3-4所示: 图3-4 用户登录界面图(2)管理员的功能模块如图3-5 所示: 图3-5 管理员功能模块图(3)用户的功能模块如图3-6 所示:图3-6 用户功能模块图(2) 修改密码模块管理员和用户都可以是实现对密码的修改,流程图如下图3-7所示,对应的界面如下图3-8所示:图3-7 修改密码流程图 图3-8 修改密码界面图(3) 物业费管理模块图如下图3-9所示 图3-9 物业费管理模块图(4) 业主入住模块图如下图3-10所示 图3-10 业主入住模

17、块图(5) 楼宇管理模块图如3-11所示 图3-11 楼宇管理模块图(6)生活管理模块如图3-12所示 图3-12 生活管理模块图(7) 个人信息管理模块图如图3-13所示 图3-13 个人信息管理模块图 (8)住房维护管理模块图如图3-14所示: 图3-14 住房维护管理模块图(9) 小区信息模块图如图3-15所示:图3-15 小区信息模块图4详细设计与实现4.1数据库设计其中数据库中包括的表有:楼宇表,业主信息表,房间表,投诉建议表,通知表,物业费类型表,物业费缴纳表,用户论坛表,维修信息表,管理员信息表。(1) 楼宇表如表1所示:表1 楼宇表字段名类型长度是否为主键是否允许为空楼宇id

18、Varchar4是否楼层数Int4否是户数Int4否是(2) 业主信息表如表2所示: 表2 业主信息表字段名类型长度是否为主键是否允许为空业主idVarchar10是否身份证号Varchar 10否是业主名Varchar10否是房间idInt10否 外键是是否楼长varchar 4否是是否入住Boolean 4否是所属楼宇idVarchar4否 外键是入住时间Time 否是联系方式Varchar15否是(3) 房间表如表3所示: 表3 房间表字段名类型长度是否为主键是否允许为空房间id Varchar10是否楼宇id Varchar4否是户型varchar10否 外键是(4) 投诉建议表如表4

19、所示: 表4 投诉建议表字段名类型长度是否为主键是否允许为空编号Varchar10是否内容Text否是(5) 通知表如表5所示: 表5 通知表字段名类型长度是否为主键是否允许为空编号Varchar10是否内容Text否是(6) 物业费类型表 如表6所示: 表6 物业费类型表字段名类型长度是否为主键是否允许为空户型Varchar10是否物业费用Int6否是(7) 物业费缴纳表如表7所示: 表7 物业费缴纳表字段名类型长度是否为主键是否允许为空IdVarchar 10是否房间idVarchar10否 外键否业主idVarchar 10否 外键否户型Varchar10否 外键否物业费用Int6否是优

20、惠金额Int6否是缴费情况varchar 10否是交款时间time否是收款人Varchar10否是(8) 维修信息表如表8所示: 表8 维修信息表字段名类型长度是否为主键是否允许为空报修id Varchar10是否房间idVarchar10是 外键否联系电话varchar15是否预约时间Time否是故障现象Text 是否是否已处理Varchar 4否是(9) 管理员信息表如表9所示: 表9 管理员信息表字段名类型长度是否为主键是否允许为空IDVarchar10是否passwordVarchar 10否是(10) 论坛表如表10所示: 表10 论坛表字段名类型长度是否为主键是否允许为空论坛id

21、Varchar10是否业主idVarchar10是 外键否主题varchar15是否内容text否否发表时间DateTime否是4.2 管理员功能实现(1) 物业费管理模块管理员可以受理业主上门缴费,通过各种方式查询缴费历史,分析缴费,更新用费等功能。按时间查询缴费界面图如图4-1所示,图中可以看出用户可以通过数据号,业主名等对缴费历史进行查询,如图键入1204查询2012年4月份的缴费情况:图4-1 间查询缴费界面图分析缴费如图4-2所示:键入1203对2012年3月份的缴费进行分析,从而得到缴欠费比例、本月应缴费用和已缴费用,还能得出本月未缴费的业主,后勤部门可以打电话去催促缴费等。 图4

22、-2 按年月分析缴费界面图 物业费更新图如图4-3所示,管理员可以对物业费进行更改,添加费用类型信息,是物业费管理的生命力所在。图4-3 物业费更新图管理员只需填写业主的id号,其他信息即可动态显示,然后确认缴费,即可缴费成功,业主缴费明细图如下图4-4所示: 图4-4 业主缴费明细图(2)业主入住模块管理员可以根据业主id、身份证号、入住时间、楼宇号、是否楼长等多条件查询。界面如图4-5所示: 图4-5 入住信息查询界面图若业主买过房子,则必然会注册一个业主id,填写必要的入住信息,用户则可在家用互联网来利用客户端来享受客户服务,业主信息注册界面图如图4-6所示:图4-6 注册入住信息界面图

23、 若业主联系方式等信息有所变动,既可自己自行修改,也可以通过管理员那边修改,修改入住信息界面图如图4-7所示: 图4-7 修改入住信息界面图(3)楼宇管理模块 如有扩建楼宇或爆破楼宇时则要增删楼宇信息,如下图4-8所示: 图4-8 改查楼宇信息界面图 销售部门更看重楼宇的售卖情况,得出楼宇的入住率和空置率等信息,指定相应的促销政策等,楼宇分析图如下图4-9所示: 图4-9 楼宇分析界面图 当有新楼宇建成时,管理员应添加相应的房间信息,房间管理界面图如图4-10所示: 图4-10 楼宇分析界面图(4)日常生活管理模块投诉建议信息如图4-11所示:图4-11 投诉建议界面图管理员可以接受用户的电话

24、等信息来添加报修信息,还能及时修改维修状态等信息,维修处理界面图如下图4-12所示: 图4-12 维修处理界面图4.3用户功能实现(1)个人信息管理模块 用户可以及时修改自己的变更信息,来传达到管理员那端,个人信息查改界面如图4-13所示: 图4-13 个人信息查改界面图(2)住房维护管理模块用户需通过此模块来处理自己的物业费等信息和住房信息,如下图个人维修界面图4-14所示,用户可以查看自己的维修进度和发表维修信息。图4-14 个人维修处理界面图用户还可以通过客户端直接发表投诉建议,如下图4-15所示: 图4-15 个人信息查改界面图业主可以通过客户端进行自主缴费,省去了去物业部门的交现金烦

25、恼,业主自主缴费如下图4-16所示图4-16 个人信息查改界面图(3)小区信息管理模块用户可以通过客户端来发表论坛,这是业主交流的平台,论坛界面图如下图4-17所示:图4-17 发表论坛界面图5系统测试与性能分析对系统的各个模块进行测试是整个开发过程中的一个重要的步骤。测试任何产品都有两种方法,一个是黑盒测试,一个是白盒测试。黑盒测试法把程序看成一个黑盒子,完全不考虑程序内部的结构和处理过程,只检查程序功能是否能按照说明书正常使用,程序是否能适当的接收输入数据产生正确的输出信息,又称为功能测试。白盒测试法是把程序看成装在一个透明的白盒里,也就是完全了解程序的结构和处理过程,按照程序内部的逻辑测

26、试程序,称为结构测试。对该系统模块的测试主要采用的是黑盒测试,下面进行各个功能模块的测试工作。5.1管理员模块的测试(1)物业费管理 如果收据号存在,管理员通过此收据号查询缴费明细时,才会查得出来,否则会用文本框提示:不存在此信息;如果输入的日期不符合要求,则无法查出来数据,也会提示:输入不合法;如果按照业主名查询时,不存在此业主名,则也无法查询出来信息。缴费分析时,如果输入的日期格式不符合要求时,则会弹出窗口显示日期不合法,请按照正确的日期格式输入。当所有输入不合法时,后边的按钮都会变成不可点击的。缴费查询输入测试如图5-1所示。 图5-1 缴费查询输入测试界面图如果业主前来缴费,如果不存在

27、此业主的id号,则无法缴纳费用,缴费按钮则无法编辑。缴费输入测试界面图如图图5-2所示: 图5-2 缴费输入测试界面图(2)业主入住管理 管理员可以通过业主id和身份证号等信息来查询业主信息,如果数据库中没有对应的信息,则系统会弹出信息提示:不存在该用户id;不存在该用户身份证相关信息。入住查询测试界面图如图5-3所示。图5-3 入住查询测试界面图(3)楼宇管理 管理员除了按照要求分析楼宇信息外还要添加房间信息,如果添加房间时房间号不是以楼宇号开头,或者楼层数超过房间号的中间2位,或者房间号的后两位超过每层最多的户数,则会提示:添加失败,房间号不合法信息。添加房间信息测试界面图如图5-4所示:

28、 图5-4 添加房间测试界面图(4)生活信息管理当管理员要查询某个维修信息时,可以通过维修号和房间号来查询,如果不存在该维修号的信息或者该房间的信息时,则会提示:不存在该维修号;不存在该房间号信息。添加房间测试界面图如图5-5所示:图5-5 添加房间测试界面图 当管理员受理客户添加维修记录信息时,当添加的房间号无产权或者电话等信息信息不符合要求、备注为空等,系统都会提示。如图5-6添加维修测试界面图图5-6 添加维修信息测试界面图(5)修改密码当管理员或用户选择修改密码时,首先必须要求原密码输入正确,否则后续文本框不可编辑;原密码输入正确后还要求新密码不能为空;请输入的密码和确认密码必须一致。

29、这样才能修改成功。修改密码测试界面图如图5-7所示:图5-7 修改密码测试界面图5.2用户模块的测试(1)个人信息管理修改密码模块与管理员修改密码要求相同,界面如图5-7所示 (2)小区信息管理 当用户在论坛上发表的主题或内容为空,则提交内容时系统会提示:提交失败,关键信息不能为空,发表论坛信息测试界面如图5-8所示: 图5-8 发表论坛信息测试界面图(3)住房维护管理当用户添加投诉信息内容为空时,系统会提示用户关键信息不能为空,则添加失败,添加投诉信息测试界面图如图5-9所示: 图5-9 添加投诉信息测试界面图 通过客户端,业主可以选择自助缴费,若所选缴费月份已缴纳过费用,则系统提示:缴费失

30、败,您本月物业费已经缴完信息。点击查询缴费历史,即可查询哪个月份没缴费用,自助缴费测试如图5-10所示: 图5-10 自助缴费测试界面图5.3亮难点展示(1)采用鼠标FocusGain和FocusLost方法来对所输入的内容进行预检验,并有相应的提示信息和后续的文本框不可编辑等操作来限制不合法的继续输入。 (2)界面风格不唯一,功能菜单的实现多样:有ExpendBar,Tree,和传统的下拉菜单形式。增删改查真正做到了不枯燥,有的是对表格选中的一列进行更新操作、有的可在页面上直接进行更新操作,有的用弹出窗口的方式来接受用户所要更改的信息。 (3)权限处理分明且人性化,用户权利下放,可自助缴费,

31、还有缴费鼓励政策,强大的输入提示功能和动态显示动能。 (4)封装性强,只要是复用率高的代码段都写成了方法以便以后方便调用。譬如有关数据库连接和存取数据的操作方法;打开Shell和Editor的方法;转换String和DateTime类型时间的方法;获取表格中一行关键字的方法;初始化Combo的方法;弹出确认和出错信息窗口的方法等等。详BFenXiShell.java (5)有关id号的所有属性都是固定且不可编辑的,这也省去了用户和管理员的许多麻烦。 (6)正则表达式的熟练使用,省去了字符串校验的许多麻烦。 (7)界面清晰淡雅,有主色调 ,注重细节的把握。 6总结与不足感谢王薇和李纯莲老师的耐心

32、指导,基本完成了物业管理系统的设计与实现。通过本次的设计与实现我收获颇多。真正编码的时间应只占软件设计过程中的三分之一,其它时间应该是调试和维护。可以用黑盒测试来测验它的功能是否全部实现;白盒测试来校验它的内部逻辑是否合理。测试过程最好让独立的第三方参与进去,这样才更有针对性;测试一旦发现错误,应敢于改正,不要畏首畏尾嫌麻烦,并且需要耐心和认真,不可带有消极情绪。只有这样设计出来的软件可塑性和健壮性才会很强。编码过程中一定要仔细认真,相同的地方的错误不可犯第二次;可行性研究和总体设计阶段一定要多下功夫;任何细小的不周密的设计都会导致后续工作的复杂度提升;如果某代码段复用率高,一定要将其封装成方法,这样才能让编程成为一种乐趣;要遵循高内聚,低耦合的设计原则,简要的说就是如果只需要一个参数就不要调用返回二个参数的方法,更不能调用一个方法内部的内容;设计过程中一定要和同伴合作交流,取长补短,这样才能共同提高。参考文献1Java语言程序设计 张振领编 中国电力出版社2Java 程序设计教程 耿详义编,清华大学出版社3Java课程设计 耿详义编 清华大学出版社4Java视频教程 孙鑫主讲 共 35 页 第 33 页

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号