毕业设计(论文)宾馆管理系统设计与开发_第1页
毕业设计(论文)宾馆管理系统设计与开发_第2页
毕业设计(论文)宾馆管理系统设计与开发_第3页
毕业设计(论文)宾馆管理系统设计与开发_第4页
毕业设计(论文)宾馆管理系统设计与开发_第5页
已阅读5页,还剩37页未读 继续免费阅读

下载本文档

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

文档简介

1、宾馆管理系统设计与开发宾馆管理系统设计与开发计算机科学与技术专业 摘摘要要本系统是基于 c/s 体系结构,采用 c#语言和 sql server 数据库开发的典型的宾馆管理系统。该系统的主要目标是针对宾馆客房住房管理进行计算机化的管理。本系统实现了系统管理、数据维护和前台操作三大功能。其中系统管理包括客户管理、收入统计、物品存放和退出系统。数据维护则实现了客房类型和客房信息的管理。前台操作包括客房和客户查询,以及客户的入住和结算功能。本论文主要阐述了该系统的需求分析、功能模块划分、数据库设计及主要功能的具体设计与实现,并就系统中用到的技术进行了介绍。关键词关键词宾馆管理系统;c/s 体系结构;

2、客房管理;客户管理design and development of hotel management systemcomputer science and technology majorabstract: this system is based on the c/s architecture, adopting classic hotel management system of c# language and sql server database development. the main objective of this system takes computerized man

3、agement to the management of hotel rooms for the housing. this system has carried out the three big functions: system management, data maintenance and foreground operation. of which, system management includes the customer management, income statistics, depositing of articles and logout system. data

4、 maintenance has carried out the type of rooms and the information management. foreground operation includes customer queries, settlement function for customers. this paper mainly represent the needs analysis of system, the m dividing of nodule into, the database design, design and implementation of

5、 main function, and introduction of used technology in your system. key words: hotel information management system;c/s system structure;room management;customer management目目 录录1 引言 .11.1 课题研究的背景 .11.2 课题研究的目的及意义 .21.3 mis 的产生和发展情况 .22 需求分析 .32.1 运行环境 .52.2 需求分析设计 .52.2.1 登陆模块分析 .52.2.2 客房类型管理分析 .52.

6、2.3 客房信息管理分析 .62.2.4 客房查询分析 .62.2.5 客户查询分析 .62.2.6 客户入住分析 .72.2.7 客户结算分析 .72.2.8 收入统计分析 .72.2.9 物品存放分析 .82.2.10 用户管理分析 .82.2.11 系统可行性分析 .82.3 设计原则 .93 系统设计 .93.1 模块设计 .93.1.1 主模块.93.1.2 功能模块.103.1.3 详细功能模块设计.113.2 宾馆管理信息系统关系型数据库的实现 .123.2.1 数据库分析.123.2.2 系统 e-r 图.133.2.3 数据库概念设计以及创建表结构.154 系统实现 .184

7、.1 登录模块 .184.2 客房类型管理模块.20宾馆管理系统设计与开发4.3 客房信息管理模块 .224.4 客房查询模块 .234.5 客户查询模块 .244.6 客户入住模块 .264.7 客户结算模块 .264.8 客户管理模块.274.9 收入统计模块 .284.10 物品存放模块 .305 系统测试与维护报告 .325.1 系统测试 .325.2 系统测试过程分析 .325.2.1 白盒测试.325.2.2 黑盒测试.335.3 系统的运行和维护 .34总结及尚存在的问题 .35参考文献 .37致谢 .38宾馆管理系统设计与开发11 引言随着我国加入世界贸易组织,宾馆住宿业与国际

8、市场接轨已成为大势所趋,宾馆要迎接这场挑战,就必须提高整体竞争能力,提高整体竞争能力必须变革宾馆的管理模式,提高管理水平,实施信息化建设无疑是实现这一目的的必由之路和明智之举。目前,我国宾馆住宿业信息化管理的进程缓慢,跟国外的宾馆相比管理依然落后。国内部分宾馆财务、业务管理软件都已使用,但不能实现财务业务一体化,信息无法共享;有些宾馆使用财务管理系统,但未使用业务管理信息系统;有些宾馆则仅用业务管理信息系统;甚至在一些宾馆还没有使用管理软件,仍用手工处理业务。国外宾馆信息技术的应用非常普遍,全球宾馆业中应用高新科技的领头羊万豪国际酒店集团旗下的酒店,在客房和商务中心里提供 24 小时的 sts

