ImageVerifierCode 换一换
格式:DOC , 页数:49 ,大小:632.54KB ,
资源ID:3356491      下载积分:12 金币
验证码下载
登录下载
邮箱/手机:
验证码: 获取验证码
温馨提示:
支付成功后,系统会自动生成账号(用户名为邮箱或者手机号,密码是验证码),方便下次登录下载和查询订单;
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

开通VIP
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.zixin.com.cn/docdown/3356491.html】到电脑端继续下载(重复下载【60天内】不扣币)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  
声明  |  会员权益     获赠5币     写作写作

1、填表:    下载求助     留言反馈    退款申请
2、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
3、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
4、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
5、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【天****】。
6、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
7、本文档遇到问题,请及时私信或留言给本站上传会员【天****】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。

注意事项

本文(宾馆住宿管理课程设计.doc)为本站上传会员【天****】主动上传,咨信网仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知咨信网(发送邮件至1219186828@qq.com、拔打电话4008-655-100或【 微信客服】、【 QQ客服】),核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载【60天内】不扣币。 服务填表

宾馆住宿管理课程设计.doc

1、 管理信息系统课程设计报告管理信息系统课程设计报告 小组大报告小组大报告 系统名称:系统名称:中小型宾馆住宿中小型宾馆住宿管理系统设计管理系统设计 班班 级:级:管理学院管理学院工商工商 101101 班班 组组 长长:杨杨 锋锋 组组 员员:莫宇杰莫宇杰 李立创李立创 罗文生罗文生 廖军廖军 肖大城肖大城 黄丹盛黄丹盛 戈勇戈勇 指导老师:指导老师:秦秦 胜胜 君君 日日 期:期:2023 2023 年年 5 5 月月 9 9 日日 评阅成绩:评阅成绩:教师署名:教师署名:附件:附件:小组成员任务清单小组成员任务清单 成员成员 任务任务 是否组长是否组长 杨锋 第一阶段 对业务流程现行系统问

2、题提出解决方案 第三阶段 系统总体结构设计 第四阶段 系统主界面、主程序设计 是 廖军 第一阶段 系统分析阶段对系统需求和可行性分析 第二阶段 数据流程图 第四阶段 编制系统使用说明书 否 莫宇杰 第二阶段 功能结构 第二阶段 数据字典 第三阶段 系统重要代码设计 否 肖大城 第三阶段 概念结构设计 第三阶段 其它具体设计 第四阶段 系统测试 否 戈勇 第一阶段 数据流程调查 第三阶段 系统数据库设计 第三阶段 物理结构设计 否 黄丹盛 第一阶段 了解系统开发背景和对系统功能设计 第三阶段 逻辑结构设计、数据库实行 第三阶段 登录界面设计 否 罗文生 第一阶段 系统分析阶段系统介绍 第三阶段

3、系统输入输出设计 第五阶段 总结 否 小组成员设计成绩评价小组成员设计成绩评价 成员成员 组长对成员的简朴评语组长对成员的简朴评语 评价评价 莫宇杰 做事认真负责 良 肖大城 积极准备做小组工作 优 廖军 做事认真,有协调能力 优 戈勇 做事踏实 良 黄丹盛 做事认真有效率 良 罗文生 做事认真,积极 良 杨锋 做事认真负责 良 绪绪 论论 随着社会经济的发展,人们对生活质量的规定越来越高,作为服务之一的宾馆业也在不断的完善服务体制。它是集餐饮、住宿、娱乐于一体的立体化服务体系,其中顾客可以随意消费并统一结账;宾馆管理者可及时了解宾馆的所有运营情况及经营走势,找出运转成本,作为经营决策的依据。

4、只有运用先进的科学管理手段,运用计算机管理系统才干更好实现这一管理模式。一 系统调查与分析报告系统调查与分析报告 小组报告一小组报告一 1 1 系统概况系统概况 1.1.1 1 系统背景系统背景 客房管理系统是一个宾馆不可缺少的一部分,它的内容对于公司的决策者和管理者来说都是至关重要的,因此,客房管理系统应当可认为用户提供充足的信息和快捷的查询手段,但一直以来人们使用传统的人工方式管理,这种管理方式存在着许多缺陷,诸如效率低,保密性差等,并且时间一长,将产生大量的文献和数据,这对于查找、更新和维护都带来了不少的困难。随着科学技术的不断提高,计算机科学不断发展,使用计算机对宾馆客房信息进行管理,

