基于java小区物业管理系统(含源文件)


获取项目源文件,学习交流联系Q:1225467431


摘 要
对于小区物业管理来说,其工作流程的繁杂性、多样化、管理复杂、收缴费用与设备维护繁琐。计算机已完全能够胜任物业管理工作,而且更加准确、方便、快捷、高效、清晰、透明,它完全可以克服以上所述的不足之处。这将给项目查询和管理带来很大的方便,从而给物业管理工作带来更高的效率,这也是物业管理正规化、现代化的重要标志。
因此,开发一套高效率、无差错的小区物业管理系统软件十分必要。本系统的主要目的是告别帐本,安全、快捷的保存数据信息。由于小区物业管理涉及到费用问题,为了增强系统的保密性,使业主利益不受损害,使业主能够对自家的物业费用和投诉等情况提供透明化、直观的了解。
关键字:小区物业,管理系统,Java
目 录
TOC 1-3 摘 要 2
Abstract 3
引 言 6
第一章 课题背景与现状 8
1.1 课题背景 8
1.1.1 管理信息系统的组成部分 8
1.1.2 信息管理的主要任务 9
1.1.3 管理信息系统的特点 10
1.1.4 管理信息系统的问题 10
1.1.5 信息管理的开发方法 11
1.1.6 管理信息系统的经济效益评价 12
1.2国内外现状 13
1.2.1 信息管理系统产生的背景 13
1.2.2 我国现有MIS系统分析 13
1.2.3 我国MIS的发展策略 14
第二章 系统规划的可行性研究 15
2.1初步调查 15
2.1.1 背景及现状 15
2.2 开发的可行性研究 15
2.2.1 技术的可行性 16
2.2.2 经济可行性 17
2.2.3 操作可行性 18
2.2.4 调度可行性 18
2.2.5 硬件配置 18
第三章 系统分析 20
3.1需求分析 20
3.1.1 系统需求功能概括 20
3.1.2 系统操作设计内容 20
3.2 功能分析 21
3.2.1 系统用户管理功能 21
3.2.2 小区住户信息管理功能 21
3.2.2 小区房产信息管理功能 21
3.2.3 小区收费管理功能 22
第四章 系统总体设计 23
4.1系统总体结构设计 23
4.2 系统结构图 24
4.3 数据库的设计 24
第五章 系统详细设计 26
5.1界面设计与功能 26
5.2 用户登陆部分 26
5.3 小区住户信息管理模块 27
5.4 房屋信息管理模块 30
5.5 物业收费管理模块 33
结束语 37
致 谢 38
引 言
科学技术日新月异,信息化时代的来临,以计算机为基础的信息科学在经济和社会生活各个领域得到了极为广泛的应用,尤其在信息管理方面,计算机已是必不可少的管理工具
目前,信息已成为继劳动力、土地、资本之后的又一大资源。谁控制的信息越多,谁利用信息资源的效率越高,谁就会在各方面的竞争中占有一席之地,谁就会有更多的优势。从微观上讲,建立一套管理信息系统能够加快信息的周转速度,提高生产效率,从而加强了管理的信息化手段,提高了本单位的经济效益。从宏观上讲,顺应了社会的信息化、社会化潮流,加快了社会的发展速度。据统计,美国在信息管理管理方面80-100%的信息处理由计算机完成;计划管理是80—90%;在计算机应用发展较快的国家中,计算机应用于经济管理的占80%;用于科技计算的占8%,用于生产过程控制的占12%;由此可以看出,信息管理是计算机应用的主要领域。
由于种种原因,我国的信息资源建设水平远远落后于信息基础设施的建设的水平。长期以来,我国信息资源的开发管理未能与信息资源的增长同步进行。我国的计算机应用要比西方国家落后十几年。因此,现在信息资源的开发和利用已被确立为国民经济信息的核心内容,利用现有的信息基础设施,重点开发和推广应用于各类科技、经济等数据库和网络资源服务系统,已经取得巨大的社会效益和经济效益。
对于小区物业管理来说,其工作流程的繁杂性、多样化、管理复杂、收缴费用与设备维护繁琐。计算机已完全能够胜任物业管理工作,而且更加准确、方便、快捷、高效、清晰、透明,它完全可以克服以上所述的不足之处。这将给项目查询和管理带来很大的方便,从而给物业管理工作带来更高的效率,这也是物业管理正规化、现代化的重要标志。
因此,开发一套高效率、无差错的小区物业管理系统软件十分必要。本系统的主要目的是告别帐本,安全、快捷的保存数据信息。由于小区物业管理涉及到费用问题,为了增强系统的保密性,使业主利益不受损害,本系统具有仅管理员式的保密功能,还有查询、录入、修改、删除、以及对物业设备统计等功能,使业主能够对自家的物业费用和投诉等情况提供透明化、直观的了解。
第一章 课题背景与现状
1.1 课题背景
管理信息系统(MIS,Management Information System),是一个由人、计算机等组成的能进行信息的收集、传送、储存、维护和使用的系统,能够实测企业的各种运行情况,并利用过去的历史数据预测未来,从企业全局的角度出发辅助企业进行决策,利用信息控制企业的行为,帮助企业实现其规划目标。这里给出的定义强调了管理信息系统的功能和性质,也强调了管理信息系统中的计算机对企业管理而言只是一种工具。管理信息系统是信息系统的重要分支之一,经过30多年的发展,已经成为一个具有自身概念、理论、结构、体系和开发方法的覆盖多学科的新学科。
1.1.1 管理信息系统的组成部分
  从概念上,管理信息系统由四个部件构成:信息源、信息处理器、信息用户和信息管理者。它们的联系如图4.2.1所示。 信息源是信息的产生地;信息处理器负担信息的传输、加工、保存等任务;信息用户是信息的使用者,利用信息进行决策;信息管理者负责信息系统的设计、实现和维护。
  管理信息系统一般被看作一个金字塔形的结构,分为从底层的业务处理到运行控制、管理控制、最高层的战略计划。最基层由任务巨大处理繁杂的事务信息和状态信息构成。层次越往上,事务处理的范围越小,针对的也是比较特殊和非结构化的问题。
  一个组织的管理信息系统可分解为四个基本部分:
  (1)、EDPS部分,主要完成数据的收集、输入,数据库的管理、查询、基本运算、日常报表的输出等。
  (2)、分析部分,主要在EDPS基础之上,对数据进行深加工,如运用各种管理模型、定量化分析手段、程序化方法、运筹学方法等对组织的生产经营情况进行分析。
  (3)、决策部分,MIS的决策模型多限于以解决结构化的管理决策问题为主,其决策结果要为高层管理者提供一个最佳的决策方案。
  (4)、数据库部分,主要完成数据文件的存贮、组织、备份等功能,数据库是管理信息系统的核心部分。
  
