房屋租凭管理毕业论文.doc_第1页
房屋租凭管理毕业论文.doc_第2页
房屋租凭管理毕业论文.doc_第3页
房屋租凭管理毕业论文.doc_第4页
房屋租凭管理毕业论文.doc_第5页
已阅读5页,还剩41页未读 继续免费阅读

下载本文档

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

文档简介

湖州职业技术学院计算机类专业毕业设计(论文)题目 紫园物业房屋出租管理系统 专业班级 青鸟0801班 学 号 08361160 姓 名 陈 峰 指导教师 谭 锋 2010年12月12日摘 要随着信息化建设的逐步深入,如何利用现有的计算机技术建立一套高效、灵活、功能强大的管理系统,正成为计算机专业人员关注的重要问题。信息化进程不断推进,使得其更加逐步地渗透到了普通人的生活领域。紫园物业房屋出租管理系统是为紫园物业有限公司管理房屋出租、出租信息资料等而设计的信息管理系统,包括有后台数据库和前台应用程序系统两大部分,后台数据库要求数据的一致性和完整性、安全性,用以系统管理文档资料及相关信息,前台应用程序系统要求功能完备、易于使用和界面友好等。本系统开发基于ASP.NET平台的B/S模式的三层框架模式,采用Microsoft公司的Microsoft Visual Studio 2008 Team Suite(以下简称VS2008)集成环境对系统进行开发。利用其强大的可视化界面功能及对数据库的支持,先构造一个原型,逐步增加功能,最终满足需求。系统中大量采用SQL查询语句,方便数据库中数据的处理过程,包括输入、处理输出。三层框架模式即数据访问层、业务逻辑层以及表示层。本系统使用SQL Server 2005数据库实现了面向对象方法。关键词:房屋出租;ASP.NET;B/S模式;SQL Server 2005数据库目 录1.引言11.1 课题背景和意义11.2 设计主要解决的问题12. 相应开发技术22.1 SQL语言22.1.1 简介22.1.2 功能介绍22.2 .NET数据库访问技术22.2.1 ASP.NET技术22.2.2 B/S结构与C/S结构33. 需求分析53.1 系统功能性需求53.2 系统非功能性需求63.2.1 用户界面需求63.2.2软硬件环境需求63.2.3产品质量需求63.3 数据库需求73.3.1 数据库分析73.3.2 数据库管理74. 系统设计84.1 系统结构设计84.1.1 系统架构设计84.1.2 功能模块划分94.1.3 开发与运行环境114.2 系统功能设计114.2.1 前台功能设计114.2.2 后台功能设计144.3 数据库设计194.3.1 业务实体类分析194.3.2 数据库表设计215. 系统实现255.1 访问数据库255.2 登录265.3 信息管理275.3.1 游客留言及回复275.3.2 用户管理275.3.3 出租房屋管理285.3.4 出租记录管理315.3.5租金记录管理325.3.6紫园动态管理325.3.7历史风景管理325.4 前台显示336. 系统测试与发布356.1 系统测试356.1.1 测试目的356.1.2 测试内容356.2 系统发布356.2.1 发布网站356.2.2 配置IIS36结束语37致谢38参考文献39附录401. 引言1.1 课题背景和意义随着互联网技术的迅猛发展,越来越多的商业活动都从传统的现实社会中发展到了网络上。房屋的出租业务也从现实生活中走上了网络空间。伴随着这类业务的开展,如何对出租房屋进行高效,合理的管理这个问题越来越凸现出来。针对这一需求,本文设计并实现了一套基于Web的房屋出租管理系统,力求能简洁高效地解决房屋出租管理方面的问题。本系统采用B/S模式,基于ASP.net平台开发,后台数据库采用SQL Server2005,WEB服务器采用IIS 5.0。系统主要由以下几个模块组成:数据发布模块,数据查询模块,数据管理模块,身份验证模块,系统管理模块。系统实现了用户登录,信息发布,信息修改,房屋相关信息设置,信息查询,用户留言,管理员回复,管理员发布公告等功能。使用本系统,客户端用户只需要通过浏览器访问就可以实现对房屋出租信息管理的操作。1.2 设计主要解决的问题采用企业现有的软硬件环境及科学的管理系统开发方案,建立房屋租赁信息管理系统,实现房屋租赁信息管理的计算机自动化。 系统应符合物业管理企业原有的房屋租赁管理制度,并达到操作直观、方便、实用、安全等要求。当前,很多物业管理企业的房屋租赁信息管理都是以纸张为介质作记录,人力管理的比例比较大,往往是各个主要负责人以书面的形式管理房屋租赁信息,效率低,数据打印、汇总和更新不及时,容易丢失,不易保存且保密性较差。本系统针对以上问题进行分析开发,力求尽量的简洁实用地解决房屋出租管理方面的问题。2. 相应开发技术2.1 SQL语言2.1.1 简介 SQL是高级的非过程化编程语言,允许用户在高层数据结构上工作。它不要求用户指定对数据的存放方法,也不需要用户了解具体的数据存放方式,所以具有完全不同底层结构的不同数据库系统,可以使用相同的SQL语言作为数据输入与管理的接口。它以记录集合作为操作对象,所有SQL语句接受集合作为输入,返回集合作为输出,这种集合特性允许一条SQL语句的输出作为另一条SQL语句的输入,所以SQL语句可以嵌套,这使他具有极大的灵活性和强大的功能,在多数情况下,在其他语言中需要一大段程序实现的功能只需要一个SQL语句就可以达到目的,这也意味着用SQL语言可以写出非常复杂的语句。2.1.2 功能介绍SQL 面向数据库执行查询;SQL 可从数据库取回数据;SQL 可在数据库中插入新的记录;SQL 可更新数据库中的数据;SQL 可从数据库删除记录;SQL 可创建新数据库;SQL 可在数据库中创建新表;SQL 可在数据库中创建存储过程;SQL 可在数据库中创建视图;SQL 可以设置表、存储过程和视图的权限。2.2 .NET数据库访问技术2.2.1 ASP.NET技术ASP全称Active Server Pages,中文叫做动态服务器网页,是一种开发动态网页的技术,它既小是一种编程语言,也小是一种开发土具软件,同样也小是一种应用程序,它是定义服务器端动态网页的开发模型因。利用它可以产生动态的、高性能的Web服务应用程序。ASP开发的网络数据库体系结构是三层B/S浏览器/服务器)模式体系结构,其人机交互简单、直观,系统的开放性好,用户可以通过Internet或局域网就可以访问数据库。它通过在静态HTML,内容中嵌入服务器脚木,实现网页内容的动态改变。ASP赖以运行的基础是Windows Web服务器IIS或PWS使用的编程语言是脚本语言(C#和JavaScript)。ASP是在IIS下开发WEB应用的一种简单、方便的编程工具。在了解了C#的基本语法后,只需要清楚各个组件的用途、属性、方法,就可以轻松编写出自己的ASP系统。2.2.2 B/S结构与C/S结构B/S结构:(Browser/Server结构)即浏览器/服务器结构。它是随着Internet技术的兴起,对C/S结构的一种变化或者改进的结构。在这种结构下,用户工作界面是通过WWW浏览器来实现,极少部分事务逻辑在前端(Browser)实现,但是主要事务逻辑在服务器端(Server)实现,形成所谓三层3-tier结构。这样就大大简化了客户端电脑载荷,减轻了系统维护与升级的成本和工作量,降低了用户的总体成本(TCO)。以目前的技术看,局域网建立B/S结构的网络应用,并通过Internet/Intranet模式下数据库应用,相对易于把握、成本也是较低的。它是一次性到位的开发,能实现不同的人员,从不同的地点,以不同的接入方式(比如LAN, WAN, Internet/Intranet等)访问和操作共同的数据库;它能有效地保护数据平台和管理访问权限,服务器数据库也很安全。在JAVA这样的跨平台语言出现之后,B/S架构管理软件更是方便、快捷、高效。B/S结构最大的优点就是可以在任何地方进行操作而不用安装任何专门的软件。只要有一台能上网的电脑就能使用,客户端零维护。系统的扩展非常容易,只要能上网,再由系统管理员分配一个用户名和密码,就可以使用了。甚至可以在线申请,通过公司内部的安全认证(如证书)后,不需要人的参与,系统可以自动分配给用户一个账号进入系统。从以上的分析可以看出,B/S结构的管理软件有着C/S结构软件无法比拟的优势。而从国外的发展趋势来看,也验证了这一点。目前,国外大型企业管理软件要么已经是B/S结构的,要么正在经历从C/S到B/S结构的转变。从国内诸多软件厂商积极投入开发B/S结构软件的趋势来看,B/S结构的大型管理软件势必在将来的几年内占据管理软件领域的主导地位。C/S结构:(Client/Server结构)即客户/服务器模式。服务器通常采用高性能的PC、工作站或小型机,并采用大型数据库系统,如Oracle、Sybase、Informix或SQLServer。客户端需要安装专用的客户端软件。C/S模式的优点是客户端实现与服务器的直接相连,没有中间环节,因此响应速度快。客户操作界面设计个性化,具有直观、简单、方便的特点,可以满足客户个性化的操作要求。同时由于开发是针对性的,因此,操作界面漂亮、形式多样,可以充分满足客户自身的个性化要求。缺点是缺少通用性,业务变更或改变不够灵活,需要重新设计和开发,增加了维护和管理的难度,进一步的业务拓展困难较多;兼容性差,升级比较麻烦。通过比较两个开发模式的特点,结合房屋出租业务特点和对公司现状的调研,可以看出用B/S模式开发系统更合适。3. 需求分析3.1 系统功能性需求 本房屋出租管理系统是一个房产销售商对房屋出租业务流程进行全面管理的一个信息管理系统。首先要解决传统的管理方法容易造成档案资料的遗失,控制不集中,管理不规范等问题。并需要经常发布一些通告,方便让需求者及时的了解本物业的相关信息,同时本系统还根据不同角色登录不同权限的页面” 。在经过对紫园物业有限公司的房屋出租管理业务进行考查后,进行了功能需求分析,并借鉴参考一些房屋出租管理网站后,系统功能根据用户角色不同划分如下:(1)超级管理员需求分析l 能够增、删、改、查普通管理员信息l 具有普通管理员的所有功能(2)普通管理员需求分析l 能够增、删、改、查房屋信息l 能够进行房屋出租业务操作,包括出租登录、收缴房租、房屋退租等l 能够按日期、房号、租房用户姓名查询房屋出租记录l 能够增、删、改、查通知信息l 能够查询、删除、回复游客留言l 能够查看和修改个人资料(如密码等)(3)租户需求分析l 能够查看和修改个人资料l 能够查看自己的房租记录l 能够缴纳房屋l 具有游客的所有功能(4)游客需求分析l 能够查看最新发布通知l 能够查看房屋出租信息l 能够对系统的工作提出建议及留言3.2 系统非功能性需求3.2.1 用户界面需求紫园物业房屋出租管理系统包括有后台数据库和前台应用程序系统两大部分,后台数据库要求数据的一致性和完整性、安全性,用以系统管理文档资料及相关信息,前台应用程序系统要求功能完备、易于使用和界面友好等。3.2.2 软硬件环境需求1.硬件环境(1) CPU:Duo T6400 2.0GHz;(2) 内存:2.0G内存;(3) 硬盘:160G.。2.软件环境(1) 操作系统:Windows XP 操作系统;(2) 数据库:SQL Server 2005;(3) 开发工具包:Microsoft Visual Studio 2008 Team Suite;(4) 开发语言:C#、ASP.NET;(5) 浏览器:IE 7.0。3.2.3 产品质量需求软件的质量通常可以从以下六个方面去衡量(定义): 功用性(Functionality),即软件是否满足了客户功能要求;可靠性(Reliability),即软件是否能够-直在-个稳定的状态上满足可用性;可用性(Usability),即衡量用户能够使用软件需要多大的努力;效率(Efficiency),即衡量软件正常运行需要耗费多少物理资源;可维护性(Maintainability),即衡量对已经完成的软件进行调整需要多大的努力;可移植性(Portability),即衡量软件是否能够方便地部署到不同的运行环境中。可见,同其它产品相比,软件产品的质量有其明显的特殊性。3.3 数据库需求3.3.1 数据库分析数据库分析是数据库设计的第一阶段也是很重要的一个阶段,它是收集基本数据以及数据处理的流程,为以后进一步设计打下基础,分析主要解决两个问题:处理要求,弄清应用系统用户需求对数据库进行什么样的处理,及数据库中各种数据之间的关系;内容要求:弄清应用系统用户所需要操作的数据,决定在数据库中存储什么数据。在数据库需求分析后,应该得到一个数据字典文档,包括3个方面的内容:数据项:包括名称、含义、类型、取值范围、长度以及和其它数据项之间的逻辑关系。 数据结构:若干数据项的有意义的集合,包括名称、含义以及组成数据结构的数据项 数据流:指数据库中数据的处理过程,包括输入、处理、输出。3.3.2 数据库管理本系统根据以上的设计分析,用户可以根据不同的角色登录后台界面实现各自的功能,超级管理员可以通过选择“用户信息管理”来增加,删除,修改,查询用户信息,同时具有普通管理员所有的功能,普通管理员能够增、删、改、查房屋信息,能够进行房屋出租业务操作,包括出租登录、收缴房租、房屋退租等,能够按日期、房号、租房用户姓名查询房屋出租记录,能够增、删、改、查通知信息,能够查询、删除、回复游客留言,能够查看和修改个人资料(如密码等),租户能够查看所有的出租房屋,能够查看出租房屋记录信息,能够查看租金记录信息,能够缴付租金,可以回复游客留言,并具有游客的所有功能,游客能够查看最新发布公告,能够查看未出租房屋的出租信息,能够对系统的工作提出建议及留言。4. 系统设计4.1 系统结构设计4.1.1 系统架构设计 表示层 业务逻辑层 数据访问层 数据库业务实体类 RentalModels用户界面RentalRentalBLLRentalDAL图4.1 系统的三层结构整个系统分为业务实体类、数据访问层、业务逻辑层和表示层。表示层(RentalManage):表示层层为客户端浏览器提供对应用程序的访问,为用户提供一种交互式操作的界面。这一层是作为解决方案文件中的Web项目实现的,是一个ASP.NET Web应用程序项目。如果逻辑层相当强大和完善,无论表现层如何定义和更改,逻辑层都能完善地提供服务。业务逻辑层(RentalBLL):包含各种业务规则和逻辑的实现,主要负责数据处理及在表示层与数据访问层之间传递数据,它处于数据访问层与表示层中间,起到了数据交换中承上启下的作用。该层由一个类库项目实现。数据访问层(RentalDAL):也称为是持久层,它为业务层提供数据服务,主要负责对数据库中的数据进行访问操作。该层与业务逻辑层一样也由一个类库项目实现。业务实体类 (RentalModels):包含了与数据表对应的实体类,这些实体类的对象,用于作为数据的载体,在三层之间传递数据。4.1.2 功能模块划分根据之前对紫园物业房屋出租管理系统的分析,可将其划分为前台和后台两个部分,前台功能主要是针对该物业系统的宣传,游客浏览提供;后台数据为管理员及租户提供访问。网站的主要功能和模块可划分如下:前台功能:游客可以通过浏览网站,根据房屋面积,价格,类型来查询空置房屋信息,可以对本网站提出意见及建议。后台功能:1)用户信息模块:超级管理员可以增加、删除、修改、查看用户,普通管理员只能可以修改个人资料2)出租房屋信息模块:管理员可以增加、删除、修改、查询出租的房屋,租客只能查询房屋3)出租记录模块:管理员可以增加、删除、修改、查询出租记录,租客只能查看出租记录4)租金记录模块:管理员可以增加、删除、修改、查询租金记录,租客可以查看租金记录并缴纳房租5)留言及回复模块:管理员,租客都可以查看留言,对留言进行回复6)历史风景模块:管理员可以增加、删除、修改、查询风景信息7)系统动态模块:管理员可以增加、删除、修改、查询动态信息通过以上分析,分别从系统管理员、普通管理员、注册用户和游客角度来看,功能模块划分如图4.2所示。图4.2 房屋出租管理系统功能模块图示4.1.3 开发与运行环境l 系统开发环境n 开发工具:Microsoft Visual Studio 2008 Team Suiten 开发语言:ASP.NETn 数据库管理系统软件:Microsoft SQL Server 2005中文开发版n 操作系统:Windows XP professionall 系统运行环境:n 操作系统:Windows XP / Windows 2000 / Windows Server 2003n 基础支撑:Microsoft.NET Framework 2.0n 数据库管理系统软件:Microsoft SQL Server 2005中文开发版n 显示器分辨率:最佳效果10247684.2 系统功能设计4.2.1 前台功能设计紫园物业房屋出租管理系统的前台界面主要提供给广大游客对本系统的访问,为展示公司形象、扩大知名度、方便求租用户查询的需要。网站采用了多个动态模块,相关管理人员能够自主、独立的完成网站中大多数内容的更新。同时,设计以展示公司形象、租户居住环境为主,主要体现公司网站的整体美感。增强了物业在访问者心中的亲和力认知度,使紫园物业房屋出租为更多的租户所瞩目。(1) 前台首页设计前台首页如图4.3显示,主要集中网站提供给游客的浏览的信息。图4.3 前台首页(2)鉴赏紫园页面设计 鉴赏紫园页面如图4.4显示,游客可以根据出租房屋价格、面积的范围及类型进行查询。图4.4 鉴赏紫园页面(3)紫园动态页面设计 如图4.5显示,紫园动态主要是为了让来访者能够浏览紫园最新发布的消息。图4.5 紫园动态页面(4)游客留言页面设计 游客留言如图4.6显示,为了让广大来访者及租户对本网站及本物业提出建议或意见搭建的平台。图4.6 游客留言页面(5)紫园物业和联系我们页面设计紫园物业页面大致的让居住者对该物业的了解,从中使得广大租户对选择紫园的放心和满意。联系我们页面提供给需要帮助的广大群众,让世界知道我们的热情。(6)梅城古今页面设计如图4.7显示,梅城古今页面主要描述了在紫园居住的外围环境,让居住者对当地的历史、风景、风俗有个简单的了解。图4.7 梅城历史页面4.2.2 后台功能设计本系统后台数据管理界面主要提供给管理员管理后台数据,租户也可以登录查询出租记录及租金记录并且可以缴纳租金及水电费。(1)后台登陆界面用户输入用户名和密码,系统根据用户输入的用户名字和用户的密码,到数据库中去查询所有用户的信息,如果没有该用户信息,则该用户不能登录,系统仅限管理员及租户登录,不进行注册。如果有该相应的该用户的信息,则能成功登录,此时判断用户身份,不同身份的用户具有不同的操作,登录后则转到不同的后台工作界面。图4.8 登陆界面判断开 始输入用户名和密码判断用户名和密码是否正确错误提示否退出成功登录前台界面前台首页是图4-9登录判断流程图(2)后台母版界面后台母版页采用VS2008强大的可视化界面设计,左边树形菜单使用导航控件TreeView 、XML文件设计制作完成,内容页横向显示采用面包屑控件SiteMapPath设计完成。其中,TreeView导航控件绑定XmlDataSource导航控件后必须编辑TreeNode到数据源的绑定。控件类型控件标识属性设置说明TreeViewTreeView1DataSourceID:xdsMenuDataBindings: xmlAdmin/xmlCustomer/xmlUser树形导航XmlDataSourcexdsMenuDataFile:/App_Data/XMlAdmin.xmlXML数据源控件SiteMapPathsmpRoom面包屑控件表4.1 后台母版页控件属性图4.10 后台母版界面如图4.10母版页中使用的控件属性说明如表4.1所示(3)用户管理界面在本系统中只有超级管理员才能进入用户管理界面,可以添加、删除、修改用户信息。图4.11 用户管理界面(4)出租房屋管理界面如图4.12显示,管理员可以对出租的房屋进行添加、删除、修改、查询功能图4.12 出租房屋管理界面(5)房屋出租记录管理界面如图4.13界面的设计可以方便管理员对房屋出租记录的管理,租户只允许查看记录。图4.13 房屋出租记录管理界面(6)房租记录管理界面该界面的设计实现租户对自己的房租的支付,同时也方便管理员对租户租金的收取及记录管理。图4.14为房租详情界面,用户在此缴费,若金额不足,则缴费失败。图4.14 房租详情界面(7)公告管理界面公告管理是对物业最新信息的发布,访客可以在前台页面中查看到。(8)历史管理界面设计该界面主要让大家了解自己居住所在地方的历史、风景、风俗,同样为了提高紫园的知名度。(9)留言管理界面在前台中,对本网站浏览的访客可以提出建议及意见,所以在后台管理员有一个对流言回复的平台。如图4.15显示效果。图4.15 回复流言界面4.3 数据库设计4.3.1 业务实体类分析经过对物业的调研和用户需要分析,本系统主要业务实体说明如下:l 用户管理:编号,帐号,密码,姓名,角色l 出租房屋:编号,房间号,房屋类型,面积,设施,月租金,状态l 出租记录:编号,租户姓名,性别,身份证号,电话,房屋编号,起始日期,租期(月),月租金,签订日期l 房租记录:出租记录编号,租户,用水量(立方),水费,用电量(度),电费,缴费月数,租金,收费日期,备注,是否缴费l 通知:编号,标题,内容,发布时间,发布者l 留言:编号,标题,作者,内容,日期l 回复:编号,留言编号,作者,内容,日期l 历史风景:编号,标题,图片,说明各个实体类及关系如下图所示:图4.16用户管理 图4.17出租房屋管理 图4.18出租记录 图4.19紫园动态 图4.20租金记录 图4.21游客留言 图4.22回复留言 图4.23历史风景实体关系图(E-R图): 图4.24实体关系图4.3.2 数据库表设计将数据库概念结构转化为Microsoft SQL Server 2005系统所支持的实际数据模型,也就是数据库的逻辑结构,该数据库建立12个数据表,详细如下: 表4.2 数据库(HousesManager)中的表序号表名描述1UserInfo用户信息表2RoomInfo出租房屋信息表3RentalInfo出租记录信息表4RentInfo房屋记录信息表5News新闻动态表6Messages游客留言表7Reply回复留言表8Scenery历史风景表9RoomState房屋状态表10RoomType房屋类型表11RoleInfo角色信息表12RentState缴费情况表表4.3 用户信息表(UserInfo)列名数据类型描述IdintID,自动标识,主键,必填UserNameNvarchar(20)账户,必填PasswordNvarchar(20)密码,必填RealNamenvarchar(20)真实姓名,必填RoleStateIntRoleInfo外键,必填Moneyfloat金额,必填表4.4 出租房屋信息表(RoomInfo)列名数据类型描述RoomIdintID, 自动标识,主键,必填Roomnvarchar(20)房间号,必填Areanvarchar(20)面积,必填Pricenvarchar(20)(月)租金,必填RoomStateintRoomState外键,必填RoomTypeintRoomType外键,必填Facilitiesnvarchar(500)房间设施,必填表4.5 出租记录信息表(RentalInfo)列名数据类型描述IdintId,主键,必填CustomerNvarchar(10)客户,必填sexNvarchar(10)性别,必填IDCardNoNarchar(18)身份证,必填TelephoneNarchar(20)电话,必填RoomIntRoomInfo外键,必填StarDatedatetime起租日期,必填LeaseNarchar(10)租期,必填RentNarchar(10)租金(月),必填SignDatedatetime签订日期,必填表4.6 房租记录信息表(RentInfo)列名数据类型描述IdIntID,自动标识,主键,必填RentalIntRentalInfo外键,必填Watermoney水费,必填WcubicFloat用水量(立方),必填Elecmoney电费(度),必填EdegreeFloat用电量(度),必填Rentmoney租金,必填StartDateDatetime起始日期,必填GetDateDatetime收取日期,必填RemarkNarchar(Max)备注,必填RentStateIntRentState外键,必填表4.7 新闻动态表(News)列名数据类型描述NewsIdintID,自动标识,主键,必填Titlenvarchar(20)新闻标题,必填Noticenvarchar(Max)内容,必填ReDateDatetime发布日期,必填RederNvrcahr(20)发布者,必填表4.8 游客留言表(Messages)列名数据类型描述IdIntID,自动标识,主键,必填VisitorNvarchar(20)游客,必填TitleNvarchar(50)标题,必填MeContentNvarchar(max)留言,必填ReDatedatetime留言日期,必填表4.9 回复留言表(Reply)列名数据类型描述IdIntID,自动标识,主键,必填MessageIntMessage的ID,外键,必填AuthorNvarchar(10)回复者,必填Recontentnvarchar(max)内容,必填ReDateDatatime回复日期,必填 表4.10 历史风景表(Scenery)列名数据类型描述IdIntID,自动标识,主键,必填Titlenvarchar(20)标题,必填SceneryImagevarchar(50)图片,必填ExplainNvarchar(max)介绍,必填表4.11 房屋状态表(RoomState)列名数据类型描述StateIdintID,自动标识,主键,必填StateNamenvarchar(20)房间状态,必填表4.12 房屋类型表(RoomType)列名数据类型描述TypeIdintID,自动标识,主键,必填TypeNamenvarchar(20)房间 类型,必填表4.13 角色信息表(RoleInfo)列名数据类型描述RoleIdIntID,自动标识,主键,必填RoleNameNvarchar(20)角色名称,必填RoleDescNvarchar(50)角色描述,必填表4.14 缴费情况表(RentState)列名数据类型描述Idint编号,自动标识,主键,必填PaymentVarchar(20)是否已缴,必填图4.1相关查询表的主外键关系如下5. 系统实现5.1 访问数据库DBHelper类提供了访问数据库所需的基本方法。可以在常规的数据库开发中加快速度和简化应用程序代码。DBHelper类中含有一个名称为Connection的属性,该属性是一个SqlConnection对象成员,用于建立与数据库的连接。连接数据库的程序代码如下:private static string conString = ConfigurationManager.ConnectionStringsHousesManager.ConnectionString;以上代码的作用是,从Web.config中的connectionStrings配置节点读取网站的数据库连接字符串信息,HousesManager代表的就是Web.config中的connectionStrings配置节点配置的链接字符串,Web.config中的connectionStrings配置节点代码如下:其中,CarConnectionString表示连接数据库的字符串名称;connectionString表示连接到数据库的字符串;Data Source表示需要连接到的数据库服务器(.表示本地服务);Initial Catalog表示连接的数据库;User ID表示登陆数据库的用户;password表示用户登录数据库的密码。DBHelper类还含有若干个用于实现数据增、删、改、查的方法,这些方法的介绍说明如下:l ExecuteCommand()方法:该方法的作用是执行SQL语句,主要用于执行delete、update、insert三种SQL语句,该方法调用后返回受影响的记录行数,该方法有两个重载形式,签名如下:public static int ExecuteCommand(string safeSql)public static int ExecuteCommand(string safeSql, params SqlParameter values)其中,safeSql是要执行的SQL语句;values为执行的SQL语句中的参数。l GetScalar()方法:该方法的作用是执行SQL语句,调用后返回执行结果集中首行首列的值,该方法有两个重载形式,签名如下:public static int GetScalar(string safeSql)public static int GetScalar(string safeSql, params SqlParameter values)其中,safeSql是要执行的SQL语句,values为执行的SQL语句中的参数。l GetReader()方法:该方法执行一个select类型的SQL语句,调用后返回SqlDataReader对象,该方法有两个重载形式,签名如下:public static SqlDataReader GetReader(string safeSql)public static SqlDataReader GetReader(string safeSql, params SqlParameter values)其中,safeSql是要执行的SQL语句,values为执行的SQL语句中的参数。l GetDataSet()方法:该方法的作用执行有参SQL语句,调用后返回DataTable对象,该方法有两个重载形式,签名如下:public static DataTable GetDataSet(string safeSql)public static DataTable GetDataSet(string safeSql, params SqlParameter values)其中,safeSql是要执行的SQL语句,values为执行的SQL语句中的参数。5.2 登录用户登录主要是通过对“session”变量赋值来实现用户的身份验证,确保非法用户不能进入操作页面进行非法操作。该网站允许三个不同角色的登录,不同角色都有相应的不同操作。通过登陆验证功能极大的提高了系统的安全性。在后台首页界面中,先判断是否用户是否登录,实现如下:UserInfo user = (UserInfo)Sessionuser; 当user!=null,再判断登录后的角色,若userRole=1,那么TreeView导航控件绑定XmlDataSource导航控件中XML文件为具有超级管理员功能的链接,代码实现:xdsMenu.DataFile = /App_Data/XMLAdmin.xml;当userRole=2,userRole=3时,则相应操作与上相似。5.3 信息管理5.3.1 游客留言及回复游客留言及回复是通过表单提交来实现的,当访客在填写留言页面写好了相关的留言信息后。选择提交留言,刚才的留言内容就通过表单传递到表单处理页面,通过表单处理页的程序功能就可以把留言内容插入到数据库的留言表中,同样在后台中管理员回复访客留言也是执行相同的操作。其中回复留言的操作,是将回复相对应的一条留言,而不是对所有留言进行回复。相关操作:先根据Id读出这条留言MessagesManager.GetMessagesById(id),然后在本页面对此留言进行回复ReplyManager.AddReply(ReplyMessage)。数据的保存代码在数据访问层实现:l AddReply ()方法:该方法的作用是实现回复留言信息的操作,其签名如下:public int AddReply(Reply reply)其中,Reply是回复留言实体类5.3.2 用户管理超级管理员对用户的管理也实现了增、删、改、查的方法,这些方法分别介绍如下:l AddUser ()方法:该方法的作用是实现添加用户信息的操作,其签名如下:public int AddUserInfo(UserInfo userInfo)其中,UserInfo是要添加的用户信息实体类l DeleteUserInfoById ()方法:该方法的作用是实现根据用户ID删除用户信息。其签名如下:public int DeleteUserInfoById(int Id)l Modify UserInfo ()方法:该方法的作用是更新用户相关信息,其签名如下public void Modify UserInfo (UserInfo userInfo)其中,UserInfo是要修改的房屋信息实体类。l GetAllUserInfo ()方法:该方法的作用是获取所有用户信息,其签名如下:public IList GetAllUserInfo ()l GetUserInfoById ()方法:该方法的作用是根据用户ID获取所有用户信息,返回包含UserInfo对象的泛型集合,其签名如下:public UserInfo GetUserInfoById(int Id)l GetUserInfoByUserRole ()方法:该方法的作用是根据用户角色获取此角色的用户信息,返回一个UserRole对象,其签名如下:public IList GetUserInfoByUserRole(int UserInfo)l GetUserInfoByUserName ()方法:该方法的作用是根据用户账号查询用户信息。其代码如下:public UserInfo GetUserInfoByUserName(string userName) string selSql = select * from UserInfo where UserName= + userName + ; IList list = GetUserInfoBySql(selSql); return list != null ? list0 : null; l GetUserInfoBySql ()方法:该方法的作用是根据SQL语句获得用户的信息,返回包含UserInfo对象的泛型集合,其签名如下:private IList Get UserInfo BySql(string selSql)其中selSql表示在获得用户信息时的Sql语句5.3.3 出租房屋管理 出租房屋的信息是由管理员发布,也是由管理员成功登录后台,通过表单提交,将数据传递到数据库中来实现。管理员对出租房屋实现有增、删、改、查的方法,这些方法分别介绍如下:l AddRoomInfo ()方法:该方法的作用是实现添加出租房屋信息的操作,其签名如下:public int AddRoomInfo(RoomInfo roomInfo)其中,RoomInfo是要添加的出租房屋实体类l DeleteRoomInfoByRoomId ()方法:该方法的作用是实现根据房屋ID删除出租房屋。其签名如下:public int DeleteRoomInfoByRoomId(int roomId)l Modify RoomInfo ()方法:该方法的作用是更新管理员相关信息,无返回值,其签名如下public void Modify RoomInfo (RoomInfo roomInfo)其中,RoomInfo是要修改的出租房屋实体类。l GetAllRoomInfo ()方法:该方法的作用是获取所有出租房屋信息,其签名如下:public IList GetAllRoomInfos()l GetRoomInfoByRoomId ()方法:该方法的作用是根据房屋ID获取所有出租房屋信息,返回包含RoomInfo对象

温馨提示

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

评论

0/150

提交评论