5、具有人工管理无法比拟的优点,它检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等,可减少更多的人力物力,这些都可以极大地提高宾馆客房的管理效率,也是宾馆管理科学化、正规化,与世界接轨的重要条件。随着宾馆规模的不断扩大,客房数量的急剧增长,有关客房的各种信息量也在不断成倍增长。面对庞大的信息量,就需要有客房信息管理系统来提高客房管理工作的效率。传统手工的客房管理,管理过程繁琐而复杂,执行效率低,并且易于犯错。通过这样的系统,我们们可以做到信息的规范管理和快速查询,实现了客房信息管理的系统化、规范化和自动化,这样不仅减少了管理工作量,还提高了管理效率,减少了管理成本。1.2 1.2

6、 系统介绍系统介绍 实现一个能对宾馆客房租住信息,客人信息,结算信息的管理,实现前台操作流程较方便,清楚,高效的信息管理系统。客房管理系统的重要任务是对宾馆的客房进行管理,使用户能轻松地找到所需要的客房信息,提供订房和退房服务,并对宾馆客房的业绩进行记录。宾馆要想依托计算机网络开展现代化管理,必须一方面依据宾馆行业特定的运营方式和工作流程,在实用和可行的前提下,对电脑软件系统要开展的工作提出一些基本规定。这些规定会促使开发者和用户共同去全面进一步地分析了解宾馆的运作机制,区分经营项目类别和经营方式,掌握经营的难点和侧重点,从而才干在此基础上设计和开发出既符合宾馆的实际情况,又能充足发挥计算机管

7、理的积极作用,独具特色的管理信息系统。这个系统应当给宾馆的经营带来直接或间接的经济效益,使宾馆能在先进的计算机网络系统的支撑下在管理方面逐步上档次上水平,进一步提高效率和体现宾馆的整体形象。基本规定有:实现多操作点的信息共享,互相之间的信息传递要准确到位、快捷和顺畅。例如客人在结账时离不开入住时间、餐饮、消费、娱乐、房费、账单的互相关系等多种信息的检索和综合。系统 24 小时连续可靠运营,对重点业务实行全天候动态监管。宾馆中客人往来是随机的,因此宾馆必须提供 24 小时不间断的服务。系统维护方便可靠,有较高的安全性,满足实用性、先进性和经济性的规定。实现一个能对宾馆客房租住信息,客人信息,结算

8、信息的管理,实现前台操作流程较方便,清楚,高效的信息管理系统。1.3 1.3 系统开发计划系统开发计划 这个阶段时间很短,工作内容是通过一段时间的资料收集,然后讨论系统功能需求分析,数据库设计,代码实现,系统测试和文档整理等工作的划分,重要目的是为了便于以后开展工作。该项目产品重要涉及程序和文献。所要提交的程序重要有代码和可执行程序;所要提交的文献有设计报告。在本系统的设计过程中,为了克服这些困难,满足管理工作的需要,我们们采用了下面的一些原则。统一各种原始单据的格式,统一报表的格式。删除不必要的管理冗余,实现管理规范化、科学化。程序代码标准化,软件统一化,保证软件的可维护性和实用性。界面尽量

9、简朴化,做到实用、方便,尽量满足公司中不同层次员工的需要。1.4 1.4 可行性分析可行性分析 目前宾馆客房管理系统在宾馆中已普遍使用,使用该项目的开发研究有很好发展前景。虽然我们们开始的时间较紧迫且相关知识点少,这给项目开发带来一定的困难,但从我们们所具有的系统开发所需的人员、软件、硬件资源和工作环境来说该项目的开发也是应当具有可行性的。(1)经济可行性分析 构建管理信息系统的必要性在于传统管理模式的弊端严重影响了我们国宾馆管理现代化的进程以及先进的管理信息系统具有巨大的优势从而可以促进我们国宾馆管理的现代化,而宾馆管理的现代化就是规定管理的高效率,多样化,已经各自数据提取的准确。传统模式的

10、弊端。传统的宾馆管理模式使得宾馆无法保持高效率的管理,现举例加以说明:(1)查询客房的时间长。客房管理者必须一张张地翻阅大量的住宿登记单,寻找符合条件的信息。书写不规范或客人已换房以及电话占线等问题都会使得查询的时间延长。(2)结账容易出现错、跑账。当客人结账离店时,客房管理总台根据客人的明细表,将客人的各种单据一一相加才干结账,这样难免出现错误,导致客人等待时间长。此外,结账时也很容易出现跑账的情况,给宾馆带来经济损失。(3)重要客人不重要。在内部协调与管理方面,当有 VIP 人住时客户管理前厅部就要填写多联告知单分送各部门,安排放鲜花、水果、总经理名片以及用餐规定等具体事宜。若有一个部门收