图1.1 管理信息总体结构图
1.1.2 信息管理的主要任务
  管理信息系统辅助完成企业日常结构化的信息处理任务,一般认为MIS的主要任务有如下几方面:
  (1)、对基础数据进行严格的管理,要求计量工具标准化、程序和方法的正确使用,使信息流通渠道顺畅。有一点要明确,进去的是垃圾,出来的也是垃圾”,必须保证信息的准确性、一致性。
  (2)、确定信息处理过程的标准化,统一数据和报表的标准格式,以便建立一个集中统一的数据库。
  (3)、高效低能地完成日常事务处理业务,优化分配各种资源,包括人力、物力、财力等。
  (4)、充分利用已有的资源,包括现在和历史的数据信息等,运用各种管理模型,对数据进行加工处理,支持管理和决策工作,以便实现组织目标。
1.1.3 管理信息系统的特点
  管理信息的特点可以从七个方面来概括:
  (1)、MIS是一个人机结合的辅助管理系统。管理和决策的主体是人,计算机系统只是工具和辅助设备。
  (2)、主要应用于结构化问题的解决。
  (3)、主要考虑完成例行的信息处理业务,包括数据输入、存储、加工、输出,生产计划,生产和销售的统计等。
  (4)、以高速度低成本完成数据的处理业务,追求系统处理问题的效率。
  (5)、目标是要实现一个相对稳定的、协调的工作环境。因为系统的工作方法、管理模式和处理过程是确定的,所以系统能够稳定协调地工作。
  (6)、数据信息成为系统运作的驱动力。因为信息处理模型和处理过程的直接对象是数据信息,只有保证完整的数据资料的采集,系统才有运作的前提。
  (7)、设计系统时,强调科学的、客观的处理方法的应用,并且系统设计要符合实际情况。
1.1.4 管理信息系统的问题
  管理信息系统的开发是一个复杂的系统工程,它涉及到计算机处理技术、系统理论、组织结构、管理功能、管理知识等各方面的问题,至今没有一种统一完备的开发方法。但是,每一种开发方法都要遵循相应的开发策略。任何一种开发策略都要明确以下问题:
  (1)、系统要解决的问题,如采取何种方式解决组织管理和信息处理方面的问题,对企业提出的新的管理需求该如何满足等。
  (2)、系统可行性研究,确定系统所要实现的目标。通过对企业状况的初步调研得出现状分析的结果,然后提出可行性方案并进行论证。系统可行性的研究包括目标和方案卸可行性、技术的可行性、经济方面的可行性和社会影响方面的考虑。
  (3)、系统开发的原则。在系统开发过程中,要遵循领导参与、优化创新、实用高效、处理规范化的原则。
  (4)、系统开发前的准备工作,作好开发人员的组织准备和企业基础准备工作。
  (5)、系统开发方法的选择和开发计划的制定。针对己经确定的开发策略选定相应的开发方法,是结构化系统分析和设计方法,还是选择原型法或面向对象的方法。开发计划的制定是要明确系统开发的工作计划、投资计划、工程进度计划和资源利用计划。
  MIS开发方法主要有:结构化生命周期开发方法、原型法、面向对象的开发方法等。
1.1.5 信息管理的开发方法
(1)、结构化生命周期开发方法
  目前较为流行的MIS开发方法是结构化生命周期开发方法,其基本思想是:用系统的思想和系统工程的方法,按用户至上的原则,结构化、模块化地自上而下对生命周期进行分析与设计。
  用结构化生命周期开发方法开发一个系统,将整个开发过程划分为五个依次连接的阶段:
  ① 系统规划阶段,主要任务是明确系统开发的请求,并进行初步的调查,通过可行性研究确定下一阶段的实施。系统规划方法有战略目标集转化法(SST,Strategy Set Transformation)、关键成功因素法(CSF,Critical Success Factors)和企业规划法(BSP,Business System Planning)。
  ② 系统分析阶段,主要任务是对组织结构与功能进行分析,理清企业业务流程和数据流程的处理,并且将企业业务流程与数据流程抽象化,通过对功能数据的分析,提出新系统的逻辑方案。
  ③ 系统设计阶段,主要任务是确定系统的总体设计方案,划分子系统功能,确定共享数据的组织,然后进行详细设计,如处理模块的设计、数据库系统的设计、输入输出界面的设计和编码的设计等。该阶段的成果为下一阶段的实施提供了编程指导书。
  ④ 系统实施阶段,主要任务是讨论确定设计方案、对系统模块进行调试、进行系统运行所需数据的准备、对相关人员进行培训等。
  ⑤ 系统运行阶段,主要任务是进行系统的日常运行管理,评价系统的运行效率,对运行费用和效果进行监理审计,如出现问题则对系统进行修改、调整。
  这五个阶段共同构成了系统开发的生命周期。结构化生命周期开发方法严格区分了开发阶段,非常重视文档工作,对于开发过程中出现的问题可以得到及时的纠正,避免了出现混乱状态。但是,该方法不可避免地出现开发周期过长、系统预算超支的情况,而且在开发过程中用户的需求一旦发生变化,系统将很难作出调整。
  (2)、原型法 原型法在系统开发过程中也得到不少应用。原型法的基本思想是系统开发人员凭借自己对用户需求的理解,通过强有力的软件环境支持,构造出一个实在的系统原型,然后与用户协商,反复修改原型直至用户满意。 原型法的应用使人们对需求有了渐进的认识,从而使系统开发更有针对性。另外,原型法的应用充分利用了最新的软件工具,使系统开发效率大为提高。
  (3)、面向对象系统开发方法 面向对象的系统开发方法(OO,Object Oriented),是近年来受到关注的一种系统开发方法。面向对象的系统开发方法的基本思想是将客观世界抽象地看成是若干相互联系的对象,然后根据对象和方法的特性研制出一套软件工具,使之能够映射为计算机软件系统结构模型和进程,从而实现信息系统的开发。
1.1.6 管理信息系统的经济效益评价
  管理信息系统的效益评价分为直接经济效益评价和间接经济效益评价。
  1、直接经济效益评价 直接经济效益评价是指企业运行MlS之后,使用计算机管理所节约的开支与企业在MIS实施过程中一次性投资(包括软件、硬件投资)的折旧和运行费用相比较的结果。
  2、间接经济效益评价 间接经济效益的评估是指企业在运行MIS之后,在提高管理效率方面和数据集中管理方面,以及在建立网络系统之后数据的共享和数据传递的及时性、准确性方面,可以实现实时、定量的管理方面,提高了企业竞争力而带来的效益的评价。
