餐饮管理系统-项目需求文档
一、引言
开发环境:VS2005+SQL2005+三层结构
二、功能简介
1、房间管理和餐台管理
房间类型:将就餐的地方分为几种类型(例如大厅,包厢等),在不同房间类型进行消费在计费上会有一定差异,比如说有些房间类型是有最低消费的,而有些没有。有些房间类型允许打折,有些则不可以打折。
餐台管理:指不同房间类型下所包含的餐桌。在该系统中消费都是以一个餐台为单位进行消费。当顾客进店消费首先选择的是餐台,消费时也是以一个餐台为单位进行点单,结账时也是以一个餐台的消费金额进行结账。
2、 商品类别管理和商品管理
商品类别:将餐厅消费的项目划分为不同的类别
商品:指顾客消费的项目(可以理解为菜)
3、 系统管理
会员等级:餐厅实行会员制,不同级别的会员在结账时享受的折扣是不一样的(不是会员也可以消费,但是不打折)
管理员:登录系统的用户信息管理
系统设置:设置一些与系统相关的信息
4、会员管理
会员:为顾客办理会员,当会员结账时会根据该会员的等级享受相应的折扣
5、 顾客消费
开单:当顾客来店消费时,必须先明确餐台,此时将为该餐台开单,来记录顾客的消费信息
消费:在用餐时记录顾客点取商品,顾客可以在一次消费的过程中,多次追加消费。也可以在消费时退掉商品(退商品时不考虑商品是否已上)
结账:顾客消费完后,根据所点消费进行结账,此时如果是会员可以享受折扣
6、 营业查询
包括会员的消费信息查询,餐饮的营业信息查询等
三、功能详细描述
1、房间-餐台管理
1-1、窗体加载时,查询所有房间类型,餐桌信息,显示在对应的DataGridView控件或ComboBox控件上
1-2、按房间类型过滤:显示“所有餐台”选项和绑定所有房间类型选项,选择后显示符合条件的餐桌
1-3、添加房间类型
1-3-1、点击“确定”按钮添加房间类型
1-4、修改房间类型
1-4-1、修改界面上被选中的房间类型原始信息
1-4-2、点击“确定”按钮,修改记录
1-5、删除房间类型
1-5-1、选择DataGridView中某项房间类型,点击删除按钮,弹出消息框,询问用户是否删除,选择“是”对记录进行删除
1-6、添加餐桌
1-6-1、窗体加载时房间类型应显示所有房间类型名称
1-6-2、点击“确定”按钮,验证餐桌名称是否存在,如果存在该餐桌则提示错误信息,否则添加到数据库
1-6-3、餐台的状态添加时默认为可用状态
1-7、修改餐桌
1-7-1、修改界面上被选中的餐桌原始信息
1-7-2、点击“确定”按钮,修改记录
1-8、删除餐桌
1-8-1、选择DataGridView中的餐桌,点击删除按钮,弹出消息框,询问用户是否删除,选择“是”对记录进行删除
2、商品管理
2-1、窗体加载时,查询所有商品类别,商品信息,显示在对应的DataGridView控件或ComboBox控件上
2-2、按商品类别过滤:显示“所有类别”选项和绑定所有商品类别选项,选择后显示符合条件的商品
2-3、添加商品类别
2-3-1、点击“确定”按钮添加商品类别
2-4、修改商品类别
2-4-1、修改界面上被选中的商品类型原始信息
2-4-2、点击“确定”按钮,修改记录
2-5、删除商品类别
2-5-1、选择DataGridView中某项商品类型,点击删除按钮,弹出消息框,询问用户是否删除,选择“是”对记录进行删除
2-6、添加商品
2-6-1、窗体加载时,所属类别应显示所有商品类别
2-6-2、当用户输入商品名称时,应在名称简拼文本框中,自动转换成对应简拼
2-6-3、点击“确定”按钮,添加记录
2-7、修改商品
2-7-1、修改界面上被选中的商品原始信息
2-7-2、点击“确定”按钮,修改记录
2-8、删除商品
2-8-1、选择DataGridView中的商品,点击删除按钮,弹出消息框,询问用户是否删除,选择“是”对记录进行删除
3、系统设置
3-1、窗体加载时,查询所有操作员信息,会员等级信息,显示在对应的DataGridView控件上
3-2、添加操作员
3-2-1、点击“确定”按钮添加操作员
3-3、修改操作员
3-3-1、修改界面上被选中的操作员原始信息
3-3-2、点击“确定”按钮,修改记录
3-4、删除操作员
3-4-1、选择DataGridView中某项操作员,点击删除按钮,弹出消息框,询问用户是否删除,选择“是”对记录进行删除
3-5、添加会员等级
3-5-1、点击“确定”按钮,添加记录
3-6、修改会员等级
3-6-1、修改界面上被选中的会员等级原始信息
3-6-2、点击“确定”按钮,修改记录
3-7、删除会员等级
3-7-1、选择DataGridView中的会员等级,点击删除按钮,弹出消息框,询问用户是否删除,选择“是”对记录进行删除
3-8、其他设置
3-8-1、点击“保存”按钮,将界面标题和票据抬头保存到XML文件中,窗体显示或打印票据时从XML文件中读取信息
3-8-2、XML文件原型:
4、 会员管理
4-1、窗体加载时,查询所有会员信息,显示在对应的DataGridView控件上
4-2、会员添加
4-2-1、会员编号不允许编辑
4-2-2、会员开始时间为系统当前时间
4-2-3、点击“确定”按钮,添加记录
4-3、会员修改
4-3-1、窗体加载时,显示被修改会员的信息
4-3-2、修改界面上被选中的会员原始信息
4-3-3、点击“确定”按钮,修改记录
4-4、会员删除
4-4-1、选择DataGridView中的会员,点击删除按钮,弹出消息框,询问用户是否删除,选择“是”对记录进行删除
4-5、会员查询
4-5-1、输入会员编号或会员姓名后点击查询按钮,将符合条件的记录显示出来(模糊查询)
5、 用户登录
5-1、登录界面的窗体文本和界面上的标签文本数据来源于XML文件中,即系统设置中设置的登录界面标题
5-2、点击“确定”按钮,如果验证通过,则显示主界面,同时关闭登录窗体
6、 主界面
6-1、完成工具栏按钮的窗体跳转
6-2、基本信息显示
6-2-1、窗体标题和状态栏的文本从XML的loginTitle中读取数据
6-2-2、状态栏上当前登录上面显示当前登录用户的真实姓名
6-2-3、状态栏上显示当前时间
6-3、餐桌总状态显示
6-3-1、显示餐台的数量及各种状态的餐台状态,上座率=占用数/总数
6-4、房间及餐桌显示
6-4-1、动态加载房间类型:根据房间类型动态创建TabPage控件并添加到TabControl控件中;动态创建ListView控件,并添加到TabPage控件中。(每个房间对应一个TablePage和一个ListView)
6-4-2、动态加载房间类型所对应的餐台:加载房间类型时,根据房间类型查询所属的餐台,每个餐台对应一个ListViewItem对象并添加到对应的ListView中
6-4-3、加载餐台时根据餐台的状态应该显示不同的图标
6-4-4、双击餐台,如果状态为可用状态显示开单窗体,如果为占用状态显示消费窗体
6-5、其他操作
6-5-1、过滤状态:选择不同的项后在界面上显示符合条件的餐桌
6-6、餐桌的右键菜单
6-6-1、餐桌状态为可用时
6-6-2、餐桌状态为占用时
6-6-3、餐桌状态为停用时
6-6-4、设置餐台状态
更改餐台状态,必须进行判断
7、 顾客开单
7-1、选择某个餐台,点击开单,弹出开单界面,在界面上显示该餐台的相关信息
7-2、点击“确定”按钮进行开单操作
7-2-1、插入消费票据记录(票据ID需要存储过程手动计算生成)
7-2-2、修改选中餐台记录的状态(修改为占用)
7-3、如果选择开单后立即添加消费项目,显示增加消费窗体(功能参见消费功能说明)
7-4、开单操作完成后,刷新主窗体上的餐台状态,即餐台状态图标改变占用状态
8、 增加消费
8-1、窗体加载时,在项目清单和项目列表中显示所有商品信息
8-1-1、项目清单
8-2、商品搜索:(模糊查询)
8-2-1、根据简拼筛选符合条件的记录,第一个符合条件的节点设置为被选中状态
8-3、消费列表:窗体加载时显示所有当前消费
8-4、增加消费
8-4-1、点击“添加”按钮,将当前被选中商品添加到消费列表
注意:
A、需要根据商品数量文本框中的数据来添加;
B、现在添加到消费列表只在界面上显示,不会保存到数据库,只有关闭窗体时才保存到数据库;
C、没有添加到数据库中的消费显示为红色,从数据库中读取的消费显示为黑色
8-5、退菜
8-5-1、点击“退菜”按钮,对于只添加到界面上而没有保存到数据库中的商品,直接从消费列表控件中删除
8-5-2、点击“退菜”按钮,对于已保存到数据库中商品,直接从数据库中删除对应记录
8-6、其他
8-6-1、点击“退菜”按钮或“添加”按钮,需自动计算点单数量和合计金额
9、 宾客结账
9-1、数据显示
9-1-1、窗体加载时,显示账单号,餐桌名
9-1-2、显示消费明细列表
9-1-3、显示相应的金额
9-1-4、根据房间最低消费,判断是否需要显示底部提示文字
9-2、会员折扣设置
9-2-1、当会员编号文本框获得焦点时显示会员列表,输入内容自动筛选会员信息
9-3、结账:点击“结账”按钮
9-3-1、根据最低消费金额和实际消费金额,判断按哪种金额结账
9-3-2、修改消费票据中的会员编号、会员折扣和结账时间
9-3-3、修改消费票据中是否结账字段改为已经结账状态
9-3-4、修改餐台状态(改为可用)
10、营业查询
10-1、查询方式分为2种:组合查询和快速查询
10-1-1、组合查询:输入任意多个条件后点击查询按钮 进行查询
10-2、账单打印功能:点击打印按钮 ,将查询结果写入到指定的文件中。
10-2-1、从系统配置后的XML文件中获取票据抬头文字
10-2-2、打印被选中的票据信息,格式如下:
10-3、账单查询
10-3-1、收款人:绑定所有操作员姓名
10-3-2、双击账单信息中的某一行,弹出该账单对应的消费明细窗体。
10-4、商品消费查询
10-4-1、选择查询条件:
10-4-2、查询关键字:根据查询条件输入餐桌名称或项目名称
10-4-2-1、
10-4-2-2、
10-4-3、商品消费打印
10-4-3-1、选中一行消费数据,打印格式:
11、父窗体设置
11-1、按规范命名创建父窗体,设置窗体的各项属性,在窗体的构造函数中,读取XML配置文件,并设置标题栏文字,为读取到的节点内容