![C++项目开发全程实录(第2版)](https://wfqqreader-1252317822.image.myqcloud.com/cover/546/24172546/b_24172546.jpg)
2.3 系统设计
![](https://epubservercos.yuewen.com/620C61/13043251103823906/epubprivate/OEBPS/Images/Figure-P30_9953.jpg?sign=1739239762-YKrIPBVUUIxfSkzXCcYy5z3tR5oAQMBE-0-5d0fe33065989d0146ee831cb1dd1179)
视频讲解
2.3.1 系统目标
餐饮管理系统将实现如下目标。
减少前台服务人员的数量,减少经营者的人员开销。
提高操作速度,提高顾客的满意程度。
使经营者能够查询一些历史数据。
2.3.2 系统功能结构
餐饮管理系统包含前台服务、后台服务、财政服务和系统服务几部分功能,其功能结构如图2.1所示。
![](https://epubservercos.yuewen.com/620C61/13043251103823906/epubprivate/OEBPS/Images/Figure-P31_32768.jpg?sign=1739239762-jmXoikgJNgvmVZiSBNe50FlHKLClgCiA-0-648b41b09c34770cfd9cb558ab0550f7)
图2.1 餐饮管理系统功能结构图
2.3.3 系统预览
餐饮管理系统由多个功能组成,下面仅列出几个典型的功能界面,其他界面可参见资源包中的源程序。典型的功能界面如图2.2~图2.5所示。
![](https://epubservercos.yuewen.com/620C61/13043251103823906/epubprivate/OEBPS/Images/Figure-P31_10226.jpg?sign=1739239762-hf3uEy7aNzp03vtkGJJsm1FeAr2KOvHE-0-267bebf6b33de902e8d5f00c96617c4b)
图2.2 开台点菜服务界面
![](https://epubservercos.yuewen.com/620C61/13043251103823906/epubprivate/OEBPS/Images/Figure-P31_10231.jpg?sign=1739239762-CQKUhc5fpCkr2AYIyQvOa8N4uTJuzwSM-0-1a659eadc9c20354322393df997d1b43)
图2.3 顾客结账服务界面
![](https://epubservercos.yuewen.com/620C61/13043251103823906/epubprivate/OEBPS/Images/Figure-P31_10234.jpg?sign=1739239762-CqTFvBYIWVCYCy5MWRlgXkecVleuiNae-0-53c6eb26532e64a7e3655d904efc2f0e)
图2.4 菜式信息管理界面
![](https://epubservercos.yuewen.com/620C61/13043251103823906/epubprivate/OEBPS/Images/Figure-P31_10235.jpg?sign=1739239762-rl7rv6WvOHXwLfKMNwePFL3UKTDvsztR-0-6d9a6df816eb36731ceb815d3050c014)
图2.5 数据库还原和数据库备份界面
2.3.4 业务流程图
餐饮管理系统的业务流程图如图2.6所示。
![](https://epubservercos.yuewen.com/620C61/13043251103823906/epubprivate/OEBPS/Images/Figure-P32_32773.jpg?sign=1739239762-X3zXIqTV5ii7A2Xr11iSjnfydr3gkqGD-0-307203827039769029a8af2b662d59fa)
图2.6 餐饮管理系统的业务流程图
2.3.5 数据库设计
一个好的数据库是每一个成功的系统必不可少的部分,数据库设计则是系统设计中最关键的一步。所以,要根据系统的信息量设计一个合适的数据库。
1.数据库分析
因为餐饮管理系统中需存储的数据信息量不大,对数据库的要求并不是很高,所以,本系统采用了Microsoft Access 2010数据库,数据库名称为canyin。在数据库中一共建立了7张数据表,用于存储不同的信息,如图2.7所示。
![](https://epubservercos.yuewen.com/620C61/13043251103823906/epubprivate/OEBPS/Images/Figure-P32_10411.jpg?sign=1739239762-b8aso7k1ZjnpVOGWJBxGXH3v4s2dy05L-0-aa635126ebf2dcbd4c28a6811dc7e082)
图2.7 数据库canyin中的表
2.数据库概念设计
(1)用户信息实体
用户信息实体包括用户登录账号、用户登录密码和用户权限。用户信息实体E-R图如图2.8所示。
![](https://epubservercos.yuewen.com/620C61/13043251103823906/epubprivate/OEBPS/Images/Figure-P32_32774.jpg?sign=1739239762-mgXlQCK0EAvd40G3X6lYPksAS9f9o6uu-0-f728c361d419b7fe84868a7c319a5e26)
图2.8 用户信息实体E-R图
(2)菜式信息实体
菜式信息实体包括菜式名称和菜式价格。菜式信息实体E-R图如图2.9所示。
![](https://epubservercos.yuewen.com/620C61/13043251103823906/epubprivate/OEBPS/Images/Figure-P32_32775.jpg?sign=1739239762-6FgqFyDYf2LboF1VeogALzbgcmcKUDiG-0-34b02478f01d035f3a03325172d2280f)
图2.9 菜式信息实体E-R图
(3)进货信息实体
进货信息实体包括商品名称、商品价格、商品数量和进货时间。进货信息实体E-R图如图2.10所示。
(4)账单信息实体
账单信息实体包括菜式名称、菜式价格、菜式数量和结账桌号。账单信息实体E-R图如图2.11所示。
![](https://epubservercos.yuewen.com/620C61/13043251103823906/epubprivate/OEBPS/Images/Figure-P33_32780.jpg?sign=1739239762-Usz1U9LGBJlOKulGEQYhx2UdovP6fz96-0-0a208ef85af08b5d47e7d464266d3c53)
图2.10 进货信息实体E-R图
![](https://epubservercos.yuewen.com/620C61/13043251103823906/epubprivate/OEBPS/Images/Figure-P33_32781.jpg?sign=1739239762-68tRFDjwp0JPeQYDFGJDyzgLOOeUytJb-0-a2750e927272367bfd2a03d9fb173fc4)
图2.11 账单信息实体E-R图
(5)商品信息实体
商品信息实体包括商品名称和商品单价。商品信息实体E-R图如图2.12所示。
(6)收入信息实体
收入信息实体包括日收入金额和收入时间。收入信息实体E-R图如图2.13所示。
![](https://epubservercos.yuewen.com/620C61/13043251103823906/epubprivate/OEBPS/Images/Figure-P33_32782.jpg?sign=1739239762-WBafBJHJtYqbQIUuExnJo5SwlVPrK57S-0-8322474f1226d091e663e73b389ae12c)
图2.12 商品信息实体E-R图
![](https://epubservercos.yuewen.com/620C61/13043251103823906/epubprivate/OEBPS/Images/Figure-P33_32783.jpg?sign=1739239762-30eFMZkipHUlY7QgbypdkmUypdgwUrb8-0-d3bb1511ddc83dceb006233157497dc4)
图2.13 收入信息实体E-R图
(7)餐桌使用情况实体
餐桌使用情况实体包括餐桌桌号和餐桌状态。餐桌使用情况实体E-R图如图2.14所示。
3.数据库逻辑结构设计
完成了上述实体E-R图,接下来就该创建数据表。下面以创建菜式信息表(caishiinfo)为例演示如何创建数据表。
(1)新建数据表
在数据库创建完毕之后,选择“视图”选项,然后再选择“设计视图”选项,将弹出如图2.15所示的对话框,提示用户输入新建表的名称。
![](https://epubservercos.yuewen.com/620C61/13043251103823906/epubprivate/OEBPS/Images/Figure-P33_32786.jpg?sign=1739239762-zJxLAyixyFUUd5fxBTfhbEFJRdseRpTv-0-909cf49c45e82cb8ea9173d918d77c37)
图2.14 餐桌使用情况实体E-R图
![](https://epubservercos.yuewen.com/620C61/13043251103823906/epubprivate/OEBPS/Images/Figure-P33_10514.jpg?sign=1739239762-s6AhZV2l2J6vASyCHp7rrpFlqA9800TO-0-dcf3249c709f0590d497d34a3144a564)
图2.15 新建数据表
(2)创建字段名称及数据类型
单击图2.15所示的“确定”按钮,将弹出如图2.16所示的窗口。
![](https://epubservercos.yuewen.com/620C61/13043251103823906/epubprivate/OEBPS/Images/Figure-P34_10527.jpg?sign=1739239762-ax8pXE5I0ZSWN53TXGlpVneW0KTcww6d-0-df39f2faae839392fbf32b841ea73f38)
图2.16 创建字段名称及其数据类型
(3)输入信息
在“字段名称”中分别输入菜名和菜价,再将数据类型分别设置为自动编号、文本和数字,如图2.17所示。
(4)保存表
设置完毕后,在菜单栏中选择“文件”→“保存”命令,将表格保存,完成表的创建。
其余表的创建方法基本一致,下面分别介绍餐饮管理系统中各数据表的结构。
菜式信息表(caishiinfo):主要用于记录菜式信息,包括菜式名称和菜式价格,如图2.18所示。
进货信息表(jinhuoinfo):主要用于记录进货信息,方便使用者查询,如图2.19所示。
![](https://epubservercos.yuewen.com/620C61/13043251103823906/epubprivate/OEBPS/Images/Figure-P34_10531.jpg?sign=1739239762-KoUJkDoareKQFGfntbCGA55qQ6J42Y4Q-0-b9b689f68e7fa810cba9c7bb7b95c36f)
图2.17 设置参数
![](https://epubservercos.yuewen.com/620C61/13043251103823906/epubprivate/OEBPS/Images/Figure-P34_10532.jpg?sign=1739239762-NbCH9h1vWmMxJaOaLCqDRt1iupRE4ao3-0-442c998f2c23a7ba1541896b19ae7239)
图2.18 菜式信息表结构图
![](https://epubservercos.yuewen.com/620C61/13043251103823906/epubprivate/OEBPS/Images/Figure-P34_10535.jpg?sign=1739239762-PeVfpNKdFQQ0i0vIa5tWo6ULgqeXiKpb-0-994c53dd06ccefca7336eb7c775475e9)
图2.19 进货信息表结构图
用户信息表(Login):主要用于保存用户账号、密码和权限等信息,如图2.20所示。
账单信息表(paybill):主要用于保存顾客的消费信息,如图2.21所示。
![](https://epubservercos.yuewen.com/620C61/13043251103823906/epubprivate/OEBPS/Images/Figure-P35_10551.jpg?sign=1739239762-S2e6Q9C0CCkatUnJLFJpyJSJ55HpQndr-0-02c2369b22f4347d1c669b5af8c13aae)
图2.20 用户信息表结构图
![](https://epubservercos.yuewen.com/620C61/13043251103823906/epubprivate/OEBPS/Images/Figure-P35_10552.jpg?sign=1739239762-2jmlvVgim2Eg9ibW626NuMXrQ5ODmBNf-0-1cc109caa40770330b3b48f641404b9c)
图2.21 账单信息表结构图
商品信息表(shangpininfo):主要用于登记需要进货的商品信息,包括商品名称及价格,如图2.22所示。
收入信息表(shouru):主要用于记录每天的总营业额信息,以方便用户查询日收入总额及月收入总额情况,如图2.23所示。
![](https://epubservercos.yuewen.com/620C61/13043251103823906/epubprivate/OEBPS/Images/Figure-P35_10556.jpg?sign=1739239762-L0VC4i9JLTGHlUzKnTtaQS9nqa6jNvSv-0-ea304f8fb00465a4399e4ed3305cb3cf)
图2.22 商品信息表结构图
![](https://epubservercos.yuewen.com/620C61/13043251103823906/epubprivate/OEBPS/Images/Figure-P35_10557.jpg?sign=1739239762-ej2YiaCc6MdesBgnUVKN4gnYDYnvMPms-0-93f01754b7470a289d3bfc41208769a0)
图2.23 收入信息表结构图
餐桌使用情况表(TableUSE):主要用于记录每个餐桌的使用情况,如图2.24所示。
![](https://epubservercos.yuewen.com/620C61/13043251103823906/epubprivate/OEBPS/Images/Figure-P35_10561.jpg?sign=1739239762-ywdhCpbMipaxm6fXV46mHqjHm4eMnRA9-0-6b0d9786450354e6f52c874b5d792f15)
图2.24 餐桌使用情况表结构图