1.2国内外现状
1.2.1 信息管理系统产生的背景
在过去,各行各业往往都有不少管理人员孤立地看待数据处理和计算机。造成这种看法的原因是,数据处理和信息服务人员不愿使用容易计算机用户理解的语言同用户进行交流。管理人员对这种交流缺乏兴趣和无能为力,导致延缓了计算机系统的开发,从而在许多其他方面助长了自守和冗余劳动的现象。
在用户同信息服务人员的交流方面,没有一个单位能做到尽善尽美,但是,确有某些单位已经取得了比较好的成功经验。用户同信息服务人员配合默契的一些单位认为:这种成功的原因在于,用户已经掌握了计算机和信息资源管理方面的基本知识。可见,用户管理人员掌握这方面的知识是非常必要的。诚然,信息服务专业人员是具备这方面的知识的,但是要使用户管理人员获得这些知识,就必须通过正规的学习、阅读和实践。
妥善处理用户同信息服务人员之间的关系,可以加强双方的互相配合。为了建立和维护一个高质量的信息系统,各方都必须尊重对方的意愿。系统质量的优劣是直接与用户同信息服务人员之间互相配合的好坏成正比的。
1.2.2 我国现有MIS系统分析
凡是那些不愿意掌握有关计算机和信息管理反面基本知识的用户管理人员,必将成为落伍者,特别是在当前这种鼓励用户直接参与信息系统开发过程的发展趋势下。过去,用户管理人员在很大程度上是依靠信息服务人员来推荐、开发和实现所需的信息系统的。鉴于信息服务需要不断的发展变化,现在把鉴别和提高系统的责任留给了用户,这也是理所应当的。用户更多地参与信息系统的开发,这种趋势早在70年代中期就开始了,而且,自那时以后不断地发展,现在已进入了信息服务人员同用户合作的时代。因为只有用户更了解他们自己想从信息系统中得到什么。
用户参与信息资源管理(IRM)的典型事例表现在分布式数据处理(DDP)方面。在这方面,用户不仅要参加系统的开发,而且还要负责管理系统运行所需要的硬件设备和人员。
1.2.3 我国MIS的发展策略
直到最近几年,人们才认识到:信息是一种资源,必须把这种有价值的资源加以利用,不使其白白浪费掉。在竞争激烈的环境里,管理人员必须有效地利用信息,不然就难以立足与不败之地。过去,管理人员仅仅把计算机看成是省钱的工具,而现在,计算机被看成是创造利润的工具。每个公司都有大量的、尚未发掘的、可利用计算机和信息资源的潜力。发掘这种潜力所需要具有的计算机和信息处理的知识水平,这是大多数管理人员力所能及的。
第二章 系统规划的可行性研究
2.1初步调查
物业管理公司作为房地产开发公司的附属单位,担负着整个小区的各家各户的繁杂的服务和承载着开发商信誉的重要任务。由于物业管理业务的复杂性,再加上智能化小区这个概念的引入,物业管理逐渐趋于信息化高效率化,因此上海的许多物业管理公司已引入了物业管理信息系统”,即通过计算机网络和专业软件对物业实施即时、规范、高效的管理。在引入该系统后住户档案将由电脑管理,通过在水、电、煤气上设置读数装置可以实现远程自动抄表,减少了业主的麻烦。服务中心在接到业主报修后,会立刻打出工程部的报修单,提高了日常维修的服务质量。每月电脑会自动将各项费用汇总,并打印出统一的收费通知,大大节省了物业管理公司的人力、物力投入,降低了成本。
2.1.1 背景及现状
目前国家建设部房地产业司已将是否使用计算机进行管理列入了物业管理公司评定级别的项目之中。此举大大推动了物业管理信息系统”的发展。沪上的中海、古北、万科、卓越、永业、西部、金桥、船舶大厦、魏理仕、香港广场、太平洋中心、华都大厦等近200家物业管理公司已部分或全部在某所管理的楼盘引入了物业管理信息系统。随着人们生活水平的提高和房地产业的不断的完善,大型的房地产企业结构(如图2.1)中,物业管理的部门结构(如图2.2)成为其中的一个细化。而物业管理部门成为与业户零距离接触的终端部门,物业管理系统的作用不但使得繁重的手工工作变的简单化,并且能够使得业户对物业的了解更加透明化。
2.2 开发的可行性研究
可行性分析(Feasibility Analysis)也称为可行性研究,是在系统调查的基础上,针对新系统的开发是否具备必要性和可能性,对新系统的开发从技术、经济、社会的方面进行分析和研究,以避免投资失误,保证新系统的开发成功。可行性研究的目的就是用最小的代价在尽可能短的时间内确定问题是否能够解决
2.2.1 技术的可行性
小区物业管理系统采用了当前的主流计算结构模式进行开发,前台开发语言选用Java和Myeclipse开发平台。Java是一种面向对象的Windows开发语言,Java具有易用、通用和平台无关的特点。后台的数据库开发工具选用了Access 2000,它能够处理大量数据,同时保持数据完整性并提供许多高级管理和数据分配功能。这两种开发工具功能强大,有较好的接口,作为本系统开发工具是可行的。
(1) Java及Myeclipse的简介
Java,是由Sun Microsystems公司于1995年5月推出的Java程序设计语言和Java平台的总称。用Java实现的HotJava浏览器(支持Java applet)显示了Java的魅力:跨平台、动态的Web、Internet计算。从此,Java被广泛接受并推动了Web的迅速发展,常用的浏览器现在均支持Java applet。
Java平台由Java虚拟机 (​http:​/​​/​baike.baidu.com​/​view​/​1132.htm _blank​)(Java Virtual Machine)和Java 应用编程接口(Application Programming Interface、简称API)构成。Java 应用编程 (​http:​/​​/​baike.baidu.com​/​view​/​3281.htm _blank​)接口为Java应用提供了一个独立于操作系统 (​http:​/​​/​baike.baidu.com​/​view​/​880.htm _blank​)的标准接口,可分为基本部分和扩展部分。在硬件或操作系统平台上安装一个Java平台之后,Java应用程序就可运行。现在Java平台已经嵌入了几乎所有的操作系统。这样Java程序可以只编译一次,就可以在各种系统中运行。Java应用编程接口已经从1.1x版发展到1.2版。目前常用的Java平台基于Java1.4,最近版本为Java1.7。
  Java分为三个体系JavaSE(Java2 Platform Standard Edition,java平台标准版),JavaEE(Java 2 Platform,Enterprise Edition,java平台企业版),JavaME(Java 2 Platform Micro Edition,java平台微型版)。
  2009年04月20日,oracle(甲骨文)宣布收购sun。

