三层架构之餐饮管理系统客户端附源码

本示例用到:三层结构、松耦合、加密、委托、事件、单例模式、拼音检索、NPOI插件等。下面附项目源码。。。

功能介绍:

表说明,表字段已加备注说明:

项目文件:

业务层(Bll):

 1 using System;
 2 using System.Collections.Generic;
 3 using System.Linq;
 4 using System.Text;
 5 using System.Threading.Tasks;
 6 using Model;
 7 using Dal;
 8 
 9 namespace Bll
10 {
11     /// <summary>
12     /// 菜品表,业务逻辑层
13     /// </summary>
14     public class DishInfoBll
15     {
16         private DishInfoDal dal = new DishInfoDal();
17         /// <summary>
18         /// 获取表数据
19         /// </summary>
20         /// <param name="model"></param>
21         /// <returns></returns>
22         public List<DishInfo> GetList(DishInfo model)
23         {
24             try
25             {
26                 return dal.GetList(model);
27             }
28             catch (Exception ex)
29             {
30                 throw ex;
31             }
32         }
33         /// <summary>
34         /// 添加
35         /// </summary>
36         /// <param name="model"></param>
37         /// <returns></returns>
38         public bool Add(DishInfo model)
39         {
40             try
41             {
42                 return dal.Insert(model)>0;
43             }
44             catch (Exception ex)
45             {
46                 throw ex;
47             }
48         }
49         /// <summary>
50         /// 修改
51         /// </summary>
52         /// <param name="model"></param>
53         /// <returns></returns>
54         public bool Edit(DishInfo model)
55         {
56             try
57             {
58                 return dal.Update(model) > 0;
59             }
60             catch (Exception ex)
61             {
62                 throw ex;
63             }
64         }
65         /// <summary>
66         /// 删除
67         /// </summary>
68         /// <param name="Did">编号</param>
69         /// <returns></returns>
70         public bool Remove(int Did)
71         {
72             try
73             {
74                 return dal.Delete(Did) > 0;
75             }
76             catch (Exception ex)
77             {
78                 throw ex;
79             }
80         }
81     }
82 }
DishInfoBll
 1 using System;
 2 using System.Collections.Generic;
 3 using System.Linq;
 4 using System.Text;
 5 using System.Threading.Tasks;
 6 using Model;
 7 using Dal;
 8 
 9 namespace Bll
10 {
11     /// <summary>
12     /// 菜品分类表,业务层
13     /// </summary>
14     public class DishTypeInfoBll
15     {
16         private DishTypeInfoDal dal = new DishTypeInfoDal();
17         /// <summary>
18         /// 获取表数据
19         /// </summary>
20         /// <returns></returns>
21         public List<DishTypeInfo> GetList()
22         {
23             try
24             {
25                 return dal.GetList();
26             }
27             catch (Exception ex)
28             {
29                 throw ex;
30             }            
31         }
32         /// <summary>
33         /// 添加
34         /// </summary>
35         /// <param name="model">实体类</param>
36         /// <returns></returns>
37         public bool Add(DishTypeInfo model)
38         {
39             try
40             {
41                 return dal.Insert(model) > 0;
42             }
43             catch (Exception ex)
44             {
45                 throw ex;
46             }
47         }
48         /// <summary>
49         /// 修改
50         /// </summary>
51         /// <param name="model">实体类</param>
52         /// <returns></returns>
53         public bool Edit(DishTypeInfo model)
54         {
55             try
56             {
57                 return dal.Update(model) > 0;
58             }
59             catch (Exception ex)
60             {
61                 throw ex;
62             }
63         }
64         /// <summary>
65         /// 逻辑删除
66         /// </summary>
67         /// <param name="Did">编号</param>
68         /// <returns></returns>
69         public bool Remove(int Did)
70         {
71             try
72             {
73                 return dal.Delete(Did)>0;
74             }
75             catch (Exception ex)
76             {
77                 throw ex;
78             }
79         }
80     }
81 }
DishTypeInfoBll
 1 using System;
 2 using System.Collections.Generic;
 3 using System.Linq;
 4 using System.Text;
 5 using System.Threading.Tasks;
 6 using Model;
 7 using Dal;
 8 
 9 namespace Bll
10 {
11     /// <summary>
12     /// 厅包表,业务层
13     /// </summary>
14     public class HallInfoBll
15     {
16         private HallInfoDal dal = new HallInfoDal();
17         /// <summary>
18         /// 获取表数据
19         /// </summary>
20         /// <returns></returns>
21         public List<HallInfo> GetList()
22         {
23             try
24             {
25                 return dal.GetList();
26             }
27             catch (Exception ex)
28             {
29                 throw ex;
30             }
31         }
32         /// <summary>
33         /// 添加
34         /// </summary>
35         /// <param name="model"></param>
36         /// <returns></returns>
37         public bool Add(HallInfo model)
38         {
39             try
40             {
41                 return dal.Insert(model) > 0;
42             }
43             catch (Exception ex)
44             {
45                 throw ex;
46             }
47         }
48         /// <summary>
49         /// 修改
50         /// </summary>
51         /// <param name="model"></param>
52         /// <returns></returns>
53         public bool Edit(HallInfo model)
54         {
55             try
56             {
57                 return dal.Update(model) > 0;
58             }
59             catch (Exception ex)
60             {
61                 throw ex;
62             }
63         }
64         /// <summary>
65         /// 删除
66         /// </summary>
67         /// <param name="HId">编号</param>
68         /// <returns></returns>
69         public bool Remove(int HId)
70         {
71             try
72             {
73                 return dal.Delete(HId) > 0;
74             }
75             catch (Exception ex)
76             {
77                 throw ex;
78             }
79         }
80     }
81 }
HallInfoBll
 1 using Dal;
 2 using Model;
 3 using System.Collections.Generic;
 4 
 5 namespace Bll
 6 {
 7     /// <summary>
 8     ///  用户信息表,业务逻辑层
 9     /// </summary>
10     public class ManagerInfoBll
11     {
12         ManagerInfoDal dal = new ManagerInfoDal();
13         /// <summary>
14         /// 获取表中的数据
15         /// </summary>
16         /// <returns></returns>
17         public List<ManagerInfo> GetList()
18         {
19             return dal.GetList(null);
20         }
21         /// <summary>
22         /// 添加
23         /// </summary>
24         /// <param name="model"></param>
25         /// <returns></returns>
26         public bool Add(ManagerInfo model)
27         {
28             return dal.Insert(model) > 0;
29         }
30         /// <summary>
31         /// 删除
32         /// </summary>
33         /// <param name="id"></param>
34         /// <returns></returns>
35         public bool Remove(int id)
36         {
37             return dal.DeleteById(id) > 0;
38         }
39         public bool Edit(ManagerInfo model)
40         {
41             return dal.Update(model) > 0;
42         }
43         /// <summary>
44         /// 登陆
45         /// </summary>
46         /// <param name="model"></param>
47         /// <returns></returns>
48         public bool Login(ManagerInfo model)
49         {            
50             var list = dal.GetList(model);
51             model.MType = list[0].MType;
52             return list.Count > 0;
53         }
54     }
55 }
ManagerInfoBll
 1 using System;
 2 using System.Collections.Generic;
 3 using System.Linq;
 4 using System.Text;
 5 using System.Threading.Tasks;
 6 using Dal;
 7 using Model;
 8 
 9 namespace Bll
