毕业设计(论文)-房屋中介管理系统.doc_第1页
毕业设计(论文)-房屋中介管理系统.doc_第2页
毕业设计(论文)-房屋中介管理系统.doc_第3页
毕业设计(论文)-房屋中介管理系统.doc_第4页
毕业设计(论文)-房屋中介管理系统.doc_第5页
已阅读5页,还剩43页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

房屋中介管理系统 目 录中文摘要I英文摘要II1 序言11.1 项目开发的目的与意义11.2 研究现状11.3 本文主要内容22 相关技术介绍32.1 Visual Studio 2010平台32.2 C#语言介绍42.3 SQL 2000数据库52.3.1 SQL Server 200052.3.2 SQL Server 代理63 需求分析与设计73.1 用户需求分析73.2 可行性分析73.3 设计思路83.4 业务流程图93.5 系统结构化分析103.5.1 数据流程图103.5.2 功能模块图123.5.3 E-R图133.6 数据库设计164 系统实现194.1 登录界面194.2 系统主界面194.3 房源信息204.3.1 录入房源信息204.3.2 房源信息设置224.3.3 查询房源信息234.4 用户信息244.4.1 录入出租人信息244.4.2 录入求租人信息264.4.3 用户信息管理264.5 员工信息274.5.1 录入员工信息274.5.2 员工信息管理284.6 业务统计284.6.1 成交记录284.6.2 房屋期限294.7 常用工具314.8 注销324.9 系统退出325 程序调试与测试335.1 程序调试335.2 程序测试335.2.1 测试的重要性335.2.2 测试的步骤345.2.3 测试的主要内容345.2.4 测试用例35结束语40致 谢41参考文献42房屋中介管理系统房屋中介管理系统摘 要随着我国房地产业的发展,房地产中介咨询服务机构正在蓬勃发展。房屋中介可以有效地帮助人们管理房产或者找到合适的居住地,同时安全可靠地保管用户信息。对于房屋中介公司,一方面由于旗下拥有很多房源,如何有效、规范、快捷地管理一直不便;另一方面,中介业务员工与IT人员之间存在技术知识的差距,往往存在很多后续问题。房屋中介管理系统针对上述问题,设置了多重查询、实时记录、定点检索、结果展示等几个功能。支持按条件组合查询,多项信息结合更准确定位所需信息;从房屋信息录入系统开始,所有对房屋的操作均有记录保存;录入用户与员工信息,确保方便联系。同时,可以对用户、员工以及房屋的信息进行修改和删除;对于一些数据在录入时进行特别的限制;支持查询被预定或租用房屋的剩余时间。采用C#技术开发,建立详细和易于理解的可视化查询对象,以帮助业务人员与用户获得各自所需信息,并实现动态更新与检测。关键词 房屋中介;管理系统;C/S;VS2010;C#HOUSING AGENCY MANAGEMENT SYSTEMABSTRACTWith the development of Chinese real estate industry, real estate advisory services are booming. Housing agency can effectively help people manage real estate or find a proper place to live, at the same time keeping user information safe and reliable. For the housing agency, on the one hand, owning many listings, how effective, standardized, efficient to manage has been inconvenient; On the other hand, the technical knowledge gap existing between the intermediary business employees and IT staff, there are often a lot of follow-up questions.Housing agency management system solving the above problems, sets up multiple query, real-time recording, several fixed-point search, result display and other functions. Support query by combination of conditions, a number of information combined with more accurate positioning information required; starting from the housing information into the system, all of the housing of operation has records; record the user and employee information, conveniently ensured to contact with. At the same time, it can amend and delete users, employees and housing information; for some special restrictions on data entry; support query time remaining predetermined or rental housing. Using C# technology development, based on the visual and easily to understand in detail the query object, in order to help the business personnel and users obtain the information of their needs, and realize the dynamic update and detection.KEY WORDS housing agency,management system,C/S,VS2010,C#441 序言1.1 项目开发的目的与意义房屋中介管理系统是房屋中介机构不可缺少的一部分,能够为业务人员提供充足的信息和快速查询手段。开发房屋中介管理软件能让业务人员详细地记录房源信息与用户信息,更便捷、更有效、更规范地管理这些信息,提高工作质量和效率。同时经过学习、研究和探讨,提高逻辑思维能力,增强人际交往与沟通。过去以来,人们一直使用传统的人工方式管理房屋出租、求租等房屋信息,这种管理存在着许多缺点,比如效率低、保密性差等,时间一长,将产生大量的文件和数据,这样给查找、更新和维护房屋信息带来了不少的困难,既消耗了更多的时间、人力、物力,还难于快速满足用户的需求。所以开发房屋中介管理系统对于中介业务人员以及用户来说都具有很重要的意义。基于以上问题,有必要使得房屋中介管理系统达到操作的规范化、系统化和程序化,避免随意性,既提高信息处理的速度和准确性,又能及时有效地查询、修改房源基本信息,并根据用户的不同需求,准确、迅速找到合适的房屋,提高工作效率。1.2 研究现状随着我国社会主义市场经济体制的确立和发展,商业流通领域进入了一个空前的发展阶段,面临商界的激烈竞争,只有在多变的商品和顾客中发掘并掌握市场需求,即淘汰“卖不出去的商品”,购进“卖得快、利润高的商品”的经营者才会获利,企业也才能在竞争中生存和发展,如果能够选择一个好的管理系统,把大量冗杂的、看似毫无关系的数据,有机地结合起来,形象地反映出市场的供求关系,就能够及时做出正确的决策,抓住商机。在过去,销售业的操作一般都靠人工操作,如通过人工登记卡片、填写表格资料,然后根据不同的分类进帐,销售额的日结算和每月的盘点都需花费大量的人力和物力来完成。即使几年前,有些商家开始使用计算机进行管理,但也只停留在一些简单的数据计算操作,这是一项极其繁琐的工作。通过手工计算不仅容易出错,而且不能够及时地把数据之间的关系形象化地表现出来,也就不能进一步掌握市场的最新动态。而通过本管理系统基本可解决以上问题,能够方便、灵活地对数据库的资料进行查询、统计等操作,所有这些对数据库进行的操作都受到管理级别的限制,确保数据的安全性。在互联网日益发展、壮大的背景下,如何让原来在单个计算机中使用的数据库可供多台计算机同时使用,也成了必然的趋势。企业要在竞争中求得生存,就应科学化、系统化地管理资料信息。此房屋中介管理系统的开发定位于一个能够满足数据库管理的软件,即具备数据库管理软件的基本功能,包括数据的增加、删除、修改和查询等,便于业务人员操作和统计房屋信息。系统采用Visual Studio 2010开发平台与SQL 2000数据库相结合进行开发,结构紧凑、运行速度快、操作简单,更拥有自己的源代码保证了软件的保密性和安全性。1.3 本文主要内容围绕上述研究主题,本文共分为5章,其结构安排如下:第一章主要介绍此系统的研究目的与意义,并分析研究现状。第二章主要介绍开发中使用的相关技术。如C#、SQL 2000等。第三章为需求分析与设计,对用户需求分析、可行性分析进行说明,并详细讲述系统的业务流程、数据流图、功能模块、E-R图及数据库。第四章为系统实现,介绍系统界面并具体讲解,以及重要代码。第五章为系统的调试与测试,说明测试的重要性、步骤和内容,提供测试用例。最后为结束语、致谢、参考文献。2 相关技术介绍2.1 Visual Studio 2010平台Visual Studio是微软公司推出的开发环境。是目前最流行的Windows平台应用程序开发环境。Visual Studio 2010版本于2010年4月12日上市,其集成开发环境(IDE)的界面被重新设计和组织,变得更加简单明了。Visual Studio 2010同时带来了.NET Framework 4.0、Microsoft Visual Studio 2010 CTP(Community Technology Preview-CTP),并且支持开发面向Windows 7的应用程序。除了Microsoft SQL Server,它还支持IBMDB2和Oracle数据库。Visual Studio 2010是由微软公司研发的一套基于组件的开发工具构成,其中还包括其他一些技术以用于生成功能强大、高性能的应用程序。此外,Visual Studio还针对企业解决方案的基于团队的设计、开发和部署进行了优化。Visual Studio是一套完整的开发工具,用于生成ASP.NET Web应用程序、XML Web services、桌面应用程序和移动应用程序。Visual Basic、Visual C#和Visual C+都使用相同的集成开发环境(IDE),这样就能够进行工具共享,并能够轻松地创建混合语言解决方案。另外,这些语言使用.NET Framework的功能,它提供了可简化ASP Web应用程序和XML Web services开发的关键技术1。Visual Studio 2010集成环境进行了改进。首先,可视增强功能进一步改善,并且支持多个监视器浏览。其次,重新设计了集成开发环境(IDE),提高了可读性。为了减少杂乱代码,不必要的都已删除。再次,对于“代码编辑器”和“设计”视图窗口等文档窗口现在都允许放置在IDE 窗口的外部。例如,可以将“代码编辑器”拖出IDE,以便可以将它与“设计”视图窗口并排查看。Visual Studio 2010新功能主要包括2:应用程序生命周期(ALM)、C# 4.0动态类型和动态编程、多显示器支持、支持TDD、支持Office开发、Quick Search特性、C+ 0x新特性、新增基于.NET平台的语言F#等。Visual Studio 2010开发程序除了上述功能外还在以下方面进行了改进:增强和完善了Visual Studio IDE;改进了Visual Basic和C#语言,开发人员可以根据自己的爱好选择任意一种语言;同时还包括一种新的.NET Framework语言:F#;支持基于MVC的Web应用,改进了代码编写的速度,简化了Web开发;改进了对WPF和Silverlight应用程序的开发;当然最重要的变化是完善了Visual C+功能。微软宣称Visual Studio 2010开发程序的承诺是开发者可以针对众多的应用程序进行开发,诸如Windows7、Office、Web、智能手机、云应用框架等。微软除了支持其基本平台外,也准备提供对新兴应用趋势的工具支持,即云计算和并行设计,以充分利用高性能的多核系统2。例如,为并行编程提供了更多支持,包括增加调试窗口,增加对.NET Framework PLINQ、本地Parallel Pattern Library 和Concurrency Runtime并行扩展编码的支持。同时把Windows Azure Tools工具也集成在新的IDE中,主要是用作构建、调试和部署云应用和服务。另外,第三方产品和框架也在该IDE中有了用武之地。Visual Studio 2010中有两个值得注意的内嵌工具:一个是Quest Software公司开发的可选数据库架构,提供了对Oracle数据库的支持,另一个是本地JQuery。微软宣称Visual Studio2010开发程序将是一个新时代多周期演进过程的第一个发布版本,这么做的原因是要确保开发人员的工作尽可能的有效率。微软的目标是确保Visual Studio 2010开发程序及以后的版本都能提供一个高效率的产品,对开发人员来说会很容易熟悉而能立即上手利用新的功能。2.2 C#语言介绍C#读作C Sharp。最初它有个更酷的名字,叫做COOL。微软从1998年12月开始了COOL项目,直到2000年2月,COOL被正式更名为C#。在1998年,Delphi语言的设计者Hejlsberg带领着Microsoft公司的开发团队,开始了第一个版本C#语言的设计。在2000年9月,国际信息和通信系统标准化组织为C#语言定义了一个Microsoft公司建议的标准。最终C#语言在2001年得以正式发布。C#的特点3:(1)对C+的继承C#继承并保留了C+强大的功能,例如:C#保留了类型安全的检测和重载功能,C#还提供了一些新功能取代了一些原来的ANSI、C预处理程序的功能,提高了语言的类型安全等安全性。(2)快速应用开发(RAD)功能支持快速开发(Rapid application development, RAD)可以说是目前开发语言最为重要的一大功能,支持快速开发可以使得开发人员的开发效率倍增,从而使得他们可以从繁重的重复性劳动中解放出来。(3)语言的自由性用C#编写的程序能最大程度地和支持.NET的语言互相交换信息。能够继承和使用任何语言所编写的程序,这样做的好处是节省了大量的工作,你不必把COBOL等语言强行改成另一种语言,.NE让各种语言真正地相互交流了。(4)支持跨平台随着互联网应用程序的应用越来越广,开发人员所涉及的应用程序必须具有强大的跨平台型。C#编写的应用程序就具有强大的跨平台型,这种跨平台型也包括了C#程序的客户端可以运行在不同类型的客户端上,比如PDA、手机等非PC装置。2.3 SQL 2000数据库2.3.1 SQL Server 2000SQL是英文Structured Query Language的缩写,意思为结构化查询语言。SQL语言的主要功能就是同各种数据库建立联系,进行沟通。按照ANSI(美国国家标准协会)的规定,SQL被作为关系型数据库管理系统的标准语言。SQL语句可以用来执行各种各样的操作,例如更新数据库中的数据,从数据库中提取数据等。绝大多数流行的关系型数据库管理系统,如Oracle,Sybase,Microsoft SQL Server,Access等都采用了SQL语言标准。虽然很多数据库都对SQL语句进行了再开发和扩展,但是包括Select,Insert,Update,Delete,Create,以及Drop在内的标准的SQL命令仍然可以被用来完成几乎所有的数据库操作。SQL Server是一个关系数据库管理系统。它最初是由Microsoft、Sybase和Ashton-Tate三家公司共同开发的,于1988年推出了第一个OS/2版本。在Windows NT 推出后,Microsoft与Sybase在SQL Server的开发上就分道扬镳了,Microsoft将SQL Server移植到Windows NT系统上,专注于开发推广SQL Server的Windows NT版本。Sybase则较专注于SQL Server在UNIX操作系统上的应用。SQL Server 2000是Microsoft公司推出的SQL Server数据库管理系统,该版本继承了SQL Server 7.0版本的优点,同时又比它增加了许多更先进的功能。具有使用方便可伸缩性好与相关软件集成程度高等优点,可跨越从运行Microsoft Windows 98的膝上型电脑到运行Microsoft Windows 2000的大型多处理器的服务器等多种平台使用。数据库中存储着大量的、重要的数据。很多电子商务网站、企业内部信息化平台等都是基于SQL Server 2000上的, 但是数据库通常没有像操作系统和网络那样在安全性上受到足够的重视,多数管理员认为只要把网络和操作系统的安全搞好了,那么所有的应用程序也就安全了4。一些安全公司也忽略数据库安全,这就使数据库的安全问题更加严峻了。数据库系统中存在的安全漏洞和不当的配置通常会造成极大的损失, 而且这些严重的后果都难以预料和发现。SQL Server 2000 数据库又是属于“端口”型的数据库,这就表示任何人都能够用分析工具试图连接到数据库上,从而绕过操作系统的安全机制,进而闯入系统、破坏和窃取数据资料,甚至破坏整个系统。数据完整性和合法存取会受到很多方面的安全威胁,包括密码策略、系统后门、数据库操作以及本身的安全方案。因此,对于数据库系统来说,安全性是非常重要的。2.3.2 SQL Server 代理SQL Server Agent也叫SQL Server代理,以前称为SQL执行者,这是SQL Server的任务日程表。这种服务主要是用于在设定的时间备份、复制数据,以及在自动执行调试表上设置的其他项目。启动这个服务后,设定好在什么时候做什么事,这个服务会让它自动运行,不需要人工干预。SQL Server Agent是一个任务规划器和警报管理器,在实际应用环境下,用户可以将那些周期性的活动定义成一个任务,而让其在SQL Server Agent的帮助下自动运行,比如管理员可以利用SQL Server Agent向用户通知一些警告信息,来定位出现的问题从而提高管理效率5。1配置代理服务用户可以通过“企业管理器”对代理服务进行配置,但必须重新启动SQL Server代理服务后,才能使这些更改的内容生效。2启动代理服务SQL Server代理是允许用户自动执行某些管理任务的服务,所以SQL Server代理必须SQL Server代理服务,才能使本地或多服务器的管理任务自动运行。SQL Server代理程序若是默认实例,则以名为“SQL Server Agent”的服务运行;若是命名实例则以名为SQLAgent$instancename的服务运行。3 需求分析与设计3.1 用户需求分析房屋中介管理系统从总体上把握系统的设计,在具体的设计实现上围绕着两个方面的需求展开,即用户和业务人员。用户的需求:(1)办理所需的业务时,流程尽可能简单,不要太过繁琐。(2)个人信息要保密,未经允许的情况下禁止向他人透露。业务人员的需求:(1)对数据的设置要符合常理,如:身份证号为18位,手机号码为11位等;要多方面考虑,确定数据属性,方便日后管理与操作;对于已经存在的员工或者用户的信息,不可重复录入。(2)尽量精简业务流程,去掉不必要的操作,可以更直观、更便捷地获得所需数据,提高工作效率。经过分析,房屋中介管理系统应该实现以下主要功能:(1)支持多重查询,允许业务人员按需求组合查询,快速、有效地让业务人员获得所需数据。(2)确保实时记录,在修改重要信息时,及时记录修改人与修改时间,尽量减少死数据,方便日后检查与管理。(3)自动定点检索,定时修改不符合条件的信息,避免由于信息的未及时更新而导致的失误。(4)可视化的界面,另操作更加直观、易懂。3.2 可行性分析此阶段通过对系统目标的初步调研和分析,提出可行性方案并进行论证。主要从技术可行性、经济可行性和操作可行性等方面进行分析。(1)技术可行性技术可行性要考虑现有的技术条件是否能够顺利完成开发工作,软硬件配置是否满足开发的需求等。此管理系统采用C#开发语言,并且Visual Studio 2010开发平台早已成熟,采用C# 4.0+SQL 2000体系,已无技术上的问题,因此技术上绝对可行。(2)运行可行性运行可行性是对组织结构的影响,现有人员、机构和环境对系统的适应性以及人员培训的可行性。当前信息化技术已经相当普及,安装Visual Studio 2010时,自带有.NET Framewoke 4.0框架,同时经过培训,员工能够具备一定的水平,所以运行上是可行的。(3)经济可行性开发此系统所需的相关资料可以通过已存在的相关系统进行调查采集,也可通过图书资料获得,开发成本较低。而引入此系统后,与传统方式相比具有高效率、低成本的特点,节省人力和物力。所以经济上可行。(4)时间可行性从时间上看,两个月的时间里学习相关知识,并开发系统,尽管时间上有点紧,但确实可行,通过两个月的努力可以基本实现所有功能。(5)法律可行性 所有技术资料均合法。 开发过程中不存在知识产权问题。 未抄袭任何管理系统,不存在侵犯版权问题。 开发过程中未涉及任何法律责任。综上所述,此系统的开发从技术上、经济上、法律上等都是完全可靠的。3.3 设计思路充分利用现有的资料与网络,应用C#面向对象语言,开发房屋中介管理系统的目的在于解决租房难问题,为租房提供一种交互、开放、易用的环境,为开发应用房屋中介提供丰富高效的技术手段及其软件工具。围绕这个目标,应用平台的开发设计必须突出坚持技术手段为主的主体性要求;既要立足当今先进技术,又要考虑未来技术发展的前瞻性要求;最大限度地适应于各种软硬件环境,兼顾不同学科的教学特点,适用于不同水平用户群的通用性要求;以尽可能低廉的投入而获得尽可能高效的经济性要求。总体上采用C/S架构,房屋信息与员工、用户信息采取数据库统一存放和管理。用户到房屋中介发布出租房源信息或者求租,均由业务人员处理,若没有用户信息则需先进行注册;若有求租意向,由业务人员联系出租人,一起办理相关事宜,如:看房、签合同、付款等。3.4 业务流程图主要业务为雇佣员工、出租房屋、求租房屋。(1)房屋中介经营者对员工的管理,如图3-1所示。经营者通过招聘等方式找到下级经营者和员工,并与之签订雇佣合同。经营者雇佣工作雇佣合同经营者员工图3-1 雇佣员工流程图(2)用户出租房子,如图3-2所示。用户想要在房屋中介发布出租房子的信息,先要查找用户是否在系统中注册过,若系统中有用户信息,把房屋信息交给员工,录入系统并于用户相匹配;若系统中没有用户信息,先注册,填写个人信息,再将房屋信息交给员工录入系统,与用户相匹配。用户录入员工出租房子存在注册个人信息是房屋信息否图3-2 出租房屋流程图(3)用户求租房子,如图3-3所示。用户想要租房子,先将房屋信息交给员工查询,若确定租用,查询系统是否有此用户信息,若有则更改房屋信息与用户相匹配,若没有则先注册,提交个人信息后再更改房屋信息与用户相匹配;若不租用,结束。用户录入员工求租房子房屋信息员工查询租用否结束是存在注册个人信息否是房屋信息图3-3 求租房屋流程图3.5 系统结构化分析3.5.1 数据流程图数据流程是指数据在系统中产生、传输、加工处理、使用、存储的过程。数据流程分析是把数据在现行系统内部的流动抽象的独立起来,舍去了具体组织机构、信息载体、处理工具、物质、材料等,单从数据流动过程来考查实际业务的数据处理模式。数据流程与数据流程分析是今后建立数据库系统和设计功能模块处理过程的基础。数据流程图是描述系统逻辑模型的主要工具,它以少数几种符号综合地反映出信息在系统中的流动、存储和传递。在业务流程分析的基础上,对数据流进行分析,从数据流动过程考察了实际业务的数据处理模式。此系统的数据流图分为两层。(1)一层数据流图,如图3-4所示。业务员接受两种事务:出租房屋和求租房屋。两种事务均需要用户提供个人信息和房屋信息,处理出租房屋后将反馈记录给用户;处理求租房屋后与用户签订租房合同。用户信息业务员1接受事务事务出租房屋求租房屋2处理出租3处理求租用户房屋信息用户用户信息用户反馈记录租房合同图3-4 一层数据流图(2)出租房屋数据流图,如图3-5所示。验证用户是否存在,若存在则录入房屋信息,并将反馈记录给用户;若不存在则先录入用户信息,再录入房屋信息,并将反馈记录给用户。出租房屋用户信息2.1验证用户2.3录入房屋信息存在反馈记录房屋信息用户信息2.2录入用户信息房屋信息用户信息图3-5 出租房屋数据流图(3)求租房屋数据流图,如图3-6所示。验证用户是否存在,若存在则修改房屋信息,并与用户签订租房合同;若不存在则先录入用户信息,再修改房屋信息,并与用户签订租房合同。求租房屋用户信息3.1验证用户3.3修改房屋信息存在租房合同房屋信息用户信息3.2录入用户信息房屋信息用户信息图3-6 求租房屋数据流图3.5.2 功能模块图本系统能够实现房屋录入、房屋租用、业务统计、用户管理和员工管理等功能。(1)房屋管理:对房屋信息进行录入与修改,如:小区、幢/座、面积、楼层、装修等;更改房屋状态,未租、预定、已租;组合查询符合条件的房屋。(2)业务统计:某个时间段,房屋都进行了哪些操作;对于某套房屋,记录录入时间,更改时间,租用人等信息。(3)用户管理:添加用户资料,身份证号、手机号等相关信息,区分出租人与求租人。(4)员工管理:统计员工信息,学历、工资、住址等。本系统的功能模块划分,如图3-7:房屋中介管理系统房屋管理业务统计用户管理员工管理房屋查询房屋录入房屋租用出租人管理求租人管理图3-7 系统功能模块3.5.3 E-R图在结构化分析方法中,使用实体关系建模技术来建立数据模型。这种技术是在较高的抽象层次(概念层)上对数据库结构进行建模的流行技术。实体关系模型表示为可视化的实体关系图(Entity-Relationship Diagram,ERD),也称为ER图。图中仅包含三种相互关联的元素:数据对象(实体)、描述数据对象的属性及数据对象彼此间相互连接的关系。根据系统分析的结果,具体分析不同实体,描述不同实体之间的关系,得出各个实体的实体图和E-R图。(1)员工实体图,与员工实体相连的都是它的属性,如图3-8:员工姓名性别学历电话住址身份证号出生日期民族基本工资图3-8 员工实体图(2)用户实体图,与用户实体相连的都是它的属性,如图3-9:用户姓名性别电话E-mail固定电话出生日期身份证号行为编号图3-9 用户实体图(3)房屋实体图,与房屋实体相连的均是它的属性,如图3-10:房屋编号物业装修幢/座建筑面积啊出租者证件号建筑年限户型入住者证件号楼层朝向状态用途入住日期截止日期图3-10 房屋实体图(4)成交记录实体图,与成交记录实体相连的均是它的属性,如图3-11:成交记录负责人相关行为入住时间入住者证件号出租者证件号物业相关时间幢/座截止时间编号图3-11 成交记录实体图(5)各个实体之间的联系,如图3-12所示,因实体的属性过多,此E-R图中不添加各个实体的属性。员工同用户和房屋是一对多的关系,也就是说一位员工可以管理多个用户和多个房屋。同理,用户同房屋,以及房屋同成交记录均是一对多的关系。用户员工房屋成交记录管理拥有出租求租图3-12 系统E-R图3.6 数据库设计数据库设计是指对于一个给定的应用环境,构造最优的数据库模式,建立数据库及其应用系统,使之能够有效地存储数据,满足各种用户的应用需求(信息要求和处理要求)。在数据库领域内,常常把使用数据库的各类系统统称为数据库应用系统。数据库设计是建立数据库及其应用系统的技术,是信息系统开发和建议中的核心技术。由于数据库应用系统的复杂性,为了支持相关程序运行,数据库设计就变得异常复杂,因此最佳设计不可能一蹴而就,而只能是一种“反复探寻,逐步求精”的过程,也就是规划和结构化数据库中的数据对象以及这些数据对象之间关系的过程。系统关键数据表:(1)员工数据表:按顺序分别为身份证号、密码、姓名、性别、出生日期、住址、电话、民族、学历和基本工资。身份证号为主键,如表3-1:表3-1 员工数据表列名数据类型employee_cardIDvarcharemployee_passwordvarcharemployee_namevarcharemployee_sexvarcharemployee_birthdaydatetimeemployee_addressvarcharemployee_phonevarcharemployee_nationvarcharemployee_studyvarcharemployee_basepayvarchar(2)用户数据表:按顺序分别为编号、姓名、性别、出生日期、身份证号、E-mail、手机号、固定电话、行为。身份证号为主键,如表3-2:表3-2 用户数据表列名数据类型user_IDsintuser_namevarcharuser_sexvarcharuser_birthdaydatetimeuser_cardIDvarcharuser_emailvarcharuser_phonevarcharuser_gdPhonevarcharuser_actionint(3)房屋数据表:按顺序分别为编号、出租者证件号、入住者证件号、物业名称、建筑面积、建筑年限、户型、楼层、朝向、幢/座、用途、装修、状态、入住日期、截止日期。编号为主键,出租者证件号和入住者证件号均为外键,与用户表相关联,如表3-3:表3-3 房屋数据表列名数据类型house_IDinthire_cardIDvarcharhired_cardIDvarcharhouse_estateNamevarcharhouse_areainthouse_yearinthouse_typevarcharhouse_floorinthouse_directionvarcharhouse_namevarcharhouse_usevarcharhouse_fitmentvarcharhouse_statevarcharhouse_inHousedatetimehouse_deadLinedatetime(4)成交记录数据表:按顺序分别为编号、负责人、相关行为、相关时间、出租者证件号、入住者证件号、物业、幢/座、入住和截止日期。编号为主键,如表3-4:表3-4 成交记录数据表列名数据类型business_IDintbusiness_peoplevarcharbusiness_actionvarcharbusiness_timedatetimebusiness_hCardIDvarcharbusiness_hdCardIDvarcharbusiness_estateNamevarcharbusiness_namevarcharbusiness_inHousedatetimebusiness_deadLinedatetime4 系统实现4.1 登录界面双击应用程序后,首先出现的是登陆界面,如图4-1所示。系统自动添加数据库中存在的用户名,密码为身份证的后6位。单击注册,跳转到员工录入界面;单击登陆,检索数据库,看数据是否匹配,成功则跳转到主界面,失败则弹出错误信息;单击清空,将用户名与密码信息置为空。图4-1 登陆界面4.2 系统主界面成功登录后,跳转到系统主界面,如图4-2所示。顶端为菜单栏,显示所有具体功能;中间4个按钮为快捷方式,鼠标进入和离开这4个按钮区域有特效,单击跳转到相应界面。最下面显示当前登录员工与当前系统时间。图4-2 系统主界面显示当前用户与当前系统时间:public string strName;/传递登录用户public frmMain()InitializeComponent();private void frmMain_Load(object sender, EventArgs e)this.tslLoginName.Text = strName;timer1.Enabled = true;timer1.Interval = 1000;timer1_Tick(sender, e);/Timer组件的Tick事件this.button1.FlatAppearance.BorderSize = 0;this.button2.FlatAppearance.BorderSize = 0;this.button3.FlatAppearance.BorderSize = 0;this.button4.FlatAppearance.BorderSize = 0;private void timer1_Tick(object sender, EventArgs e)tslNowTime.Text = DateTime.Now.ToString();/获取系统当前时间4.3 房源信息包括录入房源信息、房源信息设置、查询房源信息。通过这三个功能可以实现对房屋信息的增加、删除、更新和查询。4.3.1 录入房源信息如图4-3所示。出租者证件号就是身份证号,应为18位;带“*”的信息为必填项;录入时,房屋状态仅有未租,入住日期与截止日期应保持一致;房源录入成功后,会自动生成一条数据保存录入时间与员工姓名。图4-3 录入房源信息若单击录入时,带“*”的信息有未填情况,则如图4-4:图4-4 信息限制若证件号填写不足18位,会有错误警告,如图4-5:图4-5 信息错误提示4.3.2 房源信息设置如图4-6所示。按出租者证件号查询,得到出租者所出租的房屋信息;按入住者证件号查询,得到入住者所租住的房屋信息;查询后,单击会选中整条信息,将对应的信息全部填充到下面具体内容里;可在此界面进行房屋信息修改和删除操作。图4-6 房源信息设置按出租者证件号查询,并将查到的信息填充到下面,如图4-7:图4-7 信息填充将房屋状态改为预订时,入住日期与到期日期影响差5天;将房屋状态改为已租时,入住日期与到期日期影响差至少30天;若房屋状态发生改变,会自动生成一条数据保存改变时间、员工姓名,以及改变操作的行为。如图4-8、图4-9:图4-8 预定限制条件图4-9 已租限制条件更新或者删除时,若信息符合要求,均会有提示是否更新或者删除,如图4-10:图4-10 删除提示4.3.3 查询房源信息允许组合查询。当选中某类信息时,前面会出现对号,并显示后面的隐藏信息;若未选中信息,则不显示隐藏信息;物业名称自动从数据库中添加;房屋状态一直为选中状态。图4-11为按条件查询后的结果。图4-11 查询房源信息4.4 用户信息包括录入出租人信息、录入求租人信息、用户信息管理。通过这三个功能可以实现对用户的全面管理。4.4.1 录入出租人信息如图4-12所示。带“*”为必填项;手机号应为11位,身份证号应为18位;行为里仅有“0”,用来标识用户为出租者。图4-12 出租者信息若手机号与身份证号其中有一个不正确,则界面上方会出现红色提示,并且均会有错误警告。如图4-13:图4-13 信息限制当出现信息错误后,界面会停留,直到信息全部正确后,单击录入,提示录入成功,如图4-14:图4-14 录入成功4.4.2 录入求租人信息如图4-15所示。带“*”为必填项;手机号应为11位,身份证号应为18位;行为里仅有“1”,用来标识用户为求租者。图4-15 求租者信息4.4.3 用户信息管理如图4-16所示。弹出窗体后,单击出租人或者求租人,可以查看所有注册过的用户信息;输入身份证号进行查询,查询后,单击某条信息,会将这条信息的所有数据填充到下方,进而可以修改和删除。图4-16 用户信息管理查询后,若此用户为出租者则会在出租人里显示,若为求租者则会在求租人里显示,如图4-17:图4-17 查询用户信息4.5 员工信息包括录入员工信息、员工信息管理。这两个功能可以实现对员工的全面管理。4.5.1 录入员工信息如图4-18所示。带“*”的为必填项,手机号应为11位,身份证号应为18位。图4-18 录入员工信息4.5.2 员工信息管理如图4-19所示。按身份证号进行查询,查询后,单击某条数据,将会把这条数据的全部信息填充到下方;修改下方的数据进行更新或者删除。图4-19 员工信息管理4.6 业务统计包括成交记录、房屋期限。记录所有房屋从录入开始后的所有操作,均有负责人和相关操作的时间,方便以后的整理和统计。4.6.1 成交记录如图4-20、图4-21所示。可按时间段或者具体房屋进行统计;按时间段查询,将会显示这个时间段内对房屋的所有操作,如:负责人、最近修改时间、具体操作等。图4-20 成交记录(时间段)图4-21 成交记录(房屋)按房屋查询,将会显示此房屋从录入开始,所有的更改。显示信息有:负责人、具体操作、操作时间等。如图4-22:图4-22 房屋记录4.6.2 房屋期限如图4-23所示。界面中有三个单选按钮,每次仅能选中一个;选中后会显示房屋状态为选中内容的所有房屋信息,并统计个数;若期限未到,则会显示剩余时间;若时间超过规定期限,则自动将时间信息更新为已过期。图4-23显示的是预定状态的房屋信息,从图中截止时间可以看出,此房屋早就到期。图4-23 房屋期限图4-24显示的是已租状态的房屋信息,未到期,剩余时间是具体的时间值。图4-24 房屋期限如何计算时间差(预定时间为5天):trydataGridView1.Visible = true;cmd1 = new SqlCommand(select house_udTime from db_HA_house where house_state=预定,con.conn);cmd1.Connection.Open();SqlDataReader sdr = cmd1.ExecuteReader();while (sdr.Read()/若有多个预定房屋,循环执行DateTime dt1 = Convert.ToDateTime(sdrhouse_udTime.ToString(); DateTime dt2 = DateTime.Now; ts2 = dt2 - dt1;/用现在的时间减去最近更新时间,得到已过时间 ts3 = new TimeSpan(5,0,0,0);ts = ts3.Subtract(ts2);/用5减去这个时间差,得到剩余时间if (ts.TotalSeconds 0.0)cmd2 = new SqlCommand(update db_HA_house set house_time=预定时间已过 where house_udTime = + sdrhouse_udTime + , con1.conn); else string str = ts.Days.ToString() + 天 + ts.Hours.ToString() + 小时 + ts.Minutes.ToString() + 分

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论