11、到信息晚一点,就会把 VIP 当成普通客人对待,将会导致不利影响。(4)计算审核困难。计算审核是对一天经营情况进行记录、分析和审核,然后以各种报表的形式送交总经理和有关部门并归档。然而在手工管理模式下,天天记录审核需要花很多时间。客房率高时花费在计算机上的时间则更长,因此,审计员大部分时间都花费在做加法上,很少有时间去分析和审计。总的来说,宾馆作业是一个实时系统。如对数据不能进行及时的解决,就会导致走单。从而导致管理上的混乱,给宾馆的经济方面和信誉方面带来损失。同时,宾馆的账务是连续不断的,假如由于一时的障碍而导致了数据的不完整性,对宾馆未来发展计划的制定也会带来负面的影响,而管理信息系统就能

12、解决以上问题。(2)技术可行性分析 本系统采用 vc+开发的,vc+i 是一种应用很广泛、实用且功能很强大的系统开发工具。通过对 vc+的探索学习,了解到:在 Windows 环境下编程的传统方法已经难以胜任。由于传统的结构化编程使用的是面向过程,按顺序进行的机制,这种方法的缺陷是编写程序的人员始终要关心什么时候发生什么事情,面对Windows 事件驱动的工作方式,解决事件及其也许的组合会是一个非常棘手并且工作量很大的工作。面向对象程序设计立意于创建软件重用代码,具有更好地模拟现实世界环境的能力,这使它被公认为自上而下编程的优胜者。它通过给程序加入扩展语句,把函数“封装”进 Windows 编

13、程所必需的“对象”中,使得复杂的工作条理清楚,编写容易。一些初期的程序语言如 Pascal,Smalltalk 等,虽然具有面向对象的特性,但不能轻松地画出可视化对象,与用户交互能力较差,仍然要编写大量的代码。而 vc+使用“可视化”的编程方法,程序员不必建立对象,运用 vc+所提供的可视控件,只要在提供的程序框架中加入完毕功能的代码,如选择命令,移动鼠标等,而不必考虑按精确顺序执行的每个环节。在这种机制下,不必编写一个大型的程序,而是建立一个由若干个微小程序组成的应用程序,这些微小的程序可以由用户启动的事件来触发。这样就可以快速创建强大的应用程序而无需涉及不必要的细节。简朴地说,“可视化编程

14、”就是使用 vc+语言,运用它所提供的可视化控件来创建“对象”,这是一种编程方法的新概念。(3)社会上的可行性 近年来,软件产业以年平均超过 30%的速度增长,软件和信息技术在国民经济和社会各领域得到广泛应用,成为推动产业结构调整、产业技术改造的重要基础和支撑,极大地推动了我们国信息化建设进程,各个行业目前正处在信息化解决的应用时期,有关的政策法规对公司信息化给予了一个宽松的环境和平台。二、二、系统需求分析系统需求分析 1.1.功能结构功能结构 宾馆住宿管理系统的数据库功能重要体现在对各种信息的提供、保存、更新和查询操作上涉及客房信息。客房类型信息、客户记录信息、客户信息、员工信息和员工工作信

15、息。各个部分的数据内容又有内在的联系。针对该系统的数据特点,可以总结如下的需求:客房信息涉及客房的具体信息 客户信息记录客户登记时的具体信息 入住信息是客户信息和客房信息之间的关联 每个员工信息都相应一个员工类型 每个客房都相应一个员工信息 根据以上需求分析,给出以下功能模块图:某宾馆客房管理系统客户信息管理价目信息管理客房类型管理客房信息管理费用管理入住和退房管理客户信息查询客户信息修改入住登记退房登记客户信息删除客户信息添加价目查询价目添加查看类型添加类型修改类型删除类型客房信息添加客房信息查询客房信息删除客房信息修改查询费用信息修改费用信息添加费用信息删除费用信息 图 1 功能模块图 2