(3)Access简介
Access是Office办公套件中一个极为重要的组成部分。刚开始时微软公司是将Access单独作为一个产品进行销售的,自Office 97开始将Access捆绑到其中,成为Office套件中的一个重要成员。现在它已经成为Office办公套件中不可缺少的部件了。Microsoft 公司在Access 95 的基础上陆续推出了 Access 97、Access 2000,成为世界上最流行的桌面数据库管理系统之一。
Access是一种关系型数据库管理系统,不但能存储和管理数据,还能编写数据库管理软件,用户可以通过Access提供的开发环境及工具方便地构建数据库应用程序,大部分是直观的可视化的操作,无需编写程序代码,是一种使用方便、功能较强的数据库开发工具。
2.2.2 经济可行性
随着计算机技术的飞速发展,计算机在企业管理中应用的普及,利用计算机实现企业人事管理势在必行。21世纪是一个充满竞争和挑战的世纪。在这个世纪中,高效化、系统化、规范化、自动化已成为现代企业的代名词。做为我国支柱产业之一的房地产业在当今智能化小区的发展的驱动下,在当今信息时代的推动下,拥有自己的一套特色的小区物业管理系统是非常必要的,与小区内繁多的硬件设施相比较,传统的手工式的管理方式已经无法适合当今的庞大的数据处理和精确的运算需求,所以一套精美完善的小区物业管理系统是提高工作效率节省人力物力的有效解决方案。传统的管理方式,对物业管理人员要求数量多,耗资高,错误率高,工作人员流动和对新人的培训经费也是不小的开支。一套完善的小区物业管理系统可持续使用并能随着时代和工作的需求不断更新,一期投入终身受用,按长期的使用计算,开发系统的造价平均到每年与传统式的管理方式的年耗资本相对比,性价比是可行的。开发这套系统的经济可行性是很高的。
2.2.3 操作可行性
对于这套小区物业管理系统而言,在投入使用前,会由开发并能熟练操作本系统的工程人员对用户群进行专业系统的培训。培训内容应包括,熟练掌握系统的各个功能和简单的系统维护,在开发设计程序的过程中直观的界面和控件的文字解释完全能使得用户充分理解起功能和意义,在计算机普及的今天,用户对本系统的操作完全可以看做是一种简单的,配合形式的手工操作,因为本系统最适合用于微型机,可以说几乎任何人都可以使用和管理。所以本系统的操作是完全可行的。
2.2.4 调度可行性
调度可行性指的是建议的计算机系统能否在规定的期限内交付给用户。由于合同的规定,能否预期的交付涉及到开发人员的信誉等等。所以开发期限的选定也是非常重要的因素,根据小区物业管理的日常的正常的业务运作规律和工作性质,可以看出这些内容是我们平时常见的工作,所以开发人员在开发起来比较容易入手,所以可以判断开发本系统的周期比较短,开发中的不可预见问题会比较容易解决,在开发小组的分析后应该容易做出相对准确的,误差微小的开发期限,应该可以在规定时间内,快速的、完整的交付给用户使用。
2.2.5 硬件配置
(1) 硬件设备及操作系统
①服务器:Pentium4以上配置的高性能PC机,内存应在256M以上,硬盘在40G以上。确认该计算机已经安装数据库软件Jdk1.6及Myeclipse。
②操作系统:Windows 9x/Me、Windows 2000、Windows XP、Windows NT,分辨率:1024*768。
③客户端:Pentium233(或与此相当的CPU)以上配置的PC机,内存应在32M以上,硬盘在1G以上。Windows 9x以上操作系统。确认已安装BDE。
(2) 开发平台前台开发工具:Myeclipse
①前台开发工具:Myeclipse
②后台数据库:Access 2000
第三章 系统分析
3.1需求分析
3.1.1 系统需求功能概括
经过调研与可行性分析,出于对人们生活住房考虑,设计了这套小区物业管理系统,本系统主要考虑到小区物业管理的普遍要求,小区物业管理系统主要包括:
(1) 对小区所有房屋资料的录入和增、删、改、查询等功能实现,在基于这些小区的房产资源对小区进行管理。
(2) 对小区内住户的详细资料的管理,包括增、删、改、查询等功能的实现,这些也是一个小区的基本资源,毕竟物业管理最后是针对小区的所有住户而言的。
(3) 在具有了所有的基本资料信息后,需要实现实质性的物业管理。主要的管理业务包括:物业设备管理、仪表(水、电、宽带)数据管理、收费管理、住户投诉管理、故障管理等。这些成为小区物业管理的主体。
这样就可以便于物业公司对小区进行全面的了解和管理了。
3.1.2 系统操作设计内容
根据以上的操作需要研究设计内容如下:
(1) 模块功能的研究设计:尽量采用物业管理部门中现有的软硬件环境以及先进的管理系统开发方案,从而达到充分利用现有资源,提高系统开发水平和应用效果的目的。系统应完全符合物业管理员对业户管理的规定,满足对房产信息及住户信息等工作需要,并达到操作过程中的直观、方便、实用、安全等要求。通过调研情况进行需求分析,进行模块的划分和功能的界定,并对各个模块的具体管理流程进行控制和编码实现。
(2) 良好的数据系统设计:所小区物业管理系统应充分具备数据库的维护功能,可以及时根据用户的需求对数据库中的信息进行添加、删除、修改等操作。
(3) 完备的信息查询统计:为满足管理和决策工作的需要,在查询基础上应具备一定的统计功能。
(4) 后期维护:所开发的小区物业管理系统应采用模块化程序设计方法,收到既便于系统功能的各种组合和修改,又便于未参与开发的技术维护人员补充、维护的效果。
以上是对本信息管理系统进行的基本的需求分析,也就是本系统所要实现的基本功能。但是,这并不是整个系统的全部需求,对系统不断出现的新需求,需要系统在日后的使用中通过系统的更新与维护来实现。这样,才能使系统得到不断的完善,功能更加强大,与用户的交互性更强。
3.2 功能分析
3.2.1 系统用户管理功能
(1) 系统用户的添加,包括用户名、密码信息。
3.2.2 小区住户信息管理功能
(1) 住户基本信息的录入,包括住户电话、住户姓名、物业地址、身份证号、入住时间等信息。
(2) 住户基本信息的修改。
(3) 住户基本信息的删除。
(4) 住户基本信息的查询。
3.2.2 小区房产信息管理功能
(1) 房产基本信息的录入,包括物业地址、使用面积、房屋结构、设备、出售信息等信息。
(2) 房产基本信息的修改。
(3) 房产基本信息的删除。
(4) 房产基本信息的查询。
3.2.3 小区收费管理功能
(1) 其中包括物业收费和仪表收费两大类信息的录入,包括收费住址、水费、电费、宽带费、物业管理费、收费时间等信息。
(2) 收费基本信息的修改。
(3) 收费基本信息的删除。
(4) 收费基本信息的查询。
3.2.4 小区住户故障处理管理功能
(1) 住户报修基本信息的录入,包括住址、报修故障、经办人、处理时间、查询等信息。
(2) 住户故障基本信息的修改。
(3) 住户故障基本信息的删除。
(4) 住户故障基本信息的查询。
3.2.5 退出
退出小区物业管理系统。
第四章 系统总体设计
4.1系统总体结构设计
小区物业管理系统部分实体E-R图如下所示:




……
图4.1 住户基本信息实体E-R图



……
图4.2 房产基本信息实体E-R图
……
图4.3 住户投诉基本信息实体E-R图
4.2 系统结构图
4.3 数据库的设计
(1) 用户表
用户表存放登陆系统所需要的用户名和密码,需要访问此表。
表4.1 用户表
字段名 数据类型 可否为空
用户名(主键) Char(10) NOT NULL
密码 Int NOT NULL

