前言
随着市场、经济的全球化,越来越多的企业认识到:提高企业的竞争力,选择信息化是必由之路。本文论述的订餐系统是针对餐饮娱乐业而设计的一种商务服务网站。其主要功能是完成外卖的前期和辅助工作,即通过网络进行定餐和对服务进行评价。而餐饮工作流程的其他部分如送外卖、付款等后期工作依旧采用传统方式。
微软的. NET平台作为新一代的互联网平台,提供了支持未来计算的高效的Web服务开发工具。利用.NET平台进行订餐系统的开发是此类系统未来开发的趋势之一。本文所设计的系统在.NET平台上进行开发,采用了最新的ASP.NET技术,用VB.NET进行了编码,并使用SQL server进行数据库设计,基本实现了预定的目标,建立起一个比较完整的外卖系统。其特点是方便快捷的操作方式,简单易懂的管理方法,因此对于企业和用户来说,都是一种新型的、节约型的系统。
系统结构介绍
系统的总体流程如图1所示,注册用户可以进行订餐和留言、评分;管理员可以进行订单管理,留言和评分管理,用户管理,菜单管理等操作。
系统模块设计
总体分为用户和管理员两个模块
用户模块
1.新用户注册:填写注册信息。
2.注册用户登录:只有登录才能查看留言和订餐。
3.订餐:记录用户的订餐信息。
4.留言:记录用户的留言和评分信息。
管理员模块
1.订单管理:对用户的订单进行处理或删除。
2.留言管理:对用户的留言进行查看或删除。
3.用户管理:对用户信息进行查看或删除。
4.菜单管理:对菜单进行修改或者删除,添加新菜品。
系统实现
用户功能模块实现
用户模块包括:新用户注册,注册用户登录,注册用户订餐,注册用户留言和评分。
新用户注册
用户填写注册信息包括必填项:用户名,密码,验证密码,email;和可选填写的信息。注册成功后返回登录成功页面,可以选择进行订餐和留言、评分操作。
流程图如下:
注册页面设计如图:
在提交的时候,检测用户名是否已经存在,若存在,则返回错误信息,重新填写注册信息。从工作流上看,只有注册成功后才可以进行订餐和留言。
-
-
- 登录
-
用户需要填写用户名和密码,对输入的用户名与数据库的进行比较,若没有则返回错误,对密码也进行判断,因为密码在保存时是经过MD5加密的,所以在判断的时候也把输入的密码先进行MD5加密,然后进行比较。登录成功进入登录成功页面。
流程图如下:
登录页面设计如下:
订餐
使用DATAGRID绑定DISH表显示菜单,在DATAGRID上每行绑定一个多选按钮和下拉列表,进行多选和数量的选择。然后在文本框中输入送餐的地点,电话和其他的备注信息。若菜品和地址都填写好,则进入订餐成功页面,可以查看自己的订餐信息,可以进行修改和删除。若错误,则报告错误信息,返回订餐页面。
流程图如下:
订餐页面设计如下:
留言
在留言页面,用户可以对服务进行评分,同时进行留言
对留言的显示同样采用DATAGRID对数据库进行读取然后显示。提交留言的时候对分数进行判断,然后对留言内容是否为空进行判断,然后写进数据库。
流程图如下:
管理员模块
在此模块中,采用技术都是一样的,所以同一种操作只列出一个。
订单管理
使用DATAGRID绑定数据库显示订单信息,
订单信息分为三类,已经确认的和没有确认的还有已经处理的。
没有确认的订单信息,管理员都可以进行确认或者删除。
流程图如下:
处理订单操作和确认订单相似,都含有处理和删除两个按钮列,以便于进行操作。所有已经处理过的订单,都可以通过另一个页面进行管理操作,里面只包含了一个按钮列:删除。
留言管理
使用DATAGRID绑定数据库显示留言信息,在DATAGRID上添加一列按钮列进行删除操作。
流程图如下:
菜单管理
使用DATAGRID绑定数据库显示留言信息,在DATAGRID上添加两个按钮列进行删除操作和更新操作,还可进行新菜品的添加。
流程图如下:
用户管理
同样采用DATAGRID绑定数据库进行显示,在DATAGRID上添加按钮列:删除,进行删除操作。
流程图如下
部分代码展示操作: (太多了就不全展示了。)
conn.ConnectionString = "Connect Timeout=5;packet size=4096;persist security info=False;initial catalog=dishsale;data source=32A5C0037011401;user id=sa;password=''"‘链接数据库
cmd.Connection = conn
cmd.CommandType = CommandType.Text
conn.Open()
Dim strsql As String = "select * from shopper where cshopperid='" & Trim(txtName.Text) & "'"
cmd = New SqlCommand(strsql, conn)
Dim reader As SqlDataReader = cmd.ExecuteReader()
If reader.Read() = True Then
namewrong.Text = "已有此用户名"
conn.Close()
Else
conn.Close()
所有信息正确便将密码加密之后,将所有信息插入数据表shopper中。
代码如下:
Dim conn1 As New System.Data.SqlClient.SqlConnection
Dim cmd1 As New System.Data.SqlClient.SqlCommand
Dim str1 As String
Dim str2 As String
str1 = Password1.Text
str2 = System.Web.Security.FormsAuthentication.HashPasswordForStoringInConfigFile(str1, "MD5")
‘使用MD5加密算法加密密码文本框的值
conn1.ConnectionString = "Connect Timeout=5;packet size=4096;persist security info=False;initial catalog=dishsale;data source=32A5C0037011401;user id=sa;password=''"
cmd1.Connection = conn1
cmd1.CommandType = CommandType.Text
conn1.Open()
sqlstr = "insert shopper([cshopperid],[cpassword],[csex],[cage],[vaddress],[cphone],[vemail],[vmemo],[dregistertime],[dlastlandtime]) values('"
sqlstr += txtName.Text & "','"
sqlstr += str2 & "','"
If man.Checked Then
sqlstr += "男','"
ElseIf woman.Checked Then
sqlstr += "女','"
End If
sqlstr += txtAge.Text & "','"
sqlstr += txtAddress.Text & "','"
sqlstr += txtPhone.Text & "','"
sqlstr += txtEmail.Text & "','"
sqlstr += txtMemo.Text & "','"
sqlstr += System.DateTime.Now & "','"
sqlstr += System.DateTime.Now & "')"
cmd1.CommandText = sqlstr ‘将注册信息插入数据库
cmd1.ExecuteNonQuery()
conn1.Close()