欢迎来到冰点文库! | 帮助中心 分享价值,成长自我!
冰点文库
全部分类
  • 临时分类>
  • IT计算机>
  • 经管营销>
  • 医药卫生>
  • 自然科学>
  • 农林牧渔>
  • 人文社科>
  • 工程科技>
  • PPT模板>
  • 求职职场>
  • 解决方案>
  • 总结汇报>
  • ImageVerifierCode 换一换
    首页 冰点文库 > 资源分类 > DOCX文档下载
    分享到微信 分享到微博 分享到QQ空间

    数据库系统原理餐厅点菜管理系统.docx

    • 资源ID:17452015       资源大小:69.22KB        全文页数:39页
    • 资源格式: DOCX        下载积分:5金币
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录
    二维码
    微信扫一扫登录
    下载资源需要5金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP,免费下载
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    数据库系统原理餐厅点菜管理系统.docx

    1、数据库系统原理餐厅点菜管理系统1系统需求分析系统需求分析,希望通过调查、讨论,分析应用系统将要提供的功能及未来数据库用户的数据需求,详细描述系统的实体、功能、规则与约束,为以后的数据库系统的建立提供基础依据。1.1背景分析随着科技的发展,许多新的技术已经成功运用于我们的日常生活之中,“衣、食、住、行”每样都搭上了科技的快车。“民以食为天”,吃饭可以说是人们日常生活中最重要的一部分。人们生活水平的提高也使得大家不只局限在自己做饭吃饭的情况,“去餐厅”、“下馆子”的频率已经越来越高。可是目前人们在餐厅吃饭点菜的形式还只局限于服务员人工点菜,不仅效率不高,菜品无法第一时间报给厨师,对菜品的选择也只局

    2、限于服务员的推荐和自己个人的经验,而且吃饭只求味觉上的享受完全或者很少考虑到科学和身体的需要,现在,所谓的“吃饱吃好”,从科学的角度来讲还只停留在吃饱的阶段,此种情况希望得到改善的要求十分迫切,也将成为餐厅的一大卖点。1.2系统目标本系统立足于人们的饮食方面的需求,面向江西省南昌市连锁性质的“菜肴故事”餐厅,对客人在餐厅内的点菜进行管理,本系统希望通过包间内电脑自主点菜的方式为客人提供点菜服务,同时,本系统还可以根据客人的点菜记录为菜品打分,根据不同客人对菜品的爱好进行推荐,根据客人不同的身体情况提供配餐建议,以实现点菜的科学化、系统化和自动化,最大限度的服务于客人和餐厅,减少餐厅的开支,提高

    3、餐厅的效率,为顾客提供方便。1.3业务需求及处理流程餐厅点菜的主要业务包括:所选菜单的生成和菜单处理的过程,如图1-1所示。菜单生成图 1-1 点菜系统业务流程1.4功能需求及数据分析需求功能需求分析将描述点菜系统提供的功能和服务。根据对流程的分析,通过与餐厅服务人员、顾客的交流,点菜系统主要功能和数据需求包括:后台菜品管理、顾客评价管理、前台点菜服务。1.4.1菜品基本信息管理提供菜品基本信息的录入、维护和查询功能:1) 工作人员录入、更新和删除菜品的基本信息,包括菜品的主要原料、所属菜系、价格、口味、热量,蛋白质含量等信息。2) 菜品查询。系统提供多种方便快捷的方式进行菜品的检索,如可以输

    4、入指定的关键词进行查询,也可以通过设定菜品的条件,如口味、菜系等单一或者组合条件进行查询。1.4.2顾客基本信息管理提供顾客的信息的录入、更新功能:1) 工作人员录入,删除,修改顾客的基本信息,包括顾客的姓名、生日、积分等信息。2) 工作人员可以对顾客信息进行查询。3) 系统对顾客的积分按消费情况进行自动修改。1.4.3桌台基本信息管理提供桌台基本信息的录入、维护和查询功能:1) 工作人员录入桌台的基本信息,包括桌台编号,可容纳人数,等级,是否被占用。2) 工作人员更新、增加和删除桌台的基本信息。3) 工作人员可以按照桌台的编号对其进行查询。1.4.4科学套餐管理1) 工作人员负责录入科学套餐

    5、的信息,根据科学知识,将菜品根据不同人群的不同要求,进行组合形成科学套餐供顾客选择。2) 工作人员负责更新和删除套餐的基本信息。顾客可以根据编号,名称,功能对套餐的信息进行查询。1.4.5菜单管理提供菜单的生成、确认、修改和查询的功能:1) 顾客菜单生成:所在房间顾客选择生成对应房间的菜单。2) 顾客选菜:顾客可以根据自己的口味、喜好、菜品价格进行选菜。顾客选定桌台之后,在终端机上开始选定菜品。顾客可以随意增加、删除和设定想要的数量,并最后统计价格。3) 菜单查询:顾客选菜结束后可以随时对所选菜单进行查询。4) 删除和改选:选菜成功后,顾客可以在未处理菜单前对菜单内的菜品进行修改和删除。5)

    6、菜单确认:本房间顾客自行确认菜单,确认后无法进行菜单修改。1.4.6菜品推荐管理1) 同类菜品推荐。当顾客选择一道菜时,可以同时显示同类,口味相似菜品,向顾客显示。2) 自动菜品推荐。对顾客历史消费数据进行统计分析,针对顾客点菜风格及人数显示推荐菜品。3) 当季主打菜品推荐。向顾客推荐时下本店销量好的菜品。1.4.7顾客评价管理该服务应用于前台,操作对象为顾客。顾客可以根据自己意愿,对菜品进行评价。1) 菜品评价:顾客对菜品的评价,用文字描述,类似留言。2) 菜品打分:顾客根据对菜品的印象对菜品进行打分,10分制。1.5系统功能图餐厅点菜系统功能图,如图1-2所示。图1-2 餐厅点菜系统功能图

    7、1.6业务规则分析业务规则分析主要是分析数据之间的约束以及数据库约束。基于上述功能需求,通过进一步了解,点菜系统业务规则如下:1) 每个桌台有唯一的编号,由餐厅提前分配。2) 每个菜品有唯一的编号标识,菜品编号由工作人员提前编排。3) 每个科学配菜套餐都有唯一编号,由系统提前分配。4) 对于已选择的套餐,顾客可以根据自己的需求可以调整菜单中的菜品。5) 每个选定好的菜单编号唯一标识。菜单编号由系统按时间和桌台号联合生成。6) 菜单被接受处理前,顾客可以调整菜品。但是如果已经开始接受处理则不能修改。7) 同类菜品推荐规则:根据顾客所点菜品的主要原料中有三样相同,口味相同,所属菜系相同,热量差距所

    8、点菜品的15%以内,蛋白质含量差距所点菜品的20%以内的菜品,其中每满足以上一项条件菜品权值加1,选取权值前三大的菜品进行推荐,遇到已有菜品时自动排除。8) 自动菜品推荐规则:根据历史记录直接生成一系列菜品,推荐规则为选取往期所点菜品计算权值,计算规则与同类菜品推荐规则一样,然后从每样的权值前三大菜品中选取一样,遇到已有菜品时自动排除。9) 每个顾客有单独唯一的顾客编号,以及相应的消费积分,与等级分配。10) 每个顾客可以发表多条评价,一个职员可回复多条评价。11) 除前台以外的工作人员不能对产生的账单做任何操作。12) 顾客对于每个菜品的评价不能超过3条。13) 每条评价字数不得多于50。1

    9、4) 顾客只能查看和更改自己的评价。15) 顾客只能看到所有评价信息,不能更改其他桌台的信息。16) 一份账单只能享受一次顾客优惠,并按可允许的最高优惠计算。17) 每个桌台在同一时间最多只能有1个菜单。18) 每个菜单只能生成一个账单。19) 每张桌台的人数限制仅作参考。20) 顾客积分,等级及相应的折扣规则如下:顾客等级积分条件享受折扣黄金会员4000积分=10009.5折铂金会员10000积分=40009折钻石会员积分=100008.5折非会员积分1000无折扣21) 顾客积分为每消费一元(折后金额)积一分。22) 顾客积分为该顾客结账后统计。23) 无菜品的菜单不可生成账单。24) 当

    10、季主打菜品推荐为根据当日时间对菜品进行推荐,需人工设置推荐表。25) 主打菜品推荐中每类菜品只推荐一个。26) 同类菜品推荐中每次只推荐最多3个菜品以供选择。27) 自动菜品推荐中,系统根据顾客历史点菜风格及消费人数进行菜品推荐,最多提供10个菜品以供选择。28) 系统若查询不到顾客的历史点菜记录,便不可进行自动菜品推荐。29) 结账后的菜单和账单权限为只读,不可更改。30) 先结账,后进行顾客积分增加。因此,当次的顾客升级不可用于造成升级的账单打折,其折扣仍按升级前计算。31) 桌台等级分为1,2,3三个等级,3指外场,2指普通包厢,1指特级包厢。32) 计算总价的方法:实际总价=菜单总价(

    11、menuSum)*会员折扣1.7数据约束分析点菜系统主要数据约束如下:1) 用户访问权限:任何用户都不能访问其他用户的密码。2) 每个菜品的打分不能低于0,不能高于10。3) 菜品的编码规则:以字母D开头加六位数字组成,数字是按流水号依次增大。4) 桌台的编号规则:以字母T开头加三位数字组成,数字是按流水号依次增大。5) 顾客的编号规则:以字母M开头加六位数字组成,数字是按流水号依次增大。6) 科学套餐的编号规则:以字母S开头加六位数字组成,数字是按流水号依次增大。7) 菜单的编号规则:以字母C开头加11位数字组成,其中前三位为桌台号中的数字,后八位为菜单创建时间。8) 账单的编号规则:由系统

    12、在对应的菜单编号后自动加“B”生成。9) 顾客积分初始值为0,最大为10000,达到此数值便不再增加。10) 顾客等级初始值为0,最大为3,达到此数值便不再增加。1.8数据字典数据字典包括数据项描述、数据结构描述、数据流、数据存储和处理过程,具体内容如下。1.8.1数据项与数据结构通过对所建立的表进行分析,我们得到了以下一些数据项,如表1.1至表1.5所示。表1.1菜品表Dishes数据项名与别名类型(长度)是否为空数据约束数据项含义说明dishesNOChar(7)Not nullG字符加6个数字菜品编号dishesNamevarChar(20)Not null字符菜品名称pricenume

    13、ric(7,2)Not null数字菜品价格dishestypeChar(7) null字符菜品类型proteinnumeric(7,2)null数字蛋白质含量calorificnumeric(7,2)null数字热量sugarsnumeric(7,2)null数字糖分表1.2桌台表Table数据名与别名类型(长度)是否为空数据约束数据项含义说明tableNoChar(4)Not nullT字符加3个数字桌台编号placeintNot null数字容纳人数tablelevleChar(12)Not null字符桌台等级表1.3顾客表 Member数据项名与别名类型(长度)是否为空数据约束数据项

    14、含义说明memberNoChar(7)Not null字符M加6个数字顾客编号memberLevelChar(5)Not null字符顾客等级memberCountintNot null数字顾客积分memberNameChar(20)Not null字符顾客名字memberSexChar(1)Not null字符顾客性别memberBirthdatetimenull日期顾客生日表1.4科学套餐表 Smeal数据项名与别名类型(长度)是否为空数据约束数据项含义说明smealNoChar(7)Not null以字母S开头加六位数字套餐编号sPricenumeric(7,2)Not null数字套餐

    15、价格benefitvarChar(20)Not null字符套餐功能表1.5菜单表 Menu数据项名与别名类型(长度)是否为空数据约束数据项含义说明menuNoChar(12)Not null以字母C开头加11位数字菜单编号menuDatedatetimeNot null数字生成时间menuSumintNot null数字菜单总价1.8.2数据处理为了实现预期的系统功能,我们建立了以下数据处理过程,如表1.12所示。表1.12 数据处理编号名称数据处理说明1.菜单编号生成建立一个触发器,实现菜单的编号由时间和桌台号自动生成。2.菜单总价计算建立一个存储过程,利用游标实现在客户点菜后,通过多点的

    16、菜品的价格,及与该菜品相对应的菜品的数量,计算出菜单的总价。3.菜品推荐建立一个存储过程,利用游标实现,查找菜品热量相差在20%,蛋白质含量相差在15%,范围内的菜品。4.计算客户积分建立一个存储过程,利用游标,通过查询客户的消费记录,按消费额折合成积分,计入客户积分。5.菜单总价控制建立一个触发器,控制菜单总价不能人为操作控制,只能由明细表中计算得出。6.菜品评价控制建立一个触发器,控制客人只能修改自己对菜品的打分,对其他客户的打分只能查看。2数据库概念设计根据上述需求分析,可定义下列实体集、联系集及其属性。2.1定义实体集及属性1) 菜品实体集 Dishes:具有菜品编号(dishesNo

    17、)、菜品名称(dishesName)、价格(price)、菜品类型(dishetype)、蛋白质含量(protein)、热量(calorific)、糖分(sugars)等属性。2) 桌台实体集 Table:具有桌台编号 (tableNo)、容纳人数(place)、桌台等级(level)等属性。3) 顾客实体集 Member:具有顾客编号 (memberNo)、顾客等级(memberLevel)、顾客积分 (memberCount)、顾客姓名(memberName)、顾客性别(menberSex)、顾客生日(memberbirth)等属性。4) 科学套餐实体集 (Smeal):具有套餐号(sme

    18、alNo)、套餐价格(sPrice)、套餐功能(benefit)等属性。5) 菜单实体集 Menu:具有菜单编号(menuNo)、菜单总价(menuSum)等属性。2.2定义联系集及属性1) Choice 联系集:Member、Table、Dishes和Smeal之间的联系,其中Member和Table进行聚合,Dishes和Smeal之间建立聚合。2) Combination 联系集:Dishes和Smeal之间多对多的关系,一种菜品可以被多种套餐选择,一种套菜可以选择过个菜品。3) Create 联系集:Menu和Choice联系集之间的联系,都用用聚合表示。4) Evaluate 联系集

    19、:Member和Dishes之间多对多的关系,是对菜品的评价,具有分数(score)属性。2.3E-R模型设计所有实体描述如下1) 菜品实体集如图2-1所示。图2-1 菜品实体集2) 桌台实体集如图2-2所示。图2-2 桌台实体集3) 顾客实体集如图2-3所示。图2-3 顾客实体集4) 科学套餐实体集如图2-4所示。图2-4 科学套餐实体集5) 菜单实体集如图2-5所示。图2-5 菜单实体集6) Evaluate联系集如图2-6所示。图2-6 Evaluate联系集7) Create联系集如图2-7所示。图2-7 Create联系集总体E-R图如下图2-6所示。图2-6 餐厅点菜系统总体E-R

    20、图3 逻辑设计根据上述概念设计,将其转化为系统可以识别、支持的关系数据模型。3.1关系设计3.1.1 由实体集转化而来的关系模式1) 由Dishes实体集转化的关系模式为:Dishes(dishesNo,dishesName,price,dishestype,protein,calorific,sugars)2) 由Table实体集转化的关系模式为:Table(tableNo,tableNumber,tablelevel)3) 由Member实体转化的关系模式为:Member(memberNo,memberLevel,memberCount,menberName,memberSex,membe

    21、rBirth)4) 由Smeal实体转化的关系模式为:Smeal(smealNo,sPrice,dishesNo,benefit)5)由Menu实体转化的关系模式为: Menu(menuNo,menuDate,tebleNo,menuSum)3.1.2由联系集转化而来的关系模式1) Evaluate联系集:Evaluate(roomNo,disheaNo,score)2) 由Create的联系集转化得到MenuDetail: MenuDetail(menuNo,dishesNo,Price,qty)3) 由Combination联系集转化为SmealDetail: SmealDetail(sm

    22、ealNo,dishesNo,dishesNo,price)3.2约束说明关系设计包括转换后所得的表,转换之后的关系如表3.1到3.10表3.1菜品表Dishes数据项名与别名类型(长度)是否为空数据约束数据项含义说明与其他数据项的联系dishesNOChar(7)Not nullG字符加6个数字菜品编号主键dishesNamevarChar(20)Not null字符菜品名称与菜品号对应pricenumeric(7,2)Not null数字菜品价格独立dishestypeChar(7) null字符菜品类型独立proteinnumeric(7,2)null数字蛋白质含量独立calorific

    23、numeric(7,2)null数字热量独立sugarsnumeric(7,2)null数字糖分独立表3.2桌台表Table数据名与别名类型(长度)是否为空数据约束数据项含义说明与其他数据项的联系tableNoChar(4)Not nullR字符加3个数字桌台编号主键placeintNot null数字容纳人数独立levelintNot null数字,1到3桌台等级独立emptyintNot null数字是否占用独立表3.3顾客表 Member数据项名与别名类型(长度)是否为空数据约束数据项含义说明与其他数据项的联系memberNoChar(7)Not null字符M加6个数字顾客编号主键me

    24、mberLevelChar(5)Not null字符顾客等级独立memberCountintNot null数字,0到10000顾客积分独立memberNameChar(20)Not null字符顾客名字独立memberSexChar(1)Not null字符顾客性别独立memberBirthdatetimenull日期顾客生日独立表3.4科学套餐表 Smeal数据项名与别名类型(长度)是否为空数据约束数据项含义说明与其他数据项的联系smealNoChar(7)Not null以字母S开头加六位数字套餐编号主键sPricenumeric(7,2)Not null数字套餐价格由菜品价格计算得来,

    25、参照表DishesdishesNoChar(7)Not nullG字符加6个数字菜品编号dishesNObenefitvarChar(20)Not null字符套餐功能独立表3.5菜单表 Menu数据项名与别名类型(长度)是否为空数据约束数据项含义说明与其他数据项的联系menuNoChar(12)Not null以字母C开头加11位数字菜单编号主键menuDatedatetimeNot null数字时间独立tableNoChar(4)Not nullR字符加3个数字桌台编号外键,参照Table表menuSumintNot null数字菜单总价由明细表中的菜品价格和菜品数量计算得出表3.6菜单明

    26、细表 MenuDetail数据项名与别名类型(长度)是否为空数据约束数据项含义说明与其他数据项的联系menuNoChar(12)Not null以字母C开头加11位数字菜单编号主键、外键,参照Menu表dishesNoChar(7)Not nullG字符加6个数字菜品编号主键、外键,参照Dishes表Pricenumeric(7,2)Not数字菜品价格与菜品对应qtyIntNot null数字菜品数量独立表3.7科学套餐明细表 SmealDetail数据项名与别名类型(长度)是否为空数据约束数据项含义说明与其他数据项的联系smealNoChar(12)Not null有系统自动按时间提供科学套

    27、餐编号主键、外键,参照Menu表dishesNOChar(7)Not nullG字符加6个数字菜品编号主键、外键,参照Dishes表Pricenumeric(7,2)Not数字菜品价格与菜品对应表3.8评价表 Evaluate数据项名与别名类型(长度)是否为空数据约束数据项含义说明与其他数据项的联系tableNoChar(4)Not nullR字符加3个数字桌台编号主键、外键,参照Room表dishesNOChar(7)Not nullG字符加6个数字菜品编号主键、外键,参照Dishes表ScoreIntNot null数字,0到10分数独立函数依赖关系:1) 菜品表 函数依赖集为F1=菜品编

    28、号(菜品名称,菜品价格,菜品类型,热量,蛋白质含量,糖分) 3NF。2) 桌台表 函数依赖集为F2=桌台编号(容纳人数,桌台等级,是否占用) 3NF。3) 顾客表 函数依赖集为F3=顾客编号(顾客等级,顾客积分,顾客姓名,顾客性别,顾客生日) 3NF。4) 科学套餐表 函数依赖集为F4=套餐编号(套餐价格,菜品编号,套餐功能) 3NF。5) 科学套餐表明细表 函数依赖集为F5=套餐编号(菜品编号) 3NF。6) 菜单表 函数依赖集为F6=菜单编号(时间) 3NF。7) 菜单明细表 函数依赖集为F7=菜单编号(菜品编号,菜品价格,实际菜品价格,菜品数量) 3NF。8) 评价表 函数依赖集为F10=桌台编号(菜品编号,分数) 3NF。4 数据库应用设计数据库应用的设计,包括数据库的脚本和安全性设计、数据库的完整性设计和数据库的存储过程设计。4.1 数据库脚本及数据库安全性设计1)数据库安全性设计 创建三个用户分别为管理员user01、前台服务人员qiantai以及顾客customer


    注意事项

    本文(数据库系统原理餐厅点菜管理系统.docx)为本站会员主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2023 冰点文库 网站版权所有

    经营许可证编号:鄂ICP备19020893号-2


    收起
    展开