C餐饮管理系统课程设计2



《C餐饮管理系统课程设计2》由会员分享,可在线阅读,更多相关《C餐饮管理系统课程设计2(43页珍藏版)》请在装配图网上搜索。
1、C#课程设计报告 巢湖学院 C#课程设计 设计 (论文 )题目: 基于 c#的餐饮管理系统 所 在 院: 信息工程学院 专 业 班 级: 13 软件工程一班 学 生 姓 名: 王莹莹、周玉、侯孟祥 、葛玉祥 学 号: 13014036、13014059、13014010、13014008 指 导 教师: 梁宝华
2、 1 C#课程设2计报告 目录 摘要 一、需求分析 ........................................................................................ 4 1.1 系统可行性分析 ...................................................................... 4 1.
3、2 经济上可行性分析 .................................................................. 4 1.3 管理上的可行性分析 .............................................................. 4 1.4 简要总结 .................................................................................. 4 1.5 数据需求 ..........................
4、......................................................... 5 1.6 总体设计 ................................................................................... 5 1.7 流程图 ....................................................................................... 6 二、总体设计 ...............................
5、......................................................... 7 2.1 登录窗体的设计 ....................................................................... 7 2.2 注册用户界面设计 .................................................................. 8 2.3 主窗体设计 .....................................................
6、.......................... 8 2.4.基础信息 ................................................................................... 9 2.4.1 基础信息— -桌台信息 ................................................... 9 2.4.2 基础信息—职工信息 ................................................... 10 2.5 辅助工具 ........
7、......................................................................... 10 2.5.1 辅助工具—日历 ........................................................... 10 2.5.2 辅助工具—计算器 ....................................................... 10 2.5.3 辅助工具—记事本 ..........................................
8、............. 11 2.6 系统维护 ................................................................................ 11 2.6.1 系统维护—权限管理 ................................................... 11 2.6.2 系统维护—添加用户 ................................................... 11 2.7 系统设置 .....................
9、............................................................ 11 2.7.1 系统设置—修改密码 ................................................... 12 2.7.2 系统设置—锁定系统 ................................................... 12 2.8 帮助 ........................................................................
10、................. 13 2.9 快捷菜单 ................................................................................. 13 2.9.1 开台 ............................................................................... 13 2.9.2 点 加菜 .....................................................................
11、.... 14 2.9.3 消费查询 ....................................................................... 14 2.9.4 结账 ............................................................................... 14 三、详细设计 ...................................................................................... 15 3.
12、1 登录部分代码 ......................................................................... 15 3.2 主界面的代码 ......................................................................... 17 3.3 职工信息查询代码 ................................................................. 22 3.4 桌台信息查询代码 .....................
13、............................................ 26 2 3 C#课程设计报告 3.5 辅助工具 ................................................................................. 26 3.6 修改密码、添加用户、注册用户功能代码 ......................... 26 3.7 桌台基本信息(双击桌台图标后)代码 ............................. 30 3.8 开
14、台部分代码 ......................................................................... 30 3.9 结账部分代码 ......................................................................... 32 3.10 点 加菜部分代码 ................................................................. 34 3.11 消费查询部分代码 .......................
15、........................................ 40 3.12 用户权限管理代码 ............................................................... 40 四、单元测试与组装测试.............................................................. 42 五、总结 .......................................................................................
16、....... 42 5.1 整体感知 ................................................................................. 42 5.2 课设心得 ................................................................................. 43 5.3 需要完善 .................................................................................
17、43 六、参考文献 ...................................................................................... 43 摘要 当今社会已经进入了在计算机信息管理领域中激烈竞争的时代, 应用计算机 已经变得十分普遍了,如同我们离不开的自行车、汽车一 样。我们应该承认,谁掌握的知识多,信息量大,信息处理速度快,批量大,谁的效率就高,谁就 能够在各种竞争中立于不败之地。随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已经为人们深刻认识,它以已经进入人类社会的各个领域
18、并发挥着越来越重要的作用。越来越多的管理人员意识到信息管理的重要性。 作为计算机应用的一部分,使用计算机对餐饮企业信息进行管理,具有手工管理所无法比拟的优点。例如:检索迅速、查询方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地提高信息管理的效率,也是企业科学化、正规化、管理与世界接轨的重要条件。 关键词:餐饮管理系统 开台 点菜 消费查询 结账 3 C#课程设4计报告 一、需
19、求分析 1.1 系统可行性分析 (1) 技术上的可行性:技术方面的可行性就是根据现有的技术条件,能否实现系统的各项要求。据分析此系统采用 VS2008位开发平台、 C#为开发语言、 SQL Server 2000 为后台数据库,根据所学的知识完全可以设计出此系统的各个功能和模块。 (2) 硬件设备上的可行性分析:设备上的可行性是指该系统对所需的硬件设备,如 PC机、打印机或网络等的性能要求。据分析现有设备的性能完全能够满足系 统功能的要求。 (3) 软件上的可行性分析:本系统属于数据库应用程序,本餐饮管理系统需求一个数据库服务器及其运
20、行的操作系统,根据客户的数据量并不是十分巨大,我们选择目前市场上价格比较低廉的数据库服务器产品: Microsoft SQL Server 2000 及配套的平台 Windows Server 2003 操作系 统。而前台开发工具采用 Visual Studio 2008, 利用其可视化的开发环境、 丰 富的控件资源,能够快速地开发出应用程序。这些软件在中小型 MIS 开发中已 经被大量应用,技术上都比较成熟,因此技术上是可行的 1.2 经济上可行性分析 (1) 费用上可行性分析:根据酒店多年来良好的经济效益,酒店的经济实力比较雄厚,加上
21、硬件设备和软件的价格比较便宜,就这为系统的实施奠定了经济基础,足能提供购买硬件设备和开发软件所需的资金。 (2) 效用上的可行性分析:实施该系统也能给公司带来长期效益,它可以帮助领导实现管理方法的现代化、科学化、极大地提高餐饮企业的工作质量与工作效率、减少管理支出的费用,从而保证酒店管理的可持续的良好发展。因此经济上具有了系统开发的可行性。 1.3 管理上的可行性分析 当前非行必要的举措。公司员工也会对本系统的开发十分的欢迎,因为采用计算机管理方式可以减少或避免酒店服务人员因为马虎大意而导致经济财产的错酒店的领导认识到当今社会的发展趋势,认为使用计算机从事酒店
22、管理是公司误,或由于客人过多,造成开台、点菜等方面的混乱。另外,为了提高酒店的管理水平,适应管理信息系统的要求,该酒店对管理人员进行了全面的培训,提高了他们对餐饮管理信息系统的认识。因此在管理上具有了系统开发的可能性。 1.4 简要总结 4 C#课程设5计报告 经过细致地初步调查和严密地可行性分析,我认为在现有的条件下,为餐饮业开发一款功能较齐全的餐饮管理系统是完全可行的。 1.5 数据需求 Tb_food----------------------------------------------
23、 存储食品的 Tb_foodtype---------------------------------------- 存储食品的类别 Tb_Waiter------------------------------------------- 存储所有职员信息 Tb_User--------------------------------------------- 存储管理用户信息 Tb_Room---------------------------------------------
24、 存储餐厅桌台信息 Tb_GuestFood------------------------------------------- 存储消费信息 1.6 总体设计 餐饮管理系统 基础信息 辅助工具 系统维护 系统设置 帮助 退出 桌 职 日 计 记 权 添 修 锁 关 退 台 员 历 算 事 限 加 改 定 于 出 信 信 器 本 管 用 密 系 系
25、 息 息 理 户 码 统 统 开台 点 加菜 桌台 单天总营业额的查询 5 消 费 查 C#课程设6计报告 1.7 流程图 1.当用户登陆系统时,系统会根据用户填写的用户名和密码 根据数据库中的 tb_User 表进行查询用户名和密码是否正确,进而决定是否登陆成功进入主界面。 2.如果用户登陆成功则进入系统主窗体,系统根据当前用户数的权限决定当前用户的操作级别。 该系统有三种级别, 分别
26、是超级管理员、 经理和一般用户。 如果当前用户的权限是超级管理员,则可以使用系统的所有功能其中包括:系统维护、基础信息、系统设置、辅助工具、帮助和退出系统。 如果用户的权限是经理权限,则可使用基础信息、系统设置、 辅助工具、帮助和退出系统。 如果当前用户的权限是一般用户权限,则只能使用系统设置、辅助工具、帮助和退出系统。 注:以上三种权限的用户都可以对客户进行开桌、点菜、消费查询、结账功能。采用这种不同权限的登陆方式可以保障系统的安全性和可靠性,下图为系统的业务流程图。如图所示。
27、 6 C#课程设7计报告 二、总体设计 2.1 登录窗体的设计 主要用于实现验证用户是否合法,只有合法用户才能有权登录,只有登录成功情况下才能进入系统功能主界面,并且在登录的同时能验证登录人员的管理权限,根据权限显示其能管理范围。
28、 用户信息 Tb_User 系统编号 用 户 名 用户权限 用户密码 ID Username power 7 UserPwd C#课程设8计报告 用户信息 ER图 点击登录进入主窗体,点击注册账号则进入注册用户界面 2.2 注册用户界面设计
29、 默认注册的用户类型只能是一般用户 2.3 主窗体设计 8 C#课程设9计报告 2.4. 基础信息 基础信息— -桌台信息 该模块主要用于管理桌台的信息,可以设置桌台名称,桌台位置,桌台占用所需价钱。 可 实 现 添 加 加
30、 、 修 改 有增加、删除、查询 桌台信息的功能 双击图标是桌台基本信息 双 击 桌 台 图 标 显 9 C#课程设10计报告 基础信息—职工信息 2.5 辅助工具 辅助工具—日历
31、 辅助工具—计算器 10 C#课程设11计报告 辅助工具—记事本 2.6 系统维护 系统维护—权限管理 系统维护—添加用户
32、 2.7 系统设置 11 C#课程设12计报告 系统设置—修改密码 系统设置—锁定系统
33、 12 C#课程设13计报告 2.8 帮助 2.9 快捷菜单 开台 13 C#课程设14
34、计报告 点 加菜 消费查询 结账 14 C#课程设15计报告 三、详细设计 3.1 登录部分代码 names
35、pace MyCyMS { public partial class frmLogin :Form { public int m=0; public frmLogin() { InitializeComponent(); } private void frmLogin_Load_1(object sender, EventArgs e) { // txtName.Focus(); } private void txtPwd_KeyPress(object sender, KeyP
36、ressEventArgs e) { if (e.KeyChar == 13) { btnSubmit_Click(sender, e); } } //点击登录按钮 private void btnSubmit_Click(object sender, EventArgs e) { if (txtName.Text == "") { MessageBox.Show(" 请输入用户名 ", " 警告 ", MessageBoxButtons.OK, MessageBoxIcon.Warning); } else
37、 { { conn.Open(); SqlCommand cmd = new SqlCommand("select count(*) from tb_User 15 C#课程设16计报告 where UserName='" + txtName.Text + "' and UserPwd='" + txtPwd.Text + "'", conn); int i = Convert.ToInt32(cmd.ExecuteScalar()); if (i > 0) { cmd = new SqlCommand
38、("select * from tb_User where UserName='" + txtName.Text + "'", conn); SqlDataReader sdr = cmd.ExecuteReader(); sdr.Read(); string UserPower = sdr["power"].ToString().Trim(); conn.Close(); frmMain main = new frmMain(); main.power = UserPower;// 记录登录用户的权限 main.Names = txtName
39、.Text;// 用户名 //frmChangePwd.n // 只输出日期 记录登录时间 main.Show(); this.Hide(); } else { m++; if (m >= 3) { btnSubmit.Enabled = false; MessageBox.Show(" 密码错误 3次,请退出 !"); } else { MessageBox.Show(" 用户名或密码错误 "); } } } } }
40、private void btConcel_Click(object sender, EventArgs e) { Application.Exit(); } 16 C#课程设17计报告 //点击注册账号 .i=2 表示这册用户界面 private void button2_Click(object sender, EventArgs e) { frmChangePwd a = new frmChangePwd(); a.i = 2; a.ShowDialog(); } // 如果点击用户
41、名文本框 ,里面的文本清空 ,用户即可输出用户名 private void txtName_Click(object sender, EventArgs e) { txtName.Text = ""; } } } 3.2 主界面的代码 namespace MyCyMS { public partial class frmMain : Form { public frmMain() { InitializeComponent(); } public SqlDataRead
42、er sdr; public string power; public string Names; public string Times; private void frmMain_Load(object sender, EventArgs e) { switch (power) { case "0": toolStripStatusLabel12.Text = " 超级管理员 "; break; case "1": toolStripStatusLabel12.Text = " 经理 "; break; case "2
43、": toolStripStatusLabel12.Text = " 一般用户 "; break; } toolStripStatusLabel15.Text = Names; toolStripStatusLabel14.Text = Times; if (power == "2") { 17 C#课程设18计报告 系统维护 ToolStripMenuItem1.Enabled = false; 基础信息 ToolStripMenuItem1.Enabled = false; } if (power == "1"
44、) { 系统维护 ToolStripMenuItem1.Enabled = false; } } private void AddItems(string rzt) { if (rzt == " 使用 ") { } else { } } private void 开台 ToolStripMenuItem_Click(object sender, EventArgs e) { { string names = lvDesk.SelectedItems[0]
45、.SubItems[0].Text; frmOpen openroom = new frmOpen(); openroom.name = names; openroom.ShowDialog(); } else { MessageBox.Show(" 请选择桌台 "); } } private void 点加菜 ToolStripMenuItem_Click(object sender, EventArgs e) { { string names = lvDesk.SelectedItems
46、[0].SubItems[0].Text; frmJZD dc = new frmJZD(); dc.RName = names; dc.ShowDialog(); 18 C#课程设19计报告 } else { MessageBox.Show(" 请选择桌台 "); } } private void 结账 ToolStripMenuItem_Click(object sender, EventArgs e) { { string names = lvDesk.Selected
47、Items[0].SubItems[0].Text; frmPayOff payoff = new frmPayOff(); payoff.RName = names; payoff.ShowDialog(); } else { MessageBox.Show(" 请选择桌台 "); } } private void frmMain_Activated(object sender, EventArgs e) { conn.Open(); SqlCommand cmd = new SqlCommand
48、("select * from tb_Room", conn); sdr = cmd.ExecuteReader(); while (sdr.Read()) { string zt = sdr["RoomZT"].ToString().Trim(); AddItems(zt); } conn.Close(); } private void 消费查询 ToolStripMenuItem_Click(object sender, EventArgs e) { { string names = l
49、vDesk.SelectedItems[0].SubItems[0].Text; frmSerch serch = new frmSerch(); serch.RName = names; 19 C#课程设20计报告 serch.ShowDialog(); } else { MessageBox.Show(" 请选择桌台 "); } } private void lvDesk_DoubleClick(object sender, EventArgs e) { frmDetatles details
50、 = new frmDetatles(); details.TableName = lvDesk.SelectedItems[0].SubItems[0].Text; details.ShowDialog(); } private void lvDesk_Click(object sender, EventArgs e) { string names = lvDesk.SelectedItems[0].SubItems[0].Text; conn.Open(); SqlCommand cmd = new SqlCommand("sele
51、ct * from tb_Room where RoomName='" + names + "'", conn); SqlDataReader sdr = cmd.ExecuteReader(); sdr.Read(); string zt = sdr["RoomZT"].ToString().Trim(); sdr.Close(); if (zt == " 使用 ") { } if (zt == " 待用 ") { } conn.Close();
52、 } private void 添加用户 ToolStripMenuItem1_Click(object sender, EventArgs e) 20 C#课程设21计报告 { frmChangePwd pwd = new frmChangePwd(); //pwd.names = Names; pwd.i = 1; pwd.ShowDialog(); } private void 退出 ToolStripMenuItem1_Click(object sender, EventArgs e)
53、 { if (MessageBox.Show(" 确定退出本系统吗? ", " 提示 ", MessageBoxButtons.OKCancel, MessageBoxIcon.Exclamation) == DialogResult.OK) { Application.Exit(); } } private void 帮助 ToolStripMenuItem1_Click(object sender, EventArgs e) { frmAbout ab = new frmAbout();
54、 ab.ShowDialog(); } private void 锁定系统 ToolStripMenuItem1_Click(object sender, EventArgs e) { frmLock m = new frmLock(); m.ShowDialog(); } private void 权限管理 ToolStripMenuItem1_Click(object sender, EventArgs e) { usermanager power = new usermanager(); powe
55、r.ShowDialog(); } private void 日历 ToolStripMenuItem1_Click(object sender, EventArgs e) { frmCalender calender = new frmCalender(); 21 C#课程设22计报告 calender.ShowDialog(); } private void 计算器 ToolStripMenuItem1_Click(object sender, EventArgs e) { }
56、 private void 记事本 ToolStripMenuItem1_Click(object sender, EventArgs e) { } private void 桌台信息 ToolStripMenuItem1_Click(object sender, EventArgs e) { frmDesk desk = new frmDesk(); desk.ShowDialog(); } private void 职员信息 ToolStripMenuItem1_Click(object se
57、nder, EventArgs e) { frmUser users = new frmUser(); users.ShowDialog(); } } } 3.3 职工信息查询代码 namespace MyCyMS { public partial class frmUser : Form { public frmUser() { InitializeComponent(); } private void btQuery_Click(object sender, EventA
58、rgs e) { BindData(); } 22 C#课程设23计报告 private void BindData() { SqlDataAdapter sda = new SqlDataAdapter("select ID,WaiterName 姓 名 ,CardNum 身份证号 ,WaiterNum 服务员编号 ,Sex 性别 ,Age 年龄 ,Tell 电话号码 from tb_Waiter order by ID ", conn); DataSet ds = new DataSet(); sda.Fill(
59、ds); dataGridView1.DataSource = ds.Tables[0]; } // 修改按钮 private void button1_Click(object sender, EventArgs e) { btReWrite.Enabled = false; btSave.Enabled = true; btConcle.Enabled = true; txtname.Enabled = false; txtAge.Enabled = true; txtIDcard.Enabled = tru
60、e; txtWaiterNum.Enabled = true; txtTel.Enabled = true; cbSex.Enabled = true; } private void btExit_Click(object sender, EventArgs e) { this.Close(); } private void btReWrite_Click(object sender, EventArgs e) { txtname.Text = ""; txtAge.Text = ""; txtIDc
61、ard.Text = ""; txtTel.Text = ""; txtWaiterNum.Text = ""; txtname.Enabled = true; txtAge.Enabled = true; txtIDcard.Enabled = true; txtWaiterNum.Enabled = true; txtTel.Enabled = true; cbSex.Enabled = true; btChange.Enabled = false; btDelete.Enabled = true; 23 C#课程
62、设24计报告 btSave.Enabled = true; } private void btDelete_Click(object sender, EventArgs e) { conn.Open(); SqlCommand cmd = new SqlCommand("delete from tb_Waiter where ID='" + dataGridView1.SelectedCells[0].Value.ToString() + "'", conn); cmd.ExecuteNonQuery(); conn.Close(
63、); BindData(); } private void btSave_Click(object sender, EventArgs e) { conn.Open(); SqlCommand cmd = new SqlCommand("select count(*) from tb_Waiter where WaiterName='" + txtname.Text + "'", conn); int i = Convert.ToInt32(cmd.ExecuteScalar()); if (i > 0) {
64、cmd.ExecuteNonQuery(); conn.Close(); BindData(); btReWrite.Enabled = true; btChange.Enabled = false; btSave.Enabled = false; btQuery.Enabled = true; btConcle.Enabled = false; btDelete.Enabled = false; btExit.Enabled = true; txtname.Enabled = false; } else {
65、cmd = new SqlCommand("insert into tb_Waiter(WaiterName,CardNum,WaiterNum,Sex,Age,Tell) values('" + txtname.Text + "','" + txtAge.Text + "','" + txtTel.Text + "')", conn); cmd.ExecuteNonQuery(); 24 C#课程设25计报告 conn.Close(); BindData(); btChange.Enabled = true; btReWrit
66、e.Enabled = true; btSave.Enabled = false; btQuery.Enabled = true; btConcle.Enabled = false; btDelete.Enabled = true; btExit.Enabled = true; txtname.Enabled = false; txtname.Enabled = false; } } private void frmUser_Load(object sender, EventArgs e) { cbSex.SelectedIndex = 0; } private void dataGridView1_CellClick(object sender, DataGridViewCellEventArgs e) { try { txtname.Text = dataGridView1.SelectedCells[1].Value.ToString();
- 温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。