时间:2015-06-25 09:54 文章来源:http://www.lunwenbuluo.com 作者:李志伟 周航 点击次数:
摘要:随着餐饮业发展的规模日益增大,人力成本的投入也随之增大,为了在竞争激烈的环境中获取利润,企业认识到餐馆点菜系统不仅有助于提高餐饮业的运作效率,而且降低成本。本文详细介绍了如何用C语言来开发一款餐馆点菜系统,适合于管理员、服务员、经理不同角色的使用,管理员实现台桌、菜谱、员工的添加、删除、修改等操作,服务员实现点菜等功能,经理可以查询每位服务员的营收情况。该系统为提高餐馆的管理水平提供技术支持。
【关键词】点菜系统C语言文件VC6.0
【关键词】点菜系统C语言文件VC6.0
1前言
传统的点菜方式都是服务员拿着纸和笔到顾客面前登记,显得相当繁琐。为了提高餐饮企业的效率和节省成本,利用计算机来代替人工劳动,为此设计并实现了新型的餐馆点菜系统。在信息高速发达的今天,更简单、更快捷的点菜方式当然会受到人们的青睐,更少的员工反而有更高的工作效率,所以点菜系统在餐饮行业的流行也是必然的事。
本人利用C语言开发的餐馆点菜系统,用windows7环境下的VC6.0开发,可以实现三种不同角色的登录:管理员、服务员、经理。管理员的功能有台桌管理、菜谱管理、人员管理。服务员的功能有开桌、点菜、结账、营业额查询、已买/未买单查询。经理的功能有营收统计。而且三种角色都有注销和退出功能。本点菜系统主要利用到C语言的链表和文件方面的知识。
2系统概述
本系统的数据是从文件中读取的,对于小存储量的数据用文件就足够了。系统的总体框架从最底层的各个txt文件开始,这些文件包括staff.txt(员工信息)、menu.txt(菜谱信息)、desk.txt(台桌信息)、桌号.txt(已开桌子信息)、uncount.txt(所有账单信息)、服务员ID.txt(服务员每天营业额)。利用自己封装的文件读写函数,把这些数据读取到内存里组成各种相对应的链表,系统运行的时候就是对这些链表这些读写,而没必要每次都从文件里面读取,当系统掉电的时候,链表里面的数据就保存到文件里面。系统图里链表再往上面一级就是各种功能,比如登录、点菜、结账等,最顶层就是与用户交流的系统界面。总的系统框图如图1。
3系统主要功能介绍
3.1登录设计
开机界面显示后,系统读取文件staff.txt存入员工链表staff_chain,用户输入用户名和密码,系统进行输入字符校验,不允许输入奇怪字符,根据输入的用户信息与员工链表staff_chain的各个结点信息进行对比,如果数据对比正确,则登录成功,并根据角色的不同显示相应的功能界面,否则,登录失败。登录流程图如图2。
3.2管理员的功能设计
虽然本系统的管理员的功能有台桌管理、菜谱管理、人员管理,但是每种管理实际上都是实现增删改查。例如人员管理有增加员工、删除员工信息、修改员工信息和查询员工信息,其实现的方法都是对从文件读取生成的链表staff_chain进行操作。
操作链表的时候用了自己封装的几个函数:
函数:voidList_Add(LIST_T*head,void*data)。
函数功能:添加链表结点。
参数意义:所要添加结点链表的头指针head,结点的数据data。
函数:void*List_GetNode(LIST_T*head,intIndex)。
函数功能:获取链表某个结点。
参数意义:head---链表头结点,Index---链表结点编号。
返回值:返回链表结点的data指针。
函数:intList_Del(LIST_T*head,intIndex)
函数功能:删除链表的某个结点。
参数意义:Index---链表结点编号,head---链表头结点。
返回值:删除成功返回1,失败返回0。
3.3服务员的功能
该系统中最重要的就是服务员的功能,首先服务员开桌,桌子的状态改为已占用,接着点菜的功能实现是该模块的难点,因为涉及到是否马上点菜,加菜和退菜等处理。当进入点菜功能时,系统从文件读取生成两条链表,分别是菜谱的链表menu_head和客户已购买菜的链表order_menu_head,系统根据用户输入的菜谱ID号和份数,和order_menu_head的各个结点进行比对以确认是否第一道菜,如果是的话,就生成账单记录消费额。点菜实现的流程图见图3。
3.4经理的功能
经理主要负责统计每位服务员在某个日期范围内的营收情况。实现的方法是当服务员一结账完毕,就把营业额添加到已该服务员ID.txt文件下面,当经理要查询时,就从各个服务员ID.txt里面读取出相应的营收情况。处理流程见图4。
4结语
本文主要探讨如何用C语言来实现点菜系统中三种角色的功能,通过用流程图的方法介绍了一个实际的C语言项目。该系统适用在中小型餐馆,给餐馆人员带来一定的方便。虽然实现了一些常用的功能,但是系统还需要进一步地完善。
餐馆点菜系统改善了餐馆的经营策略、管理效率和服务质量。随着信息化的发展,将得到更为广泛的应用。
本系统还存在一些不足,有待进一步的完善:
(1)界面不够美观,如果能够用Qt来设计界面,而且能够显示菜的图片,将会提供更良好的用户体验。
(2)数据存储方式有待改善,由于本人用文件来存储服务员每天的营收情况,当数据量大的时候,应该用数据库来存储。
(3)开发的软件如果能够移植到移动终端,比如手机、平板电脑、pos机等,将会带来更加方便的体验并提高市场占有率。
作者简介
1.李志伟(1993-),男,福建省福州市人。现为福州大学物理与信息工程学院电子科学与技术专业2012级本科生。
2.周航(1994-),男,辽宁省锦州市人。现为大连理工大学能源与动力学院在读本科生。研究方向为能源与环境。
联系方式
随机阅读
热门排行