9、n 高速互联网服务,上网速度是传统拨号的 50 倍,且可直接上网。stsn 系统还可提供宾馆设施、服务项目、餐饮特色、旅游景点、购物指 南等详尽资料。同时客人还可方便地访问自家公司的网站、收发电子邮件、使用程序,从而使宾馆真正成为客人旅行在外的办公室(aofficeawayfromoffice)。所有这些高科技硬件设施的采用,使软件服务依托硬件设备设施,通过有形或无形的服务,充分发挥硬件的服务功能,使二者同时发挥最佳效能,相得益彰,为宾馆产生良好的经济效益和社会效益。为了能够使现在的星级宾馆在正常的运营当中能够及时对客房资源、顾客信息、结算信息进行管理,宾馆信息管理系统方便宾馆管理人员及时了解

10、各个环节中信息的变更,提高了管理效率,节省大量的人力、物力资源,使宾馆的各种信息能够实现系统化、规范化和自动化。1.1 课题研究的背景项目管理:提高宾馆的执行管理能力。任务明确,关系清晰,责任落实到人:用项目制度来管理。随着我国改革开放的不断推进,国内人民生活水平的不断提高,旅游出行的人民越来越多,商务活动也相当的活跃;再加上入境旅游的人也越来越多,入境从事商务活动的外宾也越来越多。传统的手工已不适应现代宾馆管理的需要,及时、准确、全方位的网络化信息管理成为必需。在宾馆的管理及业务日益复杂、要求在不断提高的现状下,利用高科技、现代化的电脑自动化管理系统来处理日益繁重的酒店业务,对于大型的宾馆是

11、必须具备的管理方式。宾馆客房管理系统是根据宾馆对客房管理的实际情况进行编写的,主要目的是为了方便宾馆对客房的实际情况进行集中的查询与管理工作,以提高整个宾馆的工作。宾馆客房管理的科学化、系统化、信息化成为各个宾馆追求的目标。因此,而要实现这些功能,就要求各个宾馆配备一套客房管理系统,以便在宾馆内实施良好的完善的宾馆管理系统设计与开发2管理且以最快地速度响应客户的需求,及时为他们提供服务,为他们提供一个高效、便捷的居住环境。客房管理信息系统(mis)是各个宾馆软件建设中一个重要的应用系统,它大大了改善宾馆管理的基础环境。对客房管理系统的若干基本问题进行研究,主要包括客房管理系统的功能组成、系统开

12、发条件、步骤及其总体规划等内容。传统的宾馆管理活动中,把人、才、物作为宾馆的主要资源。但是随着社会化大生产的不断扩大和社会对产品多样化的需求,人们越来越重视信息在生产经营及酒店管理中的作用,并把它当做酒店的一种极其重要的资源,人们称之为“信息资源” ,信息资源的处理已经成为当今世界上一项主要的社会活动。目前宾馆客房管理系统大多采用传统的 c/s 体系结构,采用的是开放模式。1.2 课题研究的目的及意义一个成熟的宾馆客房管理系统不仅仅是记录宾馆客人的信息,提供查询,报表打印等一系列简单的工作,它能让工作人员从烦琐的手工操作中解脱。随着它的深入,将带动企业的运做,为管理和决策提供支持。为了达到这个

13、要求,它必须依靠高起点的硬件环境和软件开发工具来保证系统的稳定和正常运行。宾馆电脑系统要求 24 小时连续运行,数据量大,可靠性要求高,因此整个电脑系统供电采用专线方式,加配ups(不间断供电系统) ,并合理接地,以便保障整套系统的正常运行。计算机网络发展到今天已经成为现代人生活中不可缺少的一部分,人们可以从互联网中获得丰富的信息。为了提高用户获取信息的效率,保障信息的全面性、可靠性,需要对网络的信息库进行有效的管理。现在我国一些地方宾馆的客房水平还停留在纸介质或半自动(由电脑处理一部分数据,由人工处理一部分数据)的基础上,这样的机制已经不能适应时代的发展,因为它浪费了许多人力和物力,在信息时

14、代这种传统的管理方法必然被计算机为基础的信息管理所取代。软件作为一有项有力的工具,只能当此种工具,与我们的实践相结合起来的时候,才具有重大的社会价值及使用价值。1.3 mis 的产生和发展情况本世纪以来,由于社会生产力的迅速发展和科学技术的突飞猛进,人们进行信息交流的深度和广度不断增加,管理所需要的信息量急剧增长,同时对信息的处理要求及时、准确,这导致了传统的信息处理方法和手段已不能适应现代管理的需要;电子计算机的诞生和在信息处理中的应用,标志着一个崭新时代“信息时代”的开始,它使宾馆管理现代化成为可能。管理信息系统的产生和发展是建立在电子计算机基础之上的。硬件方面,自 1946年第一台电子计