16、.2.数据流程图数据流程图 1业务流程图,如图 2.1 所示。图 2.1 客房管理业务流程图(1)顶层数据流程图,如图 2.2 所示。客户宾馆管理者客人入住、续房、退房办理客人业务宾馆客房管理系统更新信息查询信息 图 2.2 顶层数据流程图(2)第二层数据流图,如图 2.3 所示。客户入住续住退房客房信息表住宿信息表客户信息表客房物品信息表更新信息宾馆管理者空房信息客户信息房号信息补交费用单房号信息结账信息 图 2.3 第二层数据流图(3)宾馆开房数据流程图,如图 2.4 所示。客户P1.1查询客房条件P1.2客户登记客房信息表客户信息表住宿信息表选定房间信息客户信息要求空房信息缴费单 图 2

17、.4 宾馆开房数据流程图(4)客户续房数据流程图,如图 2.5 所示。客户P2.1查询住宿信息P2.2修改登记表住宿信息表补交费用房号信息续住信息 图 2.5 客户续房数据流程图(5)客人退房数据流程图,如图 2.6 所示。客户P3.1检查客房物品P3.2整理检查结果P3.3物品赔偿P3.4查询住房时间P3.6扣除费用P3.5退款P3.8注销注册P3.7 退押金住宿信息表客户信息表客房信息表物品赔偿证明单检查结果房号信息物品完好信息时间信息提前退房延迟退房正常退房结算信息 图 2.6 客人退房数据流程图 3.3.数据字典数据字典 数据字典是关于数据信息的集合,即对数据流图中包含的所有元素的定义

18、的集合。1.数据项 表 3-1.客户(Travellers)信息:表中列名表中列名 数据类型数据类型 可否为空可否为空 说明说明 Tno Int Not null(主键)客户编号 Tname Char(10)Not null 客户姓名 Tsex Char(2)Not null 客户性别 Tid Char(20)Not null 客户身份证号 表 3-2.客房(Rooms)信息:表中列名表中列名 数据类型数据类型 可否为空可否为空 说明说明 Rno Int Not null(主键)客房号 Rstyle Char(10)Not null 客房类型 Rprice Int 客房单价 Rstate Ch

19、ar(10)客房状态 Rtel Char(15)客房电话 表 3-3.客户住宿(Living)信息:表中列名表中列名 数据类型数据类型 可否为空可否为空 说明说明 Tno Int Not null(主键)客户编号 Rno Int Not null(主键)客房号 Tcomedate Datetime Not null 入住日期 Tleftdate Datetime Not null 结算日期 Ttime Int 住宿时间 Tamount Int 房费 表 3-4.客房物品(Roomitem)信息:表中列名 数据类型 可否为空 说明 Rno Int Not null 客房号 Ritemno Cha

20、r(10)Not null(主键)客房物品编号 Ritemname Char(20)Not null 客房物品名称 Ritemstate Char(10)物品状态 Ritemprice Int 客房物品单价 Ritemnum Int 物品数量 2.数据结构 根据上述系统功能分析和需求总结,设计如下的数据结构 数据结构名 含义说明 客房类型 涉及客房类型(单间、标间)、客房信息 涉及客房编号、客房价格、客房所属类型、负责人编号 客户信息 客户身份证号、客户姓名、客户性别、客户年龄、联系方式、客房编号 登记信息 客房编号、客户身份证号、入住日期、退房日期、账目结算 员工信息 员工编号、姓名、年龄、

21、职位、联系方式、工资、所属部门 员工类型 职位、底薪、工作时间 客房物品 客房剩余物品、客房所需物品等 3.数据流 数据流名称:客房登记信息 位置:宾馆登录解决 说明:“登记”“查询”“反馈”数据流名称:退房登记信息 位置:登录解决宾馆人员 说明:显示客户消费各项信息 数据流名称:宾馆员工管理 位置:宾馆员工信息 说明:显示员工各项基本信息 数据流名称:客房物品管理 位置:管理人员宾馆仓库管理人员保护 说明:指定保护物品,保障宾馆各种所需物品的供求 4.数据存储 数据存储名称:客户登记表 输入:客户姓名、身份证号、房间号输出:登录解决表格 数据结构:客户姓名+身份证号 说明:该注册信息由宾馆保

