基于web的餐馆内部营业管理系统实验报告.docx

上传人:b****3 文档编号:13286196 上传时间:2023-06-12 格式:DOCX 页数:29 大小:1,003.96KB
下载 相关 举报
基于web的餐馆内部营业管理系统实验报告.docx_第1页
第1页 / 共29页
基于web的餐馆内部营业管理系统实验报告.docx_第2页
第2页 / 共29页
基于web的餐馆内部营业管理系统实验报告.docx_第3页
第3页 / 共29页
基于web的餐馆内部营业管理系统实验报告.docx_第4页
第4页 / 共29页
基于web的餐馆内部营业管理系统实验报告.docx_第5页
第5页 / 共29页
基于web的餐馆内部营业管理系统实验报告.docx_第6页
第6页 / 共29页
基于web的餐馆内部营业管理系统实验报告.docx_第7页
第7页 / 共29页
基于web的餐馆内部营业管理系统实验报告.docx_第8页
第8页 / 共29页
基于web的餐馆内部营业管理系统实验报告.docx_第9页
第9页 / 共29页
基于web的餐馆内部营业管理系统实验报告.docx_第10页
第10页 / 共29页
基于web的餐馆内部营业管理系统实验报告.docx_第11页
第11页 / 共29页
基于web的餐馆内部营业管理系统实验报告.docx_第12页
第12页 / 共29页
基于web的餐馆内部营业管理系统实验报告.docx_第13页
第13页 / 共29页
基于web的餐馆内部营业管理系统实验报告.docx_第14页
第14页 / 共29页
基于web的餐馆内部营业管理系统实验报告.docx_第15页
第15页 / 共29页
基于web的餐馆内部营业管理系统实验报告.docx_第16页
第16页 / 共29页
基于web的餐馆内部营业管理系统实验报告.docx_第17页
第17页 / 共29页
基于web的餐馆内部营业管理系统实验报告.docx_第18页
第18页 / 共29页
基于web的餐馆内部营业管理系统实验报告.docx_第19页
第19页 / 共29页
基于web的餐馆内部营业管理系统实验报告.docx_第20页
第20页 / 共29页
亲,该文档总共29页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

基于web的餐馆内部营业管理系统实验报告.docx

《基于web的餐馆内部营业管理系统实验报告.docx》由会员分享,可在线阅读,更多相关《基于web的餐馆内部营业管理系统实验报告.docx(29页珍藏版)》请在冰点文库上搜索。

基于web的餐馆内部营业管理系统实验报告.docx

基于web的餐馆内部营业管理系统实验报告

C#.net大型实验报告

一、实验题目:

基于web的餐馆内部营业管理系统

二、实验目的和要求

基于VisualStudio实现一个餐厅内部营业管理系统,参观管理系统包括了前台营业、预定服务、外卖服务、员工管理和系统管理等主要功能模块,其具体的功能为:

(1)系统管理--菜单管理:

包括新菜品的添加,已有菜品的删除,菜品价格和描述的更改等;

(2)系统管理--库存管理:

可以查看餐馆的剩余库存,方便对原料进行及时的补给。

库存管理包括入库和出库两个操作,可记录主食、菜品原料、酒水等所有餐馆运营所需的原料;

(3)系统管理--账号管理:

有系统管理员进行账户的创建、删除,并且在每个账户创建的同时会赋予不同的权限,按照实际的情况和不同的要求给予权限;

(4)员工管理--员工信息:

添加、编辑或者删除员工的基本信息,主要包括员工编号、姓名、性别、职位、基本薪金等;

(5)外卖服务--外卖订单:

外卖员接订外卖,记录菜品信息和送货地址,打印外卖信息;

(6)外卖服务--外卖管理:

查看外卖订单情况并执行外卖流程操作,在送货之前可以更改外卖信息,如份数、送货地址(一般不允许退菜),最后外卖员送出外卖,把收回的钱交给收银员。

收银员更改外卖订单号的状态为已收款;

(7)前台营业--菜单&点菜:

根据顾客要求在菜单中点菜,并确定顾客就餐的桌号。

可以对顾客的点菜信息再次进行编辑,更改点菜情况(新增菜品、减少菜品、增减某菜品份数等)。

三、实验步骤:

1.母版页设计

(1)去掉滚动条,添加css样式表文件;

(2)分割页面,左侧为导航菜单,右侧上方为快捷按钮,右侧下方为操作区域,大致布局如下图所示;

