# RestaurantApp **Repository Path**: hidarcy/restaurant-app ## Basic Information - **Project Name**: RestaurantApp - **Description**: 餐厅点餐app,基于C# wpf开发 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 3 - **Forks**: 2 - **Created**: 2022-06-09 - **Last Updated**: 2025-12-29 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 真美味餐厅点菜app ## 1.简介 参考项目: https://gitee.com/kbzapp/foodApp ### 1.1 快速开始 ``` 1.代码下载 git clone https://gitee.com/hidarcy/restaurant-app.git 2.visual studio下载 https://visualstudio.microsoft.com/zh-hans/vs/ 3.开发工具安装完毕,打开App.sln,编译成功后生成RunApp.exe 4.安装mysql数据库,创建数据库:restaurantdb,执行initTable.sql,initData.sql,修改appsettings.json文件,数据库连接参数部分。 5.运行RunApp.exe,展现效果参考下文:软件界面展示 6.登录账号跟所在机器和手机号相关,不同的机器,不同的ActiveCode。 ActiveCode的生成规则如下: 首先获取机器码: MachineUniqueHelper: fingerPrint = GetHash("CPU >> " + cpuId() + "\nBIOS >> " + biosId() + "\nBASE >> " + baseId() + "\nDISK >> " + diskId() + "\nVIDEO >> " + videoId() + "\nMAC >> " + macId()); 然后根据机器码和用户手机号,通过md5加密得到激活码,和appsettings.json中的ActiveCode比对,相同则校验通过 var _strKey = string.Format("BusinessTel:{0}&OnLineMachineInfo:{1}", activetel, _curMachineInfo); string _code = Md5Crypt.EncryptToMD5(_strKey).ToLower(); if (activeCode.ToLower().Equals(_code)) // OK var _curMachineInfo = MachineUniqueHelper.Value(); var _strKey = string.Format("BusinessTel:{0}&OnLineMachineInfo:{1}", activetel, _curMachineInfo); string _code = Md5Crypt.EncryptToMD5(_strKey).ToLower(); 当ActiveCode和_code相等时候,校验通过 ``` ### 1.2 代码结构简介 以菜品维护为例 页面: RunApp.MainWindow.xaml -> PartialViews.Business.CaiPinWeiHu.xaml 逻辑: RunApp.PartialViews.BusinessCaiPinWeiHu.xaml.cs -> GetTableList Service.Implements.sysMenuService.cs -> GetPagesAsync WPF中 Window 窗体加载的时候的事件的执行顺序 - 1.Window.Initialized - 2.Window.Activatied - 3.Window.Loaded - 4.Window.ContentRendered - 5.Window.DeActivatied - 6.Window.Closing - 7.Window.UnLoad - 8.Window.Closed ## 2 软件界面展示 ### 2.1 软件激活 只需要通过免费授权激活即可免费使用,以下是“激活界面”展示效果。 ![激活界面](https://gitee.com/kbzapp/foodApp/raw/master/images/1614307919263-active.png) ### 2.2 软件登录 通过免费授权激活后,软件会提示“激活成功”,并可以通过操作跳转至登录界面,以下是“登录界面”展示效果。 ![登录界面](https://gitee.com/kbzapp/foodApp/raw/master/images/1614307919288-SignIn.png) ### 2.3 软件主界面 本软件通过登录成功进入系统后,默认展示窗口为当前所有餐桌分布,以及使用情况。管理者可以很清晰明了的掌握当前所有餐桌的使用状况,便于及时安排客人用餐。以下是“主界面”展示效果。 ![主界面](https://gitee.com/kbzapp/foodApp/raw/master/images/1614307919292-tableList.png) ### 2.4 个人中心 在软件主界面,点击右上角的个人头像,即可弹窗展示个人基本信息。以下是“个人中心界面”展示效果。 ![个人中心界面](https://gitee.com/kbzapp/foodApp/raw/master/images/1614307919296-userInfo.png) ### 2.5 选择“消费项目” 在主界面中,可以选餐桌状态为“空闲”并录入用餐人数后,操作“立即开台”(或状态为“用餐中”的餐桌,操作“新增消费”),即可进入对应的“消费项目”界面。以下是“消费项目界面”展示效果。 ![消费项目界面](https://gitee.com/kbzapp/foodApp/raw/master/images/1614307919280-openOrder.png) ### 2.6 维护“消费项目” 在主界面的左侧“菜单”列表里,选择“菜品维护”,即可进入“消费项目”维护界面。以下是“消费项目”维护界面展示效果。 ![维护消费项目界面](https://gitee.com/kbzapp/foodApp/raw/master/images/1614307919285-optionPro.png) ### 2.6 经营数据统计 在主界面的左侧“菜单”列表里,选择“营业查询”,即可进入“经营数据统计”界面。以下是“经营数据统计”界面展示效果。 ![经营数据统计](https://gitee.com/kbzapp/foodApp/raw/master/images/1614307919269-count.png)