22、密 数据存储名称:管理人员登记表 输入:管理人员姓名、工号、输出:登录解决表格 数据结构:管理人员姓名+工号 说明:该注册信息由宾馆保密 数据存储名称:退房登记表 输入:客户姓名、房间号输出:登录解决表格 数据结构:客户姓名+房间号 说明:显示客户消费信息 5解决过程(1)客户入住登记(管理人员登记信息;输入:客户姓名、身份证号;输出:客户房间号;解决:在宾馆住宿系统中,登记好各项信息)(2)管理人员登录(管理人员注册帐号及登录;输入:姓名、工号;输出:管理人员登录验证;解决:在宾馆住宿系统中,登记好各项信息完毕登录)(3)客户预订登记(管理人员登记信息;输入:客户姓名、身份证号、预订号;输出

23、:客户房间号;解决:在宾馆住宿系统中,登记好各项信息)(4)客户退房登记(管理人员登记信息;输入:客户姓名、房间号;输出:客户消费信息;解决:在宾馆住宿系统中,显示消费信息)三、三、系统设计系统设计 3.1 3.1 系统总体结构设计系统总体结构设计 宾馆客房管理信息系统的总体结构设计图如下图 6 所示:图 6 商业公司库存管理信息系统模块结构图 3.2 3.2 系统重要代码设计系统重要代码设计 void init_rooms()初始条件:文献 hotel.txt 存在。操作结果:各种房间都建立各自的链表,并已初始化。若文献 hotel.txt中有入住房间的信息,则从文献中读取信息,并存入链表之

24、中。char function_print()初始条件:链表的初始化操作已顺利进行。操作结果:输出本程序的各种功能,给以用户操作提醒。并将用户的选择返回给主函数。void print_livein(int i)初始条件:客户选择了入住方案,并入住房间。操作结果:输出已入住客户的信息,以及入住客户的总数。void print_book(int i)初始条件:客户选择了预定方案,并预定房间。宾馆客房管理系统 前台操作 预定管理 信息查询 报表记录 开房登记 退房结帐 房状态查看 预定房间 预定入住 解除预定 在住客人列预定客人列历史客人列开房记录记预定登记表 操作结果:输出被预订房间的信息,以及已

25、预定房间的总数。void print_cusinf()初始条件:有入住额客户。操作结果:输出各种房间的入住信息。int print_chose(int regnum,int regday)初始条件:输入入住人数与住宿天数。操作结果:根据入住人数提供房间选择方案,并显示各种方案的花费,以供客户进行选择。void reg_livein(int serial,int regday)void Regist()初始条件:客户选择了某一种入住方案。操作结果:根据客户的选择方案,登记客户信息,并将其记录在链表中。void book_room()初始条件:客户选择了某一种预定方案。操作结果:根据客户的选择方案

26、,登记客户信息,并将其记录在链表中。void Queryempty()初始条件:选择所要查询的客房种类。操作结果:输出显示该种房间剩余的房间号。void Save(char filename)初始条件:建立一个文本文献。操作结果:将所有入住房间的信息记录到文本文献”hotel.txt”中。void modify()初始条件:需修改信息的客户名称,并且存在该客户入住的房间信息。操作结果:对于三个存储房间信息的链表进行查找,若存在,则进行修改选择并修改,若不存在,则退出修改。3.3 3.3 系统输入输出设计系统输入输出设计 程序每次执行时,一方面从文本文献 hotel.txt 中语句提取数据生成链

27、表,若文献 hotel.txt 中无房间信息,则输出“文献中无内容可以导入”,然后输出操作提醒。输入命令提醒中的序号便可以选择相应的命令,增长记录时逐项提醒输入入住人数和入住天数,然后提醒各种可行方案供旅客选择,根据提醒,选择相应的序号后,再通过登记,就可以将信息添加到链表中。查询分为查询空房和查询已住用户信息,在主菜单中按照命令提醒进行选择。假如查询空房,就将未入住旅客的各种类型客房显示在命令中,用户按照提醒命令进行选择,就可以将空房的房间号码输出;查询已住客房的信息时,根据提醒操作可以查看三种不同类型房间的入住信息。保存至文献即将链表中的信息写到文献中。选择主菜单中的退出则退出程序。3.4

28、 3.4 系统数据库设计系统数据库设计 3.4.1 3.4.1 概念结构设计概念结构设计 1 1、概念设计说明概念设计说明 通常,把每一类数据对象的个体称为实体,而每一类对象的集合称为“实体集”。而 ER 模型的重要成分是实体、联系和属性。假如用矩形框表达实体集,用带半圆的矩形表达属性,用线段连接实体集与属性,当一个属性或属性组合指定为主码时,在实体集与属性的连接上标记一斜线,则可以表达实体集及每个实体集涉及的属性,实体集之间存在各种关系,通常把这种关系称为“联系”。联系有三类:一对一的联系(1:1);一对多的联系(1:n);多对多的联系(m:n)。所以,此宾馆住宿管理系统中实体集与实体集的联