(2) 住户基本信息表
住户表存放小区内所有的住户信息,这些信息也是小区物业管理的基本信息,在实现系统的各个功能中起真非常重要的作用。
表4.2 住户基本信息表表
字段名 数据类型 可否为空
住址(主键) Char(10) NOT NULL
户主 Char(10) NOT NULL
身份证号码 Varchar(50) NOT NULL
电话 Char(20) NULL
入住时间 Datetime NULL

(3) 房屋基本信息
房产表存放小区内的所有房屋的信息,其中包括已售出的房屋和未售出的房屋。
表4.3 房屋基本信息表
字段名 数据类型 可否为空
住址(主键) Char(10) NOT NULL
房屋结构 Varchar(50) NOT NULL
设备 Float(8) NOT NULL
房屋面积 Float(8) NOT NULL
出售信息 Char(20) NULL


(4) 处理故障表
住户处理故障表存放小区内住户的各种故障的所有信息。
表4.4 处理故障表
字段名 数据类型 可否为空
住址(主键) Char(10) NOT NULL
处理故障 Datetime NOT NULL
经办人 Char(10) NULL
处理时间 Datetime NULL


(5) 收费信息表
物业收费表存放小区内住户的各种收费信息。
表4.5 物业收费表
字段名 数据类型 可否为空
住址(主键) Char(10) NOT NULL
水费 Char(10) NOT NULL
电费 Varchar(50) NOT NULL
宽带 Int(4) NOT NULL
垃圾清运费 Int(4) NOT NULL
物业管理费 Varchar(50) NOT NULL
收费时间 Datetime NOT NULL

第五章 系统详细设计
5.1界面设计与功能
经过以上的分析及建摸模,已经完成了数据库的后台工作。下面要完成的是
人机交互的界面。本系统分为以下三部分:
(1) 用户登陆;
(2) 系统主体平台;
(3) 通过主体平台调用的功能模块。
接下来即对各部分作详细介绍:
5.2 用户登陆部分
启动系统程序后,首先进入系统登陆界面,在登陆进入主体平台的时候,系统会要求用户输入用户名及密码作为验证信息,为了防止非用户在使用,输入正常信息后便可以使用本系统。
本模块代码如下:
package login;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.sql.*;
import wymanagesystem.MainFrame;
/**
*
* @author 召峰
*/
public class LoginFrame extends javax.swing.JFrame {
private String name;
private String pwd;
/** Creates new form LoginFrame */
public LoginFrame() {
super(用户登录);
initComponents();
setSize(375,325);
Dimension screen=getToolkit().getScreenSize();
setLocation((screen.width-getSize().width)/2, (screen.height-getSize().height)/2);
try{
String theLook=UIManager.getSystemLookAndFeelClassName();
UIManager.setLookAndFeel(theLook);
SwingUtilities.updateComponentTreeUI(this);
}
catch(Exception e){
System.err.println(异常:+e);
}
}

/** This method is called from within the constructor to
* initialize the form.
* WARNING: Do NOT modify this code. The content of this method is
* always regenerated by the Form Editor.
*/
// //GEN-BEGIN:initComponents
private void initComponents() {
inputs = new javax.swing.JPanel();
labels = new javax.swing.JPanel();
nameLabel = new javax.swing.JLabel();
pwdLabel = new javax.swing.JLabel();
texts = new javax.swing.JPanel();
id = new javax.swing.JTextField();
password = new javax.swing.JPasswordField();
buttons = new javax.swing.JPanel();
ok = new javax.swing.JButton();
cancel = new javax.swing.JButton();
jPanel5 = new javax.swing.JPanel();
icon = new javax.swing.JLabel();
getContentPane().setLayout(null);
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
setName(767b5f55);
setResizable(false);
inputs.setLayout(null);
inputs.setBorder(new javax.swing.border.EtchedBorder());
labels.setLayout(null);
nameLabel.setText(75286237540dff1a);
labels.add(nameLabel);
nameLabel.setBounds(30, 20, 60, 20);
pwdLabel.setText(5bc67801ff1a);
labels.add(pwdLabel);
pwdLabel.setBounds(30, 70, 50, 15);
inputs.add(labels);
labels.setBounds(10, 10, 100, 110);
texts.setLayout(null);
id.setToolTipText(8f93516575286237540d);
id.setName();
texts.add(id);
id.setBounds(10, 20, 140, 20);
password.setToolTipText(8bf78f9351655bc67801);
password.setNextFocusableComponent(ok);
texts.add(password);
password.setBounds(10, 70, 140, 20);
inputs.add(texts);
texts.setBounds(120, 10, 220, 110);
getContentPane().add(inputs);
inputs.setBounds(10, 70, 350, 130);
buttons.setLayout(null);
buttons.setBorder(new javax.swing.border.EtchedBorder());
ok.setText(767b5f55);
ok.setToolTipText(767b5f55);
ok.setNextFocusableComponent(ok);
ok.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
okActionPerformed(evt);
}
});
buttons.add(ok);
ok.setBounds(50, 20, 70, 23);
cancel.setText(53d66d88);
cancel.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
cancelActionPerformed(evt);
}
});
buttons.add(cancel);
cancel.setBounds(210, 20, 70, 23);
getContentPane().add(buttons);
buttons.setBounds(10, 210, 350, 60);
jPanel5.setLayout(null);
icon.setFont(new java.awt.Font(华文行楷, 1, 36));
icon.setHorizontalAlignment(javax.swing.SwingConstants.CENTER);
icon.setIcon(new javax.swing.ImageIcon(F:\netbeans\WyManageSystem\images\logo.jpg));
jPanel5.add(icon);
icon.setBounds(0, 0, 350, 50);
getContentPane().add(jPanel5);
jPanel5.setBounds(10, 10, 350, 50);
}
// //GEN-END:initComponents
private void okActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_okActionPerformed
// TODO 将在此处添加您的处理代码:登录
name=id.getText().trim();//用户名
pwd=new String(password.getPassword());//用户密码
if(name.equals()||pwd.equals()){
JOptionPane.showMessageDialog(this,用户名或密码不能为空,登录,JOptionPane.INFORMATION_MESSAGE);
}
else{
try{
Class.forName(sun.jdbc.odbc.JdbcOdbcDriver);//加载驱动
Connection conn=DriverManager.getConnection(jdbc:odbc:wySystem,admin, admin);//连接数据库
String sql=select id,password from login where id=?;
PreparedStatement pre=conn.prepareCall(sql);//查询表login的sql语句
pre.clearParameters();
pre.setString(1,name);
ResultSet rs=pre.executeQuery();
if(rs.next()){
String pass=rs.getString(password).trim();
if(pwd.regionMatches(0,pass,0,pass.length())){
this.dispose();
new MainFrame().setVisible(true);
}
else{
JOptionPane.showMessageDialog(this,密码不正确,登录,JOptionPane.WARNING_MESSAGE);
}
}
else{
JOptionPane.showMessageDialog(this,用户名不存在,登录,JOptionPane.WARNING_MESSAGE);
}
rs.close();
conn.close();
}
catch(Exception e){
JOptionPane.showMessageDialog(this,登录异常+e.toString(),登录,JOptionPane.WARNING_MESSAGE);
}
}
}//GEN-LAST:event_okActionPerformed
private void cancelActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_cancelActionPerformed
System.exit(0); //退出登录程序
}//GEN-LAST:event_cancelActionPerformed