15、算机诞生以来,计算机技术的发展可谓日新月异,从庞大的只能在实验室里供研究使用的计算机到如今能适应不同环境满足不同需求的各种各样的计算机;运算速度从每秒几千次到每秒几百亿次;处理器从焊有上百万个电子管的大的惊人的宾馆管理系统设计与开发3电子板到只有指甲大小的集成电路;现在计算机在硬件方面的发展已达到了每三个月更新换代一次的惊人速度。软件方面,也已从机器语言、汇编语言、高级语言发展到现如今的第四代语言非结构化、面向对象、可视化的语言。管理信息系统通过对宾馆当前运行的数据进行处理来获得有关信息,以控制宾馆的行为;利用过去和现在的数据及相应的模型,对未来的发展进行预测;能从全局目标出发,对宾馆的管理决

16、策活动予以辅助。从工业发达国家来看,管理信息系统的发展经历了以下几个阶段。第一阶段:(1953 年至 1965 年)单项数据处理阶段,也称电子数据处理(edp)阶段。这是电子计算机在管理领域应用的起步阶段。第二阶段:(1965 年至 1970 年)综合数据处理阶段,也称事务处理系统(tps)阶段。这个阶段计算机硬、软件有了很大的发展,出现了多用户的分时系统,计算机开始应用于对某一个管理子系统的控制,并具有一定的反馈功能。如库存管理系统、生产调度系统、学籍管理系统等。这个阶段的处理方式已发展为面向终端的联机实时处理。第三阶段:(1970 年至今)管理信息系统(mis)阶段。这个阶段是在宾馆中全面

17、的使用计算机把各种管理子系统的功能集中起来,构成了计算机化的全方位的信息系统,即现代管理信息系统。这个阶段的处理方式是在数据库和网络基础上组成分布式处理系统。它的特点是使用数据库和分时处理的计算机网络,并充分利用运筹学等数学方法,实现了硬件、软件和数据资源的共享。总的说来,计算机技术的发展,其性价比大幅的下降,使得其被大量广泛的使用。针对现实中的各种应用需求,相应的产生很多技术体系、技术标准,如j2ee、 。net,com/com+等。这又大大的推动了宾馆的信息化进程。其影响可以归纳为如下两点:(1)计算机已经成为我们学习和工作的得力助手:今天,计算机的价格已经十分低廉,性能却有了长足的进步。

18、它已经被应用于许多领域,计算机之所以如此流行的原因主要有以下几个方面:首先,计算机可以代替人工进行许多繁杂的劳动;其次,计算机可以节省许多资源;第三,计算机可以大大的提高人们的工作效率;第四,计算机可以使敏感文档更加安全,等等2 需求分析系统功能如图 2.1 所示: 宾馆管理系统设计与开发4前台操作数据管理系统管理客房查询客户查询客户入住客户结算客房类型客房信息客户管理退出系统收入统计物品存放查找客房信息、显示空房,未满查找可居住客房信息,登记入住查找客户居住信息,结账对客房类型的新建、删除、查找对客房信息的新建、删除、查找根据编号或名称导出客户性别籍贯查找居住起止时间、导出收入对物品存放的新