1)插入表格,划分出左右区域,添加样式;

2)分割左侧单元格,使其成为logo区和导航菜单区,添加样式;

3)分割右侧单元格,使其成为快捷按钮区和操作区,添加样式;

(3)为各个区域添加所需内容

1)在logo区域放图片,作为logo;

2)在导航菜单区添加treeview控件,作为导航菜单,效果如图;

3)为快捷按钮区添加控件:

打开工具箱,找到Lable控件,在HTML分类下找到Image控件,将其拖放到快捷按钮区域,效果如图

(4)母版页设计最终效果如图

2.创建第一张网页chy_index.aspx

(1)在“解决方案资源管理器”中右键单击网站——选择“添加新项”——“web窗体”,取名为:

chy_index.aspx,并在“选择母板页”前打勾——单击添加。

然后进入母板选择对话框;

(2)在弹出的对话框中选择前面设计的MyMasterPage.Master——单击确定;

(3)在“解决方案资源管理器”中找到新建的index.aspx文件,右键——在浏览器中查看,页面的效果应该跟前面的母板页效果图相同;

3.系统管理——菜单管理实现

(1)修改原先的母版页:

将ContentPlaceHolder控件移动到操作区域的一对div中;

(2)添加新的页面文件chy_menu_add.aspx

1)插入表——在menu_add.aspx的设计视图,将鼠标放在ContentPlaceHolder1的白色区域,暂时插入3行3列的表,单元格衬距和单元格间距为0,使用百分比:

100%;

2)在表格中设计需要的控件排列和布局

●讲第一行设置为功能标题行:

将其合并单元格,输入文字“菜单菜品添加”;

●设置页面的title为“系统管理-菜单管理-菜单添加”;

●在第二行第一列中输入“菜品名称”,第二列拖入标准控件textbox,设置ID为txt_menuname;

●在第三列拖入验证控件RequiredFieldValidator;

●单击第三行,右键插入行,在第一列输入“菜品定价”,第二列拖入标准控件textbox,设置ID为txt_price,在txt_price右侧拖入验证控件RequiredFieldValidator,同理,在同一个单元格内,添加折扣的输入文本框txt_discount和验证控件

●添加足够的行,在第一列中分别输入菜品口味、制作材料、菜品描述;

●在菜品口味的下一列拖入控件DropDownList,设置ID为drop_taste;

●单击编辑项,在弹出框中输入口味的数据项;

●为drop_taste设置样式cssclass=textInput2;

●同理在drop_taste后添加菜品类型;

●为制作材料添加多行文本框,拖入控件textbox,设置ID为txt_material,编辑样式,同理添加菜品描述;

●在第一行拖一个linkbutton控件放在字的左侧,id=link_backcssclass=son_linktext=“>>返回菜单管理<<”

●在最后一行的中间两个单元格中拖入两个imagebutton控件,id分别为imgbtn_ok和imgbtn_clear;

●双击两个新增按钮,创建按钮被单击事件,此时效果如图

3)数据库操作类的定义

●在web.config文件中编辑数据库连接串,并为项目添加数据库处理文件;

●添加数据库操作类:

添加新项—类—命名为“chy_db.cs”,然后打开文件;

●添加命名控件System.Data.SqlClient;

●编写数据库操作类的代码

✧定义数据成员conn即数据库连接对象;

✧编写数据库连接函数;

✧添加查询功能函数,返回dataset对象

✧添加查询功能函数,返回SqlDataReader对象;

✧添加插入功能函数;

✧添加修改功能函数;

✧添加删除功能函数;

✧关闭数据库;

4)Chy_menu_add.aspx中确定按钮和清空按钮处理代码的实现

●确定按钮处理代码

●清空按钮处理代码

(3)添加新的页面文件chy_menu_manager.aspx

1)修改title为“系统管理—菜单管理”;

2)插入3行1列的表格;

3)制作页面:

●在第一行单元格输入标题:

菜单管理,class=oper_title;

●选中第二行单元格,设置属性居中,高为30px;

●在第二行添加文本菜品类型和DropDownList控件,设置ID为drop_type,下拉列表内容和添加页面一样;

●选中DropDownList控件,单击右上角的箭头,单击编辑项,增加一个下拉列表项“全部”,并放在第一个;

●在DropDownList控件右侧输入文本菜品名称并拖入控件textbox,设置ID为txt_search;

●在txt_search控件右侧输入适量空格,然后拖入标准控件imgbutton;