/**
* @param args the command line arguments
*/
public static void main(String args[]) {
java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
new LoginFrame().setVisible(true);
}
});
}

// 变量声明 - 不进行修改//GEN-BEGIN:variables
private javax.swing.JPanel buttons;
private javax.swing.JButton cancel;
private javax.swing.JLabel icon;
private javax.swing.JTextField id;
private javax.swing.JPanel inputs;
private javax.swing.JPanel jPanel5;
private javax.swing.JPanel labels;
private javax.swing.JLabel nameLabel;
private javax.swing.JButton ok;
private javax.swing.JPasswordField password;
private javax.swing.JLabel pwdLabel;
private javax.swing.JPanel texts;
// 变量声明结束//GEN-END:variables

}
5.3 小区住户信息管理模块
住户资料主要是对住户的基本信息如 (住户电话、住户姓名、物业地址、身份证号、入住时间等信息)和另外两个标签的信息进行添加、修改、删除、查询。添加、修改、删除这些操作必须保存后才能生效。当记录较多,通过简单的查询可以方便的找的目标记录,查询结果已表格方式显示。表格显示结果的同时,如果还出现多条记录,可以根据某个字段对记录进行排序,这样可以给用户带来更大的方便和提高查找效率。
本模块代码如下:
package wymanagesystem;
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import login.MpassFrame;
import login.AbortFrame;
import resourceInfoManage.*;
import KHSManage.*;
import SFManage.*;
/**
*
* @author 召峰
*/
public class MainFrame extends javax.swing.JFrame {

/** Creates new form MainFrame */
public MainFrame() {
super(小区物业管理系统);
try{
String theLook=UIManager.getSystemLookAndFeelClassName();//更新界面
UIManager.setLookAndFeel(theLook);
SwingUtilities.updateComponentTreeUI(this);
}
catch(Exception e){
System.err.println(异常:+e);
}
initComponents();
setSize(550,450);
logo.setSize(getSize().width,100);
jControlTab.setSize(getSize().width,jControlPanel.getSize().height);
jControlPanel.setSize(getSize().width,getSize().height-100);
Dimension screen=getToolkit().getScreenSize();
setLocation((screen.width-getSize().width)/2, (screen.height-getSize().height)/2);

}

/** This method is called from within the constructor to
* initialize the form.
* WARNING: Do NOT modify this code. The content of this method is
* always regenerated by the Form Editor.
*/
// //GEN-BEGIN:initComponents
private void initComponents() {
logo = new javax.swing.JLabel();
jControlPanel = new javax.swing.JPanel();
jControlTab = new javax.swing.JTabbedPane();
jZYM = new javax.swing.JPanel();
jBtn_FC = new javax.swing.JButton();
jBtn_KH = new javax.swing.JButton();
jBtn_SF = new javax.swing.JButton();
jKHSM = new javax.swing.JPanel();
jBtn_TSM = new javax.swing.JButton();
jBtn_WXM = new javax.swing.JButton();
jBtn_TCCM = new javax.swing.JButton();
jSFM = new javax.swing.JPanel();
jBt_SFI = new javax.swing.JButton();
jbt_CH = new javax.swing.JButton();
jbt_CHQ = new javax.swing.JButton();
jSysM = new javax.swing.JPanel();
jSysMUpdate = new javax.swing.JButton();
jSysMAbort = new javax.swing.JButton();
jSysMExit = new javax.swing.JButton();
getContentPane().setLayout(null);
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
setCursor(new java.awt.Cursor(java.awt.Cursor.DEFAULT_CURSOR));
setResizable(false);
logo.setIcon(new javax.swing.ImageIcon(F:\netbeans\WyManageSystem\images\nuist.jpg));
getContentPane().add(logo);
logo.setBounds(0, 0, 650, 100);
jControlPanel.setLayout(null);
jControlPanel.setBorder(new javax.swing.border.EtchedBorder());
jControlTab.setTabPlacement(javax.swing.JTabbedPane.LEFT);
jControlTab.setFont(new java.awt.Font(宋体, 0, 14));
jZYM.setLayout(null);
jBtn_FC.setText(623f4ea78d446e90);
jBtn_FC.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jBtn_FCActionPerformed(evt);
}
});
jZYM.add(jBtn_FC);
jBtn_FC.setBounds(80, 70, 90, 40);
jBtn_KH.setText(4e1a4e3b4fe1606f);
jBtn_KH.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jBtn_KHActionPerformed(evt);
}
});
jZYM.add(jBtn_KH);
jBtn_KH.setBounds(220, 70, 90, 40);
jBtn_SF.setText(65368d39987976ee);
jBtn_SF.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jBtn_SFActionPerformed(evt);
}
});
jZYM.add(jBtn_SF);
jBtn_SF.setBounds(80, 160, 90, 40);
jControlTab.addTab(8d446e904fe1606f, jZYM);
jKHSM.setLayout(null);
jBtn_TSM.setText(62958bc97ba17406);
jBtn_TSM.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jBtn_TSMActionPerformed(evt);
}
});
jKHSM.add(jBtn_TSM);
jBtn_TSM.setBounds(80, 70, 100, 40);
jBtn_WXM.setText(62a54fee7ba17406);
jBtn_WXM.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jBtn_WXMActionPerformed(evt);
}
});
jKHSM.add(jBtn_WXM);
jBtn_WXM.setBounds(220, 70, 100, 40);
jBtn_TCCM.setText(505c8f66573a7ba17406);
jBtn_TCCM.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jBtn_TCCMActionPerformed(evt);
}
});
jKHSM.add(jBtn_TCCM);
jBtn_TCCM.setBounds(80, 160, 100, 40);
jControlTab.addTab(5ba26237670d52a1, jKHSM);
jSFM.setLayout(null);
jBt_SFI.setText(8d3975288f935165);
jBt_SFI.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jBt_SFIActionPerformed(evt);
}
});
jSFM.add(jBt_SFI);
jBt_SFI.setBounds(80, 70, 81, 40);
jbt_CH.setText(8d397528653653d6);
jbt_CH.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jbt_CHActionPerformed(evt);
}
});
jSFM.add(jbt_CH);
jbt_CH.setBounds(220, 70, 81, 40);
jbt_CHQ.setText(8d39752867e58be2);
jbt_CHQ.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jbt_CHQActionPerformed(evt);
}
});
jSFM.add(jbt_CHQ);
jbt_CHQ.setBounds(80, 160, 81, 40);
jControlTab.addTab(65368d397ba17406, jSFM);
jSysM.setLayout(null);
jSysMUpdate.setText(4fee65395bc67801);
jSysMUpdate.setActionCommand(5bc678018bbe7f6e);
jSysMUpdate.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jSysMUpdateActionPerformed(evt);
}
});
jSysM.add(jSysMUpdate);
jSysMUpdate.setBounds(80, 70, 80, 40);
jSysMAbort.setText(51734e8e);
jSysMAbort.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jSysMAbortActionPerformed(evt);
}
});
jSysM.add(jSysMAbort);
jSysMAbort.setBounds(220, 70, 80, 40);
jSysMExit.setText(900051fa7cfb7edf);
jSysMExit.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jSysMExitActionPerformed(evt);
}
});
jSysM.add(jSysMExit);
jSysMExit.setBounds(80, 160, 80, 40);
jControlTab.addTab(7cfb7edf7ba17406, jSysM);
jControlPanel.add(jControlTab);
jControlTab.setBounds(0, 0, 490, 350);
getContentPane().add(jControlPanel);
jControlPanel.setBounds(0, 100, 490, 350);
pack();
}
// //GEN-END:initComponents
private void jbt_CHQActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jbt_CHQActionPerformed
// TODO 将在此处添加您的处理代码:
new CHQueryJFrame().setVisible(true);
}//GEN-LAST:event_jbt_CHQActionPerformed
private void jbt_CHActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jbt_CHActionPerformed
// TODO 将在此处添加您的处理代码:
new CHJFrame().setVisible(true);
}//GEN-LAST:event_jbt_CHActionPerformed
private void jBt_SFIActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jBt_SFIActionPerformed
// TODO 将在此处添加您的处理代码:
new SFIJFrame().setVisible(true);
}//GEN-LAST:event_jBt_SFIActionPerformed
private void jBtn_TCCMActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jBtn_TCCMActionPerformed
// TODO 将在此处添加您的处理代码:
new TCCManage().setVisible(true);
}//GEN-LAST:event_jBtn_TCCMActionPerformed
private void jBtn_WXMActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jBtn_WXMActionPerformed
// TODO 将在此处添加您的处理代码:
new WXManage().setVisible(true);
}//GEN-LAST:event_jBtn_WXMActionPerformed
private void jBtn_TSMActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jBtn_TSMActionPerformed
// TODO 将在此处添加您的处理代码:
new TSManage().setVisible(true);
}//GEN-LAST:event_jBtn_TSMActionPerformed
private void jBtn_SFActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jBtn_SFActionPerformed
// TODO 将在此处添加您的处理代码:
new SFItemJFrame().setVisible(true);
}//GEN-LAST:event_jBtn_SFActionPerformed
private void jBtn_KHActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jBtn_KHActionPerformed
// TODO 将在此处添加您的处理代码:
new KHJFrame().setVisible(true);
}//GEN-LAST:event_jBtn_KHActionPerformed
private void jBtn_FCActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jBtn_FCActionPerformed
// TODO 将在此处添加您的处理代码:
new FCJFrame().setVisible(true);
}//GEN-LAST:event_jBtn_FCActionPerformed
private void jSysMExitActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jSysMExitActionPerformed
// TODO 将在此处添加您的处理代码:
System.exit(0);
}//GEN-LAST:event_jSysMExitActionPerformed
private void jSysMUpdateActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jSysMUpdateActionPerformed
// TODO 将在此处添加您的处理代码:
new MpassFrame().setVisible(true);
}//GEN-LAST:event_jSysMUpdateActionPerformed
private void jSysMAbortActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jSysMAbortActionPerformed
// TODO 将在此处添加您的处理代码:
new AbortFrame().setVisible(true);
}//GEN-LAST:event_jSysMAbortActionPerformed