29、系,ER 模型如下:2 2、E E-R R 图图 各实体之间的 E-R 图,如图 3-1 所示。客户客房物品住宿提供使用N11N1M 图 3-1 实体之间的 E-R 图 局部 E-R 图如下:客户信息实体的 E-R 图,如图 1 所示。客户客户编号客户姓名客户性别客户身份证号 图 1 客户信息实体的 ER 图 客房信息实体的 E-R 图,如图 2 所示。客房客房号客房类型客房单价客房状态客房电话 图 2 客房信息实体的 ER 图 客户住宿实体的 E-R 图,如图 3 所示。客户住宿客房号客户编号入住日期结算日期住宿时间房费 图 3 客户住宿实体的 ER 图 客房物品信息实体的 E-R 图,如图

30、 4 所示。客房物品客房号客房物品编号客房物品名称客房物品单价物品数量物品状态 图 4 客房物品实体的 ER 图 全局 E-R 图如下:顾客 客房 姓名 身份证 联系电话 工作单位 具体地址 住宿 房间号码 所 在 楼价格 房间类型 1 1 1 N N N 1 1 1 总 E-R 实体图 3.3.5 5 逻辑结构设计逻辑结构设计 1 E1 E-R R 图到关系模式的转换图到关系模式的转换 关系模式:客房(客房编号、客房类型、客房价格、负责人编号)员工(员工编号、员工姓名、员工年龄、员工联系方式、员工职位、员工工资、领导编号)客户(客户身份证号、客户姓名、客户性别、客户年龄、联系方式、入住日期、

31、管理 大堂经理 名字 工作编号 操作密码 年龄 退房日期、入住客房编号)客户_客房(客房编号、客户身份证号、入住日期、退房日期)客户_员工(客户身份证号、员工编号、服务)2.2.实体关系模式分析实体关系模式分析 由于客房编号、员工编号、客户身份证号、客房编码等每个属性都是不可再分的,且均是简朴属性,因此属于第一范式。由于客房类型、价格,员工年龄、职位、工资等非主属性完全函数依赖,因此属于第二范式。而员工服务等属于非主属性完全函数依赖。又由于非主属性不传递函数依赖的主关系键。因此属于第三范式。3.3.6 6 物理结构设计物理结构设计 1.数据分析(1)常查询项:客房信息、客户信息、员工信息(2)

32、常变更项:客户姓名、身份证号、入住日期、退房日期、结算金额等(3)不易变更项:客房类型、客房价格等 2.索引的建立 对“客房”、“员工”、“客户”建立索引,方便数据的查询。3数据库存放位置的设计 为提高系统性能,应根据应用情况把数据库的常查询项、常变更项、不易变更项分开存放。4.建立视图 对权限的赋予操作,保障数据库的安全。3.3.7 7 数据库实行数据库实行 3.3.7.1 创建数据库创建数据库 3.3.8 8 其它具体设计其它具体设计 一方面,程序开始执行先将文本文献 hotel.txt 中的数据读取并存储在链表中,然后按照功能操作提醒进行选择,客户通过登记入住后便可以的到一个新的链表,最

33、终可以选择“保存至文献”进行文献保存操作。本程序可以实现的功能涉及:查询,添加,修改。现已修改操作为例讲解一下解决过程设计。修改操作则是通过客户输入所要修改信息的客户名称来进行查找的,一方面运用 for()循环语句拟定链表的信息中是否具有该用户,若存在该用户,则变换命令提醒界面,客户根据提醒再次进行所要修改的数据的选择,根据用户输入的选择是哪一项,运用 switch()进行分别的修改操作,switch()语句下的每个case 都有具体的输入数据提醒和输入语句。若选择退出修改,则会跳转回原先的菜单界面供用户进行其他操作。整体的用户界面是通过 do.while()语句使得菜单界面循环显示,每次执行

34、完一个命令后再次显示出菜单界面,直到选择退出命令,循环终止,程序停止执行。4 4 系统实行系统实行 4.1 4.1 系统主界面、主程序设计系统主界面、主程序设计 4.1.14.1.1 登录界面设计登录界面设计 在 CRanjianshejiView:OnInitialUpdate()中添加代码 CdengluDlg dlg;dlg.DoModal();if(dlg.m_gonghao!=nxm|dlg.m_mima!=123456)MessageBox(密码错误!);exit(0);4.1.2 4.1.2 主程序设计主程序设计#include#include#include#include#i