19、建、删除、查找点击退出系统查找客户信息、显示全部,在住宾馆管理系统登陆 图 2.1 系统功能图宾馆管理系统设计与开发52.1 运行环境操作系统:windows2000server 中文版、windows 2003 server 或者 windows xp数据库:sql server 2005 中文企业版.net framework:2.0 版开发工具:microsoft visual studio .net 2005 企业版 (c#)2.2 需求分析设计按功能分为以下几个模块,详细的需求分析如下几节。2.2.1 登陆模块分析用户登录和注册属于用户管理的一部分。用户可登陆系统,进行详细的操作,在

20、开始界面中输入用户名和密码就要进行用户的信息验证,如果验证失败就不能登录到主界面进行相关的操作。登录用例图如图 2.2 所示 。 图 2.2 登录用例图2.2.2 客房类型管理分析在现实当中,客户要入住宾馆时,会有不同的住房需求,房间会在不同的楼层,也有标间、双人间、豪华间等不同的需求。当然,根据房间的级别不一样,房间内部的设备也不一样,有的有电视、空调、电话等设备,有的房间没有,所以在房间的价位上也会有高低之分。客房类型管理用例图如图 2.3 所示。图 2.3 客房类型管理用例图宾馆管理系统设计与开发.3 客房信息管理分析客房信息管理分析现实生活中,客户在入住宾馆时,会咨询

21、宾馆的各种房间信息,根据自己的喜好和需要,选择不同的房间,所以这里要记录房间的详细信息,然后用户可以根据客户的不同需求,带领客户到不同的房间。操作功能包括:新建、删除、查找、保存等操作。客房信息管理用例图如图 2.4 所示。 图 2.4 客房信息管理用例图.4 客房查询分析客房查询分析用户通过客户所描述的住房需求,查询相关的匹配房间。客房查询用例图如图 2.5所示。 图 2.5 客房查询用例图.5 客户查询分析客户查询分析用户可以查看某一个客户的具体住房信息。客户查询用例图如图 2.6 所示。 图 2.6 客户查询用例图宾馆管理系统设计与开发.

22、6 客户入住分析客户入住分析客户的入住和客房查询所用的模块类型,在用户根据客户的入住条件查询到合适的房间后,用户可以点击入住,然后天入住信息。客户入住用例图如图 2.7 所示。 图 2.7 客户入住用例图.7 客户结算分析客户结算分析用户在住房结束后进行结账,当然也可以给客户打折,根据不同的客户,打折也不同。客户结算用例图如图 2.8 所示。 图 2.8 客户结算用例图.8 收入统计分析收入统计分析用户可以统计某一天或某一段时间的收入情况,也可以是某一个房间的具体收入。也可以导入具体的详细收入记录。收入统计用例图如图 2.9 所示。 图 2.9 收入统计用例图宾

23、馆管理系统设计与开发.9 物品存放分析物品存放分析客户入住宾馆时,可能随身携带贵重物品,可能放在房间会出现丢失的问题,为了解决此类问题,宾馆提供了物品存放的地方,就需要对这些存放的物品进行管理。物品存放用例图如图 2.10 所示。 图 2.10 物品存放用例图2.2.10 用户管理分析当有新的员工入职后,需要给此员工分配登陆账号和登录密码。用户管理用例图如图 2.11 所示。 图 2.11 用户管理用例图2.2.11 系统可行性分析管理上的可行性:在传统的宾馆客房管理中,管理人员不得不花费大量的时间来处理顾客投诉,例如错误查询、烦琐的登记和结帐手续、旅客费用计算错误、空余客房

24、资料不能及时提供等,从而影响酒店的经济效益。因此,宾馆的管理人员迫切地需要一套宾馆客房管理信息系统来对日常信息进行处理和维护。历史经验的积累使宾馆行业现有的管理制度和管理方法比较科学,规章制度比较齐全,原始数据比较正确。这些为系统的建设提供了有效的制度保障。技术上的可行性:系统采用 c#作为前台开发工具,以 visual studio .net 开发工具;sql server 2005 为后台数据库的文档管理系统。因此,系统的软件开发平台已成宾馆管理系统设计与开发9熟可行。硬件方面,科技的飞速发展使硬件的更新速度越来越快,容量越来越大,可靠性越来越高,价格越来越低,其硬件平台完全能满足此系统的

25、需要。经济上的可行性:系统管理和维护比较简单,除了必要的设备投资外,后期只需少量资金就可确保运转。因此对于中小型宾馆在经济上是完全可以接受的。系统的使用能大大提高员工工作效率,加速资金周转、降低各项成本及改善服务质量。能够取得良好的经济效益。综上所述,系统在管理上、技术上和经济上都是完全可行的,并且投入少、见效快。因此系统的开发是完全可行的。2.3 设计原则参照各模块的功能与具体的特点,本次设计的整个宾馆管理信息系统遵循了以下几个原则。1、实用性原则。宾馆信息管理系统的界面与操作人员的交互性好,与主机间使用client/server(客户端/服务器)结构。该系统是以宾馆管理为基础开发的通用宾馆

26、管理系统,适合中、小宾馆企业的使用。2、可靠性原则。该系统具有较高的可靠性,在系统设计及程序设计上应该强调系统的可靠性。用户的操作与数据库原定产生变化的实际状态应严格保持一致,杜绝错误记录、数据错位等情况的出现,从而保证了系统的准确性。3、可扩充性原则。应该保证该系统在系统功能的基础上,结构方面具有可扩充性。以便适应企业以后发展的需要,做出相应的功能结构上的调整。在增加新功能时,不需要更改原有系统的源代码。4、经济型原则。应该注重系统的性价比,时刻为用户着想,在同等功能的基础上尽可能的减少企业的投入。3 系统设计3.1 模块设计3.1.1 主模块主模块设计如表 3.1 所示:表 3.1 主模块

27、设计表模块子模块功能主模块整体设计总界面对功能模块有整体的概览和认知。宾馆管理系统设计与开发103.1.2 功能模块功能模块设计如表 3.2 所示:表 3.2 功能模块设计表用户登录模块1. 用户登录客房类型管理模块1. 新建客房类型信息2. 删除客房类型有关信息3. 查找客房信息客房信息管理模块1. 查找房间信息2. 删除房间信息3. 修改房间信息4. 添加新房间信息客房查询模块1. 查找客房信息2. 所有空房信息3. 所有未满客房信息客户查询模块1. 按客户号查询2. 所有客户信息3. 在住客户信息客户入住模块1. 查找客房信息2. 空闲房间信息3. 登记入住客户结算模块1按照客户查询客户

28、居住信息,结账客户管理1 按照客户编号查询2 按照客户名称查询收入统计1按客房编号查询居住信息2导出居住起止时间,需付金额物品存放1 新建存放信息2 删除存放信息3 查找存放信息用户管理1.新建用户信息2.删除用户信息3.保存用户信息功能模块退出系统1. 退出系统宾馆管理系统设计与开发113.1.3 详细功能模块设计宾馆管理系统总模块功能架构,模块图如图 3.1。 图 3.1 模块图 (1)登陆模块它用于用户的登录,登陆模块有登陆名和登录密码,用户输入用户名和密码,点击确定按钮,如果验证正确,用户将登陆到主界面,错误提示登陆失败。(2)客房类型管理模块 客房类型管理模块主要是用户用来对宾馆中的

29、房间类型进行管理的工具。当宾馆中出现新的客房类型时,用户可进行新建,建立新的客房类型信息。当用户需要查找时,系统会显示现有全部类型的房间信息。(3)客房管理模块 客房管理模块中,用户可以进行查找,通过系统的显示向客气提供所有外租的客房详细信息。包括对客房的基本信息如房间号、房间类型、房间楼层、额定人数,额定床数以及房间备注进行检索、录入和修改。用户有权对客房信息进行新建、删除和查找等操作,而客户主要是对客房信息的查询以及浏览。(4)客房查询模块 客房查询模块是客户想入住宾馆时,用户可以通过此模块向客户提供可以选择入住的房间信息。此模块中可以直接输入房间号显示此房间现在是否有人入住。也可以选择查

30、找所有空房和未满房间。在可以选择的房间中选定客户想要入住的房间,然后直接点击入住就可以保存客户入住信息。(5)客户查询模块 客户查询模块主要是用户用来检索所有入住过宾馆的客户的信息,包括客户 id、客户姓名、房间号、房间类型和入住日期。如果客户已经结过账则还显示结算日期和结算价钱。通过此模块用户还可以查询到当时在住的客户信息,选中后可以直接进行结帐功能。(6)客户入住模块 客户入住模块就是录入客户的信息以后客户选择入住的房间信息,并进行保存。(7)客户结算模块宾馆管理系统设计与开发12 通过客户结算模块可以知道客户入住宾馆需付金额,用户也可以按一定的规则对某些客户进行打折,算出实收金额。(8)

31、客户管理模块 此模块就是用户用来管理所有曾在宾馆居住过的客户信息。可以通过客户编号或客户名称查找出客户的性别和籍贯。并支持导出功能。(9)收入统计模块 用户可以根据房间编号或者是在宾馆居住的某个时间段,来查询出客户的入住时间和结账时间以及实收金额。此模块也支持导出功能。(10)物品存放模块 此模块用来管理客户存放物品的信息。用户可以进行新建,删除,和查找。(11)用户管理模块 用户管理模块是当有新的员工入职时,给员工分配用户名和密码。所有的用户在此模块都可以对此系统的用户进行管理操作。3.2 宾馆管理信息系统关系型数据库的实现microsoft sql server 2005 是一个全面的数据

32、库平台,使用集成的商业智能(bi) 工具提供了企业级的数据管理。 sql server 2005 数据库引擎为关系型数据和结构化数据提供了更安全可靠的存储功能,使您可以构建和管理用于业务的高可用和高性能的数据应用程序。sql server 2005 数据引擎是本企业数据管理解决方案的核心。此外 sql server 2005 结合了分析、报表、集成和通知功能。这使您的企业可以构建和部署经济有效的 bi 解决方案,帮助您的团队通过记分卡、 dashboard、web services 和移动设备将数据应用推向业务的各个领域。数据库在一个信息管理系统中占有非常重要的地位,数据库结构设计的好坏将直接

33、对应用系统的效率以及实现的效果产生影响。合理的数据库结构设计可以提高数据存储的效率,报填数据的完整和一致。另外,合理的数据库结构将非常有利于程序的实现。设计数据可系统是应该首先充分了解用户各个方面的要求,包括现有的以及将来可能增加的要求。与 microsoft visual studio、microsoft office system 以及新的开发工具包( 包括 business intelligence development studio)的紧密集成使 sql server 2005 与众不同。无论您是开发人员、数据库管理员、信息工作者还是决策者, sql server 2005 都可以为

34、您提供创新的解决方案,帮助您从数据中更多地获益。3.2.1 数据库分析针对一般宾馆管理信息系统的需求通过对办公工作过程的内容和数据流程分析,设计如下面所示的数据项和数据结构。1. 用户信息:包括的数项有,用户 id、用户密码、用户类别宾馆管理系统设计与开发132. 客房类型管理:包括得数据项有,客房名称、客房面积、床位数、单价、是否有空调、电话、电视、卫生间。3. 客房信息管理:包括的数据项,客房 id、客房名称、客房楼层、规定人数、床位数、窗户方向、实际入住人数。4. 客户信息:包括的数据项有,客户 id、客户名称、客户性别、客户籍贯。5. 客户住房记录:包括的数据项有,客户 id、客房 i

35、d、入住时间、结帐时间、客户消费金额。6. 收入统计:包括的数据项有,客户 id、房间 id、入住时间、结帐时间、总收入金额。7. 物品存放:包括的数据项有,客户名称、客户 id、物品名称、存放地点、存放时间。有了上面的数据结构、数据项和数据流程,我们就能进行下节的数据库设计。3.2.2 系统 e-r 图由上面的数据项,可以设计出能够满足需求的各种实体及它们之间的关系,为后面的逻辑结构设计打下基础。这些实体包含各种具体信息,通过相互之间的作用形成数据的流动。实体间 e-r 图如图 3.2 所示。 客户存住物品房间11mn 图 3.2 实体间 e-r 图客户信息实体 e-r 图如图 3.3 所示

36、。宾馆管理系统设计与开发14 客 户客户编号客户名称称客户性别别别 客户籍贯贯籍贯图 3.3 客户信息实体 e-r 图客房信息实体 e-r 图如图 3.4 所示。 房 间房间编号类型名称额定人数额定床数 客房楼层号备注图 3.4 客房信息实体 e-r 图房间类型实体 e-r 图如图 3.5 所示。 房间类型房间类型名称面积 价格床位是否有电视是否有空调是否有卫生间是否有电话间 图 3.5 客房类型实体 e-r 图客户入住信息实体 e-r 图如图 3.6 所示。宾馆管理系统设计与开发15 客户入住客户编号客户名称房间编号入住日期 图 3.6 客户入住实体 e-r 图物品存放信息实体 e-r 图如

37、图 3.7 所示。 物品存放客户编号客户名称物品名称存放时间存放地点图 3.7 物品存放信息实体 e-r 图用户信息实体 e-r 图如图 3.8 所示。 用户信息用户 id用户名称密码添加时间图 3.8 用户信息实体 e-r 图3.2.3 数据库概念设计以及创建表结构根据上节的数据项和数据结构,可以设计出能够满足用户需求的各种实体以及它们之间的关系,为后面的逻辑结构设计打下基础。这些实体包含各种具体信息,通过相互之间的作用形成数据的流动。根据上面的设计规划出的实体有:客房信息实体、客房类型实体、客户住房记录信息实体、客户信息实体和用户登录信息实体。根据实体信息创建如下表结构和存储过程。1.客房

38、信息表,如表 3.3 所示。宾馆管理系统设计与开发16 表 3.3 客房信息表 编号字段名称数据类型字段长度是否为空备注1roomidchar4主键房间 id2roomtypenamevarchar20外键类型名3roompositionvarchar20是楼层4peoplenumsmallint2是规定人数5bednumsmallint2是床位数6remarkvarchar 50是窗户方向7factpeoplenumsmaillint2是实际人数2.客房类型表,如表 3.4 所示。表 3.4 客房类型表 编号字段名称数据类型字段长度是否为空备注1roomtypenamevarchar 20否

39、唯一标示2areasmallint 2是房间面积3bednumsmallint 2是床位数4pricemoney8是房间单价5airconditionbit1默认 1空调6phonebit1默认 1电话7televisionbit1默认 1电视8toiletbit1默认 1卫生间3.客户住房记录表,如 3.5 表所示。表 3.5 客户住房记录表宾馆管理系统设计与开发17编号字段名称数据类型字段长度是否为空备注1clientidchar 16主键客户 id2roomidchar 4主键房间 id3indatedatetime8主键入住日期4checkdatedatetime8是结算日期5tota

40、lmoneymoney8是总价钱6remarkvarchar 50是备注 4.客户信息表,如 3.6 表所示。 表 3.6 客户信息表编号字段名称数据类型字段长度是否为空备注1clientidchar 16主键客户 id2clientnamevarchar20是客户名称3sexchar2是性别4nativeplacevarchar50是籍贯5.物品存放记录表,如 3.7 表所示。 表 3.7 物品存放记录表编号字段名称数据类型字段长度是否为空备注1prdidint 4主键唯一标示2usernamevarchar 50是客户名称3usernmbvarchar 50是客户身份证4prdtextva

41、rchar500是物品名称5prdpositionvarchar10是存放位置6addtimedatetime8是添加时间6.用户登陆信息表,如 3.8 表所示。 表 3.8 用户登陆信息表宾馆管理系统设计与开发18编号字段名称数据类型字段长度是否为空备注1idint4主键唯一标示1usernamevarchar 50是用户名称2userpwdvarchar 50是用户密码3adddatedatetime8是添加时间7创建客户入住的存储过程storedprocedureaddclient:create procedure storedprocedureaddclient(roomid char

42、(4)asupdate room set factpeoplenum=factpeoplenum+1 where roomid=roomidreturn8创建客户退房的存储过程 storedprocedureminusclient:create procedure dbo.storedprocedureminusclient(roomid char(4)asupdate room set factpeoplenum=factpeoplenum-1 where roomid=roomidreturn4 系统实现4.1 登录模块本部分主要用于本系统工作人员的登录,只有在分配了用户名和密码时才可以进

43、入该系统,管理相应的工作,并且工作人员不能浏览数据库中的用户表和注册用户名密码,以免非法登录,不便于管理。用户登录时将按照用户名和密码进行验证,当输入错误或没有用户名和密码时会出现相应的提示(登陆失败!) ,当用户名和密码都正确时会进入程序主界面,才能进行日常管理工作。该模块的界面设计如图 4.1 登录界面所示。宾馆管理系统设计与开发19图 4.1 登陆界面图如果登录身份验证成功,则进入主界面如图 4.2 所示:图 4.2 主界面图如果用户名或密码错误则会提示登陆失败。调试界面如图 4.3 所示:宾馆管理系统设计与开发20图 4.3 登陆失败界面图主要代码实现如下:private void b

44、tnsave_click(object sender, eventargs e) if (check() strsql = select count(*) from t_user where username= + txtname.text + and userpwd= + txtpwd.text + ;sqlconnection con = new sqlconnection(hotelmanage.datalevl.connection.connstring);try sqlcommand cmd = new sqlcommand(strsql, con);con.open();if (c

45、md.executescalar().tostring() = 1) this.dialogresult = dialogresult.ok;else messagebox.show(登陆失败!);con.close();catch (exception ex)messagebox.show(ex.message, 错误提示, messageboxbuttons.ok, messageboxicon.error); 4.2 客房类型管理模块该模块负责管理酒店所涉及到的客房类型信息。主要包括对客房类型的基本信息(如类型名称、面积、床位、价格等)进行检索、录入和修改。只有用户才具有对客房类型进行维

46、护的权利,维护完成的客房类型信息将在客房管理模块中调用。启动之后会显示如图 4.4 所示:宾馆管理系统设计与开发21图 4.4 客房类型管理界面图主要代码实现如下:private void roomtype_load(object sender, system.eventargs e)this.searchcontrol(false);this.updatelistview();private void updatelistview()this.listview1.items.clear();this.listview1.refresh();this.selectstr=select * fr

47、om roomtype;this.sqlcommand1.commandtext=this.selectstr;tryif(this.sqlconnection1.state=connectionstate.closed)this.sqlconnection1.open();this.sqldatareader1=this.sqlcommand1.executereader();while(this.sqldatareader1.read()listviewitem li = new listviewitem ( ) ;li.subitems.clear ( ) ;li.subitems0.t

48、ext = sqldatareader1roomtypename.tostring ( ) ;li.subitems.add ( sqldatareader1area.tostring ( ) ) ;li.subitems.add ( sqldatareader1bednum.tostring ( ) ) ;li.subitems.add (sqldatareader1price.tostring ( ) ) ;if(convert.toboolean(sqldatareader1aircondition) =true)li.subitems.add (是 ) ;else li.subitem

49、s.add(否);if(convert.toboolean(sqldatareader1phone) =true)li.subitems.add (是 ) ;else li.subitems.add(否);if(convert.toboolean(sqldatareader1television) =true)li.subitems.add (是 ) ;else li.subitems.add(否);if(convert.toboolean(sqldatareader1toilet) =true)li.subitems.add (是 ) ;else li.subitems.add(否);thi

50、s.listview1.items.add ( li ) ;宾馆管理系统设计与开发22catch(system.exception e)messagebox.show(e.tostring();finallythis.sqldatareader1.close();this.sqlconnection1.close();if(this.listview1.items.count=0) messagebox.show(没有记录存在,没有记录,messageboxbuttons.ok,messageboxicon.information);4.3 客房信息管理模块用户因工作需要必须向网站发布有关房间

51、信息,用户可以通过房间信息模块来修改,删除,添加新的房间信息来管理房间,根据客户要求来提供最好的服务。该模块负责管理所有宾馆提供外租的客房详细信息,包括对客房的基本信息(如客房号、客房类型、客房位置等)进行检索、录入和修改。用户有权对客房信息进行添加、删除、和修改,而客户主要是对客房信息的查询以及浏览。启动之后显示如图 4.5 所示: 图 4.5 客房信息界面图部分代码实现如下:private void btndelete_click(object sender, system.eventargs e)int i;if(messagebox.show(真的要删除吗?,删除记录,messageb

52、oxbuttons.yesno,messageboxicon.question)=dialogresult.yes)for(i=0;ithis.listview1.items.count-1) i=0; this.listview1.itemsi.selected=true;elsemessagebox.show(操作失误);return;elsereturn;4.4 客房查询模块客房查询功能和客户入住功能是密不可分的。因为在一边情况下,客户到宾馆登记入住时会根据自己的选择查看房间的状态,如果可以入住再入住。所以本系统的设计也是查询完客房后,选择某个客房可办理客户入住手续。当客房查询界面初始化

53、时因为还没有选中合适的客房,所以“入住”按钮为不可用状态。当单击“查找”按钮时程序将根据 selectstr 的内容来执行 sql 的命令。根据各个 textbox 和 comebobox的内容来确定 selectstr 的内容。在程序中还用到了更新 listview1 的函数updatelistview() 。这个函数和数据管理里面的 updatelistview 不同,因为查询是要根据查询条件来更新 listview1 的,所以在函数中增加了参数 string selectstr。当单击“空房”和“未满”按钮时,会分别列出所有空房和没有注满的客房。当查询到可入住的客房并选择后,下一步就可以

54、开始办理客户入住登记信息模块。启动程序后界面如图 4.6 所示: 图 4.6 客房查询界面图主要代码实现如下:private void btnsearch_click(object sender, system.eventargs e)bool first=true;this.selectstr=select * from room where;宾馆管理系统设计与开发24if(this.textroomid.text!=)this.selectstr=this.selectstr+ roomid=+this.textroomid.text+;elseif(boroomtype.text!=)t

55、his.selectstr=this.selectstr+ roomtype=+boroomtype.text+;first=false;if(boroomposition.text!=)if(first)this.selectstr=this.selectstr+ roomposition=+boroomposition.text+;elsethis.selectstr=this.selectstr+ and roomposition=+boroomposition.text+;first=false;if(bopeoplenum.text!=)if(first)this.selectstr

56、=this.selectstr+ peoplenum=+convert.toint16(bopeoplenum.text);elsethis.selectstr=this.selectstr+ and peoplenum=+convert.toint16(bopeoplenum.text);first=false;if(bofactpeoplenum.text!=)if(first)this.selectstr=this.selectstr+ factpeoplenum=+convert.toint16(bofactpeoplenum.text);elsethis.selectstr=this

57、.selectstr+ and factpeoplenum=+convert.toint16(bofactpeoplenum.text);first=false;if(this.textremark.text!=)if(first)this.selectstr=this.selectstr+ remark=+this.textremark.text+;else this.selectstr=this.selectstr+ and remark=+this.textremark.text+;first=false;this.updatelistview(this.selectstr);this.

58、textclear();this.btnbookin.enabled=true;4.5 客户查询模块在客户查询界面上输入要查找的客户的客户号,就可以显示此客户入住的记录,可以是一次也可以是多次。如果目前的状态还是在住,则此客户入住记录的 checkdate为空,而 totalmoney 为 0.在客户入住界面上还可以通过单击“全部”按钮来显示出所有的记录。但选中了某个没有结算的记录时单击“结算”按钮就可以进入结算收银界面。当一个客户结束了住宿去前台结算时,通常,结算人员先输入此客户的客户号,再验证客户存在着入住记录,然后选择其中待结算的记录,最后选择结算便开始收银了。启动程序后界面显示如图 4

59、.7 所示:宾馆管理系统设计与开发25图 4.7 客户查询界面图主要代码实现如下:private void btnsearch_click(object sender, system.eventargs e)if(this.textclientid.text=)messagebox.show(请先输入客户号,提示,messageboxbuttons.okcancel,messageboxicon.error);elsethis.selectstr=select * from view1_clientrecord where clientid=+this.textclientid.text+;t

60、his.updatelistview(this.selectstr);private void btncheck_click(object sender, system.eventargs e)int i;for(i=0;i 0) _reprottable = ds.tables0; export_officereport wordreport = new export_officereport(); wordreport.settemplatespath(appdomain.currentdomain.basedirectory + templates); string exceltext = wo

温馨提示

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

评论

0/150

提交评论