10 {
11     /// <summary>
12     /// 会员信息表,业务逻辑层
13     /// </summary>
14     public class MemberInfoBll
15     {
16         private MemberInfoDal dal = new MemberInfoDal();
17         /// <summary>
18         /// 查询表信息
19         /// </summary>
20         /// <param name="model">实体类</param>
21         /// <returns></returns>
22         public List<MemberInfo> GetList(MemberInfo model)
23         {
24             return dal.GetList(model);
25         }
26         /// <summary>
27         /// 添加
28         /// </summary>
29         /// <param name="model"></param>
30         /// <returns></returns>
31         public bool Add(MemberInfo model)
32         {
33             return dal.Insert(model)>0;
34         }
35         /// <summary>
36         /// 修改
37         /// </summary>
38         /// <param name="model">实体类</param>
39         /// <returns></returns>
40         public bool Edit(MemberInfo model)
41         {
42             return dal.Update(model) > 0;
43         }
44         /// <summary>
45         /// 删除
46         /// </summary>
47         /// <param name="Mid">编号</param>
48         /// <returns></returns>
49         public bool Delete(int Mid)
50         {
51             return dal.Delete(Mid) > 0;
52         }
53     }
54 }
MemberInfoBll
 1 using System;
 2 using Dal;
 3 using Model;
 4 using System.Collections.Generic;
 5 
 6 namespace Bll
 7 {
 8     /// <summary>
 9     /// 会员等级表,业务逻辑层
10     /// </summary>
11     public class MemberTypeInfoBll
12     {
13         private MemberTypeInfoDal dal = new MemberTypeInfoDal();
14         /// <summary>
15         /// 获取表数据
16         /// </summary>
17         /// <returns></returns>
18         public List<MemberTypeInfo> GetList()
19         {
20             return dal.GetList();
21         }
22         /// <summary>
23         /// 添加
24         /// </summary>
25         /// <param name="model">实体类</param>
26         /// <returns></returns>
27         public bool Add(MemberTypeInfo model)
28         {
29             return dal.Insert(model)>0;
30         }
31         /// <summary>
32         /// 修改
33         /// </summary>
34         /// <param name="model"></param>
35         /// <returns></returns>
36         public bool Edit(MemberTypeInfo model)
37         {
38             return dal.Update(model) > 0;
39         }
40         /// <summary>
41         /// 删除
42         /// </summary>
43         /// <param name="Mid"></param>
44         /// <returns></returns>
45         public bool Delete(int Mid)
46         {
47             return dal.Delete(Mid) > 0;
48         }
49     }
50 }
MemberTypeInfoBll
  1 using System;
  2 using System.Collections.Generic;
  3 using System.Linq;
  4 using System.Text;
  5 using System.Threading.Tasks;
  6 using Model;
  7 using Dal;
  8 
  9 namespace Bll
 10 {
 11     /// <summary>
 12     /// 订单表业务层
 13     /// </summary>
 14     public class OrderInfoBll
 15     {
 16         private OrderInfoDal dal = new OrderInfoDal();
 17         /// <summary>
 18         /// 开单
 19         /// </summary>
 20         /// <param name="tableId">餐桌编号</param>
 21         /// <returns></returns>
 22         public bool KaiDan(int tableId)
 23         {
 24             try
 25             {
 26                 return dal.KaiDan(tableId)>0;
 27             }
 28             catch (Exception ex)
 29             {
 30                 throw ex;
 31             }
 32         }
 33         /// <summary>
 34         /// 获取订单编号
 35         /// </summary>
 36         /// <param name="TId"></param>
 37         /// <returns></returns>
 38         public int GetOIdByTId(int Tid)
 39         {
 40             try
 41             {
 42                 return dal.GetOIdByTId(Tid);
 43             }
 44             catch (Exception ex)
 45             {
 46                 throw ex;
 47             }
 48         }
 49         /// <summary>
 50         /// 获取付款金额
 51         /// </summary>
 52         /// <param name="TId">餐桌编号</param>
 53         /// <returns></returns>
 54         public decimal GetMoneyByTid(int TId)
 55         {
 56             try
 57             {
 58                 return dal.GetMoneyByTid(TId);
 59             }
 60             catch (Exception ex)
 61             {
 62                 throw ex;
 63             }
 64         }
 65         /// <summary>
 66         /// 点菜
 67         /// </summary>
 68         /// <param name="orderId">订单ID</param>
 69         /// <param name="dishId">菜品ID</param>
 70         /// <returns></returns>
 71         public bool DianCai(int orderId,int dishId)
 72         {
 73             try
 74             {
 75                 return dal.DianCai(orderId, dishId)>0;
 76             }
 77             catch (Exception ex)
 78             {
 79                 throw ex;
 80             }
 81         }
 82         /// <summary>
 83         /// 获取顾客已点菜的明细
 84         /// </summary>
 85         /// <param name="orderId">订单编号</param>
 86         /// <returns></returns>
 87         public List<OrderDetaillInfo> GetOrderDetail(int orderId)
 88         {
 89             try
 90             {
 91                 return dal.GetOrderDetail(orderId);
 92             }
 93             catch (Exception ex)
 94             {
 95                 throw ex;
 96             }
 97         }
 98         /// <summary>
 99         /// 更新菜品数量
100         /// </summary>
101         /// <param name="OId">订单ID</param>
102         /// <param name="count">更新的数量</param>
103         /// <returns></returns>
104         public bool UpdateDishCount(int OId, int count)
105         {
106             try
107             {
108                 return dal.UpdateDishCount(OId, count)>0;
109             }
110             catch (Exception ex)
111             {
112                 throw ex;
113             }
114         }
115         /// <summary>
116         /// 删除已点的菜品
117         /// </summary>
118         /// <param name="OId">订单编号</param>
119         /// <returns></returns>
120         public bool DeleteDish(int OId)
121         {
122             try
123             {
124                 return dal.DeleteDish(OId) > 0;
125             }
126             catch(Exception ex)
127             {
128                 throw ex;
129             }
130         }
131         /// <summary>
132         /// 下单
133         /// </summary>
134         /// <param name="OrderId">订单编号</param>
135         /// <param name="totalMoney">总钱数</param>
136         /// <returns></returns>
137         public bool XianDan(int OrderId, decimal totalMoney)
138         {
139             try
140             {
141                 return dal.XianDan(OrderId, totalMoney) > 0;
142             }
143             catch (Exception ex)
144             {
145                 throw ex;
146             }
147         }
148         /// <summary>
149         /// 结账
150         /// </summary>
151         /// <param name="tableId">餐桌编号</param>
152         /// <param name="memberId">会员编号</param>
153         /// <param name="discount">折扣</param>
154         /// <param name="payMoney">折扣金额</param>
155         /// <returns></returns>
156         public bool JieZhang(int tableId, int memberId, decimal discount, decimal payMoney)
157         {
158             try
159             {
160                 return dal.JieZhang(tableId, memberId, discount, payMoney) > 0;
161             }
162             catch (Exception ex)
163             {
164                 throw ex;
165             }
166         }
167     }
168 }
OrderInfoBll
 1 using System;
 2 using System.Collections.Generic;
 3 using System.Linq;
 4 using System.Text;
 5 using System.Threading.Tasks;
 6 using Model;
 7 using Dal;
 8 
 9 namespace Bll
10 {
11     /// <summary>
12     /// 餐桌表业务层
13     /// </summary>
14     public class TableInfoBll
15     {
16         private TableInfoDal dal = new TableInfoDal();
17         /// <summary>
18         /// 获取表数据
19         /// </summary>
20         /// <returns></returns>
21         public List<TableInfo> GetList(TableInfo model)
22         {
23             try
24             {
25                 return dal.GetList(model);
26             }
27             catch (Exception ex)
28             {
29                 throw ex;
30             }
31         }
32         /// <summary>
33         /// 添加
34         /// </summary>
35         /// <param name="model"></param>
36         /// <returns></returns>
37         public bool Add(TableInfo model)
38         {
39             try
40             {
41                 return dal.Insert(model) > 0;
42             }
43             catch (Exception ex)
44             {
45                 throw ex;
46             }
47         }
48         /// <summary>
49         /// 修改
50         /// </summary>
51         /// <param name="model"></param>
52         /// <returns></returns>
53         public bool Edit(TableInfo model)
54         {
55             try
56             {
57                 return dal.Update(model) > 0;
58             }
59             catch (Exception ex)
60             {
61                 throw ex;
62             }
63         }
64         public bool Remove(int TId)
65         {
66             try
67             {
68                 return dal.Delete(TId)>0;
69             }
70             catch (Exception ex)
71             {
72                 throw ex;
73             }
74         }
75     }
76 }
TableInfoBll

公共类(Common):

  1 using System;
  2 using System.Collections.Generic;
  3 using System.Linq;
  4 using System.Text;
  5 using System.Threading.Tasks;
  6 using System.IO;
  7 
  8 namespace Common
  9 {
 10     /// <summary>
 11     /// 文件操作工具类
 12     /// </summary>
 13     public class FileUtil
 14     {
 15         /// <summary>
 16         /// 追加文件
 17         /// </summary>
 18         /// <param name="path">文件路径</param>
 19         /// <param name="str">内容</param>
 20         public static void FileAdd(string path,string strContent)
 21         {
 22             StreamWriter sw = File.AppendText(path);
 23             sw.WriteLine(strContent);
 24             sw.Flush();
 25             sw.Close();
 26         }
 27         /// <summary>
 28         /// 向文本追加字符
 29         /// </summary>
 30         /// <param name="fileFullPath">文件路径</param>
 31         /// <param name="strContent">内容</param>
 32         public static void AppendStrToTxtFile(string fileFullPath,string strContent)
 33         {
 34             string errPath = fileFullPath;
 35             FileStream errStr = null;//文件流
 36             StreamWriter errWrite = null; //写入流
 37             try
 38             {
 39                 if (File.Exists(errPath)) //判断文件是否存在
 40                 {
 41                     errStr = new FileStream(errPath, FileMode.Append); //打开文件
 42                 }
 43                 else
 44                 {
 45                     errStr = new FileStream(errPath, FileMode.Create); //创建文件
 46                 }
 47                 errWrite = new StreamWriter(errStr, System.Text.Encoding.UTF8); //写入流编码格式
 48                 errWrite.Write(strContent);
 49             }
 50             catch (Exception ex)
 51             {
 52                 throw ex;
 53             }
 54             finally
 55             {
 56                 if (errStr!=null)
 57                 {
 58                     errStr.Close();
 59                 }
 60                 if (errWrite!=null)
 61                 {
 62                     errWrite.Close();
 63                 }
 64             }
 65         }
 66         /// <summary>
 67         /// 拷贝文件,不能是目录
 68         /// </summary>
 69         /// <param name="oldFile">源文件路径</param>
 70         /// <param name="newFile">新文件路径</param>
 71         public static void FileCopy(string oldFile,string newFile)
 72         {
 73             File.Copy(oldFile, newFile, true);
 74         }
 75         /// <summary>
 76         /// 删除文件
 77         /// </summary>
 78         /// <param name="path">文件路径</param>
 79         public static void FileDel(string path)
 80         {
 81             File.Delete(path);
 82         }
 83         /// <summary>
 84         /// 删除文件时,设置文件的为正常,并删除(若为只读的话,直接删,将报错)
 85         /// </summary>
 86         /// <param name="fileFullPath">文件路径</param>
 87         /// <returns></returns>
 88         public static bool DeleteFile(string fileFullPath)
 89         {
 90             if (File.Exists(fileFullPath)) //判断文件是否存在
 91             {
 92                 File.SetAttributes(fileFullPath, FileAttributes.Normal);
 93                 File.Delete(fileFullPath);
 94                 return true;
 95             }
 96             else
 97             {
 98                 return false;
 99             }
100         }
101         /// <summary>
102         /// 移动文件
103         /// </summary>
104         /// <param name="oldFile">源文件</param>
105         /// <param name="newFile">新文件</param>
106         public static void FileMove(string oldFile,string newFile)
107         {
108             File.Move(oldFile, newFile);
109         }
110         /// <summary>
111         /// 在当前目录下创建目录
112         /// </summary>
113         /// <param name="currentDirectory">当前目录</param>
114         /// <param name="newDirectory">新目录</param>
115         public static void FolderCreate(string currentDirectory,string newDirectory)
116         {
117             Directory.SetCurrentDirectory(currentDirectory);
118             Directory.CreateDirectory(newDirectory);
119         }
120         /// <summary>
121         /// 递归删除文件夹目录及文件
122         /// </summary>
123         /// <param name="dir"></param>
124         public static void DeleteFolder(string dir)
125         {
126             if (Directory.Exists(dir)) //如果存在这个文件夹删除
127             {
128                 foreach (string d in Directory.GetFileSystemEntries(dir))
129                 {
130                     if (File.Exists(d))
131                     {
132                         File.Delete(d); //删除其中的文件
133                     }
134                     else
135                     {
136                         DeleteFolder(d); //递归删除子文件夹
137                     }
138                 }
139                 Directory.Delete(dir); //删除已空文件夹
140             }
141         }
142     }
143 }
FileUtil
 1 using System;
 2 using System.Collections.Generic;
 3 using System.Linq;
 4 using System.Security.Cryptography;
 5 using System.Text;
 6 using System.Threading.Tasks;
 7 
 8 namespace Common
 9 {
10     /// <summary>
11     /// Md5帮助类
12     /// </summary>
13     public class Md5Helper
14     {
15         /// <summary>
16         /// MD5加密,返回一个32位的十六进制值小写
17         /// </summary>
18         /// <param name="str">待加密字符串</param>
19         /// <returns></returns>
20         public static string GetMd5(string str)
21         {
22             //引入命名空间:using System.Security.Cryptography;
23             //创建Md5对象
24             MD5 md5 = MD5.Create();
25             //将字符串转成字节数组
26             byte[] bs = Encoding.UTF8.GetBytes(str);
27             //加密
28             byte[] buffer = md5.ComputeHash(bs);
29             //将字节数组转换成字符串
30             StringBuilder sb = new StringBuilder();
31             for (int i = 0; i < buffer.Length; i++)
32             {
33                 sb.Append(buffer[i].ToString("x2").ToLower());
34             }
35             return sb.ToString();
36         }
37     }
38 }
Md5Helper
 1 using System;
 2 using System.Collections.Generic;
 3 using System.Linq;
 4 using System.Text;
 5 using System.Threading.Tasks;
 6 using Microsoft.International.Converters.PinYinConverter;
 7 
 8 namespace Common
 9 {
10     /// <summary>
11     /// 拼音类
12     /// </summary>
13     public class PinYinHelper
14     {
15         /// <summary>
16         /// 获取汉子拼音的首字母
17         /// </summary>
18         /// <param name="str">获取拼音的字符串</param>
19         /// <returns></returns>
20         public static string GetPinYin(string str)
21         {
22             try
23             {
24                 StringBuilder sb = new StringBuilder();
25                 foreach (char c in str)
26                 {
27                     if (ChineseChar.IsValidChar(c)) //若为字符
28                     {
29                         ChineseChar cc = new ChineseChar(c);
30                         sb.Append(cc.Pinyins[0][0]); //获取首字母
31                     }
32                     else
33                     {
34                         sb.Append(c);
35                     }
36                 }
37                 return sb.ToString();
38             }
39             catch (Exception ex)
40             {
41                 throw ex;
42             }
43         }
44     }
45 }
PinYinHelper