35、nclude#include#define N 500#define TRUE 1#define FALSE 0 /*定义顾客结构体*/typedef struct Passenger char name10;/姓名 int roomNO20;/房号 int price5;/各等级房间价格 int remain5;/各等级空房间数 void PassWord();/系统密码 void order();/预定 void del();/取消预定 void addnum(Passenger*);void pgsearch();void query_remain();/按空余房间查询 void que

36、ry_price();/按各等级价格查询 void display();/浏览预定储存信息 PG;/*结构体成员赋值*/int price5=500,300,150,100,50;/各等级价格 int remain5=100,100,100,100,100;/各级房间初始剩余数 int A=500,B=400,C=300,D=200,E=100;/计算门牌号 static int p=0;static int TOTAL=0;/记录人数(全局变量)char line10;PG gestersN;/结构体变量 gesters 数组 /*加密函数*/void PassWord()int i,m=0

37、;char x16=t,a,n,g,s,h;/密码 char w17;cout欢迎进入客房服务终端nn;cout请输入系统管理密码:(6 位数,数字或大小写字母)endl;to1:for(i=0;i=0)&amt;&amt;(w0i=a)&amt;&amt;(w0i=A)&amt;&amt;(w0i=Z)&amt;&amt;(i!=6)printf(*);/输出*覆盖密码原值 else if(i!=6)goto to2;if(x00!=w00)|(x01!=w01)/输入密码若不对的|(x02!=w02)|(x03!=w03)|(x04!=w04)|(x05!=w05)to2:m+;if(m=

38、3)/输入超过 3 次,自动关闭应用程序 printf(ntt 你输入密码已超过三次,程序自动关闭!n);exit(0);printf(nnt 密码错误,请重试.n);goto to1;/密码错误未超过 3 次,重新输入 coutn 通过密码验证,程序启动!nn;system(cls);/清屏 /*预定房间*/void order()loop1:FILE*fp;PG g;/定义结构体 Passengers 变量 if(p=0)/判断是否为结构体数组的第一个变量信息 if(fp=fopen(roombook.txt,w)=NULL)/写入方式打开文献 coutt 创建存档文献失败!endl;re

39、turn;p+;else/非结构体数组第一个变量信息 if(fp=fopen(roombook.txt,ab+)=NULL)/追加方式打开文献 coutt 不可以打开这个文献n;return;system(cls);cout欢迎顾客光顾nn;/输入顾客信息 int region,count=0,total,j=0;int q=1,w;char k,u;char c=y;TOTAL+;coutk;loop2:if(k=m|k=M)w=1;/1 为男性 else if(k=f|k=F)w=2;/2 为女性 else coutk;goto loop2;/犯错解决 if(w=1)coutn 先生,请输

40、入您的姓名:n;else coutg.name;/输入姓名 for(;)int i=0,u,back=0;loop3:cout请问您想购买哪总等级的房间;coutline0;/输入订房等级 region=line0;if(region5|region1)/判断等级对的性 coutn 输入犯错,请重试!nn;continue;region=region-48;if(remainregion-11)/判断空余房间数 cout该等级客房已售完!n;continue;coutline;count=atoi(line);if(countremainregion-1)/判断所需房间数是否充足 cout房间

41、数量不够!n;continue;if(count1)couts 先生,你已经预定了c 等级的房间,&amt;g.name,region+64);else printf(n s 女士,你已经预定了c 等级的房间,&amt;g.name,region+64);coutcount 间,门牌号是:nn;for(i=back,u=0;icount+back;i+)/记录并输出顾客开取房间号码 if(region=1)/若为 A 等房 A+=1;couttA;g.roomNOi=A;else if(region=2)/若为 B 等房 B+=1;couttB;g.roomNOi=B;else if(regi

42、on=3)/若为 C 等房 C+=1;couttC;g.roomNOi=C;else if(region=4)/若为 D 等房 D+=1;couttD;g.roomNOi=D;else/若为 E 等房 E+=1;coutt6=0)/每行输出 6 个号 coutn;back+=count;/判断反复预定期补录门牌号 coutnnt 您本次应付的总金额为total元。endl;/输出金额 coutnt 您的预订成功,欢迎光顾本宾馆!n;coutc;if(c=y|c=Y)goto loop3;/若反复预定房间 else break;/不反复预定期跳出 while()循环 if(p=1)/如输入的为第