●选中第三行,设置属性valign=top,align=center;

●在第三行拖入数据控件GridView,添加样式;

●选中GridView,单击右上角的箭头,单击选择数据源的下拉列表,选择新建数据源;

●在数据源配置界面,单击下拉箭头,选择conname;

●单击下一步,选择需要的数据库,单击右侧的orderby按钮,设置查询结果的排序字段,测试查询;

●选中gridview,单击右上角的箭头,设置启用分页,排序,并修改每页记录条数;

●单击gridview任务的编辑栏,修改列标题;

●在对话框的左上角找到选择,然后单击添加,并设置属性headtext=“查看”;

●同理,添加删除列;

●运行测试界面如图

4)根据类型分类显示:

当类型下拉列表的选中项发生改变时,数据也随之发生改变

●选中drop_type控件,设置属性AutoPostBack=true,单击drop_type控件控件右上角的箭头,单击“编辑项”,修改第一项的value为%;

●选中gridview1,单击右上角的箭头,单击配置数据源,添加where字句;

5)按菜品名称查询

●选择gridview1,单击右上角的箭头,单击配置数据源,添加where字句;

6)编辑功能

●源代码界面,在最后一行的上面加入控件panel;

●将chy_menu_add.aspx页面中的table整个复制过来,放在

Panel>的前面,并进行参数修改;

●选中gridview1,添加SelectedIndexChanged事件;

●编写gridview1中某记录的详情比单击事件的处理代码

●测试。

浏览菜单管理页面,单击某记录的“详情”,是否能弹出该记录的编辑界面

●设计页面,双击修改按钮和关闭按钮,自动加入事件处理代码

✧关闭的处理代码编写

✧修改按钮处理代码

7)删除功能

●选中gridview1,添加RowDeleting事件;

●编写删除处理代码

●选中gridview1,双击RowDataBound,自动添加数据行绑定处理函数,编写函数

●运行测试界面

(4)用超链接把相关网页串联起来

1)设置从chy_menu_manager转到chy_menu_add页面

●打开chy_menu_manager的设计页面,在搜索按钮的后面拖入html分类input(Button)控件,设置属性ID为Btn_add;

●在源代码界面,增加onclick事件,使按钮单击使跳转到菜品添加页面

2)设置从chy_menu_add返回chy_menu_manager页面

●打开chy_menu_add.aspx的设计页面,选中超链接按钮“<<返回菜单管理<<”到源码界面将其改为html的超链接

3)设置从左侧的菜单打开chy_menu_manager页面

●打开母版页,选择左侧的treeview,编辑节点,找到节点菜单管理,将右侧属性navigateurl设置为menu_manager.aspx;

4.“前台营业”—“菜单&点菜”功能的实现

(1)添加页面chy_order_add.aspx,然后进行初步的界面设计;

(2)制作界面,并实现菜单数据的读取:

1)修改页面标题title为“前台营业-点菜”;

2)插入12行4列的表格,边距和边框都为0,width=“98%”;

3)合并第一行,输入标题——点菜,css设置为oper_title;

4)在你第二行第一列输入——订单编号,css:

align="right"height="25px"width="20%"

5)第二列,然后拖入lable控件,设置:

ID="L_ordernum"Font-Size="12px"Text="订单编号数据"

6)第三列 然后写入文字“桌号:

”,接着拖入lable控件,设置:

ID="L_tablenum"Font-Size="12px"Text="未选"

7)第四列,拖入控件buttom,设置ID="Btn_tablechoose"CausesValidation="False"Text="选择桌号"CssClass="btn_orange"

8)第三行第一列

10px;background:

url(./images/bg3.jpg);">。

输入文本“热菜菜谱:

9)第二列:

url(./images/bg3.jpg);">,第三列:

url(./images/bg3.jpg);">,第四列:

url(./images/bg3.jpg);">

10)在第三列输入“冷菜菜谱:

●在热菜菜谱的前面拖入html的image控件,冷菜菜谱同理;

11)第四行第一列拖入textbox控件,设置:

ID="TextBox1" CssClass="textInput2"。

然后键入合适的空格,再拖入imagebutton控件,设置ID="imgbtn_add1"

●第二列设置bgcolor="#F3F3F3"拖入标签,设置如下

LabelID="L_help1"runat="server"Text="0,0">

Label>

●第三列:

将第一列的2个控件复制过来即可,td:

align="center"

●第四列:

复制第二列的标签