业务逻辑层(Dal):

  1 using System;
  2 using System.Collections.Generic;
  3 using Model;
  4 using System.Data;
  5 using System.Data.SqlClient;
  6 
  7 namespace Dal
  8 {
  9     /// <summary>
 10     /// 菜品表,数据层
 11     /// </summary>
 12     public class DishInfoDal
 13     {
 14         /// <summary>
 15         /// 获取表数据
 16         /// </summary>
 17         /// <param name="model"></param>
 18         /// <returns></returns>
 19         public List<DishInfo> GetList(DishInfo model)
 20         {
 21             try
 22             {
 23                 List<SqlParameter> listP = new List<SqlParameter>();
 24                 string sql = "SELECT DI.*,DTI.DTitle TypeTitle FROM DishInfo DI INNER JOIN DishTypeInfo DTI ON DI.DTypeId=DTI.Did WHERE DI.DIsDelete=0";
 25                 if (!string.IsNullOrEmpty(model.DTitle))
 26                 {
 27                     sql += " AND DI.DTitle LIKE @DTitle ";
 28                     listP.Add(new SqlParameter("@DTitle", SqlDbType.VarChar, 50) { Value = "%" + model.DTitle + "%" });
 29                 }
 30                 if (model.DTypeId > 0)
 31                 {
 32                     sql += " AND DI.DTypeId=@DTypeId";
 33                     listP.Add(new SqlParameter("@DTypeId", SqlDbType.Int) { Value = model.DTypeId });
 34                 }
 35                 if (!string.IsNullOrEmpty(model.DChar))
 36                 {
 37                     sql += " AND DI.DChar LIKE @DChar";
 38                     listP.Add(new SqlParameter("@DChar",SqlDbType.VarChar,50) {Value="%"+model.DChar+"%" });
 39                 }
 40                 DataTable dt = SqlHelper.GetList(sql, CommandType.Text,listP.ToArray());
 41                 List<DishInfo> list = new List<DishInfo>();
 42                 foreach (DataRow dr in dt.Rows)
 43                 {
 44                     list.Add(new DishInfo()
 45                     {
 46                         Did = Convert.ToInt32(dr["Did"]),
 47                         DTitle = dr["DTitle"].ToString(),
 48                         DChar = dr["DChar"].ToString(),
 49                         DPrice = Convert.ToDecimal(dr["DPrice"]),
 50                         DTypeId = Convert.ToInt32(dr["DTypeId"]),
 51                         TypeTitle = dr["TypeTitle"].ToString()
 52                     });
 53                 }
 54                 return list;
 55             }
 56             catch (Exception ex)
 57             {
 58                 throw ex;
 59             }
 60         }
 61         /// <summary>
 62         /// 添加
 63         /// </summary>
 64         /// <param name="model">实体类</param>
 65         /// <returns></returns>
 66         public int Insert(DishInfo model)
 67         {
 68             try
 69             {
 70                 string sql = "INSERT INTO DishInfo (DTitle,DPrice,DChar,DTypeId,DIsDelete) VALUES (@DTitle,@DPrice,@DChar,@DTypeId,0)";
 71                 SqlParameter[] pms = new SqlParameter[] {
 72                     new SqlParameter("@DTitle",SqlDbType.VarChar,50) { Value=model.DTitle},
 73                     new SqlParameter("@DPrice",SqlDbType.Decimal) { Value=model.DPrice},
 74                     new SqlParameter("@DChar",SqlDbType.VarChar,50) { Value=model.DChar},
 75                     new SqlParameter("@DTypeId",SqlDbType.Int) { Value=model.DTypeId}
 76                 };
 77                 return SqlHelper.ExecuteNonQuery(sql, CommandType.Text, pms);
 78             }
 79             catch (Exception ex)
 80             {
 81                 throw ex;
 82             }
 83         }
 84         /// <summary>
 85         /// 修改
 86         /// </summary>
 87         /// <param name="model">实体类</param>
 88         /// <returns></returns>
 89         public int Update(DishInfo model)
 90         {
 91             try
 92             {
 93                 string sql = "UPDATE DishInfo SET DTitle=@DTitle,DPrice=@DPrice,DChar=@DChar,DTypeId=@DTypeId WHERE DID=@Did";
 94                 SqlParameter[] pms = new SqlParameter[] {
 95                     new SqlParameter("@DTitle",SqlDbType.VarChar,50) { Value=model.DTitle},
 96                     new SqlParameter("@DPrice",SqlDbType.Decimal) { Value=model.DPrice},
 97                     new SqlParameter("@DChar",SqlDbType.VarChar,50) { Value=model.DChar},
 98                     new SqlParameter("@DTypeId",SqlDbType.Int) { Value=model.DTypeId},
 99                     new SqlParameter("@Did",SqlDbType.Int) { Value=model.Did}
100                 };
101                 return SqlHelper.ExecuteNonQuery(sql, CommandType.Text, pms);
102             }
103             catch (Exception ex)
104             {
105                 throw ex;
106             }
107         }
108         /// <summary>
109         /// 删除
110         /// </summary>
111         /// <param name="model">实体类</param>
112         /// <returns></returns>
113         public int Delete(int Did)
114         {
115             try
116             {
117                 string sql = "UPDATE DishInfo SET DIsDelete=1 WHERE DID=@Did";
118                 SqlParameter[] pms = new SqlParameter[] {
119                     new SqlParameter("@Did",SqlDbType.Int) { Value=Did}
120                 };
121                 return SqlHelper.ExecuteNonQuery(sql, CommandType.Text, pms);
122             }
123             catch (Exception ex)
124             {
125                 throw ex;
126             }
127         }
128     }
129 }
DishInfoDal
  1 using System;
  2 using System.Collections.Generic;
  3 using Model;
  4 using System.Data;
  5 using System.Data.SqlClient;
  6 
  7 namespace Dal
  8 {
  9     /// <summary>
 10     /// 菜品分类表,数据层
 11     /// </summary>
 12     public class DishTypeInfoDal
 13     {
 14         /// <summary>
 15         /// 获取表数据
 16         /// </summary>
 17         /// <returns></returns>
 18         public List<DishTypeInfo> GetList()
 19         {
 20             try
 21             {
 22                 List<DishTypeInfo> list = new List<DishTypeInfo>();
 23                 string sql = "SELECT * FROM DishTypeInfo WHERE DIsDelete=0";
 24                 DataTable dt = SqlHelper.GetList(sql, CommandType.Text);
 25                 foreach (DataRow row in dt.Rows)
 26                 {
 27                     list.Add(new DishTypeInfo()
 28                     {
 29                         Did=Convert.ToInt32(row["Did"]),
 30                         DTitle=row["DTitle"].ToString()
 31                     });
 32                 }
 33                 return list;
 34             }
 35             catch (Exception ex)
 36             {
 37                 throw ex;
 38             }
 39         }
 40         /// <summary>
 41         /// 添加
 42         /// </summary>
 43         /// <param name="model">实体类</param>
 44         /// <returns></returns>
 45         public int Insert(DishTypeInfo model)
 46         {
 47             try
 48             {
 49                 string sql = "INSERT INTO DishTypeInfo (DTitle,DIsDelete) VALUES (@DTitle,0)";
 50                 SqlParameter[] pms = new SqlParameter[] {
 51                     new SqlParameter("@DTitle",SqlDbType.VarChar,50) {Value=model.DTitle }
 52                 };
 53                 return SqlHelper.ExecuteNonQuery(sql, CommandType.Text, pms);
 54             }
 55             catch (Exception ex)
 56             {
 57                 throw ex;
 58             }
 59         }
 60         /// <summary>
 61         /// 修改
 62         /// </summary>
 63         /// <param name="model">实体类</param>
 64         /// <returns></returns>
 65         public int Update(DishTypeInfo model)
 66         {
 67             try
 68             {
 69                 string sql = "UPDATE DishTypeInfo SET DTitle=@DTitle WHERE Did=@Did";
 70                 SqlParameter[] pms = new SqlParameter[] {
 71                     new SqlParameter("@DTitle",SqlDbType.VarChar,50) {Value=model.DTitle },
 72                     new SqlParameter("@Did",SqlDbType.Int) {Value=model.Did },
 73                 };
 74                 return SqlHelper.ExecuteNonQuery(sql, CommandType.Text, pms);
 75             }
 76             catch (Exception ex)
 77             {
 78                 throw ex;
 79             }
 80         }
 81         /// <summary>
 82         /// 删除
 83         /// </summary>
 84         /// <param name="Did">编号</param>
 85         /// <returns></returns>
 86         public int Delete(int Did)
 87         {
 88             try
 89             {
 90                 string sql = "UPDATE DishTypeInfo SET DIsDelete=1 WHERE Did=@Did";
 91                 SqlParameter[] pms = new SqlParameter[] {
 92                     new SqlParameter("@Did",SqlDbType.Int) {Value=Did }
 93                 };
 94                 return SqlHelper.ExecuteNonQuery(sql, CommandType.Text, pms);
 95             }
 96             catch (Exception ex)
 97             {
 98                 throw ex;
 99             }
100         }
101     }
102 }
DishTypeInfoDal
  1 using System;
  2 using System.Collections.Generic;
  3 using Model;
  4 using System.Data;
  5 using System.Data.SqlClient;
  6 
  7 namespace Dal
  8 {
  9     /// <summary>
 10     /// 厅包表数据层
 11     /// </summary>
 12     public class HallInfoDal
 13     {
 14         /// <summary>
 15         /// 获取表数据
 16         /// </summary>
 17         /// <returns></returns>
 18         public List<HallInfo> GetList()
 19         {
 20             try
 21             {
 22                 string sql = "SELECT * FROM HallInfo WHERE HIsDelete=0";
 23                 DataTable dt = SqlHelper.GetList(sql, CommandType.Text);
 24                 List<HallInfo> list = new List<HallInfo>();
 25                 foreach (DataRow dr in dt.Rows)
 26                 {
 27                     list.Add(
 28                         new HallInfo()
 29                         {
 30                             HId = Convert.ToInt32(dr["HId"]),
 31                             HTitle = dr["HTitle"].ToString()
 32                         });
 33                 }
 34                 return list;
 35             }
 36             catch (Exception ex)
 37             {
 38                 throw ex;
 39             }
 40         }
 41         /// <summary>
 42         /// 添加
 43         /// </summary>
 44         /// <param name="model"></param>
 45         /// <returns></returns>
 46         public int Insert(HallInfo model)
 47         {
 48             try
 49             {
 50                 string sql = "INSERT INTO HallInfo (HTitle,DIsDelete) VALUES (@HTitle,0)";
 51                 SqlParameter[] pms = new SqlParameter[] {
 52                     new SqlParameter("@HTitle",SqlDbType.VarChar,50) {Value=model.HTitle }
 53                 };
 54                 return SqlHelper.ExecuteNonQuery(sql, CommandType.Text, pms);
 55             }
 56             catch (Exception ex)
 57             {
 58                 throw ex;
 59             }
 60         }
 61         /// <summary>
 62         /// 修改
 63         /// </summary>
 64         /// <param name="model">实体类</param>
 65         /// <returns></returns>
 66         public int Update(HallInfo model)
 67         {
 68             try
 69             {
 70                 string sql = "UPDATE HallInfo SET HTitle=@HTitle WHERE Hid=@Hid";
 71                 SqlParameter[] pms = new SqlParameter[] {
 72                     new SqlParameter("@HTitle",SqlDbType.VarChar,50) {Value=model.HTitle },
 73                     new SqlParameter("@Hid",SqlDbType.Int) {Value=model.HId },
 74                 };
 75                 return SqlHelper.ExecuteNonQuery(sql, CommandType.Text, pms);
 76             }
 77             catch (Exception ex)
 78             {
 79                 throw ex;
 80             }
 81         }
 82         /// <summary>
 83         /// 删除
 84         /// </summary>
 85         /// <param name="Hid">编号</param>
 86         /// <returns></returns>
 87         public int Delete(int Hid)
 88         {
 89             try
 90             {
 91                 string sql = "UPDATE HallInfo SET HIsDelete=1 WHERE Hid=@Hid";
 92                 SqlParameter[] pms = new SqlParameter[] {
 93                     new SqlParameter("@Hid",SqlDbType.Int) {Value=Hid }
 94                 };
 95                 return SqlHelper.ExecuteNonQuery(sql, CommandType.Text, pms);
 96             }
 97             catch (Exception ex)
 98             {
 99                 throw ex;
100             }
101         }
102     }
103 }
HallInfoDal
  1 using System;
  2 using System.Collections.Generic;
  3 using Model;
  4 using System.Data;
  5 using System.Data.SqlClient;
  6 using Common;
  7 using System.Windows.Forms;
  8 
  9 namespace Dal
 10 {
 11     /// <summary>
 12     /// 用户信息表,数据访问层
 13     /// </summary>
 14     public class ManagerInfoDal
 15     {
 16         /// <summary>
 17         /// 获取表中的数据
 18         /// </summary>
 19         /// <returns></returns>
 20         public List<ManagerInfo> GetList(ManagerInfo model)
 21         {
 22             //执行查询,获取数据
 23             string sql = "SELECT * FROM ManagerInfo";
 24             List<SqlParameter> listP = new List<SqlParameter>();
 25             //拼接查询条件
 26             if (model!=null)
 27             {
 28                 sql += " WHERE MName=@MName AND MPwd=@MPwd ";
 29                 listP.Add(new SqlParameter("@MName", SqlDbType.VarChar, 50) { Value = model.MName });
 30                 listP.Add(new SqlParameter("@MPwd", SqlDbType.VarChar, 50) { Value = Md5Helper.GetMd5(model.MPwd) });
 31             }
 32             DataTable table = SqlHelper.GetList(sql,CommandType.Text, listP.ToArray());
 33             //构造集合对象
 34             List<ManagerInfo> list = new List<ManagerInfo>();
 35             //遍历数据表中的行,将数据转存到集合中
 36             foreach (DataRow row in table.Rows)
 37             {
 38                 //对象初始化器
 39                 list.Add(new ManagerInfo() {
 40                     Mid = Convert.ToInt32(row["Mid"]),
 41                     MName=row["MName"].ToString(),
 42                     MPwd=row["MPwd"].ToString(),
 43                     MType=Convert.ToInt32(row["MType"])
 44                 });
 45             }
 46             //返回集合
 47             return list;
 48         }
 49         /// <summary>
 50         /// 添加
 51         /// </summary>
 52         /// <param name="model"></param>
 53         /// <returns></returns>
 54         public int Insert(ManagerInfo model)
 55         {
 56             if (model.MName.Trim()=="")
 57             {
 58                 throw new Exception("用户名不能为空!");
 59             }
 60             if (model.MPwd.Trim()=="")
 61             {
 62                 throw new Exception("密码不能为空!");
 63             }
 64             #region 构造SQL语句
 65             string sql = "INSERT INTO ManagerInfo (MName,MPwd,MType) VALUES (@MName,@MPwd,@MType)";
 66             //数组的初始化器
 67             SqlParameter[] pms = {
 68                 new SqlParameter("@MName",SqlDbType.VarChar) { Value=model.MName},
 69                 new SqlParameter("@MPwd",SqlDbType.VarChar) { Value=Md5Helper.GetMd5(model.MPwd)},
 70                 new SqlParameter("@MType",SqlDbType.Int) { Value=model.MType}
 71             };
 72             #endregion
 73             //执行
 74             return SqlHelper.ExecuteNonQuery(sql,CommandType.Text,pms);
 75         }
 76         /// <summary>
 77         /// 删除
 78         /// </summary>
 79         /// <param name="id"></param>
 80         /// <returns></returns>
 81         public int DeleteById(int id)
 82         {
 83             string sql = "DELETE FROM ManagerInfo WHERE Mid=@id";
 84             SqlParameter[] pms = new SqlParameter[] {
 85                 new SqlParameter("@id",SqlDbType.Int) {Value=id }
 86             };
 87             return SqlHelper.ExecuteNonQuery(sql,CommandType.Text,pms);
 88         }
 89         /// <summary>
 90         /// 修改
 91         /// </summary>
 92         /// <param name="model"></param>
 93         /// <returns></returns>
 94         public int Update(ManagerInfo model)
 95         {
 96             List<SqlParameter> list = new List<SqlParameter>();
 97             string sql = "UPDATE ManagerInfo SET MName=@MName";
 98             list.Add(new SqlParameter("@MName", SqlDbType.VarChar, 50) { Value=model.MName});
 99             if (!model.MPwd.Equals("******"))
100             {
101                 sql += ",MPwd=@MPwd";
102                 list.Add(new SqlParameter("@MPwd", SqlDbType.VarChar, 50) { Value=Md5Helper.GetMd5(model.MPwd)});
103             }
104             sql += ",MType=@MType WHERE Mid=@Mid";
105             list.Add(new SqlParameter("@MType", SqlDbType.VarChar, 50) { Value = model.MType });
106             list.Add(new SqlParameter("@Mid", SqlDbType.Int) { Value=model.Mid});
107             return SqlHelper.ExecuteNonQuery(sql, CommandType.Text, list.ToArray());
108         }
109     }
110 }
ManagerInfoDal
  1 using System;
  2 using System.Collections.Generic;
  3 using Model;
  4 using System.Data;
  5 using System.Data.SqlClient;
  6 
  7 namespace Dal
  8 {
  9     /// <summary>
 10     /// 会员信息表,数据访问层
 11     /// </summary>
 12     public class MemberInfoDal
 13     {
 14         /// <summary>
 15         /// 查询表信息
 16         /// </summary>
 17         /// <param name="model">实体类</param>
 18         /// <returns></returns>
 19         public List<MemberInfo> GetList(MemberInfo model)
 20         {
 21             string sql = "SELECT mi.*,mti.MTitle,mti.MDiscount FROM MemberInfo mi INNER JOIN MemberTypeInfo mti on mi.MTypeId=mti.Mid WHERE 1=1 AND mi.MIsDelete=0 ";
 22             List<SqlParameter> listP = new List<SqlParameter>();
 23             if (model != null)
 24             {
 25                 if (model.Mid>0)
 26                 {
 27                     sql += " AND mi.MId=@MId";
 28                     listP.Add(new SqlParameter("@MId",SqlDbType.Int) {Value=model.Mid });
 29                 }
 30                 if (!string.IsNullOrEmpty(model.MName))
 31                 {
 32                     sql += " AND mi.MName like @MName ";
 33                     listP.Add(new SqlParameter("@MName", SqlDbType.VarChar, 50) { Value ="%"+ model.MName +"%"});
 34                 }
 35                 if (!string.IsNullOrEmpty(model.MPhone))
 36                 {
 37                     sql += " AND mi.MPhone like @MPhone ";
 38                     listP.Add(new SqlParameter("@MPhone", SqlDbType.VarChar, 11) { Value ="%"+model.MPhone+"%" });
 39                 }                
 40             }
 41             DataTable dt = SqlHelper.GetList(sql, CommandType.Text, listP.ToArray());
 42             List<MemberInfo> list = new List<MemberInfo>();
 43             foreach (DataRow row in dt.Rows)
 44             {
 45                 list.Add(new MemberInfo()
 46                 {
 47                     Mid=Convert.ToInt32(row["Mid"]),
 48                     MName=row["MName"].ToString(),
 49                     MPhone=row["MPhone"].ToString(),
 50                     MMoney=Convert.ToDecimal(row["MMoney"]),
 51                     MTypeId=Convert.ToInt32(row["MTypeId"]),
 52                     TypeTitle=row["MTitle"].ToString(),
 53                     TypeDiscount=Convert.ToDecimal(row["MDiscount"])
 54                 });
 55             }
 56             return list;
 57         }
 58         /// <summary>
 59         /// 新增
 60         /// </summary>
 61         /// <param name="model"></param>
 62         /// <returns></returns>
 63         public int Insert(MemberInfo model)
 64         {
 65             string sql = "INSERT INTO MemberInfo (MName,MPhone,MMoney,MTypeId,MIsDelete) VALUES (@MName,@MPhone,@MMoney,@MTypeId,0)";
 66             SqlParameter[] pms = new SqlParameter[] {
 67                 new SqlParameter("@MName",SqlDbType.VarChar,50) {Value=model.MName },
 68                 new SqlParameter("@MPhone",SqlDbType.VarChar,11) {Value=model.MPhone },
 69                 new SqlParameter("@MMoney",SqlDbType.Decimal) {Value=model.MMoney },
 70                 new SqlParameter("@MTypeId",SqlDbType.Int) {Value=model.MTypeId }
 71             };
 72             return SqlHelper.ExecuteNonQuery(sql, CommandType.Text, pms);
 73         }
 74         /// <summary>
 75         /// 修改
 76         /// </summary>
 77         /// <param name="model"></param>
 78         /// <returns></returns>
 79         public int Update(MemberInfo model)
 80         {
 81             string sql = "UPDATE MemberInfo SET MName=@MName,MPhone=@MPhone,MMoney=@MMoney,MTypeId=@MTypeId WHERE Mid=@Mid";
 82             SqlParameter[] pms = new SqlParameter[] {
 83                 new SqlParameter("@MName",SqlDbType.VarChar,50) {Value=model.MName },
 84                 new SqlParameter("@MPhone",SqlDbType.VarChar,11) {Value=model.MPhone },
 85                 new SqlParameter("@MMoney",SqlDbType.Decimal) {Value=model.MMoney },
 86                 new SqlParameter("@MTypeId",SqlDbType.Int) {Value=model.MTypeId },
 87                 new SqlParameter("@Mid",SqlDbType.Int) {Value=model.Mid }
 88             };
 89             return SqlHelper.ExecuteNonQuery(sql, CommandType.Text, pms);
 90         }
 91         /// <summary>
 92         /// 删除
 93         /// </summary>
 94         /// <param name="Mid">编号</param>
 95         /// <returns></returns>
 96         public int Delete(int Mid)
 97         {
 98             string sql = "UPDATE MemberInfo SET MIsDelete=1 WHERE Mid=@Mid";
 99             SqlParameter[] pms = new SqlParameter[] {
100                 new SqlParameter("@Mid",SqlDbType.Int) {Value=Mid }
101             };
102             return SqlHelper.ExecuteNonQuery(sql, CommandType.Text, pms);
103         }
104     }
105 }
MemberInfoDal
 1 using System;
 2 using System.Collections.Generic;
 3 using Model;
 4 using System.Data;
 5 using System.Data.SqlClient;
 6 
 7 namespace Dal
 8 {
 9     /// <summary>
10     /// 会员等级表,数据访问层
11     /// </summary>
12     public class MemberTypeInfoDal
13     {
14         /// <summary>
15         /// 获取表中数据
16         /// </summary>
17         /// <returns></returns>
18         public List<MemberTypeInfo> GetList()
19         {
20             string sql = "SELECT * FROM MemberTypeInfo WHERE MIsDelete=0";
21             DataTable dt = SqlHelper.GetList(sql,CommandType.Text);
22             List<MemberTypeInfo> list = new List<MemberTypeInfo>();
23             foreach (DataRow row in dt.Rows)
24             {
25                 list.Add(new MemberTypeInfo()
26                 {
27                     Mid=Convert.ToInt32(row["Mid"]),
28                     MTitle=row["MTitle"].ToString(),
29                     MDiscount=Convert.ToDecimal(row["MDiscount"])
30                 });
31             }
32             return list;
33         }
34         /// <summary>
35         /// 添加
36         /// </summary>
37         /// <param name="model">实体类</param>
38         /// <returns></returns>
39         public int Insert(MemberTypeInfo model)
40         {
41             string sql = "INSERT INTO MemberTypeInfo (MTitle,MDiscount,MIsDelete) VALUES (@MTitle,@MDiscount,0) ";
42             SqlParameter[] pms = new SqlParameter[] {
43                 new SqlParameter("@MTitle",SqlDbType.VarChar,50) {Value=model.MTitle },
44                 new SqlParameter("@MDiscount",SqlDbType.Decimal) {Value=model.MDiscount }
45             };
46             return SqlHelper.ExecuteNonQuery(sql, CommandType.Text, pms);
47         }
48         /// <summary>
49         /// 修改
50         /// </summary>
51         /// <param name="model">实体类</param>
52         /// <returns></returns>
53         public int Update(MemberTypeInfo model)
54         {
55             string sql = "UPDATE MemberTypeInfo SET MTitle=@MTitle,MDiscount=@MDiscount WHERE Mid=@Mid";
56             SqlParameter[] pms = new SqlParameter[] {
57                 new SqlParameter("@MTitle",SqlDbType.VarChar,50) {Value=model.MTitle },
58                 new SqlParameter("@MDiscount",SqlDbType.Decimal) {Value=model.MDiscount },
59                 new SqlParameter("@Mid",SqlDbType.Int) { Value=model.Mid}
60             };
61             return SqlHelper.ExecuteNonQuery(sql, CommandType.Text, pms);
62         }
63         /// <summary>
64         /// 逻辑删除,将MIsDelete删除标记变为true
65         /// </summary>
66         /// <param name="Mid">删除的Mid</param>
67         /// <returns></returns>
68         public int Delete(int Mid)
69         {
70             string sql = "UPDATE MemberTypeInfo SET MIsDelete=1 WHERE Mid=@Mid";
71             SqlParameter[] pms = new SqlParameter[]
72             {
73                 new SqlParameter("@Mid",SqlDbType.Int) {Value=Mid }
74             };
75             return SqlHelper.ExecuteNonQuery(sql, CommandType.Text, pms);
76         }
77     }
78 }
MemberTypeInfoDal
  1 using System;
  2 using System.Collections.Generic;
  3 using Model;
  4 using System.Data;
  5 using System.Data.SqlClient;
  6 
  7 namespace Dal
  8 {
  9     /// <summary>
 10     /// 订单表数据层
 11     /// </summary>
 12     public class OrderInfoDal
 13     {
 14         /// <summary>
 15         /// 开单
 16         /// </summary>
 17         /// <param name="tableId">餐桌编号</param>
 18         /// <returns></returns>
 19         public int KaiDan(int tableId)
 20         {
 21             try
 22             {
 23                 DateTime nowDate = DateTime.Now;
 24                 string sql = "INSERT INTO OrderInfo (ODate,IsPay,TableId) VALUES ('"+nowDate+"',0,@TableId);";
 25                 sql += "UPDATE tableInfo SET TIsFree=1 WHERE TId=@TableId";
 26                 SqlParameter[] pms = new SqlParameter[] {
 27                     new SqlParameter("@TableId",SqlDbType.Int) {Value=tableId }
 28                 };
 29                 return SqlHelper.ExecuteNonQuery(sql, CommandType.Text,pms);
 30             }
 31             catch (Exception ex)
 32             {
 33                 throw ex;
 34             }
 35         }
 36         /// <summary>
 37         /// 获取订单编号
 38         /// </summary>
 39         /// <param name="TId"></param>
 40         /// <returns></returns>
 41         public int GetOIdByTId(int TId)
 42         {
 43             try
 44             {
 45                 string sql = "SELECT MAX(OId) FROM OrderInfo WHERE tableId=@Tid";
 46                 SqlParameter[] pms = new SqlParameter[] {
 47                     new SqlParameter("@Tid",SqlDbType.Int) {Value=TId }
 48                 };
 49                 return Convert.ToInt32(SqlHelper.ExecuteScalar(sql, CommandType.Text, pms));
 50             }
 51             catch (Exception ex)
 52             {
 53                 throw ex;
 54             }
 55         }
 56         /// <summary>
 57         /// 获取付款金额
 58         /// </summary>
 59         /// <param name="TId">餐桌编号</param>
 60         /// <returns></returns>
 61         public decimal GetMoneyByTid(int TId)
 62         {
 63             try
 64             {
 65                 string sql = "SELECT OMoney FROM OrderInfo WHERE TableId=@TableId AND IsPay=0";
 66                 SqlParameter[] pms = new SqlParameter[] {
 67                     new SqlParameter("@TableId",SqlDbType.Int){Value=TId }
 68                 };
 69                 return Convert.ToDecimal(SqlHelper.ExecuteScalar(sql,CommandType.Text,pms)); 
 70             }
 71             catch (Exception ex)
 72             {
 73                 throw ex;
 74             }
 75         }
 76         /// <summary>
 77         /// 点菜
 78         /// </summary>
 79         /// <param name="orderId">订单ID</param>
 80         /// <param name="dishId">菜品ID</param>
 81         /// <returns></returns>
 82         public int DianCai(int orderId,int dishId)
 83         {
 84             try
 85             {
 86                 string sql = "SELECT COUNT(*) FROM OrderDetailInfo WHERE OrderId="+ orderId + " AND DishId="+ dishId + "";
 87  
 88                 int count =Convert.ToInt32(SqlHelper.ExecuteScalar(sql,CommandType.Text));
 89                 if (count == 0)
 90                 {
 91                     sql = "INSERT INTO OrderDetailInfo (OrderId,DishId,Count) VALUES (@OrderId,@DishId,1)";
 92                 }
 93                 else
 94                 {
 95                     sql = "UPDATE OrderDetailInfo SET count=count+1 WHERE OrderId=@OrderId AND DishId=@DishId";
 96                 }
 97                 SqlParameter[] pms = new SqlParameter[] {
 98                     new SqlParameter("@OrderId",SqlDbType.Int) { Value=orderId},
 99                     new SqlParameter("@DishId",SqlDbType.Int) { Value=dishId}
100                 };
101                 return SqlHelper.ExecuteNonQuery(sql, CommandType.Text, pms);
102             }
103             catch (Exception ex)
104             {
105                 throw ex;
106             }
107         }
108         /// <summary>
109         /// 获取顾客已点菜的明细
110         /// </summary>
111         /// <param name="orderId">订单编号</param>
112         /// <returns></returns>
113         public List<OrderDetaillInfo> GetOrderDetail(int orderId)
114         {
115             try
116             {
117                 string sql = "SELECT odi.*,di.DTitle,di.DPrice FROM OrderDetailInfo odi INNER JOIN DishInfo di ON odi.DishId=di.DId WHERE odi.OrderId=@OrderId";
118                 SqlParameter[] pms = new SqlParameter[] {
119                     new SqlParameter("@OrderId",SqlDbType.Int) {Value=orderId }
120                 };
121                 DataTable dt = SqlHelper.GetList(sql, CommandType.Text,pms);
122                 List<OrderDetaillInfo> list = new List<OrderDetaillInfo>();
123                 foreach (DataRow dr in dt.Rows)
124                 {
125                     list.Add(new OrderDetaillInfo()
126                     {
127                         OId = Convert.ToInt32(dr["OId"]),
128                         DishPrice = Convert.ToDecimal(dr["DPrice"]),
129                         DishTitle=dr["DTitle"].ToString(),
130                         DishId=Convert.ToInt32(dr["DishId"]),
131                         OrderId=orderId,
132                         Count=Convert.ToInt32(dr["Count"])
133                     });
134                 }
135                 return list;
136             }
137             catch (Exception ex)
138             {
139                 throw ex;
140             }
141         }
142         /// <summary>
143         /// 更新菜品数量
144         /// </summary>
145         /// <param name="OId">订单ID</param>
146         /// <param name="count">更新的数量</param>
147         /// <returns></returns>
148         public int UpdateDishCount(int OId,int count)
149         {
150             try
151             {
152                 string sql = "UPDATE OrderDetailInfo SET count=@count WHERE OId=@OID";
153                 SqlParameter[] pms = new SqlParameter[] {
154                     new SqlParameter("@count",SqlDbType.Int){Value=count },
155                     new SqlParameter("@OID",SqlDbType.Int){Value=OId }
156                 };
157                 return SqlHelper.ExecuteNonQuery(sql, CommandType.Text, pms);
158             }
159             catch (Exception ex)
160             {
161                 throw ex;
162             }
163         }
164         /// <summary>
165         /// 删除,已点的菜品
166         /// </summary>
167         /// <param name="OId">订单编号</param>
168         /// <returns></returns>
169         public int DeleteDish(int OId)
170         {
171             try
172             {
173                 string sql = "DELETE FROM OrderDetailInfo WHERE OId=@OId";
174                 SqlParameter[] pms = {
175                     new SqlParameter("@OId",SqlDbType.Int){Value=OId }
176                 };
177                 return SqlHelper.ExecuteNonQuery(sql, CommandType.Text, pms);
178             }
179             catch (Exception ex)
180             {
181                 throw ex;
182             }
183         }
184         /// <summary>
185         /// 下单
186         /// </summary>
187         /// <param name="OrderId">订单编号</param>
188         /// <param name="totalMoney">总钱数</param>
189         /// <returns></returns>
190         public int XianDan(int OrderId,decimal totalMoney)
191         {
192             try
193             {
194                 string sql = "UPDATE OrderInfo SET OMoney=@OMoney WHERE OId=@OId";
195                 SqlParameter[] pms = new SqlParameter[] {
196                     new SqlParameter("@OMoney",SqlDbType.Decimal){Value=totalMoney },
197                     new SqlParameter("@OId",SqlDbType.Int){Value=OrderId }
198                 };
199                 return SqlHelper.ExecuteNonQuery(sql, CommandType.Text, pms);
200             }
201             catch(Exception ex)
202             {
203                 throw ex;
204             }
205         }
206         /// <summary>
207         /// 结账
208         /// </summary>
209         /// <param name="tableId">餐桌编号</param>
210         /// <param name="memberId">会员编号</param>
211         /// <param name="discount">折扣</param>
212         /// <param name="payMoney">折扣金额</param>
213         /// <returns></returns>
214         public int JieZhang(int tableId,int memberId,decimal discount,decimal payMoney)
215         {
216             try
217             {
218                 int count = 0;
219                 string sql = "UPDATE OrderInfo SET IsPay=1";
220                 if (memberId>0)
221                 {
222                     sql += " ,memberId="+memberId+",Discount="+discount+"";
223                 }
224                 sql += " WHERE TableId="+tableId+" AND IsPay=0;";
225                 sql += "UPDATE TableInfo SET TIsFree=0 WHERE TId="+tableId+";";
226                 if (payMoney>0)
227                 {
228                     sql += "UPDATE MemberInfo SET MMoney=MMoney-"+payMoney+" WHERE MId="+memberId+"";
229                 }
230                 count += SqlHelper.ExecuteNonQuery(sql, CommandType.Text);
231                 return count;
232             }
233             catch (Exception ex)
234             {
235                 throw ex;
236             }
237         }
238     }
239 }
OrderInfoDal
  1 using System;
  2 using System.Data;
  3 using System.Data.SqlClient;
  4 using System.Configuration;
  5 using System.Collections.Generic;
  6 using System.Windows.Forms;
  7 using System.IO;
  8 
  9 namespace Dal
 10 {
 11     /// <summary>
 12     /// 数据库操作类
 13     /// </summary>
 14     public static class SqlHelper
 15     {
 16         //需引用命名空间using System.Configuration;
 17         public static readonly string connStr = ConfigurationManager.ConnectionStrings["cater"].ConnectionString;
 18         #region 公有方法
 19         /// <summary>
 20         /// 查询sql语句,返回DataTable;若出错,将报错信息写入C盘
 21         /// </summary>
 22         /// <param name="strSql">SQL语句</param>
 23         /// <returns></returns>
 24         public static DataTable GetList(string strSql,CommandType cmdType,SqlParameter[] pms)
 25         {
 26             try
 27             {
 28                 using (SqlConnection conn = new SqlConnection(connStr))
 29                 {
 30                     using (SqlDataAdapter adap = new SqlDataAdapter(strSql, conn))
 31                     {
 32                         //添加参数
 33                         if (pms!=null)
 34                         {
 35                             adap.SelectCommand.Parameters.AddRange(pms);
 36                         }
 37                         adap.SelectCommand.CommandType = cmdType;                
 38                         DataTable table = new DataTable();
 39                         adap.Fill(table);
 40                         return table;
 41                     }
 42                 }
 43             }
 44             catch (Exception ex)
 45             {
 46                 WriteLog(strSql,ex);
 47                 throw new Exception("错误内容:" + ex.Message.ToString());
 48             }
 49         }
 50         /// <summary>
 51         /// 查询sql语句,返回DataTable;若出错,将报错信息写入C盘
 52         /// </summary>
 53         /// <param name="strSql">SQL语句参数化@XXX</param>
 54         /// <param name="pms">参数值</param>
 55         /// <returns></returns>
 56         public static DataTable GetList(string strSql,CommandType cmdType)
 57         {
 58             try
 59             {
 60                 using (SqlConnection conn = new SqlConnection(connStr))
 61                 {
 62                     using (SqlDataAdapter adap = new SqlDataAdapter(strSql, conn))
 63                     {
 64                         adap.SelectCommand.CommandType = cmdType;
 65                         DataTable table = new DataTable();
 66                         adap.Fill(table);
 67                         return table;
 68                     }
 69                 }
 70             }
 71             catch (Exception ex)
 72             {
 73                 WriteLog(strSql,ex);
 74                 throw new Exception("错误内容:" + ex.Message.ToString());
 75             }
 76         }
 77         /// <summary>
 78         /// 对数据进行增、删、改
 79         /// </summary>
 80         /// <param name="sql">sql语句</param>
 81         /// <param name="CommandType">执行类型:sql语句|存储过程</param>
 82         /// <param name="pms"></param>
 83         /// <returns></returns>
 84         public static int ExecuteNonQuery(string sql, CommandType cmdType,SqlParameter[] pms)
 85         {
 86             SqlConnection conn = new SqlConnection(connStr);
 87             conn.Open();
 88             SqlCommand cmd = new SqlCommand(sql, conn);
 89             cmd.CommandType = cmdType;
 90             if (pms != null)
 91             {
 92                 cmd.Parameters.AddRange(pms);
 93             }
 94             SqlTransaction trans = conn.BeginTransaction();
 95             cmd.Transaction = trans;
 96             try
 97             {
 98                 int count = cmd.ExecuteNonQuery();
 99                 if (count != 0)
100                 {
101                     trans.Commit();
102                     return count;
103                 }
104                 else
105                 {
106                     trans.Rollback();
107                     WriteLog(sql,null);
108                     return count;
109                 }
110             }
111             catch (Exception ex)
112             {
113                 WriteLog(sql,ex);
114                 trans.Rollback();
115                 return 0;
116             }
117             finally
118             {
119                 conn.Close();
120                 conn.Dispose();
121                 cmd.Dispose();
122             }
123         }
124         /// <summary>
125         /// 对数据进行增、删、改
126         /// </summary>
127         /// <param name="sql">sql语句</param>
128         /// <param name="CommandType">执行类型:sql语句|存储过程</param>
129         /// <param name="pms"></param>
130         /// <returns></returns>
131         public static int ExecuteNonQuery(string sql, CommandType cmdType)
132         {
133             SqlConnection conn = new SqlConnection(connStr);
134             conn.Open();
135             SqlCommand cmd = new SqlCommand(sql, conn);
136             cmd.CommandType = cmdType;
137             SqlTransaction trans = conn.BeginTransaction();
138             cmd.Transaction = trans;
139             try
140             {
141                 int count = cmd.ExecuteNonQuery();
142                 if (count != 0)
143                 {
144                     trans.Commit();
145                     return count;
146                 }
147                 else
148                 {
149                     trans.Rollback();
150                     WriteLog(sql,null);
151                     return count;
152                 }
153             }
154             catch (Exception ex)
155             {
156                 WriteLog(sql,ex);
157                 trans.Rollback();
158                 return 0;
159             }
160             finally
161             {
162                 conn.Close();
163                 conn.Dispose();
164                 cmd.Dispose();
165             }
166         }
167         /// <summary>
168         /// 对数据进行增、删、改
169         /// </summary>
170         /// <param name="list">sql语句的集合</param>
171         /// <param name="CommandType">执行类型:sql语句|存储过程</param>
172         /// <param name="pms"></param>
173         /// <returns></returns>
174         public static int ExecuteNonQuery(List<string> list, CommandType cmdType)
175         {
176             SqlConnection conn = new SqlConnection(connStr);
177             conn.Open();
178             SqlCommand cmd = new SqlCommand();
179             cmd.Connection = conn;
180             for (int i = 0; i < list.Count; i++)
181             {
182                 cmd.CommandText += list[i];
183             }
184             cmd.CommandType = cmdType;
185             SqlTransaction trans = conn.BeginTransaction();
186             cmd.Transaction = trans;
187             try
188             {
189                 int count = cmd.ExecuteNonQuery();
190                 if (count != 0)
191                 {
192                     trans.Commit();
193                     return count;
194                 }
195                 else
196                 {
197                     trans.Rollback();
198                     WriteLog(list.ToArray().ToString(), null);
199                     return count;
200                 }
201             }
202             catch (Exception ex)
203             {
204                 WriteLog(list.ToArray().ToString(), ex);
205                 trans.Rollback();
206                 return 0;
207             }
208             finally
209             {
210                 conn.Close();
211                 conn.Dispose();
212                 cmd.Dispose();
213             }
214         }
215         /// <summary>
216         /// 执行查询,并返回查询所返回的结果集中第一行的第一列。忽略其他列或行。
217         /// </summary>
218         /// <param name="sql">sql语句</param>
219         /// <param name="cmdType">执行类型:sql语句|存储过程</param>
220         /// <param name="pms"></param>
221         /// <returns></returns>
222         public static object ExecuteScalar(string sql,CommandType cmdType,SqlParameter[] pms)
223         {
224             try
225             {
226                 using (SqlConnection conn = new SqlConnection(connStr))
227                 {
228                     using (SqlCommand cmd = new SqlCommand(sql, conn))
229                     {
230                         cmd.CommandType = cmdType;
231                         if (pms!=null)
232                         {
233                             cmd.Parameters.AddRange(pms);
234                         }
235                         conn.Open();
236                         return cmd.ExecuteScalar();
237                     }
238                 }
239             }
240             catch (Exception ex)
241             {
242                 WriteLog(sql,ex);
243                 throw new Exception("错误内容:" + ex.Message.ToString());
244             }
245         }
246         /// <summary>
247         /// 执行查询,并返回查询所返回的结果集中第一行的第一列。忽略其他列或行。
248         /// </summary>
249         /// <param name="sql">sql语句</param>
250         /// <param name="cmdType">执行类型:sql语句|存储过程</param>
251         /// <param name="pms"></param>
252         /// <returns></returns>
253         public static object ExecuteScalar(string sql, CommandType cmdType)
254         {
255             try
256             {
257                 using (SqlConnection conn = new SqlConnection(connStr))
258                 {
259                     using (SqlCommand cmd = new SqlCommand(sql, conn))
260                     {
261                         cmd.CommandType = cmdType;
262                         conn.Open();
263                         return cmd.ExecuteScalar();
264                     }
265                 }
266             }
267             catch (Exception ex)
268             {
269                 WriteLog(sql,ex);
270                 throw new Exception("错误内容:" + ex.Message.ToString());
271             }
272         }
273 
274         #endregion
275         #region 私有方法
276         /// <summary>
277         /// 报错日志
278         /// </summary>
279         /// <param name="sql">SQL语句</param>
280         /// <param name="ex">报错内容</param>
281         private static void WriteLog(string sql,Exception ex)
282         {
283             string path = "D:RollBack.txt";
284             if (!File.Exists(path)) // 判断文件是否存在
285             {
286                 using (FileStream f = File.Create(path)) { }
287             }
288             using (FileStream fs = new FileStream(path, FileMode.Append))
289             {
290                 using (StreamWriter sWrite = new StreamWriter(fs))
291                 {
292                     sWrite.WriteLine("回滚时间:" + System.DateTime.Now.ToString());
293                     sWrite.WriteLine("  SQL语句:" + sql);
294                     sWrite.WriteLine("      报错内容:" + ex.Message.ToString());
295                 }
296             }
297         }
298         #endregion
299 
300     }
301 }
SqlHelper
  1 using System;
  2 using System.Collections.Generic;
  3 using Model;
  4 using System.Data;
  5 using System.Data.SqlClient;
  6 
  7 namespace Dal
  8 {
  9     /// <summary>
 10     /// 餐桌表数据层
 11     /// </summary>
 12     public class TableInfoDal
 13     {
 14         /// <summary>
 15         /// 获取表数据
 16         /// </summary>
 17         /// <returns></returns>
 18         public List<TableInfo> GetList(TableInfo model)
 19         {
 20             try
 21             {
 22                 string sql = "SELECT ti.*,hi.HTitle FROM TableInfo ti INNER JOIN HallInfo hi on ti.THallId=hi.Hid WHERE ti.TIsDelete=0";
 23                 List<SqlParameter> listP = new List<SqlParameter>();
 24                 if (model.THallId>0)
 25                 {
 26                     sql += " AND ti.THallId=@Hid";
 27                     listP.Add(new SqlParameter("@Hid",SqlDbType.Int) {Value=model.THallId });
 28                 }
 29                 if (model.IsFreeSearch>-1)
 30                 {
 31                     sql += " AND ti.TIsFree=@TIsFree";
 32                     listP.Add(new SqlParameter("@TIsFree",SqlDbType.Int) {Value=model.IsFreeSearch==0?"1":"0" });
 33                 }
 34                 DataTable dt = SqlHelper.GetList(sql,CommandType.Text,listP.ToArray());
 35                 List<TableInfo> list = new List<TableInfo>();
 36                 foreach (DataRow dr in dt.Rows)
 37                 {
 38                     list.Add(new TableInfo() {
 39                         TId=Convert.ToInt32(dr["TId"]),
 40                         TIsFree=Convert.ToBoolean(dr["TIsFree"]),
 41                         THallId=Convert.ToInt32(dr["THallId"]),
 42                         TTitle=dr["TTitle"].ToString(),
 43                         HallTitle=dr["HTitle"].ToString()
 44                     });
 45                 }
 46                 return list;
 47             }
 48             catch (Exception ex)
 49             {
 50                 throw ex;
 51             }            
 52         }
 53         /// <summary>
 54         /// 添加
 55         /// </summary>
 56         /// <param name="model"></param>
 57         /// <returns></returns>
 58         public int Insert(TableInfo model)
 59         {
 60             try
 61             {
 62                 string sql = "INSERT INTO TableInfo (TTitle,THallId,TIsFree,TIsDelete) VALUES (@TTitle,@THallId,@TIsFree,0)";
 63                 SqlParameter[] pms = new SqlParameter[] {
 64                     new SqlParameter("@TTitle",SqlDbType.VarChar,50) {Value=model.TTitle },
 65                     new SqlParameter("@THallId",SqlDbType.Int) {Value=model.THallId },
 66                     new SqlParameter("@TIsFree",SqlDbType.Bit) {Value=model.TIsFree }
 67                 };
 68                 return SqlHelper.ExecuteNonQuery(sql, CommandType.Text,pms);
 69             }
 70             catch (Exception ex)
 71             {
 72                 throw ex;
 73             }
 74         }
 75         /// <summary>
 76         /// 修改
 77         /// </summary>
 78         /// <param name="model"></param>
 79         /// <returns></returns>
 80         public int Update(TableInfo model)
 81         {
 82             try
 83             {
 84                 string sql = "UPDATE TableInfo SET TTitle=@TTitle,THallId=@THallId,TIsFree=@TIsFree WHERE TId=@TId";
 85                 SqlParameter[] pms = new SqlParameter[] {
 86                     new SqlParameter("@TTitle",SqlDbType.VarChar,50) {Value=model.TTitle },
 87                     new SqlParameter("@THallId",SqlDbType.Int) {Value=model.THallId },
 88                     new SqlParameter("@TIsFree",SqlDbType.Bit) {Value=model.TIsFree },
 89                     new SqlParameter("@TId",SqlDbType.Int) {Value=model.TId }
 90                 };
 91                 return SqlHelper.ExecuteNonQuery(sql, CommandType.Text, pms);
 92             }
 93             catch (Exception ex)
 94             {
 95                 throw ex;
 96             }
 97         }
 98         /// <summary>
 99         /// 删除
100         /// </summary>
101         /// <param name="TId">编号</param>
102         /// <returns></returns>
103         public int Delete(int TId)
104         {
105             try
106             {
107                 string sql = "UPDATE TableInfo SET TIsDelete=1 WHERE TId=@TId";
108                 SqlParameter[] pms = new SqlParameter[] {
109                     new SqlParameter("@TId",SqlDbType.Int) {Value=TId }
110                 };
111                 return SqlHelper.ExecuteNonQuery(sql, CommandType.Text, pms);
112             }
113             catch (Exception ex)
114             {
115                 throw ex;
116             }
117         }
118     }
119 }
TableInfoDal

