版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
page四川师范大学成都学院本科毕业设计四川师范大学本科毕业设计宾馆酒店预定系统的设计与实现学生姓名学号所在系计算机科学与技术系专业名称计算机科学与技术班级指导教师四川师范大学二○一二年五月四川师范大学本科毕业设计page31宾馆酒店预定系统设计学生: 指导老师:群内容摘要:宾馆酒店预定系统是典型的信息管理系统的一部分,主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面。本系统采用sqlserver2008作为后台数据库,visualstudio2008作为前台系统开发平台。利用vs提供的各种面向对象的开发工具,开发一个基于b/s体系结构的中小型宾馆酒店预定系统。后台实现了对酒店客房信息、用户账号、个人信息的管理以及实时查询酒店收入情况等功能,前台实现了为客户办理房间入住、退房手续并可添加vip用户等功能。本系统基本满足了酒店对客户管理的需求。关键词:宾馆酒店预定系统sqlserver2008visualstudio2008b/s
designforhotelmanagementsystemabstract:thehotelmanagementsystemisapartofthetypicalinformationmanagementsystem,whichmainlyincludesthesettingandmaintenanceofdatabaseandthedevelopingofthefrontendapplication.thissystemusessqlserver2008asthebackgrounddatabase,visualstudio2008asadevelopmentplatformofforegroundsystem.itusesallsortsofobject-orienteddevelopmenttoolswhichvsprovidesanddevelopsasmallandmedium-sizedhotelmanagementsystembasedonb/sarchitecture.thebackgroundofthehotelmainlyrealizedthefunctionsofthemanagementofthehotelroomsinformation,useraccountsandpersonalinformationandrealtimeinquiryoftheincomewhilefrontdeskdealwithroomoccupancyandcheckoutforclientsandcanaddvipusers.thesystemsatisfytheinquiryofthecustomermanagementbasically.keywords:hotelmanagementsystemsqlserver2008vs2008b/s
目录1绪论 11.1开发背景 11.2系统目标 12系统解决方案 22.2sqlserver2008简介 22.3程序运行环境 33系统分析 33.1系统可行性分析 33.1.1经济可行性分析 33.1.2技术可行性分析 33.1.3法律可行性分析 33.2系统需求分析 44系统设计 44.1系统模块设计 44.2系统结构图 44.3系统功能图 55数据库设计 55.1e-r模型 55.2数据库的具体实现 76系统主要/关键技术说明 96.1公共模块 96.1.1实现与数据库连接 96.1.2配置相关文件 96.1.3登陆模块 136.2系统模块 156.2.1管理员模块 156.2.2房间信息模块 156.2.3房间设施模块 176.2.4用户信息模块 176.2.5营业状况模块 206.2.6个人信息模块 226.3前台模块 226.3.1房间状态模块 226.3.2vip用户模块 266.3.3人个信息模块 277软件测试 277.1软件测试的必要性 277.2测试 287.2.1模块测试 287.2.2子系统测试 287.2.3系统测试 287.3调试 29结束语 29参考文献 31宾馆酒店预定系统的设计与实现1绪论1.1开发背景经济的快速发展,人们的消费水平和消费意识的提高,促进了旅游业的发展,同时也造成了流动人口的增加,酒店业面临着机遇和挑战。信息社会的高科技,商品经济化的高效益,使计算机的应用已普及到经济和社会生活的各个领域。计算机虽然与人类的关系愈来愈密切,还有人由于计算机操作不方便继续用手工劳动。为了适应现代社会人们高度强烈的时间观念,宾馆酒店预定系统软件为管理人员带来了极大的方便。操作人员只需输入一些简单的汉字、数字,即可达到自己的目标。对于大中型宾馆来说,利用计算机支持高效率完成日常事务,是适应现代要求、推动管理走向科学化、规范化的必要条件;而且酒店管理又是一项非常烦琐的事情,数量之大,核算极其不便。同时计算机具有手工管理所无法比拟的优点。例如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地提高酒店管理的效率,也是酒店的科学化、正规化管理,与世界接轨的重要条件。因此想要使酒店的工作质量和效率提高,采用先进的计算机网络通信技术改变酒店业务模式,实现酒店业务管理的自动化已经成为一种必然。1.2系统目标此次设计将要模拟完成建立一个宾馆酒店预定系统,实现信息化。通过先进的.net平台实现前台对房间入住、退房、vip用户添加等功能。对于酒店管理者可以实现房间信息、人员账号、个人信息的管理并可实时查询酒店营业情况,节省了大量的劳力财力,加强了公司的现代化管理和高效的服务。酒店日常管理中所涉及到的大量数据都由数据库管理系统管理。本文中数据库服务器端采用了商业流行的sqlserver2008作为后台数据库,结合sql语句强大的处理功能实现酒店管理中各个对象的分类、添加、删除、修改等操作。采用visualstudio2008作为前台页面设计。经过对酒店管理业务的具体分析,精心对相关信息的学习和在指导老师的指导下,朋友的帮助下多次改进,终于开发制作了这个宾馆酒店预定系统。本系统有以下特点:系统中模块划分明确,模块功能设计有较强的针对性。系统操作界面简单,灵活性好、响应时间短,系统安全性高,运行稳定。2系统解决方案2.1visualstudio.net平台和c#语言简介visualstudio.net2008是一个功能强大、高效并且可扩展的编程环境。有许多激动人心的新功能,它提供统一的集成开发环境,支持在同样的开发环境里用visualbasic、visualc++、visualc#、visualj#和其他数十种编程语言,可以编写、调试和部署各种应用程序。它充分展现了应用程序的开发潜能、并提供了生成应用程序的所需要的工具和技术。这些应用程序给当今的企业、机构提供了强大的支持,是有始以来功能最强大、最受欢迎的软件开发工具。c#(发音为“csharp”)是一门简单、现代、优雅、面向对象、类型安全、平台独立的新型组件编程语言。它虽然是一种新语言,但却很难在这种语言中找到新的概念,其语法风格不仅源自c/c++家族,而且融合了visualbasic的高效和c/c++强大,因此是微软为奠定其下一代互联网霸主地位而打造的microsoft.net平台的主流语言。依本人看来,优点不外乎以下两方面:a、对于花费很多时间学会c、c++语言的程序员来说,可以不必丢弃以前的知识,就可以使用这种新的语言开发程序,尽管c#中有一些新概念、新技术和新函数,但一般而言它的语言及其语法是跟c、c++类似的,而且对于用c++编写好的代码也可被重用,主要原因是c#具有调用已有代码和系统库中的库函数的机制。b、组件编程已经成为当今世界软件业面向下一代程序开发的一致选择,是90年代面向对象编程的深度发展。c#生逢其时,占尽天时地利,“第一等的面向组件编程的支持”也决不是简单说说那么轻松。实际上,组件特性已经深深植入c#语言的各个层面,可为是c#锐利(sharp)之处。2.2sqlserver2008简介sqlserver2008是microsoft公司推出的sqlserver数据库管理系统的新版本。该版本继承了sqlserver2005版本的优点,同时又比它增加了许多更先进的功能,具有使用方便、可伸缩性好、与相关软件集成程度高等优点。可跨越从运行microsoftwindowsserver2003到运行microsoftwindowsxp的大型多处理器的服务器等多种平台使用。其特点有如下几点:a.真正的客户机/服务器体系结构。b.图形化用户界面。c.丰富的编程接口工具。d.sqlserver与windowsnt完全集成。e.具有很好的伸缩性。f.对web技术的支持。g.sqlserver提供数据仓库功能。2.3程序运行环境硬件平台:cpu:p41.8ghz内存:512mb以上软件平台:操作系统:windowsxp数据库:sqlserver2008开发环境:microsoftvisualstudio2008开发语言:c#语言3系统分析3.1系统可行性分析3.1.1经济可行性分析宾馆酒店预定系统的开发从长远的角度看,投资可以完全收回,并可以节省管理费用,避免了人工填单操作所带来的一系列不必要的麻烦和相当大的风险,节省了用户和相关工作人员的时间,能够很好的提高工作效率,改进决策质量。同时也对酒店的灵活管理有了很大的提高,有利于提高酒店的运营和服务效率,其开发前景良好并能产生很好的经济和社会效益。3.1.2技术可行性分析本系统数据库部分采用了目前比较流行的sqlserver2008,可以方便对数据的修改、查找、删除等功能,同时确保数据的完整性和安全性。同时,采用visualstudio2008作为前台界面开发平台,方便、有效,还可以保证画面的美观。3.1.3法律可行性分析本系统的开发作为计算机毕业设计以巩固以前所学的知识,此程序完全由本人独立开发,仅供个人所用,没有侵犯任何版权,也没有违反国家相关法律法规及相关方面的规定,所以法律方面可行。3.2系统需求分析根椐调查分析,此系统应便于对酒店客房资源进行综合管理,最终目的是提高工作效率和减轻劳动强度;提高信息处理速度和准确性;为业务、管理提供更方便的服务项目。提高酒店经营效益和市场分析抉择。本系统应根据不同的用户实现相应的功能。首先为管理员,即酒店管理者。该类型用户将实现对房间信息的相关操作,同时还可以对用户进行管理,并可实时查看酒店收支情况。其次是前台用户,此类用户主要实现了为客户办理房间的入住,退房等操作,同时还可添加vip用户。4系统设计4.1系统模块设计4.1.1登陆模块必须输入正确的用户名、密码和用户类型才能进入相应的系统界面。任何一处填错或空白都将给出提示信息。4.1.2管理员模块房间信息模块:可以对房间号,位置,描述等信息的查询,修改等操作。房间设施模块:实现对某一类型房间内部设施的统一管理。用户信息模块:里面包含了公司用户和vip用户两部分。对于公司用户可以执行添加,删除等操作。对于vip用户信息,只能执行修改、删除操作,添加部分由前台实现。营业状况模块:可以查询某一时间段的收入情况。个人信息模块:实现了对于当前登陆用户的信息查看和密码修改。4.1.3前台模块房间状态模块:可以查看当前的房间状态信息。并为客户办理入住,退房手续(对于vip客户会享受相应的折扣)。vip模块:可以对vip用户信息进行添加、修改、删除等操作。个人信息模块:实现了对于当前登陆用户的信息查看和密码修改。4.2系统结构图酒店管理系统酒店管理系统登陆模块管理员模块前台模块房间信息模块房间设施模块用户信息模块营业状况模块个人信息模块公司用户信息vip用户信息房间状态模块vip模块个人信息模块图4.2-1系统结构图4.3系统功能图酒店管理系统酒店管理系统管理员前台房间信息浏览房间信息修改房间删除房间添加内部设施更改公司用户信息浏览公司用户信息删除vip用户信息修改收支统计个人密码修改房间状态查看客户入住办理客户退房办理vip用户添加退出图4.3-1系统功能图5数据库设计5.1e-r模型5.1.1模型简介e-r模型是数据进行第一层抽象的表示方法。它的主要成分包括:实体、联系和属性。使用这三种成分,我们可以建立许多数据库应用系统的e-r模型。对于宾馆酒店预定系统中使用到的实体和属性可以定义如下(其中带下划线的属性为主属性):客房:(房间号,规格,位置,状态,描述,单价,床位数,空调,电视)客户:(房间号,身份证号,姓名,入住时间)管理员:(用户名,密码,权限)vip用户:(vip卡号,身份证号,姓名,vip级别,已客房客房规格位置状态描述单价床位数空调电视客户租赁身份证号姓名入住时间管理员管理用户名密码权限登记vip用户管理vip卡号vip级别身份证号姓名已消费数额图5.1.1-1数据库应用系统的e-r模型5.2数据库的具体实现该系统采用sqlserver2008作为后台数据库进行存储所有与系统相关的数据。在其中建立名为htl_manager的数据库,本系统的所有数据信息都将储存在该数据库中。在设计过程中考虑数据完整性约束。数据库上的完整性的约束条件一般有以下两类:a、属性值的约束这类约束是对属性取值的类型、范围、精度等的限制,和属性的语义有关。b、数据之间联系的约束。这类约束反映了数据之间存在的联系,在关系数据模型中指多个属性或多个元组之间联系的约束。比如,属性之间的函数依赖、多值依赖。顾客所住的房间应该在房间列表中存在的;每位工作人员一定属于某个部门,有一定的职位等等。在许多数据模型中都是表明了数据之间的某些依赖关系的,或者是隐式或者是显式的。根据系统功能需要主要包括以下数据表:用户信息表(htl_user)、房间表(htl_room)、房间设施表(htl_room_facilities)、客户表(htl_guest)、vip用户表(htl_vip)、vip设置表(htl_vipset)、收入统计表(htl_count)。具体信息如下:表5.2-1用户信息表(htl_user)列名数据类型长度是否为主键用户名(r_id)nvarchar50是密码(r_pwd)nvarchar50权限(r_permision)int4表5.2-2房间表(htl_room)列名数据类型长度是否为主键房间号(r_id)char10是房间规格(r_slvl)char10位置(r_position)varchar50当前状(r_permision)bit2描述(r_description)varchar50单价(r_price)smallmoney10表5.2-3房间设施表(htl_room_facilities)列名数据类型长度是否为主键规格(r_slvl)nchar10是床位数(bed_num)int4空调(aircondition)bit2电视(tv)bit2表5.2-4客户表(htl_guest)列名数据类型长度是否为主键房间号(r_id)char10是身份证号(g_id)varchar50是姓名(g_name)varchar50入住时间(begindate)smalldatetime14表5.2-5vip用户表(htl_vip)列名数据类型长度是否为主键vip卡号(v_cardid)varchar50是身份证号(v_id)varchar50是姓名(v_name)varchar50vip级别(v_lvl)int4消费数额(v_count)money10表5.2-6vip设置表(htl_vipset)列名数据类型长度是否为主键vip级别(v_lvl)int4是享受折扣(v_zk)int4最低额(v_leasecount)int4称号(v_title)nchar10
表5.2-7收入统计表(htl_count)列名数据类型长度是否为主键房间号(r_id)char10身份证号(g_id)varchar50姓名(g_name)varchar50入住时间(begindate)smalldatetime14退房时间(endtate)smalldatetime14消费额(count)money106系统主要/关键技术说明6.1公共模块6.1.1实现与数据库连接首先要实现与数据库的连接,通过sqldatasource控件添加数据源,并将连接字符串添加进web.config文件中。代码如下:<connectionstrings> <addname="htl_managerconnectionstring"connectionstring="datasource=(local);initialcatalog=htl_manager;integratedsecurity=true"providername="system.data.sqlclient"/> </connectionstrings>6.1.2配置相关文件图6.1.2-1母版页根据软件设计需要,建立后台母版页admin_masterpage.master.具体如图。其中包含sitemappath控件和treeview控件。其中sitemappath控件需要web.sitemap文件支持。因为本系统在前台页面部分也用到一个sitemappath控件,则需要在web.config文件中添加相关数据以实现不同的sitemappath控件连接相应的web.sitemap上。sitemappath控件的主要作用是用于显示当前页面所处的位置。首先,打开web.config文件,在<system.web> </system.web>中添加如下代码:<sitemap> <addsitemapfile="~/admin/web.sitemap"name="my_adminwebsitemap"type="system.web.xmlsitemapprovider,system.web,version=,culture=neutral,publickeytoken=b03f5f7f11d <addsitemapfile="~/qiantai/web.sitemap"name="my_qiantaiwebsitemap"type="system.web.xmlsitemapprovider,system.web,version=,culture=neutral,publickeytoken=b03f5f7f11d </sitemap>其中,sitemapfile中是sitemap的位置,name内部名称不能相同,用于sitemappath控件的绑定。添加成功之后,调出sitemappathn属性设置面板,将sitemapprovider属性设置为"my_adminwebsitemap",如图6.1.2-2所示。图6.1.2-1接下来编辑web.sitemap文件。具体代码如下:<?xmlversion="1.0"encoding="utf-8"?><sitemapxmlns="/aspnet/sitemap-file-1.0"><sitemapnodeurl="./admin/admin.aspx"title="管理员"description="admin"><sitemapnodeurl=""title="房间信息"description="room_infor"><sitemapnodeurl="./admin/room_scan.aspx"title="信息一览"description="room_scan"/><sitemapnodeurl="./admin/room_modify.aspx"title="查询/修改"description="room_modify"/><sitemapnodeurl="./admin/room_add.aspx"title="房间添加"description="room_add"/></sitemapnode><sitemapnodeurl=""title="房间设施"description="roo_faci_info"><sitemapnodeurl="./admin/room_faci_scan.aspx"title="信息一览"desvription="room_faci_scan"/></sitemapnode><sitemapnodeurl=""title="用户信息"description="user_vip_info"><sitemapnodeurl=""title="公司用户"description="usr_info"><sitemapnodeurl="./admin/user_scan.aspx"title="信息一览"description="user_scan"/><sitemapnodeurl="./admin/user_add.aspx"title="公司用户添加"description="user_add"/></sitemapnode><sitemapnodeurl=""title="vip用户"description="vip_info"><sitemapnodeurl="./admin/vip_scan.aspx"title="信息一览"description="vip_scan"/></sitemapnode></sitemapnode><sitemapnodeurl=""title="营业情况"description="check"><sitemapnodeurl="./admin/check_count.aspx"title="收支统计"description="check_count"/></sitemapnode><sitemapnodeurl=""title="个人信息"description="sef_info"><sitemapnodeurl="./admin/loginuser_scan.aspx"title="信息一览"description="loginuser_scan"/></sitemapnode></sitemapnode></sitemap>点击treeview控件右上角标志,编辑treeview结点,设置结点名称,并设置连接属性。图6.1.2-2treeview结点编辑面板首先建立前台母版页qiantai_masterpage.master,并编写web.sitemap文件。并将此处sitemappath控件的sitemapprovider属性设置为"my_qiantaiwebsitemap"。web.sitemap代码如下:<?xmlversion="1.0"encoding="utf-8"?><sitemapxmlns="/aspnet/sitemap-file-1.0"><sitemapnodeurl=""title="前台"description="qiantai"><sitemapnodeurl="./qiantai/free_room.aspx"title="空闲房间"description="free_room"><sitemapnodeurl="./qiantai/yuding_room.aspx"title="房间预定"description="yuding_room"/></sitemapnode><sitemapnodeurl="./qiantai/rent_room.aspx"title="已租房间"description="rent_room"><sitemapnodeurl="./qiantai/tui_room.aspx"title="退房管理"description="tui_room"/></sitemapnode><sitemapnodeurl="./qiantai/all_room.aspx"title="全部房间信息"description="all_room"/><sitemapnodeurl=""title="vip通道"description="vip_info"><sitemapnodeurl="./qiantai/vip_scan.aspx"title="vip用户一览"description="vip_scan"/><sitemapnodeurl="./qiantai/vip_add.aspx"title="vip用户添加"description="vip_add"/></sitemapnode><sitemapnodeurl=""title="个人信息"description="self_info"></sitemapnode></sitemapnode></sitemap>6.1.3登陆模块图6.1首先进入登陆界面(如图6.2-1),输入正确的用户名,密码和相应的权限,否则将报错(如图6.2-2)。图6.1具体代码如下://从文件web.config中读取连接字符串stringstrconn=configurationmanager.connectionstrings["htl_managerconnectionstring"].connectionstring;//连接本地计算机的hms数据库sqlconnectioncn=newsqlconnection(strconn);cn.open();//构造sql语句,该语句在users表中检查用户名和密码是否正确stringmysql="select*fromhtl_userwhereu_name='"+this.textbox1.text.trim()+"'andu_pwd='"+this.textbox2.text.trim()+"'andu_permision='"+this.radiobuttonlist1.selecteditem.value+"'";//创建command对象sqlcommandcmd=newsqlcommand(mysql,cn);//执行executereader()方法sqldatareaderdr=cmd.executereader();if(dr.read()){this.label3.text="";//保存当前用户名及用户权限session["uname"]=dr["u_name"].tostring();session["upermision"]=dr["u_permision"].tostring();this.label3.text="欢迎您!"+session["uname"];if(session["upermision"].tostring()=="1"){ //进入酒店总管界面response.redirect("./admin/admin.aspx");}elseif(session["upermision"].tostring()=="2"){ //进入酒店前台界面response.redirect("./qiantai/all_room.aspx");}}else{this.label3.text="对不起,您的用户名/密码不正确,请重新输入";}//关闭连接cn.close();6.2系统模块6.2.1管理员模块图6.2.1验证密码完毕,进入管理员界面(如图.2房间信息模块6.2.点击房间信息子菜单下的信息一览链接,进入房间信息浏览界面,内部使用了gridview控件,同时连接数据源datasource1,实现将房间相关信息显示出来,并可以执行删除操作(如图6.2.2图6.2.2-2图6.2.2-点击查询/修改,进入查询页面。可以实现对房间的查找,并可对查到的数据进行修改和删除的操作(如图6.2.图6.2.2-点击房间添加,进入添加页面。6.2.3房间设施模块功能与上述模块类似,同样使用了gridview控件,但在控件上增加了编辑功能,取消了删除功能。图6.2.3-6.2.4用户信息模块图6.2.4-本模块中的公司用户信息一览与vip信息一览与上面模块功能类似,在此不再缀述。在公司用户部分,管理员拥有添加功能(如图6.2.代码如下:protectedvoidbutton1_click(objectsender,eventargse){intstat=0;this.label4.visible=false;this.label5.visible=false;if(this.textbox1.text.trim()==""){this.label4.visible=true;this.label4.text="该项不可为空!";stat++;}if(this.textbox2.text.trim()==""){this.label5.visible=true;this.label5.text="该项不可为空!";stat++;}if(stat==0){//从文件web.config中读取连接字符串stringstrconn=configurationmanager.connectionstrings["htl_managerconnectionstring"].connectionstring;//连接本地计算机的hms数据库sqlconnectioncn=newsqlconnection(strconn);cn.open();//构造sql语句,该语句在users表中检查用户名和密码是否正确stringmysql="select*fromhtl_userwhereu_name='"+this.textbox1.text.trim()+"'";sqlcommandcmd=newsqlcommand(mysql,cn);//执行executereader()方法sqldatareaderdr=cmd.executereader();if(dr.read()){this.label4.visible=true;this.label4.text="用户已存在!";this.textbox1.text="";this.textbox2.text="";}else{cn.close();cn.open();stringadd_sql="insertintohtl_user(u_name,u_pwd,u_permision)values('"+this.textbox1.text.trim()+"','"+this.textbox2.text.trim()+"','"+this.radiobuttonlist1.selecteditem.value+"')";sqlcommandadd_cmd=newsqlcommand(add_sql,cn);sqldatareadera_dr=add_cmd.executereader();response.write("<script>alert('添加成功')</script>");response.write("<scriptlanuague=javascript>window.location.href='user_add.aspx'</script>");}cn.close();}6.2.5营业状况模块图6.2.5-管理员可查询指定时间段的收入情况。本功能的实现用到了一部分ajax控件scriptmanagert和calendarextender。当用户将指针移至calendarextender所绑定的文本框中时,就会自动显示出日历,供用户选择上面的日期(如图6.2.4部分代码如下:stringsql="select*fromhtl_countwhereenddate>='"+this.textbox1.text.trim()+"'andenddate<='"+this.textbox2.text.trim()+"'";sqldataadaptersda=newsqldataadapter(sql,cn);datasetds=newdataset();sda.fill(ds);this.gridview1.datasource=ds;this.gridview1.databind();cn.close();if(ds.tables[0].rows.count==0){this.label3.text="无相关数据!";this.label4.visible=false;this.label5.visible=false;}else{this.gridview1.headerrow.cells[0].text="房间号";this.gridview1.headerrow.cells[1].text="身份证号";this.gridview1.headerrow.cells[2].text="姓名";this.gridview1.headerrow.cells[3].text="开房时间";this.gridview1.headerrow.cells[4].text="退房时间";this.gridview1.headerrow.cells[5].text="收入";this.label3.text="";this.label4.visible=true;this.label5.visible=true;}doublesumprice=0;for(inti=0;i<ds.tables[0].rows.count;i++){datarowdr=ds.tables[0].rows[i];sumprice=sumprice+convert.todouble(dr["count"].tostring());}this.label4.text=convert.tostring(sumprice)+"元";}6.2.6个人信息模块图6.2.6-图6.2.本模块实现了个人信息的浏览、修改密码功能,当点击修改密码按钮时,自动弹出修改密码面板。修改成功后将得到提示信息。6.3前台模块6.3.1房间状态模块图6.3.1本模块功能的实现主要运用了gridlist控件,通过自定义模板,在控件中添加按钮,实现房间的入住,退房办理。首先点击显示全部房间状态,则会显示酒店所有房间当前租售状态(如图6.3.1-1)。点击空闲房间查看,则会显示当前空房状态(如图6.3.1-2)。点击入住,则进入房间入住办理界面(如图6.3.图6.3.1图6.3.1点击已租房间则可查看当前已租房间状态(如图6.3.1-4)。点击退房,则进入退房界面,若是vip用户,则可享受打折优惠(如图6.3.图6.3.1.图6.3.1部分代码如下:protectedvoidpage_load(objectsender,eventargse){this.label7.text=session["get_rid"].tostring();this.label11.text=datetime.now.toshortdatestring().tostring();//从文件web.config中读取连接字符串stringstrconn=configurationmanager.connectionstrings["htl_managerconnectionstring"].connectionstring;//连接本地计算机的hms数据库//sqlconnectioncn=newsqlconnection(strconn);sqlconnectioncn=newsqlconnection(strconn);cn.open();//构造sql语句,该语句在users表中检查用户名和密码是否正确stringmysql0="selectr_pricefromhtl_roomwherer_id='"+this.label7.text.trim()+"'";sqlcommandcmd0=newsqlcommand(mysql0,cn);sqldatareaderdr0=cmd0.executereader();dr0.read();str0=dr0["r_price"].tostring();cn.close();cn.open();stringmysql1="select*fromhtl_guestwherer_id='"+this.label7.text.trim()+"'";//创建command对象sqlcommandcmd1=newsqlcommand(mysql1,cn);//执行executereader()方法sqldatareaderdr1=cmd1.executereader();if(dr1.read()){this.label8.text=dr1["g_name"].tostring();this.label9.text=dr1["g_id"].tostring();this.label10.text=dr1["begindate"].tostring();}cn.close();timespantsp=datetime.now-convert.todatetime(this.label10.text);intdays=tsp.days;if(days==0)days=1;cn.open();stringmysql2="select*fromhtl_vipwherev_id='"+this.label9.text.trim()+"'";sqlcommandcmd2=newsqlcommand(mysql2,cn);sqldatareaderdr2=cmd2.executereader();if(dr2.read()){vvip=1;str1=dr2["v_lvl"].tostring();cn.close();cn.open();stringmysql3="select*fromhtl_vipsetwherev_lvl='"+str1+"'";sqlcommandcmd3=newsqlcommand(mysql3,cn);sqldatareaderdr3=cmd3.executereader();if(dr3.read()){str2=dr3["v_zk"].tostring();str3=dr3["v_title"].tostring();}this.label13.text="尊贵的"+str3+"用户,你可以享受"+str2+"折优惠!";this.label12.text=convert.tostring(convert.todouble(str0)*days*convert.todouble(str2)/10);}else{this.label12.text=convert.tostring(convert.todouble(str0)*days);}cn.close();}6.3.2vip用户模块实现了对vip用户的修改、删除、添加等操作(如图6.3.2-1,6.3.图6.3.图.3人个信息模块图6.3图6.3.3本模块实现了个人信息的浏览、修改密码功能,当点击修改密码按钮时,自动弹出修改密码面板。修改成功后将得到提示信息。7软件测试7.1软件测试的必要性软件测试是“由人工或自动方法来执行或评价系统或系统部件的工程,以验证它是否满足规定的要求,或识别出期望的结果和实际结果之间无差别”。软件测试的主要任务是发现并排除在软件需求分析,设计和实现阶段产生的各种错误,以保证交付软件的质量。随着软件规模及软件复杂度的日益增长,软件质量已经成为不可忽视的问题。软件测试是保证软件质量的重要手段。因此人们越来越重视软件测试工作。软件测试的目的是“在一定的研制的时间和经费限制下,通过执行有限个测试过程,尽可能多的发现软件中的错误”每个软件产品都是不可避免的存在缺陷,所以在系统设计基本完成后,我们就必须对设计的作品从各方面进行测试,使作品趋于完善,增加作品的稳定性。7.2测试7.2.1模块测试模块测试的目的是保证每个模块作为一个单元能正确运行,所以模块测试通常又称为单元测试。在这个测试步骤中所发现的往往是编码和详细设计的错误。在测试中遇到的问题常有:系统在更换计算机后不能正常运行,通常为提示数据库连接不正确,此时只需要修改一下配置文件,重新连接一下数据库,之后系统就可以正常运行了。有的是因为起初所运行的环境版本太高,而后在到版本低的环境中运行,也会导致打不开系统。如本系统在vs2008环境下开发,在vs2005里就不可运行。7.2.2子系统测试子系统测试是把经过单元测试的模块放在一起形成一个子系统来测试。模块间的协调和通信是这个测试过程中的主要问题,因此这个步骤着重测试模块的接口。例如,在前台管理这个子系统中,有入住、退房、添加vip用户等几个功能模块。子系统测试就是把这几个模块结合起来形成一个完整的子系统,然后整体运行一下,以找出其中是否存在功能的冲突,是否会导致数据的紊乱等等。7.2.3系统测试系统测试是对整个系统进行的运行测试,只有先通过对各个模块测试通过以后,才能对整个系统进行测试。通过系统测试,开发人员能够检测出程序的编码错误,可以检查到该软件是否符合用户的要求,对于不足之处加以修改完善,直到其符合说明书的要求为止。尽量实现其所需要的所有的功能,从而达到系统测试的目的。不论是子系统测试还是系统测试,都兼有检测和组装两重含义,通常称为集成测试。7.3调试测试本身的目的是尽可能多地暴露程序中的错误,但是,发现错误的最终目的还是为了改正错误。在成功的测试之后,还必须进一步诊断和改正程序中的错误,这就是调试的任务。调试的过程由两个步骤组成,它从表示程序中存在错误的某些迹象开始。首先确定错误的准确位置,也就是找出是哪个模块或哪些接口引起的错误;然后,仔细研究这段代码以确定问题的原因,并设法改正错误。通过不断地测试、调试,解决了系统中一系列错误所在,如:界面美化问题,控件使用问题,代码出错问题,数据库连接与数据正确显示等,使系统功能更加完善,系统更加强大有力。综合评估如下:总体来说,本系统设计较为成功,能实现预计的功能,达到数据管理的目的。但考虑到商业使用过程中,本系统的各个功能模块部分只是实现了基本的功能,而且当今社会,智能化的发展越来越快,日常事务也越来越繁多,越来越细微,本系统还需要进一步的完善。结束语通过近半年的努力,终于完成了本次设计。看到自己的设计成果多少有些成就感。我觉得毕业设计不只是个人能力的体现,更主要的是它也是一个重要的学习过程。通过本次毕业设计我学到了不少新的技术知识,也遇到了不少问题,原本对自己的理论知识信心十足,但真正静下心来开发一个自己的系统的时候,却总是有一种心有余而力不足的感觉,遇到了许多从未遇到过的问题,出现了许多毫无征兆的错误,通过同学的帮助,上网查询等多种解决方法,终于将问题一一处理好,在这个过程中自己的动手实践能力得到了很大的提高。由于水平有限,本系统还存在许多不够完善的地方,比如水晶报表功能,有待今后改进。也希望自己能在.net这条路上继续走下去,做个技术型人才。在本系统的开发设计过程中,感谢一直对我毕业设计提供帮助的老师们,没有他们的悉心指导,我不可能完成符合要求的合格的毕业设计。与此同时,我也要感谢对我毕业设计提供帮助的同学们,是你们给予了我更多广泛的设计思路,才使得我的思维更加宽广,这对于我的毕业设计来说,是一种莫大的帮助,谢谢你们。同时,我也要再次感谢全体老师,是你们在辛勤地为我们做了许多我们不曾注重的一些细节问题,为我们无论是在设计上还是在论文中,你们的劳动都是我的毕业设计完成不可缺少的因素。
参考文献:[1]张智强:sqlserver2005课程设计案例经编,清华大学出版社,2008.6,p34-p38[2]周靖:c#本质论,人民邮电出版社,2008.8,p234-p250;[3]王孟然:sqlserver基础知识详解,人民大学出版社,2007.3,p72-p90[4]胡峰:c#案例分析,清华大学出版社,2007.9,p128-p135[5]徐然:sqlserver2005完全解读,北京大学出版社,2008.5,p342-p351[6]周山峰:c#企业开发经典案例分析,人民邮电出版社,2006.8,p324-p397[7]陈红:数据库系统原理教程,清华大学出版社,2005.7,p113-p143[8]杨文元:软件工程与实践,厦门大学出版社,2003.2,p211-p256毕业设计任务书学生姓名谢依依学号2008102038指导教师肖利群系名称计算机科学与技术系专业名称计算机科学与技术设计题目宾馆酒店预定系统题目来源教学实践一、基本任务与要求基本任务包括:按课题要求,设计出宾馆酒店预定系统。按毕业设计要求,撰写设计报告说明书。基本要求包括:此次设计将要模拟完成建立一个宾馆酒店预定系统,实现信息化。通过先进的.net平台实现前台对房间入住、退房、vip用户添加等功能。对于酒店管理者可以实现房间信息、人员账号、个人信息的管理并可实时查询酒店营业情况,节省了大量的劳力财力,加强了公司的现代化管理和高效的服务。酒店日常管理中所涉及到的大量数据都由数据库管理系统管理。本文中数据库服务器端采用了商业流行的sqlserver2008作为后台数据库,结合sql语句强大的处理功能实现酒店管理中各个对象的分类、添加、删除、修改等操作。采用visualstudio2008作为前台页面设计。二、工作内容及时间安排1、选题:2012年01月01日—2012年01月04日2、开题报告:2012年01月05日—2012年01月10日3、收集资料、确定实施方案:2012年01月11日—2012年02月11日4、模块设计与系统设计:2012年02月12日—2012年04月10日5、整理资料、编写设计报告:2012年04月11日—2012年04月21日6、完成定稿、打印、交付设计报告:2012年04月21日—2012年05月07日7、答辩:2012年05月08日—2012年05月10日三、需要提供有关材料1、毕业设计任务书;2、毕业设计开题报告;3、毕业设计实施过程记录表;4、设计报告正文[严格按照四川师范大学成都学院毕业设计规范要求撰写];5、毕业设计评审表(指导教师);6、毕业设计评审表(评阅人1、2);7、毕业设计答辩记录评审表。
毕业设计开题报告学生姓名谢依依学号2008102037设计题目宾馆酒店预定系统1、选题背景(含国内外相关研究综述及评价)与意义。选题背景:随着计算机网络的飞速发展,internet技术越来越广泛的应用,网络覆盖的区域不断扩大,给酒店业计算机应用带来了蓬勃发展的机遇。采用全新的计算机网络和管理系统,将成为提高酒店管理效率,改善服务水准的重要手段之一。所以酒店管理系统是酒店经营不可缺少的现代工具。选题意义:现代化酒店是城市的重要基础设施,酒店业的发展,直接支持着城市经济的繁荣、旅游业的兴旺和广大市民的生活需要,同时也是城市建设现代化的一个重要标志。全球都把现代化酒店管理作为现代企业管理的重要组成部分。随着当今世界经济和计算机的飞速发展以及网络的普及,酒店在内部实现用户通过电话预约或亲自前往酒店预订客房,服务员人工填写客房预订表进行客房预订的传统模式已经十分落后,满足不了现代人的需要。对那些在外地的旅客来说,他们十分希望可以方便快捷的查看酒店的配套设施和环境来决定预订酒店房间,以节约他们宝贵的时间,而且面对酒店业竞争的日益激烈,酒店业要发展就需要尽力扩大经营规模,适应当今网络时代的步伐。b/s结构的城市酒店入住信息管理系统实现了客人在线预订客房,后台管理员对数据库的完整管理。因为internet基于tcp/ip协议,它可以跨越当前几乎所有的平台。在任何平台上只需要安装一个浏览器,可以简单地移植到任何平台上,就可以访问web服务器,解决了用户预订操作繁琐,酒店管理信息量大,处理效率低,准确度差等问题。极大的方便了客人的预订和酒店的管理。2、选题研究的方法与主要内容。研究方法:通过图书馆借阅书籍,实践经验,在网上查找相关方面的资料以及老师的指导完成论文的书写。主要内容:配置相关开发环境以及安装相关辅助软件,为设计开发软件准备好硬件条件。深入研究管理系统、c#编程语言、数据库原理与应用和b/s模式等与该系统有关的技术。从书籍、网络等相关渠道搜索现有的宾馆酒店预定系统的设计实现资料,分析其设计模式和开发语言的特点。正确实现系统各个功能、包括界面设计和功能的完成,完成各个功能模块的测试。对系统的性能和功能进行测试。并优化和完善,到系统能按设计要求运行。3、研究条件和可能存在的问题。研究条件:拥有足够关于asp.net技术的学习资料能运用vs2008进行软件设计掌握了数据库原理及开发工具的使用了解利用基于b/s模式的开发意义可能存在的问题:对asp.net技术的应用不够熟练对vs2008开发环境不是很熟悉对要开发的宾馆酒店预定系统中所包含的元素还不是很清晰4、拟解决的主要问题和预期的结果。拟解决的主要问题:迅速学习并熟练掌握a技术及利用vs2008和mssql2008开发程序通过各种渠道学习有关宾馆酒店预定系统的结构模块、适用范围、用户群、需改善点等资料预期的结果:能通过写论文学习到一项新的a技术并能合理的开发利用能通过对宾馆酒店预定系统的设计和开发,学习到管理系统软件的用途,深刻体会到科学技术给现代文明社会做出的伟大贡献5.指导教师意见。指导教师签名:20
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 教研室工作计划(15篇)
- 软件开发销售代理协议(3篇)
- 高一军训心得体会范文800字(33篇)
- 工作实习总结
- 银行柜员个人工作总结
- 《哈姆雷特》读后感(15篇)
- DB12-T 1092-2021 航空实景影像三维数据生产技术规程
- 山东省东营市(2024年-2025年小学五年级语文)统编版小升初模拟(上学期)试卷及答案
- 甘肃省庆阳市(2024年-2025年小学五年级语文)统编版随堂测试(上学期)试卷及答案
- 2023年康养企业资金筹措计划书
- 芥末酱行业报告
- 玉米种子销售计划书
- 刑事受害人授权委托书范本
- 《电动叉车培训教材》课件
- 第3.2课《简单相信傻傻坚持》(课件)-【中职专用】高二语文同步课件(高教版2023·职业模块)
- 小学科学项目式学习教学设计与实践研究
- 家纺面料未来发展趋势报告
- 供电企业作业安全风险辨识防范课件
- 烘焙实训室设计方案
- 专业知识的敏捷和迭代
- 企业职工代表大会条例
评论
0/150
提交评论