酒店客房预订管理系统.doc_第1页
酒店客房预订管理系统.doc_第2页
酒店客房预订管理系统.doc_第3页
酒店客房预订管理系统.doc_第4页
酒店客房预订管理系统.doc_第5页
已阅读5页,还剩34页未读 继续免费阅读

下载本文档

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

文档简介

精品文档 1欢迎下载 院院 系 系 计算机科学学院计算机科学学院 专业 年级 专业 年级 20102010 计科 计科 1 1 大班 大班 课程名称 课程名称 软件工程软件工程 项目名称 项目名称 酒店客房预订管理系统酒店客房预订管理系统 学号姓名 学号姓名 1006106410061064 朱辰朱辰 学号姓名 学号姓名 1006106510061065 徐丽徐丽 学号姓名 学号姓名 1008110910081109 张赛北张赛北 学号姓名 学号姓名 1015125110151251 张胜南张胜南 指导教师 指导教师 刘卫平刘卫平 20122012 年年 1212 月月 2323 日日 精品文档 2欢迎下载 目录目录 第一章第一章 系统概述系统概述 1 1 1 1 系统开发背景和意义 1 1 2 开发语言简介 1 1 3 本系统简介 1 1 4 系统运行环境 2 第第二二章章 系统需求分析系统需求分析 2 2 2 1 用户需求 2 2 2 功能需求 3 2 3 性能需求 3 2 4 出错处理需求 3 2 5 功能图 3 2 6 数据流图 4 2 7 E R 图 5 第第三三章章 系统总体设计系统总体设计 5 5 3 1 系统功能设计 5 3 2 系统功能模块图 6 第第四四章章 系统详细设计系统详细设计 8 8 4 1 系统详细设计进度规划 甘特图 8 4 2 系统详细设计任务 8 4 3 系统物理方案配置设计 9 4 4 系统输入输出设计 9 4 5 系统程序流程图 11 第第五五章章 模块设计思路分析模块设计思路分析 1 11 1 第第六六章章 使用说明使用说明 1 12 2 第七章第七章 程序源代码程序源代码 1 16 6 结束语结束语 3 36 6 参考文献参考文献 3 37 7 精品文档 3欢迎下载 第一章第一章 系统概述系统概述 1 11 1 系统开发背景和意义系统开发背景和意义 随着人类社会进入信息时代 计算机越来越多地活跃在社会各个领域 成为不可缺少的工具 尤其在管理方面 管理软件的出现使大量繁琐复杂的问题变得简单易行 在人民生活水平提高的同 时 餐饮 住宿 娱乐业在服务行业中占有越来越重要的地位 要使在当前酒店行业日趋激烈的竞 争中脱颖而出 必须努力发展自己在管理方面的特色 避免传统管理方法的失误 使酒店的信誉以 及各个管理方面都能够出现零失误 给管理者和普通的营业员带来操作上的方便 对整个酒店各个 方面的业务带来快捷 方便 高效的服务 才是管理软件的成功之处 现今酒店宾馆的规模不断扩大 客户数量急剧增加 有关客户的各种信息也成倍增长 尤其是 大量的客房预订信息 面对庞大的信息量 需要有客户信息管理系统来提高客户管理工作的效率 通过这样的系统 可以做到信息的规范管理 科学统计和快速查询 从而减少管理方面的工作量 当前许多酒店正在逐步完善客户信息管理工作 需要一个能满足内部管理需求 提高管理效率的应 用系统进行内部管理 许多酒店经过多年的发展 规模不断扩大 客流量成倍增长 积累了大量的 客户信息急需进行统一管理以防信息的流失 因此 许多酒店需要一个功能全面的客户信息管理系 统来进行管理 以使管理客户信息的工作在该系统的配合下更加高效和便捷 1 21 2 开发语言简介开发语言简介 酒店客房预订信息管理系统是一个对客户全方面管理的程序 该客房预订信息管理系统是在 Visual C 6 0 平台下设计开发 以 TXT 文档为后台数据库 利用 Visual C 6 0 提供的各种面向对象的开发工具 首先在短时间内建立系统应用原型 然 后 对初始原型系统进行需求迭代 不断修正和改进 直到形成用户满意的可行系统 Microsoft 的 Visual C 6 0 作为一种面向网络 支持各种用户终端的开发平台环境 推动新一代因特网的发 展 真正地让人们可以在任何时间 任何地点 通过任何设备得到信息 1 31 3 本系统简介本系统简介 现代化的酒店组织庞大 服务项目多 信息量大 想要提高劳动生产 降低成本 提高服务质 量和管理水平 进而促进经济效益 必须借助计算机来进行现代化的信息管理 酒店管理系统正是 为此而设计的 优秀的酒店客房管理系统操作方便 灵活性好 系统安全性高 运行稳定 这也是 我所设计本程序的目的之一 本系统针对用户和客户以及客房的管理采用了当今常用的 C S 结构而 精品文档 4欢迎下载 设计 采用面向对象的语言开发而成 实现对客户预订信息的基本管理 包括订房 退房 客房信 息 客户信息的添加 修改和查询 1 41 4 系统运行环境系统运行环境 机型 PC 处理器 奔四或更高 内存 512M 或更高 硬盘 4G 或更高 输入输出设备 键盘 扫描仪 打印机 显示器等 数据库软件 Notepad 编程工具 编程语言 visual C 编译软件 Microsoft Visual C 6 0 操作系统 Microsoft Windows XP 第二章第二章 系统需求分析系统需求分析 2 12 1 用户需求用户需求 该酒店预订管理系统使用户能迅速而便捷的了解和查询酒店信息 根据自己的需求来预订房间 一个方便地实现对客房变更 房价及预订信息的自动化操作 使用该系统全面管理酒店信息 为 用户节省时间和人力 更能全面 有效地掌握酒店基本情况 及时获取最新的准确资料和信息 该 软件能系统管理酒店的信息 功能与实现方面有相当的针对性和实用性 该系统的主要功能有酒店 信息管理 房间类型管理 订单信息管理 业务人员编辑和系统用户管理 2 22 2 功能需求功能需求 本系统主要具备以下几个基本功能 精品文档 5欢迎下载 1 客房预订 按照客户需求 为新客户分配新客房 2 退房管理 删除已退客户信息 及时更新客房留存状态 方便新客户入住 3 客房设置 可以添加新客房 修改客房描述 房间等级 内部设施等 删除客房 4 客户设置 可以添加新客户 修改客户信息 删除已退订客户等 可准确了解每一客 户的预订信息 5 房间预订情况查询 可按客户号 房号查询 方便实用 在众多房间 客户中准确查询到某一 个房间或客户 2 32 3 性能需求性能需求 1 1 技术可行性 该客房预订信息管理系统是在 Visual C 6 0 平台下设计开发 以 TXT 文档为后台数据库 采用面向对象的语言开发而成 系统的客户端在 Windows 平台下运行 服务器端可在 Windows 平台 或 UNIX 平台下运行 2 经济可行性 该系统节省人力资源成本的同时 可以提高业务效率 并能够及时 准确 迅速地满足顾客服 务的需求 系统的开发成本低 现有的 PC 机即可提供该系统开发工作需要的所有硬件设备环境 3 操作可行性 直接浏览网页的形式 利用鼠标进行傻瓜式的操作 操作中的每一步都会有相应的提示 这样可以让更多的人群在最短的时间内学会使用他 2 42 4 出错处理需求出错处理需求 在进行每一步操作时 都会有相应的提示操作 当系统出错时 会有相应的提示信息让 你寻找错误 它的简单 易学的特性使得能够广泛普及 让更多的人去使用 为了更好地阐述需求更能 我们做了详细的图形说明 为了更好地阐述需求更能 我们做了详细的图形说明 2 52 5 系统功能图系统功能图 精品文档 6欢迎下载 2 62 6 系统数据流图系统数据流图 精品文档 7欢迎下载 2 72 7 E RE R 图图 第三章第三章 系统总体设计系统总体设计 3 13 1 系统功能设计系统功能设计 该系统充分考虑用户的操作简便性 实现快捷操作 它有以下几个功能 1 客房预订 按照客户需求 为新客户分配新客房 2 退房管理 删除已退客户信息 及时更新客房留存状态 方便新客户入住 3 客房设置 可以添加新客房 修改客房描述 房间等级 内部设施等 删除客房 精品文档 8欢迎下载 4 客户设置 可以添加新客户 修改客户信息 删除已退订客户等 可准确了解每一客 户的预订信息 5 房间预订情况查询 可按客户号 房号查询 方便实用 在众多房间 客户中准确查询到某 个房间或客户 4 24 2 系统功能模块图系统功能模块图 根据上述系统功能分析 能得出下面系统软件功能模块图 3 2 1 整体模块分配 该系统充分考虑用户的操作简便性 实现快捷操作 它有以下四大模块 1 订房 按照客户需求 为新客户分配新客房 2 退订 删除已退客户信息 及时更新客房留存状态 方便新客户入住 3 客房信息 可以添加新客房 修改客房描述 房间等级 内部设施等 删除客房以及查 看所有客房的状态信息 4 客户信息 可以添加新客户 修改客户信息 客户编号 客户姓名 删除已退订客户信 息以及查看所有客户的订房状态信息 3 2 2 客户信息子模块 精品文档 9欢迎下载 1 新增 录入客户编号 客户姓名等信息 2 更改 更改相应客户的个人信息 3 删除 删除相应客户的个人信息 4 查询 查询所需客户的订房信息 5 显示 显示所有预订客户的个人信息以及预订房号 6 全删 删除所有客户信息 3 2 3 客房信息子模块 1 新增 录入客房编号 客房描述等相关信息 精品文档 10欢迎下载 2 更改 更改相应客房的信息 3 删除 删除相应客户及客房的信息 4 查询 查询所需客房的订房状态 5 显示 显示所有客房的房号以及预订状态信息 6 全删 删除所有客房信息 第四章第四章 系统详细设计系统详细设计 4 14 1 系统详细设计进度规划系统详细设计进度规划 甘特图如下 4 24 2 系统详细设计任务系统详细设计任务 1 算法过程的设计 精品文档 11欢迎下载 本详细设计采用的是流程图的方式来表达每个处理过程的算法 2 数据结构的设计 对于处理过程中涉及的概念性的数据类型进行确切的定义 3 测试用例设计 测试用例包括输入数据和预期结果等内容 4 34 3 系统物理方案配置设计系统物理方案配置设计 1 设计指标 1 系统的可靠性 该系统要求 24 小时不间断工作工作 发生错误的概率低于 0 01 系统吞吐量 2 要提高系统的吞吐量 要求使用具有大吞吐量的计算机 应该选择具有较高性能的计算机 3 系统响应时间 响应时间不超过 2 秒 4 系统处理方式 该系统采用主机系统方式 2 计算机硬件配置 计算机硬件选择取决于要运行的软件系统 本系统建议最低采取如下配置 内存 512MB CPU 奔四 1 8GHZ 以上 硬盘 空余空间 4G 4 44 4 系统输入输出设计系统输入输出设计 4 4 1 输入设计原则 1 输入数据量设计 需要输入客户数据 数据量不大 2 输入错误检测 检测客户登记状态 确保不会重复登记或登记错误 4 4 2 数据输入设备的选择 本系统选择键盘 鼠标人工输入方式 4 4 3 输入检验设计 本系统对输入检验设计的地方有如下几处 精品文档 12欢迎下载 1 当前台工作人员输入客户数据时 系统会自动检测该信息是否已在系统中存在 2 当业务员输入房间号时 系统会检测该房间号是否存在 若不存在会提示酒店没该房间 4 4 4 输出设计内容 1 输出信息应包括系统的使用者 如客户 酒店管理人员 前台服务人员等 2 信息应以表格及文档形式输出 3 输出设备 打印机 终端显示器 4 输出介质 输出到专用纸张及电脑屏幕上 4 4 5 错误改正方法 系统出现错误时 将弹出提示框 并允许工作人员改正 精品文档 13欢迎下载 4 54 5 系统程序流程图系统程序流程图 第五章第五章 模块设计思路分析模块设计思路分析 本程序共有五大功能模块 新建模块 更改模块 删除模块 查询模块和显示模块 各模块在 功能上互相补充 在程序中互相融合 才能实现一个具有多种功能的管理系统 精品文档 14欢迎下载 1 新建模块 实现所有客房 订房客户的录入工作 2 更改模块 提供数据的修改 包括客户姓名 客房描述等 3 删除模块 将已退订的客户从数据库中删除 4 查询模块 本程序最重要的模块 也是本系统的精髓所在 通过房间号或客户号实现客 房的预订情况以及客户入住情况的查询工作 5 显示模块 显示所有客房 订房客户的基本信息 在程序设计上 我们的目标就是先实现单个模块 进而实现整个程序 本程序正是本着这种思 想 一步一步 有条不紊的进行规划与设计 本程序通过四个类 客户类 客户库类 客房类 客 房库类 并通过主函数调用类函数实现了这五大功能模块的功能 第第 6 6 章章 使用说明使用说明 1 程序主界面 界面简洁明了 一目了然 便于操作 选择数字 0 6 进入相应功能 2 订房 主界面选择 1 进入订房功能 精品文档 15欢迎下载 3 查询房间预订情况 主界面选择 3 进入该功能 4 增删客户信息 主界面选择 4 进入该功能 1 增加客户信息 系统提示输入客户号码 姓名等信息 按要求录入即可 2 删除个人信息 系统提示输入要更改的客户号 输入后即可更改该客户的个人信息 精品文档 16欢迎下载 3 返回 返回主界面 5 增删房间信息 主界面选择 5 进入客房信息管理菜单 1 新增 系统提示输入房间号 房间描述等信息 按要求录入即可 2 删除 系统提示输入要删除的房间号 输入后即可删除该房间 3 返回 返回主界面 6 查询客户和房间总信息量 主界面选择 6 进入该功能 通过读取文件信息 预订然后将信息输出显示 精品文档 17欢迎下载 7 退房 主界面选择 2 进入退房功能 8 退出 主界面选择 0 退出程序 精品文档 18欢迎下载 9 文件中读取房间信息 room 10 文件读取客户信息 customer 精品文档 19欢迎下载 第七章第七章 程序源代码程序源代码 程序源代码包含三大块 类定义 各功能函数定义及实现和主函数实现 类定义源代码 ifndef INFO H define INFO H include include include using namespace std namespace info space class Customer public Customer string name int number 客户编号 class Room public Room int room number int room level 房间等级 1 5 级 string room config 房间配置 高级 优 良 中等 普通 class CustomerBase public CustomerBase void add Customer temp 前条件 temp 已经含有值 void remove Customer temp Customer the customer CustomerBase next 精品文档 20欢迎下载 class RoomBase public RoomBase void add Room temp void remove Room temp Room the room RoomBase next class InfoBase public int customer number int room number InfoBase void add InfoBase void remove InfoBase bool check InfoBase bool checkall InfoBase void output InfoBase InfoBase next typedef CustomerBase CBasePtr typedef RoomBase RBasePtr typedef InfoBase IBasePtr Customer Customer 构造函数 name number 1 Room Room room number 1 room level 0 room config CustomerBase CustomerBase 精品文档 21欢迎下载 next NULL RoomBase RoomBase next NULL InfoBase InfoBase next NULL void pause char get cout 请按下任何键继续 endl cin get get cin get get info space 的结尾 endif INFO H 各功能函数源代码 ifndef INFO FUN H define INFO FUN H include include include include include info h namespace info space void readfile ifstream string t name CBasePtr t temp new CustomerBase instream t name while instream eof 精品文档 22欢迎下载 instream t number t temp the customer name t name t temp the customer number t number if instream eof return t temp next temp temp t temp t temp NULL t temp new CustomerBase 循环创建用户信息类 instream t name void writefile ofstream CBasePtr t temp temp 为了防止写完文件后 指针到达指针尾 while t temp NULL if t temp the customer name t temp t temp next if t temp NULL break 这两个 if 语句用来判别输出客户信息 outstream the customer name the customer number next void readfile ifstream int level 0 string config RBasePtr t temp new RoomBase instream number while instream eof instream level instream config 精品文档 23欢迎下载 t temp the room room number number t temp the room room level level t temp the room room config config if instream eof return t temp next temp temp t temp t temp NULL t temp new RoomBase instream number void writefile ofstream RBasePtr t temp temp while t temp NULL if t temp the room room number 1 t temp t temp next if t temp NULL break 这两个 if 语句用来判别输出房间信息 outstream the room room number the room room level the room room config next bool check CBasePtr while the ptr NULL if the ptr the customer number number return true else the ptr the ptr next return false 精品文档 24欢迎下载 bool check RBasePtr while the ptr NULL if the ptr the room room number number return true else the ptr the ptr next return false void CustomerBase add Customer temp 添加客户信息 if temp name temp number 1 cout next NULL tt ptr tt ptr next if check temp ptr temp number cout 客户编号已经存在 请核查 the customer temp tt ptr next ptr outstream open E customer txt open 函数会刷新文档 里面存储的内容 全失 writefile outstream temp ptr 将新的链表信息写入文件中 void CustomerBase remove Customer temp 删除客户信息 int flag 0 设置一个标记 用来检验删除是否成功 ifstream instream ofstream outstream instream open E customer txt CBasePtr temp ptr NULL readfile instream temp ptr 读取文件中的客户信息 存入 temp ptr 中 if check temp ptr temp number cout 不存在此编号 the customer number temp number temp ptr temp ptr next 如果第一个元素就是要删除的元素则直接删除 after NULL 元素已经删除 可以直接写入文件中 设置 after 为 NULL 跳过 while 循环 flag 1 while after NULL if after the customer number temp number 精品文档 26欢迎下载 before next after next flag 1 删除成功 设置标志为 1 else before before next after before next while 循环结束 if flag 0 cout 不存在此编号 endl 删除失败 else outstream open E customer txt writefile outstream temp ptr 将新链表写入文件 void RoomBase add Room temp 文件中存在的房间信息 if temp room number 1 temp room level 0 temp room config cout next NULL tt ptr tt ptr next 精品文档 27欢迎下载 if check temp ptr temp room number cout 房间编号已经存在 请核查 the room temp tt ptr next ptr outstream open E room txt writefile outstream temp ptr 将新的链表信息写入文件中 void RoomBase remove Room temp int flag 0 设置一个标记 用来检验删除是否成功 ifstream instream ofstream outstream instream open E room txt RBasePtr temp ptr NULL readfile instream temp ptr 读取文件中的房间信息 存入 temp ptr 中 if check temp ptr temp room number cout 不存在此编号 the room room number temp room number temp ptr temp ptr next 如果第一个元素就是要删除的元素则直接删除 after NULL 元素已经删除 可以直接写入文件中 设置 after 为 NULL 跳过 while 循环 flag 1 精品文档 28欢迎下载 while after NULL if after the room room number temp room number before next after next flag 1 删除成功 设置标志为 1 else before before next after before next while 循环结束 if flag 0 cout 不存在此编号 endl 删除失败 else outstream open E room txt writefile outstream temp ptr 将新链表写入文件 void InfoBase add IBasePtr ptr room number rnum ptr next temp ptr temp ptr ptr void InfoBase remove IBasePtr if before customer number cnum temp ptr temp ptr next cout 退订成功 customer number cnum before next after next cout 退订成功 next after before next bool InfoBase check IBasePtr while ptr NULL if ptr customer number cnum return true else ptr ptr next return false bool InfoBase checkall IBasePtr while ptr NULL if ptr customer number cnum 精品文档 30欢迎下载 cout 该客户已经预订房间 room number rnum cout 该房间已被预订 next return false void InfoBase output IBasePtr return else IBasePtr ptr temp ptr while ptr NULL cout customer number 号客户选择了 room number 号房间 endl 精品文档 31欢迎下载 include include include include Info h 包含所有的类定义 include info fun h 包含所有的函数定义 using namespace info space int main int choice int customer number room number CBasePtr CB ptr NULL RBasePtr RB ptr NULL IBasePtr IB ptr NULL Customer the customer Room the room ifstream in customer in customer open E customer txt 打开存储客户信息的文件 ifstream in room in room open E room txt 打开存储房间信息的文件 label menu cout 房间预订菜单 endl cout 1 预定房间 endl cout 2 退订房间 endl cout 3 查询房间预定情况 endl cout 4 增删客户信息 endl cout 5 增删房间信息 endl cout 6 查询客户和房间总信息 endl cout 0 退出 endl cout Your choice choice if choice 6 choice 0 cout 输入的数字有误 请重新输入 endl system cls goto label menu switch choice 精品文档 32欢迎下载 case 1 cout 请输入客户编号和房间编号 endl cout 客户编号 customer number cout 房间编号 room number readfile in customer CB ptr 读取文件客户信息 if check CB ptr customer number cout 客户编号不存在 请核查 endl pause system cls goto label menu readfile in room RB ptr 读取文件房间信息 if check RB ptr room number cout 房间编号不存在 请核查 checkall IB ptr customer number room number 客户没有预订房 间且房间没有被预订 IB ptr add IB ptr customer number room number break case 2 cout 请输入客户编号 endl cout 客户编号 customer number readfile in customer CB ptr 读取文件客户信息 if check CB ptr customer number cout 客户编号不存在 请核查 check IB ptr customer number 检查该客户是否已经预定房间 IB ptr remove IB ptr customer number else cout 该客户未预定房间 请核查 output IB ptr break case 4 int choose cout 1 增加客户信息 endl cout 2 删除客户信息 endl cout 3 返回主菜单 choose switch choose case 1 string name int number 1 Customer temp cout 请输入客户名称和编号 endl cout 客户名称 name cout 客户编号 number 精品文档 34欢迎下载 temp name name temp number number CB ptr add temp break case 2 string name int number 1 Customer temp cout 请输入客户编号 number temp name name temp number number CB ptr remove temp break case 3 system cls goto label menu break case 5 int choose cout 1 增加房间信息 endl cout 2 删除房间信息 endl cout 3 返回主菜单 choose switch choose case 1 int number 1 int level 0 string config Room temp cout 请输入房间编号 等级 1 5 级 配置 高级 优 良 中等 普通 endl 精品文档 35欢迎下载 cout 房间编号 number cout 房间等级 level cout 房间配置 config temp room number number temp room level level temp room config config RB ptr add temp break case 2 int number 1 int level 0 string config Room temp cout 请输入房间编号 number temp room number number temp room level level temp room config config RB ptr remove temp break case 3 system cls goto label menu break case 6 readfile in customer CB ptr readfile in room RB ptr 读取两个文件的所有信息 精品文档 36欢迎下载 CBasePtr cptr CB ptr RBasePtr rptr RB ptr 不修改两个主要变量的的指向内容 所以定义了两个临 时变量 cout 所有客户信息 the customer number 1 cout 没有任何客户信息 endl the customer number cout the customer number 号客户 the customer name 已经预订房间 endl endl else cout the customer number 号客户 the customer name 还未预订房间 endl next cout 所有房间信息 the room room number 1 cout 没有任何房间信息 the room room number cout the room room number 号房间 the room room level 级 the room room config 已经被预订 endl endl else cout the room room number 号房间 the room room level 级 the room room config 还未被预订 endl next 精品文档 37欢迎下载 break case 0 exit 0 default goto label menu pause system cls goto labe

温馨提示

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

评论

0/150

提交评论