LabelID="L_help2"runat="server"Text="0,0">

Label>

12)在第五行第一列:

,添加div并设置属性,如下

330px;width:

100%;overflow:

auto;margin-top:

5px;">

13)在div中拖入控件listbox,设置属性ID为ListBox1

14)Listbox绑定的数据源通过编程实现,讲属于热菜的菜品罗列出来

●在cs页面,添加命名空间:

usingSystem.Data.SqlClient;

●设置全局数据源对象ds1;

●编写自定义函数,从数据库获取热菜菜品数据,然后绑定到listbox1中

●在page_load函数中调用我们的自定义函数get_data1,使页面加载时,就将热菜数据绑定到listbox1中

15)第五行第二列,添加div并设置属性,加入控件gridview,效果如图

16)第五行第三列,然后将第一列中的整个div复制过来;

17)第五行第四列,然后将第二列中的整个div复制过来;

18)第六行

●第一列:

把第三行第一列的内容复制过来修改为酒水类,同时把单元格的样式设置也复制过来

●同理把第三行其余的内容和样式复制到第六行对应的列,进行修改;

19)第七行

●样式和内容复制第四行的内容;

●注意lable控件的id需要修改,分别为L_help3和L_help4;

20)第八行:

样式和内容均复制第五行的内容,修改部分样式与属性;

21)第九行第二列拖入控件button,设置ID为btn_ok2;

22)编写程序实现冷菜,酒水类和主食listbox列表的内容显示

●冷菜

●酒水类

●主食与甜点

●在page_load函数中调用新创建的3个自定义函数,加入if判断,只有第一次打开页面时才绑定数据;

(3)编程实现点菜过程

4)点菜:

●选中textbox1添加属性AutoPostBack为true;

●为textbox1添加TextChanged事件

●定义暂时存放点菜数据的数据结构:

DataTable类型是内存中的表结构,用来暂时存放用于点的菜;

●创建自定义函数set_data函数,为gridview1绑定点菜的数据

●添加imgbtn_add1的单击事件,并在cs页面编写代码

●同理实现订单号的生成:

在page_load函数的if语句中编写代码,订单有精确到秒的日期事件加一个10-99的随机数构成,然后再第二行的第一个单元格中添加button控件,设置属性ID为btn_ok1,text为提交订单

5)删除点菜数据

●选中gridview1,添加事件RowDeleting

●同理处理其他点菜删除的功能;

6)点菜份数更改

●选中gridview1,单击右上角任务中的编辑模板,选中里面的drop_amount1,修改属性AutoPostBack为true,添加事件SelectedIndexChanged

●在cs页面先创建一个函数,这个函数为四个gridview共用的方法,要保证四个gridview中的份数下拉列表的控件id都为Drop_amount1

●到设计界面,选中gridview1,找到事件RowDataBound,然后单击右侧的小三角,选择刚刚写的函数gridviewx;

●同理管理修改剩余的3个;

(4)选择桌号功能的实现

1)添加“选择桌号”按钮的单击事件,并编写代码

2)在table的外面添加panel控件

3)插入3行3列的表格,第一行第二个单元格写入标题:

选择座位

4)第二行第二列插入DropDownList控件,修改属性ID为drop_style;

5)第二行第三行拖入button控件,设置text属性和cssclass属性;

6)合并第三行单元格,设置单元格水平居中,然后拖入datalist控件,数据源设置,添加where字句和orderby字句;

7)单击datalist控件的属性生成器,设置属性;

8)单击datalist的编辑模板,在模板编辑区域的第一行回车,然后从工具箱拖入button控件,设置button控件属性;

9)根据座位的不同状态给予不同的实现方式:

添加事件Itemdatabound

●在page_load函数的if语句中添加viewstate,存放选中的桌号id;

●编写事件代码,主要目的是根据座位的不同状态用合适的方式显示出来

10)添加panel1上的确定按钮的单击事件,并编写代码,选定座位

11)Panel1确定按钮的右边,加入适当空格后,拖入button控件,座位取消按钮

●添加按钮的单击事件,并编写代码

●修改选择桌号按钮的处理代码,调用刚刚写好的存储过程,处理下座位的状态,是数据更新到最新情况,然后重新读取座位数据绑定到datalist1,在打开选择座位的界面

(5)设置从左侧的菜单打开chy_order_add页面:

打开母版页,选择左侧的treeview,编辑节点,找到节点菜单&点菜,将右侧属性navigateurl设置为chy_order_add.aspx;