/**
* @param args the command line arguments
*/
public static void main(String args[]) {
java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
new MainFrame().setVisible(true);
}
});
}

// 变量声明 - 不进行修改//GEN-BEGIN:variables
private javax.swing.JButton jBt_SFI;
private javax.swing.JButton jBtn_FC;
private javax.swing.JButton jBtn_KH;
private javax.swing.JButton jBtn_SF;
private javax.swing.JButton jBtn_TCCM;
private javax.swing.JButton jBtn_TSM;
private javax.swing.JButton jBtn_WXM;
private javax.swing.JPanel jControlPanel;
private javax.swing.JTabbedPane jControlTab;
private javax.swing.JPanel jKHSM;
private javax.swing.JPanel jSFM;
private javax.swing.JPanel jSysM;
private javax.swing.JButton jSysMAbort;
private javax.swing.JButton jSysMExit;
private javax.swing.JButton jSysMUpdate;
private javax.swing.JPanel jZYM;
private javax.swing.JButton jbt_CH;
private javax.swing.JButton jbt_CHQ;
private javax.swing.JLabel logo;
// 变量声明结束//GEN-END:variables

}
5.4 房屋信息管理模块
房产资料主要是对住户的基本信息如 (物业地址、使用面积、房屋结构、设备、出售信息等信息)的添加、修改、删除、查询及统计记录个数。添加、修改、删除这些操作必须保存后才能生效。当记录较多,通过简单的查询可以方便的找的目标记录,查询结果已表格方式显示。表格显示结果的同时,如果还出现多条记录,可以根据某个字段对记录进行排序,这样可以给用户带来更大的方便和提高查找效率。
界面截图如下:
本模块代码如下:
5.5 物业收费管理模块
物业收费管理用是对小区内物业收费的总管理,主要功能也是对如 (住址、水费、电费、宽带费、物业管理费、收费时间等信息) 的添加、修改、删除、查询及统计记录个数。添加、修改、删除这些操作必须保存后才能生效。记录较多,通过简单的查询可以方便的找的目标记录,查询结果已表格方式显示。表格显示结果的同时,如果还出现多条记录,可以根据某个字段对记录进行排序,这样可以给用户带来更大的方便和提高查找效率。
结束语
至此,小区物业管理系统设计与实现顺利完成。在几天的试运行的过程中,在连接数据库时一度出现过错误,经过调试改正后错误点全部清楚,此系统可以按着设计思想和需求功能正常运行。
由于当今的物业管理部门还不能有一个很统一的模式化,所以本系统仅考虑到一般小区所需要的物业管理的基本和主要的几项功能,一个完好的小区物业管理系统还需要更多更复杂的功能要求。由于开发周期短和开发人员等局限性,不能将本套系统尽善尽美。希望在以后能够对小区的物业做更深一步的调研,在原由系统的基础上不断添加新功能。最终能够开发出一套完善的小区物业管理系统。
本系统在开发过程中,在固定的物业管理要求的模式下还添加了一些人性化的,个人的构思和创意。
本套小区物业管理系统符合基本需求功能,易于操作,应该可以在简单化模式下的小区内应用,存在要改进的地方再以后会进一步完善。希望本系统能够给用户带来方便。
致 谢
同学们自己发挥想象。。。。
参考文献
[1] 郝平 《数据库开发与应用》 科学出版社 2005年2月
[2] 刘德明 《精典物业管理方案》 黄河出版社 2005年2月
[3] 《Thinking in Java》,Bruce Eckel,机械工业出版社,2005年
[4].             《Complete Java 2 certification study guide》,Simon Roberts.,电子工业出版社,2004年
[5]           《Java程序设计教程》,H.M. Deitel, P. J. Deitel著,清华大学出版社,2006年
[6]      《Java Tutorial A short course on the Basic(java 语言导学)》,Mary Campione,机械工业出版社,2004年
[7]          《Java网络编程(第三版 影印版)》,Elliotte Rusty Harold,东南大学出版社,2005 年
信息管理者
信息处理器
信息用户
信息源
小区住户基本信息实体
住户姓名
入住时间
住户电话
物业地址
小区房产基本信息实体积
出售信息
物业地址
房屋结构
使用面积
故障基本信息实体
住 址
报修故障
处理时间
经办人
小区物业管理系统
系统设置
基本信息管理
信息查询
故障处理
退出系统
添加用户
住户管理
房屋管理
收费管理
收费信息
住户信息
房屋信息
故障查询
故障处理
PAGE
28
 

