ASP_酒店管理系统设计与实现.doc
目 录摘要一、概述2二、ASP介绍 2 (一)、ASP现状 2 (二)、ASP六大对象 3三、酒店客房管理系统开发 3 (一)、系统目标设计 3 (二)、开发设计思想 3(三)、开发和运行环境选择 4四、系统介绍 4 (一)、数据库设计 5(二)、主要功能 6五、主要模块介绍 7 (一)、登录 7 (二)、管理 8(三)、修改密码 8 (四)、客户资料 9 (五)、退房 9 (六)、客房资料 10(七)、房间管理 14六、结束语 14 参考文献 14酒 店 客 房 管 理 系 统 (计算机应用技术05(1)班 黄国锋)摘要:随着计算机技术的广泛应用,在酒店客房管理中引入计算机管理技术,成为一个值得深入研究的问题。本系统采用ASP+ACCESS作为开发环境,本文首先概要的论述了ASP的有关知识与现状。之后,对本系统作了系统的描述。在此基础上,论文重点对本系统作了详细的介绍,然后,对开发一个小型的酒店管理系统所用到的语句、函数、对象、数据库进行了阐述。最后,结合自己编写的酒店管理系统,给出了完整的、可实际使用的数系统。并给出了该系统的使用方法和设计方法。关键词:酒店管理系统;ACCESS;ASP一、概述 随着经济的发展,酒店正向着大型化、现代化发展,而对于中小型酒店,客房、顾客等有关的信息的管理随之急剧增加。在这种情况下单靠人工来处这些不但显得力不从心,而且极容易出错。该系统的具体任务就是设计一个酒店客房管理系统,由计算机来代替人工执行一系列诸如增加新客房、删除客房、客房修改、查询、客户管理等操作。这样就使办公人员可以轻松快捷地完成酒店客房管理任务,了解整个酒店客房信息。 有鉴于简单操作和界面的可视化的优势。并借助于网络的优势。本系统采用基于WEB形式开发,使用了access+asp作为开发环境。论文将就 ASP、酒店客房管理系统这二个方面分别进行比较详细的论述。二、 ASP介绍(一) ASP现状由于我国中小企业信息化起点低,我们不能照搬大企业“高投入、长周期”的信息化模式,也不能走国外企业“先建局域网,后上互联网”的老路。我们要根据中小企业的实际需要,准确把握信息技术的前沿趋势,找到一条立足国情的中小企业信息化新路。ASP理念就十分适合我国广大的中小企业信息化建设和应用,有着很大的推广和应用价值。科技部在2002年结合网络化制造在ASP方面展开了相应的研究,并投入相应的资金扶植与ASP有关的产品、技术、服务体系的建立。2004年国家开始重视面向行业和中小企业的ASP应用解决方案,并十分重视ASP技术在企业应用的推广和示范。与此同时国内外ASP厂商的相关产品和服务也已经趋于成熟,已经逐渐形成了以政府引导和推动,IT厂商跟进,服务商运营推广的新局面,掀起了“ASP第二次浪潮”。(二) ASP六大对象1)Application对象Application对象是个应用程序级的对象,用来在所有用户间共享信息,并可以在Web应用程序运行期间持久地保持数据。2)ObjectContext对象该对象用于控制Active Server Pages的事务处理。事务处理由Microsoft Transaction Server (MTS)管理。3)Request对象Request对象用于接受所有从浏览器发往你的服务器的请求内的所有信息。4)Response对象Response对象用于向浏览器输出文本、数据和Cookies以及控制在传送网页过程中的每一个阶段。5)Server对象Server对象用于创建COM对象和Scripting组件等。6)Session对象Session对象为单个用户保持数据。三、酒店客房管理系统的开发(一) 系统目标设计通过使用酒店客房管理系统,使酒店的客房管理工作系统化、规范化、自动化,从而达到提高酒店客房管理效率的目的。本系统开发的总体任务是使办公人员可以轻松快捷地完成酒店客房管理的任务。(二) 开发设计思想本系统的开发设计思想: 采用B/S结构 在这中结构下,用户界面完全通过WWW浏览实现,一部分事务逻辑在前端实现,但主要事务逻辑在服务端实现,形成3-tier结构。B/S结构的前端是以TCP/IP协议为基础的企业的WWW服务器可以接受安装有WEB浏览器程序的Internet终端的访问。作为终端用户只要通过WEB浏览器就可以完成事务处理,这样大大简化了客户端,减化了客户端,减轻了系统维护与升级成本和工作量,降低用户的总体拥有成本(TCO),而且使操作简单,基于以上原因本系统采用B/S结构开发。 系统应符合酒店客房管理的要求,达到操作过程中的直观、方便、实用等要求; 系统采用模块化程序设计方法,既便于系统功能的各种组合和修改,又便于未参与开发的技术维护人员补充、维护; 系统应具备客房信息管理功能,及时根据客房变化需求进行数据的添加、删除、修改等操作。(三) 开发和运行环境选择开发工具:dreamweaver,access。运行环境:Windows 2000或Windows xp + IIS。四、系统介绍:“酒店客房管理系统”是专门针对中小型酒店客房管理系统。该软件针对客房设置,客户管理,在线定房等进行了设置,本软件采用Macromedia公司的dreamweaver开发,数据库采用和微软公司的access,软件的界面美观大方,系统运行稳定。该软件有以下特点。功能强大:该软件以中小型酒店为应用对象,结合中小型酒店客房当前和未来发展的管理需求提供实用先进的客房管理模式,提高酒店客房管理的效益。用户界面操作简洁:系统的每个功能都经过精心设计,充分考虑到使用人员计算机知识较少的特点,全部使用业务人员最熟悉的业务流程、提示用语和操作方式,即使不熟悉此软件的人也能熟练使用本软件完成业务处理。系统性能稳定:严格按照规范的软件工程管理,充分利用面向对象技术,采用access为后台数据库,利用网页的广泛性,强大功能,从技术上和应用广泛性上保证了系统的稳定性、广泛性和先进性。(一)、数据库设计Access作为微软OFFICE以其简单易用而受到许多用户的欢迎,综合考虑,为了节约系统开发时间等因素,本系统数据库采用ACCESS。重要数据及其简要描述如表61、表62、表63、表64所示。表61管理员表表62客户订房信息表表63房间表表64房间类型表(二)、主要功能“酒店客房管理系统”主要由修改密码、公告管理、最新资讯、客户管理、客房资料、房间管理,包括如下模块:修改密码:只有超级管理员具有这个权限,修改、删除、添加管理员名密码。公告管理:发布酒店的公告,只有超级管理员具有这个权限。最新资讯:发布酒店的最新活动,只有超级管理员具有这个权限。客户管理:根据客户提供的订单号,查询客户的住房信息,并可以退房,为了防止客户忘记订单号,用户只要提供身份证号就可以查询。客房资料:系统的核心部分,可以看到房间分类、创建房间分类、修改房间分类,查看某一类房间详情、创建此类房间号,为了方便客户开房,把功能放在详情里。房间管理:根据输入的房间号查询此房间的情况。五、主要模块介绍(一)、管理员登录管理员登录界面,需要输入正确的管理员名、密码、验证码,可以根据管理员名判断管理员的权限。session("power")=rs("power")保存用户权限用于管理员权限的判断<% if session("power")=1 then response.Write("你是超级用户!") else response.Write("你是一般用户!") end if %>(二)、管理主程序也是程序控制的核心,操作权限、程序功能调用等都要通过管理主程序实现。(三)、修改密码此功能只有超级管理员具有,根据登陆用户是否超级管理员给出相应的权限,普通管理员不具有这些功能,超级管理员具有添加、修改、删除管理员权限。如下图就是一般用户点击修改后的页面。(四)、客户资料根据客户提供的订单号查询客户的信息,为防止证客户忘记订单号,可以输入客户身份证号查询订单号,可以查询客户在此订单号下的定房信息,不分是那种管理员都具有这个功能。(五)、退房根据客户提供的房间号给予退房,为防止出错,在此功能里显示客户基本信息,用以确定,如下图:此功能里可以实现自动算账。基本代码如下:<% dim x,y,zdtime=rs("dtime")订房时间y_dtime=int(year(dtime)m_dtime=int(month(dtime)d_dtime=int(day(dtime)ntime=now()退房时间即当前时间y_ntime=int(year(ntime)m_ntime=int(month(ntime)d_ntime=int(day(ntime)x=(y_ntime-y_dtime)y=(m_ntime-m_dtime)z=(d_ntime-d_dtime)if x>0 thentim=x*365+y*30+zend ifif x=0 thentim=y*30+zend ifif tim=0 then如果未满一天算做一天tim=1end ifresponse.Write timresponse.Write "天"response.Write "*"response.Write pricresponse.Write "元"response.Write "="response.Write tim*pric计算response.Write "元"%>(六)、客房资料列出所有房间分类,在此可以修改此类房间,查看此类房间详情,并订房,创建此类房间号,普通管理员不具有客房修改、创建功能。为了便于客户管理,每个客户产生一订单号。<% 根据服务器时间来生成定单号保证了不会有同样的定单号存在tim=year(now()&month(now()&day(now()&hour(now()&minute(now()&second(now()response.Write(tim)%>为了防出现某一个号房间被设置成不同的房间类型使用以下代码判断<%fanghao2=request.Form("fanghao2")roomlei=request.Form("hiddenField")if fanghao2="" thenresponse.Redirect("chuanjinafj.asp")end ifsql1="select * from fj where roomname='"&fanghao2&"'"set rs1=conn.execute(sql1)if not rs1.eof then判断是否存在response.Redirect("chuanjinafj.asp")数据库中有这种房间返回chuanjinafj.aspelse sql2="insert into fj (roomlei,roomname) values("&roomlei&",'"&fanghao2&"')"conn.execute(sql2)创建插入数据库conn.closeend ifconn.close%>为了防止出现某一类房间数设置时大于此类房间总数使用以下代码判断<%i=1id=request("id")sqlchk="select * from fj where roomlei="&idset chkrs=conn.execute(sqlchk)do while not chkrs.eofi=i+1chkrs.movenextloopsql1="select * from room where id="&idset rs1=conn.execute(sql1)x=int(trim(rs1("totnum")y=iif y>x then 被此类房间被设置的房间数总数Response.Write("<script>alert(""此类房已全部被设置!"");location.href=""room.asp""</script>")else%>当管理员点击详情时列出此类房的所以房间可以根据客户要求确定订房如下图:为了防止同一房间被重复预订被定没有超链接解决方法核心代码:<% if rs2("ztai")=true then response.Write("被定") else response.Write("未被定") end if %> </td><td width="48" valign="middle" align="center" bgcolor="#FFFFFF"><% if rs2("ztai")=false then %>判断是否被定<a href="book.asp?roomname=<%=rs2("roomname")%>&roomid=<%=rs1room%>">确定</a><% else %> 确定 <% end if%> (七)、房间管理输入某一个房间号可以查询此房的状态是否被定,和房间类型六、结束语通过以上的系统的分析,开发与应用几个步骤,完成了本系统的开发任务。达到了初步的要求,且发现了一些问题,为今后该系统的进一步完善积累了宝贵经验。参考文献1.李晓喆,张晓辉,李祥胜: SQL Server2000管理及应用系统开发M, 人民邮电出版社,2004。 2.宣小平,但正刚,张文毅: ASP数据库系统开发导航M , 人民邮电出版社,2004。3.汪晓平,钟军: ASP网络开发技术M, 人民邮电出版社,2004。4.施威銘研究室,钮建伟: ACCESS2002中文标准教程M, 中国青年出版社,2002。5.戎马工作室: ASP动态网站开发自学导航M, 机械工业出版社,2006。6.刘亚珠等: ASP动态网站开发技术与实践M, 电子工业出版社,2007。 7.