5.员工管理——员工信息实现:

与“系统管理——菜单管理”功能模块制作相似,两个页面分别是员工信息添加(chy_emmploy_add)和员工信息管理(chy_emmploy_manager);

(1)员工信息添加页面:

添加员工的姓名,性别,身份证号,出生年月,聘用日期,职位,基本薪金,联系电话,住址等基本信息;

1)员工性别和职位用的是dropdownlist控件,其余使用textbox控件,一个确定按钮,一个清空按钮;

2)确定按钮实现事件代码:

3)清空按钮实现事件代码:

4)运行结果:

(2)员工信息管理页面:

显示员工姓名,身份证号码,职位,基本薪金,联系电话,住址等基本信息,查看员工信息详情(可修改员工信息),删除员工信息,根据职位搜索相关职位员工,根据员工姓名搜索员工;

1)显示员工基本信息使用GridView控件,根据职位搜索使用dropdownlist控件,姓名搜索框为textbox,搜索按钮为imagebutton,以及一个添加按钮;

2)点击详情,弹出员工信息查看与详情界面:

其界面与员工添加界面相似,确定按钮更改为修改按钮,清空按钮改为关闭按钮;

3)详情被单击事件的处理代码:

4)删除被单击事件的处理代码:

5)关闭按钮的处理代码:

6)修改按钮处理代码:

7)运行结果图:

 

四、实验总结

这次实训我选择的是餐厅内部营业管理系统。

这次的实训虽然难度较大,但跟着老师发的实验步骤,一步一步的操作,最后还是成功完成了这次实训。

在实训过程中,因为需要操作的东西很多,难度较大,有时错一步,就会导致后面的结果无法显示,我总结了这次实训中我遇到的问题与解决方法。

1.最开始分割页面时需要插入表格,这里我不能很好的利用设计界面,快捷的插入表格,只能在源代码中通过代码的方式添加,在后续的程序中出现了插入列与行时整张表格不能很好的呈现,之后我问了老师老师告诉我可以通过设计界面的html分类中的table控件添加表格;

2.数据库的连接出现问题:

在不同的电脑上数据库的服务器名称,用户名和密码都是不同的,所以在编辑数据库连接串时,经常会忘记更改数据库的服务器名称,有些数据库时直接登录的,不需要用户名和密码,这些都会导致数据库的连接失败,所以在不需要用户名与密码时需要在守护据库连接串中添加integratedsecurity=sspi,每次连接数据库时要注意服务器名称的更改;

3.在制作菜单管理页面时,点击菜品类型下拉列表是会出现“drop_taste”有一个无效SelectedValue,因为它不在项目列表中或者“drop_type”有一个无效SelectedValue,因为它不在项目列表中等这些类似的错误,这是因为下拉列表中的各项数据与数据库中对应的值不相符,只要将下拉列表中的值与数据库相对应就可以解决这个问题;

4.在与数据库有关的语句,例如查询,添加,删除,修改等,经常会出现用户代码为处理SqlException,“where”附近有语法错误等数据库语句问题,这时候一般都是数据库语句错误,表名、列名、引号错误,只要将数据库语句写对就可以了;

5.在点菜页面,点完菜修改份数之后,出现了用户代码为处理IndexOutOfRangeException,在位置4处没有任何行,通过老师的检查,发现是没有给gridview控件rowdatabound事件,使droplist无法正确获得数据,继续进行下面的程序;

6.有时候在没有完成一个阶段的程序编写时运行,会出现某些控件关联到一些没有实际程序编写的事件,只要把这些无关的事件删除,就可以进行下面的程序;

这次的实训也有很多的不足,在最后之作员工管理系统时,由于数据库表的不同经常还在写数据库语句时出现表名,列名的错误,因为与菜单管理系统相似,会在写按钮处理代码时,忘记一些语句,以及员工查询与详情的页面不够美观与严谨,会出现两行之间的间距消失等,这一些小不足希望能在接下来的学习中弥补。

总的来说,这次的实训让我受益匪浅,让我认识到了我的很多不足,首先要感谢对我精心指导的老师,帮助我早实训过程中解决了很多我解决不了额度问题,让我能继续完成借来的内容和实训的成功。

这次我收获最大的是让我认识到做程序不能着急,越着急越不利。

把心态摆平稳,从简单做起,不能急于求成。

只要坚持,没有什么是不能过去的。

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 工作范文 > 演讲主持

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2