河南工业职业技术学院
毕业设计任务书
类 别: 三年制高职 专 业: 软件技术 班 级: 软件1301 * 名: **
毕业设计题目: 酒店管理系统 指导教师姓名: 姜燕
负责人签字:
年 月 日
1
管理信息系统课程设计
摘要
旅游和科技化的浪潮使得酒店和餐饮行业发展的如火如荼,如何以方便、快捷、经济的方式来对该行业进行有效管理是一个重要问题,随着科学技术的不断提高,计算机科学日渐成熟,在社会的各个领域并发挥着越来越重要的作用。也使得软件成了解决问题的有效途径。
酒店管理系统以方便、快捷、费用低的优点正慢慢地进入人们的生活,将传统的酒店管理方式彻底的解脱出来,提高效率,减轻工人人员以往繁忙的工作,减小出错的概率。本系统从满足客户的需求角度出发,实现了酒店管理的基本流程。系统的主要功能包括前台服务、后台管理、销售统计、系统安全、人员管理、初始化系统等等.用户在酒店消费的时候所要等待的时间就会大大的减少,操作员能够很方便的对用户信息的登记和对用餐状态的的管理,从而实现了酒店管理系统高效、准确的特点。
本论文全面介绍了酒店管理系统设计的过程,系统是利用MyEclipse 7.0作为数据库前端开发工具, SQL Server 2005为后台数据库,主要采用Windows XP/Windows 7作为操作系统,采用java为开发语言,本着易实用性,扩展性,可移植性的原则,采用c/s模式开发 ,实现酒店管理信息化的发展需求.
关键词: 数据库SQL Server2005;MyEclipse 7。0;酒店管理系统。
2
管理信息系统课程设计
目 录
第一章 系统概述 —-———--—---————---—-------——-———-———--—---—- 1
1。1 开发背景 -----—--——--—--—-—————----—---———————-—--1
1.2 开发语言简介—--—---—-——-—-—-——-—-—————--————-—-
1。3 系统简介 -——-——--—————-—-—-—-----——--—-——-—--———-—
第二章 可行性分析-------—-——-—-—-—————--—————-———-—-——----
2。1 技术可行性——-—-———-——----————————-—-——--————-——--——
2.2 管理可行性-—-—-—---—--—————-—-—-—----———-———---——-—
2.3 经济可行性—---——--—---—---———--——-————-——-——-—————-
第三章 系统需求分析—-—————---——-——--——-—-———-—
3
管理信息系统课程设计
----—------
3。1 项目规划---——-——--———-———-—----———-----—---—---—-
3.2 系统功能结构--—-—----——--———----—--——-————-—-————-
3.3 用例图设计--——-—-----——-—-———-——--—--——-—————-——--—
第四章 系统设计与实现——--———————----——------—--—--—-———-
4。1 设计目标——-—--——-——--—--———------———-——-——---——-—
4.2 开发运行环境———----—---------—---—-—-—--—--———---
4。3 数据库设计—-—-------—--—-—-—--——---——-————-—-—————-
4。3。1 数据库表的概要--—------—---—--------—-———----
4.3.2 主要数据表结构———---—------—--—---——-——--—--—
4.4 功能模块的实现-----——-------—-—----—-—-—--———-————
4。4.1文件架构—----———-———-———————-—--———
4。4。2 登录和系统界面————--—-—-—————-----—--—-——
4。4。3 数据库连接——-—---—--—-———----—-——-———
4。4。3前台服务模块———————---—------—---——-—-—
4
管理信息系统课程设计
a 开台查看实现-—-——-———-———---———--———-——
b点菜与签单实现-————-------—-—-—---—-—-———
c 自动结账实现-———---——----—-—-—-—--—-—--
第五章 总结-----—----—-———-———--——-—--—--—----------
参考文献——-—-———-—-—--—--—--——--——————--——-—--—--
第一章 系统概述
1.1 开发背景
随着计算机技术的飞速发展,信息时代的到来,信息改变了我们这
个社会.各类行业在日常经营管理各个方面也在悄悄地走向规范化和网络化。酒店管理的信息化程度体现在将计算机及网络与信息技术应用于经营与管理,以现
5
管理信息系统课程设计
代化工具代替传统手工作业。无疑,使用网络信息化管理使酒店管理更先进、更高效、更科学,信息交流更迅速。
酒店管理系统是典型的信息管理系统的一部份,而且是必不可少的一部份。其开发主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面.对于前者要求建立起简洁且资料一致性和完整性强、资料安全性好的数据库。而对于后者则要求应用程序功能完备,易使用等特点。
酒店管理系统是酒店经营管理中不可缺少的部分,它的内容对于经营的决策者和管理者来说都至关重要,所以客房管理系统、信息管理系统应该能够为用户提供充足的信息和快捷的查询手段。但一直以来人们使用传统人工的方式管理文件档案,这种管理方式存在着许多弊端,如:效率低、保密性差,容易出现差错等,且对于查询维护等极为不方便。在当今时代,这些完全可以改用计算机来代替人的手工操作。
作为计算机及网络应用的一部分,使用计算机对客房信息进行管理,具有手工管理所无法比拟的优点。例如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地提高客房经营管理的效率,也是企业的科学化、正规化管理,与世界接轨的重要条件。且办事效率也是决定收入的一个关键因素.
因此,我们组决定选择酒店管理系统作为本人的毕业设计,力求开发出一套界面友好,使用简单的适用于各中、小规模的酒店管理系统。
1.2 开发语言简介
Java语言其实最早是诞生于1991年, sun公司最初为一些消费性电子产品而设计的一个通用环境,后来逐步完善广泛应用与Internet,桌面系统等各个领域,在开发方面具有以下优势:
a:软件的需求分析:可将用户的需求进行动态的、可视化描述,以提供设计者更加直观的要求。而用户的需求是各色各样 的,不受地区、行业部门,爱好的影响,都可以用Java语言描述清楚.
6
管理信息系统课程设计
b:软件的开发方法:由于Java语言的面向目标的特性, 所以完全可以用O-O的技术与方法来开发,这是符合最新的软件开发规范要求的 .
c:Java语言的动画效果远比GUI技术更加逼真,尤其是利用WWW提供的巨大动画资源空间,可以共享全世界的动态画面的 资源 。
软件产品用java语言开发的软件可以具有可视化,可听化 ,可操作化的效果,这要比电视,电影的效果更为理想,因 为它可以做到\"即时、交互、动画与动作 ”,要它停就停 ,要它继续就继续 ,而这是在电影与电视播放过程中难以做到 的.本系统在选择java语言原因之一它还具有其跨平台性,可移植性,安全性,健壮性。充分考虑跨系统平台和安全因素,这对于产品应用和市场化需求有很大作用。
1。3系统简介
现代化的酒店组织庞大、服务项目多、信息量大,要想提高劳动生产、降低成本、提高服务质量和管理水平,进而促进经济效益,必须借助计算机来进行现代化的信息管理。酒店管理系统正是为此而设计的.优秀的酒店客房管理系统操作方便,灵活性好,系统安全性高,运行稳定。这也是我所设计本程序的目的之一。本产品采用的C/S模式开发,主要考虑界面的友好性,且运行于客户端有效的降低服务器和客户端之间的运算量,节省了时间。本系统包括销售统计,后台管理,人员管理,初始化系统,和系统安全 五个模块。并与sql2005数据库应用相结合。
第二章 可行性分析
2。1 技术可行性
编写语言:采用Java语言进行编写.Java是一种安全的、稳定的、简单的,由C和C++衍生出来的面向对象的编程语言。它在继承C和C++强大功能的同时去掉了一些它们的复杂特性(例如没有宏 和模版,不允许多重继承).Java操
7
管理信息系统课程设计
作简单和运行效率高,以其强大的操作能力、优雅的语法风格、创新的语言特性,编程的支持成为开发的首选语言。由于对Java技术比较熟练,对于系统较为简单的,但基本功能较为完善的酒店管理系统来说是基本没有问题的。
编程平台:编程平台采用myeclicps7.0。它已被证明是一个极其强大和成功的开发平台,其成熟稳定能够充分保证软件设计的顺利进行。
数据库:数据库采用微软的SQL Server 2005,虽然该数据库版本不是最新的,但其工作稳定,功能强大,资源耗费较少,所以能够充分满足目前的需要.
以上所用技术都是成熟的,先进的,稳定的.因此,开发本系统在技术上是可行的。
2.2 管理可行性
由于本系统功能比较简单,对于工作人员不存在太大难度。管理员权限
明确,系统管理员拥有维护数据库系统的权限,对数据库中的数据进行添加、删除、更新等操作界面友好简单可操作性强。因此,本系统在管理上是可行的。
在本系统的运营阶段,使用系统的工作人员,除了需要具备在Windows平台上使用个人电脑的知识,并不需要特别的技术能力。
本系统充分结合实际酒店中餐饮营销方式,操作实际易于接受,适用性强 。
在销售统计模块中分别对年,月,日销售模块进行全面统计,有利于改善优化管理服务。
2。3经济可行性
经济上主要考虑本系统带来的效益是否大于开发本系统的成本,采用自动化的信息管理减少了人员的使用,对信息进行充分统计,方便管理,为决策着进行更好决策做出依据,提高经济效益,由于本系统的开发以课程设计为依托,参与人员的目的以学习为主,投入成本比较小。另外,系统管理员和业务员都拥有计算机的专业知识,酒店前台工作人员和管理人员不需要经过培训即可操作本软件。这样可以为开发本系统节升资金。减少后期资源浪费。因此,开发本系统在经济是可行的。
综上所述,开发本系统,在经济上、技术上、管理上都是可行的。
8
第三章 系统需求分析
3.1 项目规划
通过项目组考察与调研,系统整理所有资料,并对这些资料从整体和局部
进行分析,最后决定在本系统中包含如下6大功能模块.
前台服务:该模块主要包括开台点菜,维护菜品,签单,结账等功能,其中
维护菜品功能包括添加和取消菜品,能够取消菜品的前提条件是尚未签单,即处于开单状态,结账时则要求所有商品都要签单,否则不允许结账. 后台管理:该模块主要包括台号管理,菜系管理和菜品管理功能,其中菜系用
来对菜品进行分类。
销售统计:该模块主要用来分段统计营业额,可以按日,月,年进行统计,
其中日统计是按照消费单和销售的商品统计销售额,月统计是按照日期和每日的销售额统计销售额,年统计是按照日期和月份统计销售额。
系统安全:该模块主要包括交接班,锁定系统和修改密码功能,其中交接班功
能在操作员换岗时使用,锁定系统在操作员临时离开时使用。
人员管理:该模块主要包括档案管理,管理员管理和操作权限管理功能,其
中管理员管理功能用来管理系统的操作员,权限管理功能用来管理系统操作员具有的操作权限。
初始化系统:该功能用来对系统进行初始化,初始化后系统数据将全部被删
除.
9
3.2 系统功能结构
该介绍以超级管理员的角色从整理结构来介绍各个功能模块的使用方法。首先进入登录界面用超级管理员权限登录,超级管理员拥有后台管理,销售统计,系统安全,人员管理,前台管理,初始化系统权限,分别可以对管理员赋予各种权限,并且对台号,菜品种类进行设定分类,还可以进行销售统计和初始化系统(初始化后系统数据将被全部删除)。下图为整体功能
3.3 用例图设计
a:前台服务分析
10
前台服务员 开台点菜 维护菜品
b:后台管理分析
台号管理 菜品管理 c:销售统计
签单 结账 管理员 11
菜系管理
月销售统计 管理员 日销售统计 年销售统计
d:系统安全
锁定系统 管理员 交接班 修改密码
e:人员管理
12
档案管理 高级管理员 操作权限管理 管理员管理
f:初始系统化
管理员 初始化系统
13
第四章 系统设计与实现
4。1设计目标
根据餐饮行业的特点和实际情况,本系统以餐饮业务为基础,突出前台管理,重视营业数据分析等功能,从专业角度出发,努力为餐饮管理者提供科学有效的管理模式和数据分析功能。力求开发出一款简单,使用的酒店管理系统,令其适合于众多餐饮企业的需求,同时该系统还要具有一定的人性化和智能化的特点,以保证软件有易学易用的特点,界面设计还要简介大方,以便常用功能的操作。
4。2开发运行环境
本系统运行时需要以下条件。 硬件平台:
cpu:pentium 41.8GHz 内存:256MB以上
操作系统:windows xp/windows 2000/windows 2003/windows 7 数据库:Sql Server 2005 开发工具包:JDK Version1。6
4。3数据库的设计
本系统的底层数据库采用的sql server2005数据库,系统数据库名称为db_DrinkeryManage。在数据库中共包含7个数据库表和三个视图。下面是对各表的概要说明及具体及结构。 4。3。1 数据库表的概要
该树形结构图显示了数据库系统的所有数据表。
14
4.3.2 主要数据表结构
tb_desk台号表,用于保存餐台信息,表结构如下所示
tb_sort 菜系表 用于保存菜系信息,表结构如下所示
tb_menu菜品表,用于保存菜品信息,表结构如下所示
15
tb_record 档案表,用于保存档案信息,表结构如下所示
tb_manager管理员表,用于保存系统管理员信息,表结构如下所示
tb_order_form消费单表用于保存消费单信息,表结构如下所示
16
tb_order_item消费项目表用于保存每个消费单具体包含的消费项目
信息,表结构如下所示
4。4功能模块的实现
系统根据酒店管理中餐饮行业的特点,共有六个模块组成,在此本人将以前台服务模块为例,详细的阐述系统实现的主要思想,和设计逻辑, 4.4.1文件架构
写代码之前,通常将系统的文件夹架构做一整体规划,主要目的对文
件进行分类管理,以便在开发和维护中迅速查找,同时也对系统起到分层作用
以文件架构为基础,整体设计出功能架构图,如下所示。
17
4。4.2 登录和系统界面
采用swing技术设计出登陆窗体,主要有登录名框,密码框,和两个
按钮组成,界面友好简洁,
系统主窗体设计以容器,面板方式嵌套组合,主要本着简单易懂,界面
友好为原则,充分体现操作性实用性的特点.
18
4。4.3 数据库连接
采用myeclicps和sqlserver2005的连接方式,在使用数据库之前应注意以下问题,安装数据库驱动应为1。2版本以上,而且要确保TCP/IP端口协议开启。
创建5个私有静态变量加载和连接数据库,其中threadlocal用来保存已经创建的数据库连接。
private static final String DRIVERCLASS = \"com.microsoft。sqlserver。jdbc.SQLServerDriver\";
private static final String URL = ”jdbc:sqlserver://127.0。0。1:1433;DatabaseName=db_DrinkeryManage\";
private static final String PASSWORD = \"sa”; private static final String USERNAME = ”sa\";
此处为加载数据库驱动:
private static final ThreadLocal 19 try { Class。forName(DRIVERCLASS).newInstance();// 加载数据库驱动 e.printStackTrace();}} } catch (Exception e) { 此处连接数据库方法: public static Connection getConnection() {// 创建数据库连接的方法 } Connection conn = threadLocal.get();// 从线程中获得数据库连接 if (conn == null) {// 没有可用的数据库连接 try { conn = DriverManager.getConnection(URL, USERNAME, threadLocal。set(conn);// 将数据库连接保存到线程中 e。printStackTrace(); PASSWORD);// 创建新的数据库连接 } catch (SQLException e) { } } return conn;// 返回数据库连接 此处为关闭数据库: public static boolean closeConnection() {// 关闭数据库连接的方法 } boolean isClosed = true;// 默认关闭成功 Connection conn = threadLocal。get();// 从线程中获得数据库连接 if (conn != null) {// 数据库连接可用 } return isClosed;// 返回关闭结果 threadLocal.set(null);// 清空线程中的数据库连接 try { } conn。close();// 关闭数据库连接 isClosed = false;// 关闭失败 e。printStackTrace(); } catch (SQLException e) { 4.4。3前台服务模块 20 前台服务模块主要分为,开台签单,点菜签单,自动结账功能,以人性 化,简易化为原则,增加了系统的可操作性,例如,开台点菜功能中有助记码可方便前台进行快捷输入菜品名称,如红烧肉助记码为hsr,输入一个或全部字母即可出来菜品名。用自动结帐功能系统可自动显示应付金额和要找金额。从而避免因忙碌和繁杂的事物和数据造成的过失。 a 开台查看实现 在客户需要服务时选中所开台号,然后点开单即可进行点菜等服务操作,主窗体上部显示签单列表,开台列表,分别对台号,和账单进行显示,在主界面中图示如下 当在“台号”下拉框中选中已经开台的台号时,开台列表中该台号所在的行也将被选中,同时在签单列表中将列出该餐台消费的所有项目,效果如上图所示. 如果在“台号”下拉框中选中尚未开台的台号时,在开台列表中将不选中任何行,并且在签单列表中将没有任何项目, 实现“台号”代码如下: final JLabel numLabel = new JLabel(); // 创建“台号”标签 numLabel.setText(\"台号:”); // 设置标签文本 orderDishesPanel。add(numLabel); numComboBox = new JComboBox(); // 创建台号选择框 numComboBox.setNextFocusableComponent(codeTextField); // 设置下一个 initNumComboBox(); // 初始化台号选择框 numComboBox.addActionListener(new ActionListener() { 21 将要获得焦点的组件 数 public void actionPerformed(ActionEvent e) { int rowCount = rightTable。getRowCount(); // 获得已开台if (rowCount == 0) // 没有开台 return; // 不执行任何操作 Object selectedDeskNum = numComboBox.getSelectedItem(); int needSelectedRow = -1; // 默认选中的台号未开台 for (int row = 0; row 〈 rowCount; row++) { // 查看选中的台号是否已经开台 // 获得“台号”选择框中的选中项 if (selectedDeskNum.equals(rightTable.getValueAt(row, 1))) } rightTable。clearSelection(); // 取消选择“开台列表\"中的选 leftTableDataV。removeAllElements(); // 清空“签单列表”中的所有行 needSelectedRow = row; // 保存其在“开台列表” 中的所 { // 已经开台 在行 break; // 跳出循环 } if (needSelectedRow == —1) { // 选中的台号尚未开台,即将要开台 中行 据 据 } leftTable.setRowSelectionInterval(0); // 选中“签单列 表”中的第一行 } } else { // 选中的台号已经开台,即将要添加消费项目 rightTable.setRowSelectionInterval leftTableDataV.removeAllElements(); // 清空“签单列表”leftTableDataV.addAll(itemOfDeskV。 leftTableModel.setDataVector(leftTableDataV, leftTableColumnV); // 刷新“签单列表\"表格模型的数 leftTableModel.setDataVector(leftTableDataV, leftTableColumnV); // 刷新“签单列表”表格模型的数 (needSelectedRow);// 在“开台列表\"中选中该台号 中的现有项目 get(needSelectedRow)); // 向“签单列表”添加新选中餐台的消费项目 b 点菜与签单实现 22 选中要点的餐台后即可进行点菜,系统支持两种方式点菜:一种是通过菜品的 记助码,这种样式的优点在于快速获取菜品名称,另一种方式通过菜品的编号输入后自动显示菜品名到商品名称框里. 其系统图中显示如下所示 获取菜品功能是通过文本框添加键盘事件监听器实现的,代码如下: 容 Vector menuV = null;// 符合条件的菜品 if (input.length() > 0) {// 确认输入了内容 if (codeRadioButton.isSelected()) {// 按助记码查询 Vector menusV = dao。sMenuByCode(input);// 查if (menusV。size() 〉 0) {// 存在符合条件的菜品 menuV = (Vector) menusV。get(0);// 获得第menuV。remove(0);// 移除菜品的序号 codeTextField.addKeyListener(new KeyAdapter() { public void keyTyped(KeyEvent e) {// 通过键盘监听器实现控制文 } public void keyReleased(KeyEvent e) {// 通过键盘监听器实现智能 if (e。getKeyCode() == KeyEvent.VK_ENTER) {// 按下回车键 makeOutAnInvoice();// 开单 String input = codeTextField.getText();// 获得输入内} else { if (”abcdefghijklmnopqrstuvwxyz0123456789\"。indexOf(e 。getKeyChar()) < 0)// 只允许输入字母和数字 e.consume();// 销毁此次键盘事件 本框的输入内容 获取菜品 询符合条件的菜品 一个符合条件的菜品 23 } } } if (input。length() == 9)// 确认编号是否为9位 menuV = dao。sMenuByNum(input);// 查询符合条 } else {// 按编号查询 件的菜品 空 if (menuV == null) {// 不存在符合条件的菜品 nameTextField.setText(null);// 设置“商品名称”文本框unitTextField.setText(null);// 设置“单位\"文本框为priceTextField。setText(null);// 设置“单价”文本框 为空 为空 } else {// 存在符合条件的菜品 nameTextField.setText(menuV.get(2)。 unitTextField.setText(menuV.get(4)。toString());// priceTextField.setText(menuV。get(5).toString()); toString());// 设置“商品名称”文本框为符合条件的菜品名称 设置“单位”文本框为符合条件的菜品单位 // 设置“单价”文本框为符合条件的菜品单价 } } } }); orderDishesPanel。add(codeTextField); 注解: consume():该方法用于销毁此次事件,如果此次事件是向一个文本框中输入一个字符,则取消次输入。 e,getKeyCode()==KeyEventVK_ENTER:该段代码用来判断此处事件是用户按下Enter键触发的,如果是则返回true;否则返回false。 默认情况下点才数量为1,如果不需要修改点菜数量,通过菜品助记码或编号获得菜品后直接单击回车就开单成功从而方面用户操作。 24 确定多点菜品和数量后,也可以通过单击“开单“按钮完成开单工作,签单列表中的新开单菜品前会有一个“NEW”标记, 确定消费“签单列表”中所有菜品后,需要单击“签单“按钮取消所有菜品前所有菜品的“NEW”标记实现“签单\"。 c自动结账实现 该功能自动计算“签单列表“中消费金额,在“实收金额”文本框中输入已收金额,系统自动计算应找金额,避免因忙碌繁杂而引起的错误结算。 在结账之前一定要确保所有菜品已经签单,否则将弹出提示信息,并且要保证实收金额不小于消费金额。实现结账代码如下: final JButton checkOutButton = new JButton(); checkOutButton.setText(\"结 账\"); checkOutButton.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { int selectedRow = rightTable.getSelectedRow(); if (selectedRow < 0) {// 未选中任何餐台 JOptionPane.showMessageDialog(null, \"请选择要结账的餐 JOptionPane。INFORMATION_MESSAGE);// 弹出提示 台!\", \"友情提示”, return; } int rowCount = leftTable。getRowCount();// 获得结账餐台的if (leftTable.getValueAt(rowCount - 1, 0)。equals(\"NEW”)) JOptionPane。showMessageDialog(null, \"请先确定未签单商 ”友情提示”, JOptionPane。 点菜数量 {// 存在未签单菜品 品的处理方式!\", INFORMATION_MESSAGE);// 弹出提示 return; } int expenditure = Integer。valueOf(expenditureTextField .getText());// 获得消费金额 int realWages = Integer。valueOf(realWagesTextField。if (realWages 〈 expenditure) {// 查看实收金额是否小于消费金 getText());// 获得实收金额 25 额 if (realWages == 0)// 未输入实收金额 JOptionPane。showMessageDialog(null, ”请输入实收金 JOptionPane.INFORMATION_MESSAGE);// 弹出提 额!”, \"友情提示\", 示 else // 实收金额小于消费金额 JOptionPane。showMessageDialog(null, ”实收金额不能 ”友情提示”, 小于消费金额!\", JOptionPane.INFORMATION_MESSAGE);// 弹出提示 realWagesTextField。requestFocus();// 为“实收金额”文本return; 框请求获得焦点 } changeTextField。setText((realWages — expenditure) + \"”);// String[] orderFormData = { getNum(), rightTable.getValueAt(selectedRow, 1).toString(), Today。getDate() + \" ” + rightTable。getValueAt(selectedRow, 2), expenditureTextField。getText(), TipWizardFrame.this.managerV。get(0)。toString 计算并设置“找零金额” () };// 组织消费单信息 dao。iOrderForm(orderFormData);// 持久化到数据库 String[] orderItemData = new String[4];// 用来存储消费项orderItemData[0] = dao.sOrderFormOfMaxId();// 获得消费单for (int row = 0; row < rowCount; row++) {// 通过循环持久 } JOptionPane。showMessageDialog(null, rightTable。 selectedRow, 1) orderItemData[1] = leftTable.getValueAt(row, 2)。orderItemData[2] = leftTable.getValueAt(row, 5)。orderItemData[3] = leftTable。getValueAt(row, 7)。dao.iOrderItem(orderItemData);// 持久化到数据库 目信息 编号 化消费项目信息 toString();// 获得菜品编号 toString();// 获得菜品数量 toString();// 获得菜品消费金额 getValueAt( 26 + ” 结账完成!”, \"友情提示”, JOptionPane。 INFORMATION_MESSAGE);// 弹出提示 // rightTableModel。removeRow(selectedRow);// 从“开台列表”中leftTableDataV。removeAllElements();// 清空“签单列表” leftTableModel.setDataVector(leftTableDataV, realWagesTextField.setText(”0”);// 清空“实收金额”文本框 changeTextField.setText(\"0\");// 清空“找零金额\"文本框 移除结账餐台 leftTableColumnV);// 刷新“签单列表\" itemOfDeskV.remove(selectedRow);// 从数据集中移除结账餐台 } }); 第五章 总结 前台服务模块作为酒店管理系统中为客户服务的主要模块,设计思想体现了整个系统分层分类的特点。以开单,点菜,签单,结账的流程来展现酒店管理中餐饮服务,操作简单,易于上手,销售统计,后台管理,人员管理等模块更为管理员的使用提供了,安全,便捷的帮助。在系统的设计于实现中,组员之间互相探讨认真总结在程序过程中的错误。设计之初,我们希望通过一起合作,共同来用自己的所学写出有一份作品.真正体验整个系统流程的编写。为以后就业有所帮助。事实上对于我个人而言获得远非如此,从全面,细节中感受到软件开发的复杂和意义,也学会了如何运用所学与实际应用结合。 三年的求学使我和同学学会用交流解决问题,用交流去互助合作,相信在也会在我的工作中让我受益匪浅。在此感谢我的指导老师姜燕老师,从入学一直指引我们走向编程之路,并在java的漫长道路上给我们指导和启发,相信我们会在以后的学习中百尺竿头更进一步,让编程真正的成为我们的事业生涯中一个亮点。并且一直走下去……. 27 因篇幅问题不能全部显示,请点此查看更多更全内容