三层架构之餐饮管理系统客户端附源码
本示例用到:三层结构、松耦合、加密、委托、事件、单例模式、拼音检索、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 }
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 }
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 }
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 }
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 }
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 }
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 }
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 }
公共类(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 }
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 }
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 }
业务逻辑层(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 }
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 }
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 }
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 }
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 }
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 }
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 }
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 }
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 }
实体类(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 }
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 }
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 }
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 }
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 }
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 }
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 }
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 }
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 }
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 }
UI层:

项目文件说明:

测试账户,用户名:alex 密码:123
百度云盘地址(包含数据库哦):
链接:https://pan.baidu.com/s/17HhQZuawz6shD9Jd7W29pw
提取码:5k91

浙公网安备 33010602011771号