Java程序员居家旅行必备课程 ☆<br /> <br /> Java学习指南系列的第4篇,介绍基于Java Swing的的高级应用技术。本篇的前一篇是Swing入门篇。<br /> Swing系列教程分为两篇:(1) Swing入门篇 (2) Swing高级篇。<br /> <br /> 本篇内容至少包:<br /> - 高级绘制技术,包线型、渐变色、文本的精确绘制<br /> - 不规则形状及图表的绘制<br /> - 工作线程与界面线程的原理<br /> - 短任务、长任务、定时任务的应用举例<br /> - 弹出式窗口 Popup的使用方法<br /> - 短消息提示 Toaster 的设计与使用<br /> - 事件处理机制,鼠标键盘事件处理,以及一个基于键盘操作的“推箱子”游戏 <br /> - 多行文本的显示<br /> - 图片操作:缩放、剪裁、旋转、镜像,以及一个屏幕截图程序的实例<br /> - 管理型应用界面的框架<br /> - 向导型应用界面的框架<br /> - 文档型应用界面的框架<br /> - 拖放支持 Drag & Drop,一个可拖拽排序的列表,以及一个拼图游戏的实现<br /> <br /> * 课程特色 *<br /> 轻快 - 采用小章节教学,学起来轻松<br /> 实用 - 以实际工程需要出发来设计课程<br /> 有趣 - 穿插大量特效实例,增加趣味性和学员的成就感<br /> 专业 - 课程中采用的代码库,就是经过良好封装的成熟的库<br /> <br /> 本篇穿插多个实例,通过实例,综合运用多种技术,使学员对项目的构建有所有认识。<br />
相关推荐
通过对某小区的调查,获知小区物业管理系统应具备以下功能: ①对小区所有房屋资料的录入和增,删,改,查询等功能的实现,这是一个小区管理的基础,小区管理都是基于小区的房产资源而产生的。 ②对本小区内住户的详细资料的管理,包括增,删,改,查询等功能的实现,这也是物业管理产生的基础,物业管理都是相对该小区的所有住户而言的。 ③有了上述资料后,需要实现实质性的物业管理,本系统主要实现物业设备管理,仪表包括水,电,气表数据管理,收费管理,住户投诉管理,住户报修管理,设备维修管理,停车场管理,这些基本的物业管理功能构成了小区物业管理的主体,其中与住户密切的是仪表数据和收费管理,仪表数据管理模块管理每个住户的水,电,气表的资料,统计住户每月的用量以及需要交纳的费用,收费管理记录物业公司对住户的每一笔收费,包括水,电,气等使用费用和物业管理费用,物业维修费用等费用。住户投诉管理和住户维修管理分别记录住户对物业公司的不满的投诉和针对各种设施向物业公司的报修,物业设备和设备维修管理则是对一些整个小区的公共设施的管理和维修记录,比如小区大门和小区里户外的健身器材。 ④各种物业统计报表,包括物业设备统计报表,所有住户的水,电,气仪表资料的统计,各种收费统计,住户投诉统计,住户报修统计,物业设备维修统计等。这样以便物业公司对整个小区的物业管理情况有个全面的了解。  物业管理(系统):实现用户注册、登录、密码修改,等功能并对其权限进行控制以方便不同用户对其信息进行操作,便于归档查询统计,也保障了系统的安全性。其中包括的注册/登录信息有(登录名,登陆密码,用户描述等)。  住户信息管理:实现对入住业主信息的录入,管理和查询的功能。 业主信息管理包括(业主ID,业主姓名,出生年月,籍贯,性别,工作单位及地址,邮编,身份证号码,联系电话,开户银行,银行帐号,入住时间,迁出时间等)  房产信息管理:实现对小区房产信息的录入,管理和查询的功能。 房产信息管理包括(房间编号,物业地址,建筑面积,使用面积,转修情况,单价,总价,是否已经售出,买主编号,买主姓名,备注等)  物业设备管理:实现对小区物业设备的录入,管理和查询的功能。 物业设备管理包括(设备编号,设备名称,型号,品牌,所属部门,购买日期,事故记录等)  仪表数据管理:实现对小区物业仪表数据的录入,管理和查询的功能。 仪表数据管理包括的主要内容有(仪表编号,住户姓名,物业地址,年份,月份,上月数据,本月数据,本月用量,单价,本月费用,上月抄表日期,本月抄表日期,本月交费日期,办理人等) 物业对住户的仪表管理包括水表,电表,气表。  停车场管理:实现对小区物业仪表数据的录入,管理和查询的功能。 停车场管理主要包括(车位编号,车位位置,停车住户,物业地址,使用日期,备注等)。  收费管理:实现对小区物业管理收费,仪表使用情况收费的录入,管理和查询的功能。 收费管理主要包括(收费编号,住户姓名,物业地址,年份,月份,收费项目,收费方式,应收总额,已交金额,欠款金额,交费日期,办理人,备注等)。  住户投诉管理:实现对小区住户投诉的录入,管理和查询的功能。 住户投诉管理主要包括(投诉编号,投诉日期,接待人,投诉住户,物业地址,电话,处理日期,处理人员,投诉内容,处理情况等)。  用户报修管理:实现对小区用户报修的录入,管理和查询的功能。 用户报修管理主要包括(报修编号,报修日期,接待人,报修住户,物业地址,电话,完成日期,维修人员,服务费用,屋料费用,合计费用,报修内容,维修情况等)。  物业设备维修管理:实现对小区物业设备维修的录入,管理和查询的功能。 物业设备维修管理主要包括(维修编号,设备编号,设备名称,维修日期,完成日期,维修费用,维修人员,维修内容,维修情况等)。
©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页