43、一个信息,把信息赋给 gesters0 strcpy(gesters0.name,g.name);for(int j=0;j20;j+)gesters0.roomNOj=g.roomNOj;fwrite(&amt;gesters,sizeof(struct Passenger),1,fp);/读入磁盘 p+;/描述使第一个信息不被覆盖判断 fclose(fp);else/如不是第一个输入信息 fwrite(&amt;g,sizeof(struct Passenger),1,fp);/以添加形式读入磁盘 rewind(fp);fclose(fp);coutu;if(u=y|u=Y)goto lo

44、op1;/添加新的顾客信息 /*显示预定的客户信息*/void display()FILE*fp;if(fp=fopen(roombook.txt,r)=NULL)/读出形式打开文献 cout文献打开失败,无法读取数据!endl;return;if(TOTAL=0)/判断是否为空文献 p=0;coutn 很抱歉,列表中没有可遍历的顾客信息!n;return;cout客房预定情况如下:nt 姓名t 房间号n;/不为空时输出所有信息 for(int j=0;(fread(&amt;gestersj,sizeof(struct Passenger),1,fp)!=0,j=TOTAL;j+)coutn

45、tgestersj.namet;/姓名 for(int i=0,w=1;i100&amt;&amt;gestersj.roomNOi600;i+,w+)coutgestersj.roomNOi6=0)cout=100&amt;&amt;ad.roomNOj100&amt;&amt;ad.roomNOj200&amt;&amt;ad.roomNOj300&amt;&amt;ad.roomNOj400&amt;&amt;ad.roomNOj500&amt;&amt;ad.roomNOj=600)/若为 A 等房 remain0=remain0+1;/*删除客户预定资料*/void del()FIL

46、E*fp;int T;char delname10,c=y;if(fp=fopen(roombook.txt,w)=NULL)coutn 信息文献打开失败!endl;return;while(c=y|c=Y)coutendl;display();/每次删除前遍历订房信息 if(TOTAL=0)p=0;system(cls);cout无效删除,系统自动返回上级:n;break;coutnn 请输入要取消的订户姓名:delname;/输入目的删除姓名 for(int i=0;i=TOTAL;i+)T=TOTAL;if(strcmp(gestersi.name,delname)=0)addnum(g

47、estersi);/运营工具函数,释放被占房间 TOTAL-;for(;(gestersi.name)!=NULL;i+)for(;i=TOTAL;i+)gestersi=gestersi+1;/跳过被删除信息节点 coutn 删除成功!n;fwrite(&amt;gesters,sizeof(struct Passenger),TOTAL,fp);/刷新信息 if(TOTAL=T)/如若总数不变(即没被删除)时解决 coutn 查无此顾客!endl;coutc;fclose(fp);/*客户查询函数(按姓名查询)*/void pgsearch()FILE*fp;char searchname

48、10,c=y;if(fp=fopen(roombook.txt,w)=NULL)cout文献打开失败,无法读取数据!endl;return;if(TOTAL=0)p=0;/p 为 0,使得再次输入顾客信息时第一个赋给 gesters0 coutn 很抱歉,没有顾客可以查询!nn;return;/roombook.txt文献中没有信息,跳出本函数 while(c=y|c=Y)/顾客查询循环体 int y=FALSE;for(int j=0;(fread(&amt;gestersj,sizeof(struct Passenger),1,fp)!=0,jTOTAL;j+)coutnn 请输入要查询的

49、订户姓名:searchname;/输入目的查询姓名 for(int i=0;i=TOTAL;i+)if(strcmp(gestersi.name,searchname)=0)/若是查到了顾客 y=TRUE;cout您所查询的顾客资料为:nt 姓名t 房间号n;coutntgestersj.namet;/输出顾客姓名 for(int i=0,w=1;i100&amt;&amt;gestersj.roomNOi600;i+,w+)coutgestersj.roomNOi6=0)coutntt;/输出格式为每行 6 六个 if(y!=TRUE)/若是没有查到 coutnt 很抱歉,没有您要查询的顾客

50、资料!nn;break;/跳出 while()循环 coutc;fclose(fp);/*按剩余房间查询*/void query_remain()time_t tt;/读取系统当前时间 time(&amt;tt);coutnt 本地时间为:ctime(&amt;tt)endl;/显示时间 coutnt 目前宾馆各等级的待预定房间情况如下:nn;/显示个等级房间空余数 coutttA 等tB 等tC 等tD 等tE 等nendl;coutttremain0tremain1tremain2tremain3tremain4endl;coutnt-显示完毕-nendl;system(pause);sy

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服