实体类(Model):

 

 1 using System;
 2 using System.Collections.Generic;
 3 using System.Linq;
 4 using System.Text;
 5 using System.Threading.Tasks;
 6 
 7 namespace Model
 8 {
 9     /// <summary>
10     /// 菜品表
11     /// </summary>
12     public class DishInfo
13     {
14         /// <summary>
15         /// 主键,编号
16         /// </summary>
17         public int Did { get; set; }
18         /// <summary>
19         /// 名称
20         /// </summary>
21         public string DTitle { get; set; }
22         /// <summary>
23         /// 价格
24         /// </summary>
25         public decimal DPrice { get; set; }
26         /// <summary>
27         /// 名称中的每个首字母
28         /// </summary>
29         public string DChar { get; set; }
30         /// <summary>
31         /// 菜品类型,引用DishTypeInfo表的Did列
32         /// </summary>
33         public int DTypeId { get; set; }
34         /// <summary>
35         /// 菜品名称
36         /// </summary>
37         public string TypeTitle { get; set; }
38         /// <summary>
39         /// 是否删除
40         /// </summary>
41         public bool DIsDelete { get; set; }
42     }
43 }
DishInfo
 1 using System;
 2 using System.Collections.Generic;
 3 using System.Linq;
 4 using System.Text;
 5 using System.Threading.Tasks;
 6 
 7 namespace Model
 8 {
 9     /// <summary>
10     /// 菜品分类表
11     /// </summary>
12     public class DishTypeInfo
13     {
14         /// <summary>
15         /// 主键,编号
16         /// </summary>
17         public int Did { get; set; }
18         /// <summary>
19         /// 菜品类型名称,如:香菜、酒水、主食
20         /// </summary>
21         public string DTitle { get; set; }
22         /// <summary>
23         /// 是否删除
24         /// </summary>
25         public bool DIsDelete { get; set; }
26     }
27 }
DishTypeInfo
 1 using System;
 2 using System.Collections.Generic;
 3 using System.Linq;
 4 using System.Text;
 5 using System.Threading.Tasks;
 6 
 7 namespace Model
 8 {
 9     /// <summary>
10     /// 厅包表
11     /// </summary>
12     public class HallInfo
13     {
14         /// <summary>
15         /// 编号
16         /// </summary>
17         public int HId { get; set; }
18         /// <summary>
19         /// 厅的名称
20         /// </summary>
21         public string HTitle { get; set; }
22         /// <summary>
23         /// 是否删除
24         /// </summary>
25         public bool HIsDelete { get; set; }
26     }
27 }
HallInfo
 1 using System;
 2 using System.Collections.Generic;
 3 using System.Linq;
 4 using System.Text;
 5 using System.Threading.Tasks;
 6 
 7 namespace Model
 8 {
 9     /// <summary>
10     /// 用户信息表
11     /// </summary>
12     public class ManagerInfo
13     {
14         /// <summary>
15         /// 主键
16         /// </summary>
17         public int Mid { get; set; }
18         /// <summary>
19         /// 用户名
20         /// </summary>
21         public string MName { get; set; }
22         /// <summary>
23         /// 用户密码
24         /// </summary>
25         public string MPwd { get; set; }
26         /// <summary>
27         /// 账户类型;0:店员;1:经理
28         /// </summary>
29         public int MType { get; set; }
30     }
31 }
ManagerInfo
 1 using System;
 2 using System.Collections.Generic;
 3 using System.Linq;
 4 using System.Text;
 5 using System.Threading.Tasks;
 6 
 7 namespace Model
 8 {
 9     /// <summary>
10     /// 会员信息表
11     /// </summary>
12     public class MemberInfo
13     {
14         /// <summary>
15         /// 编号
16         /// </summary>
17         public int Mid { get; set; }
18         /// <summary>
19         /// 姓名
20         /// </summary>
21         public string MName { get; set; }
22         /// <summary>
23         /// 手机号
24         /// </summary>
25         public string MPhone { get; set; }
26         /// <summary>
27         /// 余额
28         /// </summary>
29         public decimal MMoney { get; set; }
30         /// <summary>
31         /// 会员编号
32         /// </summary>
33         public int MTypeId { get; set; }
34         /// <summary>
35         /// 删除标记
36         /// </summary>
37         public bool MIsDelete { get; set; }
38         /// <summary>
39         /// 会员名称,是MemberTypeInfo中的字段;用于连接查询,存结果
40         /// </summary>
41         public string TypeTitle { get; set; }
42         /// <summary>
43         /// 会员折扣
44         /// </summary>
45         public decimal TypeDiscount { get; set; }
46     }
47 }
MemberInfo
 1 using System;
 2 using System.Collections.Generic;
 3 using System.Linq;
 4 using System.Text;
 5 using System.Threading.Tasks;
 6 
 7 namespace Model
 8 {
 9     /// <summary>
10     /// 会员等级表
11     /// </summary>
12     public class MemberTypeInfo
13     {
14         /// <summary>
15         /// 编号
16         /// </summary>
17         public int Mid { get; set; }
18         /// <summary>
19         /// 会员类型名称
20         /// </summary>
21         public string MTitle { get; set; }
22         /// <summary>
23         /// 折扣
24         /// </summary>
25         public decimal MDiscount { get; set; }
26         /// <summary>
27         /// 是否删除
28         /// </summary>
29         public bool MIsDelete { get; set; }
30     }
31 }
MemberTypeInfo
 1 using System;
 2 using System.Collections.Generic;
 3 using System.Linq;
 4 using System.Text;
 5 using System.Threading.Tasks;
 6 
 7 namespace Model
 8 {
 9     /// <summary>
10     /// 订单详细表
11     /// </summary>
12     public class OrderDetaillInfo
13     {
14         /// <summary>
15         /// 编号
16         /// </summary>
17         public int OId { get; set; }
18         /// <summary>
19         /// 订单表编号
20         /// </summary>
21         public int OrderId { get; set; }
22         /// <summary>
23         /// 菜品表编号
24         /// </summary>
25         public int DishId { get; set; }
26         /// <summary>
27         /// 点菜的数量
28         /// </summary>
29         public int Count { get; set; }
30         /// <summary>
31         /// 菜的名称
32         /// </summary>
33         public string DishTitle { get; set; }
34         /// <summary>
35         /// 菜的价格
36         /// </summary>
37         public decimal DishPrice { get; set; }
38     }
39 }
OrderDetaillInfo
 1 using System;
 2 using System.Collections.Generic;
 3 using System.Linq;
 4 using System.Text;
 5 using System.Threading.Tasks;
 6 
 7 namespace Model
 8 {
 9     /// <summary>
10     /// 订单表
11     /// </summary>
12     public class OrderInfo
13     {
14         /// <summary>
15         /// 编号
16         /// </summary>
17         public int OId { get; set; }
18         /// <summary>
19         /// 会员编号
20         /// </summary>
21         public int MemberId { get; set; }
22         /// <summary>
23         /// 下单日期
24         /// </summary>
25         public DateTime ODate { get; set; }
26         /// <summary>
27         /// 消费金额
28         /// </summary>
29         public decimal OMoney { get; set; }
30         /// <summary>
31         /// 当前单子是否结账
32         /// </summary>
33         public int IsPay { get; set; }
34         /// <summary>
35         /// 餐桌表外键,对应的餐桌
36         /// </summary>
37         public int TableId { get; set; }
38         /// <summary>
39         /// 折扣
40         /// </summary>
41         public decimal Discount { get; set; }
42     }
43 }
OrderInfo
 1 using System;
 2 using System.Collections.Generic;
 3 using System.Linq;
 4 using System.Text;
 5 using System.Threading.Tasks;
 6 
 7 namespace Model
 8 {
 9     /// <summary>
10     /// 餐桌表
11     /// </summary>
12     public class TableInfo
13     {
14         /// <summary>
15         /// 编号
16         /// </summary>
17         public int TId { get; set; }
18         /// <summary>
19         /// 餐桌名称
20         /// </summary>
21         public string TTitle { get; set; }
22         /// <summary>
23         /// 厅包表外键
24         /// </summary>
25         public int THallId { get; set; }
26         /// <summary>
27         /// 餐桌是否空闲状态
28         /// </summary>
29         public bool TIsFree { get; set; }
30         /// <summary>
31         /// 是否删除
32         /// </summary>
33         public bool TIsDelete { get; set; }
34         /// <summary>
35         /// HallInfo表的餐桌名称
36         /// </summary>
37         public string HallTitle { get; set; }
38         /// <summary>
39         /// 扩充字段,用于判断TIsFree字段的检索
40         /// </summary>
41         public int IsFreeSearch { get; set; }
42     }
43 }
TableInfo
 1 using System;
 2 using System.Collections.Generic;
 3 using System.Linq;
 4 using System.Text;
 5 using System.Threading.Tasks;
 6 
 7 namespace Model
 8 {
 9     public class TableState
10     {
11         /// <summary>
12         /// 餐桌状态
13         /// </summary>
14         public int State { get; set; }
15         /// <summary>
16         /// 名字
17         /// </summary>
18         public string Title { get; set; }
19         /// <summary>
20         /// 构造函数赋值
21         /// </summary>
22         /// <param name="state"></param>
23         /// <param name="title"></param>
24         public TableState(int state,string title)
25         {
26             State = state;
27             Title = title;
28         }
29     }
30 }
TableState

UI层:

 

 

项目文件说明:

 

测试账户,用户名:alex  密码:123    

百度云盘地址(包含数据库哦):

链接:https://pan.baidu.com/s/17HhQZuawz6shD9Jd7W29pw
提取码:5k91

posted @ 2019-06-09 22:27  陈彦斌  阅读(615)  评论(0)    收藏  举报