餐厅管理系统接口设计(餐厅管理系统接口设计图)

网友投稿 315 2023-01-05


本篇文章给大家谈谈餐厅管理系统接口设计,以及餐厅管理系统接口设计图对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。 今天给各位分享餐厅管理系统接口设计的知识,其中也会对餐厅管理系统接口设计图进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

本文目录一览:

餐饮管理系统设计论文

餐饮行业在日常管理经营中仍然有很大一部分企业是在采取纯手工的管理模式,管理的整体科技含量较低。下面是我为大家整理的餐饮管理系统设计论文,供大家参考。

餐饮管理系统设计论文篇一

实体店餐饮管理系统设计与实现

餐饮管理系统设计论文摘要

摘要:随着我国市场经济的快速发展,人们的生活水平提高,餐饮业迅速蓬勃发展,传统的手工作业方式已经不能满足餐饮经营者的需求。通过餐饮管理系统对实体店进行管理,具有人工管理所无法比拟的优点,能够极大地提高餐饮管理的效率,增强企业的竞争力。

餐饮管理系统设计论文内容

关键词:餐饮;管理系统;数据库

一、引言

随着社会经济持续高速增长,社会财富迅速增加,广大人民群众收入水平不断提高,生活方式随之发生巨大变化。同时,随着市场经济体制的建立健全和迅速发展,社会物质产品极大丰富,餐饮业蓬勃发展,传统的手工作业方式已经不能满足餐饮经营者的需求了。人工记账、核算、查询等工作既费时、费力,也容易出错。通过在计算机中运行餐饮管理系统,既减少了人力资源,同时提高效率,能为餐饮业赚取更大的利润,同时为消费者提供了诸多方便。

近几年来,计算机网络、分布技术日趋成熟,随着科技的发展,餐饮业的竞争也越来越激烈。想在这样竞争激烈的环境下生存,就必须运用科学的管理思想与先进的管理 方法 ,使点餐与管理一体化。这样不仅可以提高工作效率,也避免了以前手工作业的麻烦,从而使管理者能够准确、有效地管理。因此,需要建立一个科学的餐饮管理系统。

二、系统分析

(一)可行性分析

1. 技术可行性

该系统是一个小型的餐饮管理系统。采用C/S模式,在前台计算机安装客户端,处理信息,将处理结果储存在数据服务器上。目前很多企业都采用SQL Server数据库,处理数据也相当方便,得到了广泛的应用,在技术上是可行的。

2. 经济可行性

对本系统的经济效益与开发成本进行分析。本系统采用C/S结构,只要拥有一台PC电脑,无需复杂设置即可实施,并且相对人工作业来说,节省人力、物力,具有较好的经济效益。

3. 操作可行性

操作可行性指系统的操作方式在用户组织中是否行得通。餐饮管理系统的功能较为简单,页面简单明了,没有那些繁琐的、不必要的操作。用户一看就能够知道应该怎么进行操作。管理员的界面也较为简单,都是些基本的操作,员工可以很快掌握,在操作方面也很容易实现。

(二)功能需求分析

餐饮管理系统是对餐饮流程的数字化的管理,既可以帮助餐厅更好地管理职员信息,又方便了顾客消费,并且不同的用户使用权限不同。具体功能有:用户的登录、基本信息、点/加菜、账单查询、结账、辅助功能、系统维护、系统设置等。

用户登录:用户选择自己的身份(超级管理员、经理、顾客)登录,若身份选择错误,则登不上。用户根据自己的账号、密码及正确的身份登录到系统主界面。

职员信息:超级管理员及经理有权限管理职员的基本信息。职员信息功能模块包括总体职员的查询、职员信息的添加、职员信息的修改以及职员信息的删除。

桌台信息:超级管理员及经理有权限管理桌台的基本信息。桌台信息功能模块包括桌台的查询、桌台信息的添加、桌台信息的修改及桌台信息的删除。

点/加菜:该功能实现顾客点菜及加菜。

账单查询:顾客可根据自己的消费情况,查询自己的账单。

结账:根据该桌台的消费情况及包间费,汇总出总价,并可计算实收与找零。

辅助功能:作为一个系统,应该具备一些辅助的功能,如日历及计算器。

系统维护:只有超级管理员才有这样的权限,可实现权限管理、系统备份、系统恢复。

系统设置:包括系统的口令设置及锁定系统。

三、系统设计与实现

系统模块主要包括五个主要模块:基本信息模块、桌台操作模块、系统设置模块、辅助工具模块、退出模块。其中基本信息模块又分两个子模块:桌台基本信息和职员基本信息。桌台操作是本系统主要的功能,它包括对桌台实行开台、点菜的操作,同时针对某一个桌台可以进行消费查询及结账。系统设置模块主要包括口令设置和锁定系统,该模块主要是对系统的安全性的一个保障,也是本系统不可缺少的一部分。作为一个系统应该需要有一些辅助工具,如日历、计算器、记事本,所以该系统有一个辅助工具模块。一个完整的系统肯定有退出模块,即退出系统。

餐饮管理系统中主要功能的详细设计如下。

(一)登录模块设计

登录模块以登录的用户名、密码和用户权限作为搜索条件,在数据库中进行查询。单击登录按钮时,登录模块首先判断是否输入了用户名和密码,如果没有输入用户名和密码将弹出提示框,提示用户输入登录系统的用户名和密码;如果输入了用户名和密码,系统将判断用户名、密码和权限是否匹配。若匹配,则登录成功。

(二)主界面模块设计

成功登录后,会显示主界面,主界面中应该包括菜单栏、桌台显示和显示系统状态栏。在窗体加载时,首先判断登录用户的权限,根据用户登录的权限,分配不同的功能。当窗体焦点触发时,系统从数据库中检索出所有桌台的状态信息,然后调用自定义的AddItem方法添加桌台。用户点击某个桌台时,系统会根据该桌台当前的状态,弹出不同的右键菜单。

(三)开台模块设计

开台窗体中应该有桌台信息和职员信息及用餐人数,窗体加载时,将数据库中的所有的桌台信息和职员信息检索出来显示在ComboBox控件上。应在用餐人数文本框中输入用餐人数,并且用餐人数应是大于0的整数数字,保存后即对桌台进行开台操作。

(四)点菜模块设计

点菜模块可利用TreeView控件来显示所有的菜系,利用DataGridView控件显示顾客消费的所有信息。设计该模块时通过数据库中检索出所有的菜系名称显示到TreeView中,用户选择菜系后,应设计一个存储这些被选择的菜系的数据表,并在该模块中能显示出来,以便使误点的菜可以删除。

(五)结账模块设计

结账模块中,可在数据库中检索出顾客消费的所有项目,应有菜系的消费和包间的消费,根据两者的消费,显示出总的消费。顾客输入金额时,系统可自动找零,并显示到界面上。

(六)桌台基本信息模块设计

桌台基本信息应该具有对于桌台添加、删除、修改、查询等操作。添加桌台信息时,在数据库中检索桌台信息的数据表,并将信息添加到信息表中。查询桌台信息时,系统连接数据库,在数据库中检索到数据库的数据表,并将桌台信息显示到界面上。

四、小结

小型实体店餐饮管理系统是在.net平台上进行,结合后端的SQL Server 2000数据库技术,完成了桌台的管理、职员的管理、顾客开台,点菜/加菜、账目查询及消费账目结算等功能。系统信息查询灵活又方便、数据存储安全可靠、成本低。另外系统自身有如下优点。

一是使用较方便,用户上手快。

二是系统自动结账,结账速度快速且准确。

三是系统为提高客户服务质量提供了有效的技术保证。

通过小型实体店餐饮管理系统能能够切实有效地指导工作人员规范业务操作流程,更高效、快捷地实现业务的管理,保障顾客信息的安全,提高管理水平和工作效率,进而提高业务竞争能力。

餐饮管理系统设计论文文献

[1]吕品,陈凤培.某中小型餐饮店管理信息系统的设计与开发[J].桂林航天工业高等专科学校学报,2011(04).

[2]崔海龙,李允.电子商务在餐饮业中的运用[J].管理观察,2009(18).

[3]余伟,赵亮.基于SOA的银行中间交易平台的设计与架构[J].科技广场,2011(07).

餐饮管理系统设计论文篇二

餐饮管理系统中数据完整性的设计

餐饮管理系统设计论文摘要

摘 要: 以餐饮管理系统数据库中部分表为例,详细介绍个人对数据完整性设计思路和设计方法,通过实例阐述数据完整性在实践中的应用,并给出基于SQLSERVERDE语言的描述。

餐饮管理系统设计论文内容

关键词: 数据库;数据完整性;约束;触发器

中图分类号:TP311 文献标识码:A 文章 编号:1671-7597(2011)1210173-01

数据库的创建是一件非常容易的事情,但是设计一个严谨、安全、可靠的数据库就不那么容易了,它需要你有扎实的理论知识做基础,还需要具备一定的分析问题解决问题的能力。数据库的设计经过需求分析、数据库概念机构设计、逻辑结构设计之后我们就应考虑数据完整性的设计了。数据完整性是最大限度的保证数据的正确性、可靠性、一致性。数据完整性包含三个方面的内容即实体完整性、参照完整性(引用完整性)和用户自定义完整性(域完整性)。

下面以餐饮管理系统部分可以实现点菜和结账的表为例阐述以上完整性的设计。餐饮管理涉及的表的关系模式为:桌台表zt(桌号zh,桌名zm,容纳人数rnrs,状态zt,类型lx),菜单表cd(菜品编号cpbh,菜品名称cpmc,规格gg,类别lb,单价dj,成本价cbj),订单表dd(订单编号ddbh,订单日期ddrq,桌号zh,消费金额xfje),点菜表dc(订单编号ddbh,菜品编号cpbh,数量sl)。以上四个表的定义如下:

Create table zt (zh char(4) primary key ,zm char(8) unique, rnrs int check (rnrs=0),zt bit,lx char(8) check (lx='大厅' or lx='包厢' lx='vip'))

Create table cd(cpbh char(5) primary key, cpmc char(12),gg char(10),lb char(8),dj numeric(6,1) check(dj=0),cbj numeric(6,1) check(cbj=0))

Create table dd (ddbh char(10) primary key,ddrq datetime,zh char(4) foreign key references zt(zh), xfje numeric(10,1))

Create table dc (ddbh char(10) foreign key references dd(ddbh),cpbh char(5) foreign key references cd(cpbh),sl int check(sl=0) default 1,primary key(ddbh,cpbh))

1 实体完整性(表完整性)

实体完整性又叫做表完整性,是对表中主键的约束。实体完整性的规则要求:在任何关系的任何一个元组中,主键的值不能为空值、也不能取重复的值。建立实体完整性的目的是用于保证数据库表中的每一个元组都是惟一的。是否可以改变主键值或删除一整行,取决于主键和其他表之间要求的完整性级别。实体完整性的定义比较简单。实现“实体完整性”的方法有primary key约束、unique约束、标识列、惟一索引。在此对桌台表zt中的桌号zh、菜单表cd表中的菜品编号cpbh以及订单表dd中的订单编号ddbh定义了primary key约束。在定义的时候一定要注意,一张完整的表定义只能有一个主键(PRIMARY KEY),但是可以没有UNIQUE约束。

2 参照完整性规则(引用完整性规则)

现实世界中的实体之间存在某种联系。在关系模型中实体及实体间的联系都是用关系来描述的,这样就自然存在着关系与关系间的引用。通过在同一个数据库的两个表中进行主键约束和外键约束来实现,参照的列和被参照的列的必须具有相同的属性。

参照完整性规则规则要求:“不引用不存在的实体”。即:不允许在一个关系中引用另一个关系中不存在的元组。其目的用于确保相关联的表间的数据保持一致。参照完整性是对外键的约束,要求外键的取值只能为两种情况:若取非空值,则它必须是主表中存在的值。要么取空值(null)。设置了参照完整性禁止在从表中插入包含主表中不存在的关键字的数据行;禁止删除在从表中的有对应记录的主表记录。

在如上四个表中对订单表dd的桌号zh、点菜表对此dc的订单编号ddbh及菜品编号cpbh分别设置了外键。另外外键的设计也可由触发器或编程语言来设定。以订单表dd为例触发器设置方法如下:

CREATE TRIGGER insert_xs ON dd

AFTER INSERT

AS

IF EXISTS

(SELECT * FROM INSERTED

WHERE zh IN (SELECT zh FROM zt))

PRINT '添加成功!’

ELSE

BEGIN

PRINT '桌号与存在的桌号不符!’

ROLLBACK TRANSACTION

END

同样可以对点菜表设置一个触发器要求dc的订单编号ddbh及菜品编号cpbh也具有参照性。参照完整性是用来维护相关数据表之间数据一致性的手段,通过实现引用完整性,可以避免因一个数据表的记录改变而使另一个数据表内的数据变成无效的值。

3 域完整性

域完整性也称为列完整性或用户定义的完整性,用于限制用户向列中输入的内容。域完整性规则要求由用户根据实际情况,定义表中属性的取值范围。其目的用于保证给定字段中数据的有效性,即保证数据的取值在有效的范围内。

设置域完整性的方法是限制列的数据类型、精度、范围、格式和长度等。可以通过指定数据类型、CHECK约束、DEFAULT约束、NOT NULL约束和创建规则、默认值等数据库对象来实施。

数据库中存储的数据多种多样,为每一列指定一个准确的数据类型是设计表的第一步,列的数据类型规定了列上允许的数据值。当添加或修改数据时,其类型必须要符合建表时所指定的数据类型。这种方式为数据库中的数据完整性提供了最基本的保障。

约束是SQL Server提供的自动保持数据完整性的一种方法,是独立于表结构的。规则是实现域完整性的方法之一,用来验证一个数据库中的数据是否处于一个指定的值域范围内,是否与特定的格式相匹配。当数据库中的数据值被更新或插入时,就要检查新值是否遵循规则。如果不符合规则就拒绝执行更新或插入操作。

在餐饮系统相关表中我们对相应的列设置了数据类型及长度度限制,并对菜单表cd的单价dj设置了check(dj=0)的约束,对点菜表dc的数量sl列(sl int check(sl=0) default 1)设置了check约束和默认值的约束。当然对于以上约束我们都可通过定义规则的方法实现。如:

用create rule dyl as@x=0来定义一个大于零的约束,然后用sp_bindrule dyl,'cd.dj‘语句和sp_bindrule dyl,'dc.sl'语句将其绑定到菜单表cd的单价dj列及点菜表dc的数量sl列上。

对于菜品编号cpbh我们规定菜类必须以类别的代表字母作为第一个字符,小分类的代表字母为第二个字符后面跟3位数字来表示。如CL001表示青菜类、LN001可表示奶类饮料。类别分类如表1:

表1 菜单类别表

为了实现上述编码我们用规则来实现如下:

Create rule cpbm as

@BM like 'C[LQRT][0-9][0-9][0-9]'

Or @BM like 'J[PBNM][0-9][0-9][0-9]'

Or @BM like 'Y[CNGT][0-9][0-9][0-9]'

Or @BM like 'z[fm][0-9][0-9][0-9]'

sp_bindrule cpbm, 'cd.cpbh'

4 触发器实现数据完整性

当用户对数据的完整性要求更为特殊,更为复杂,以上3种完整性就无法满足用户的要求。在这种情况下,用户需要自己定义所需的完整性。实现自定义完整性的重要方法是创建触发器。触发器是一种数据库对象。是一种表或视图执行insert、delete、update操作时,被系统自动执行的特殊的存储过程。创建触发器的目的是对表实现复杂的数据完整性约束,以防止不正确的操作。它与数据库中的某个表的数据修改操作相关联,修改操作可以是INSERT、UPDATE、和DELETE这3种操作中其中一种或几种。当用户对相关表执行触发器相关的修改操作时触发器自动执行。常用于数据的参照完整性限制及级联删除、级联更新等操作的设置。以级联更新为例,分析当菜单表中的菜品编号修改时,点菜表中的菜品编号同时更新这样的操作用触发器如何实现:

create trigger upd on cd after update

as

declare @jbh char(5),@xbh char(5)

select @jbh=deleted.cpbh, @xbh= inserted.cpbh

from deleted,inserted where deleted.cpbh=inserted.cpbh

print '准备级联更新点菜表中的菜品编号信息….'

update dc set cpbh=@xbh where cpbh=@jbh

print '已经级联更新了点菜表原菜品编号为'+ @jbh +'的信息'

5 应用接口编程

应用接口编程对数据库应用设计来说是负担最重的方法,但同时又是最基本、最灵活的方法。不论数据库管理系统提供了多么丰富的完整性的约束手段,利用编程接口保证数据完整性仍是所有数据库应用设计者必须掌握的关键技术之一。

6 总结

保证数据库的数据完整性,在数据库管理系统中是十分重要的。合理地使用SQL Server为数据完整性提供的各项 措施 ,对数据进行所需的约束限制,可以有效降低数据库在使用过程中可能出现的错误,提高数据库系统的可用性,减少处理数据错误所耗的费用。

餐饮管理系统设计论文文献

[1]陈伟,Sql Server2005应用系统开发教程[M].北京:清华大学出版社.

[2]Andrew J.Brust Stephen Forte著,精通SQLServer 2005程序设计,贾洪峰译,清华大学出版社,2007.

[3]萨师煊、王珊,数据库系统概论(第三版)[M].北京:高等 教育 出版社,2004.

有关餐饮管理系统设计论文推荐:

1. 浅谈餐饮服务与管理论文

2. 高档餐饮服务管理研究毕业论文

3. 酒店管理系统毕业论文

4. 有关餐饮服务与管理论文

5. 学生管理系统论文

6. 学籍管理系统毕业设计论文

餐饮管理软件设计方案

餐饮管理系统 --- 方案说明书
预定管理
按照餐厅实际布局显示餐厅所有台位状态,可显示预定、预定已开菜单、开台、预结帐、已结帐人未走、空台6种状态。
可显示老客户上次就餐日期、就餐餐位、历史消费菜单、生日、饮食喜好与忌讳信息,进行客户关怀与个性化预定安排,提高客户满意度。
支持预定点菜功能,并能显示菜单的成本率,有利进行宴会菜单的成本控制。
可输入预定的类型如:婚宴、生日、满月、公司成立纪念日、团队、商务等,并能统计各种预定类型的销售额,有效指导营销活动。
预定排桌功能。可根据客人要求调整桌台布局,增加、减少桌台;桌台布局到预定日自动可切换成设定好的桌台布局;桌台布局图可打印传真给客人确认,减轻预定人员工作。
预定应到未到提醒,方便预定人员及时与客人联系。
来电通
可根据客户来电自动显示客户姓名、单位、上次就餐餐位、上次就餐时间等客人信息,方便进行客户关怀,提高客户满意度。
无线PDA点菜
可通过PDA查询预定客人姓名、喜好、忌讳等信息,方便服务人员做个性化服务。
可即时发送所点菜品,如凉菜点完了先发送到凉菜间,加快出品速度。
可手写输入临时菜品(菜单上不存在菜品)与客户要求。
菜品沽清提示功能。
可在无线网络不通时离线点菜,在连接上无线网络时再发送,保证系统可靠性。
无线点菜宝点菜
按键式输入菜品编码、拼音速查码点菜。
可即时发送所点菜品,如凉菜点完了先发送到凉菜间,加快出品速度。
菜品沽清提示功能
触摸屏点菜
通过触摸屏POS机点菜,需先开手工单事后输入,速度较无线点菜慢,但是维护方便。
收银结算
预结帐单(对帐单打印)功能。
帐单打印后封帐功能,需要有权限的人才能进行加单,避免漏单。
支持同一菜品在不同餐厅不同价格。
可自定义各种结算方式。
支持整单折扣、定额折扣、抹零等多种折扣方式。
不同人员可享受不同折扣额度、折扣权限控制。
支持自动计算各种附加费,如可按消费额百分比计算服务费、按人数计算茶位费等。
可记录开发票情况、并可打印出所有开票记录,方便进行财务处理。
支持各种会员卡结算,如打折卡、储值卡、贵宾卡等。
支持结算备注,如打折原因、签单人等信息。
支持挂帐处理与信用额度控制。
支持反结算并有权限控制。
支持并台、分台结算。
结班处理。可统计各种付款方式收入、帐单数量、各类菜品销售收入、人均消费等信息。
可自定义帐单格式。
厨房打印
支持断电恢复打印未打印厨房单据功能,保证不丢单。
打印机故障打印单据可自动转向到备用打印机,保证打印单据不丢失
打印机故障信息可发送到指定电脑终端,方便人员及时排除故障
可按点菜顺序或设定好的出菜顺序打印。
支持条码打印。
沽清管理
每天在餐前事先把估清的菜品录入系统中,点单时系统会自动提示该菜品估清,服务员无法点单。对限量供应的菜品,事先设定好每天或者每餐供应数量,当销售数量超过该数量时,系统会自动提示估清。在就餐当中出现菜品估清的情况,在退单原因中选择“菜品估清”,其他服务员再点该菜品的时候系统会自动提示估清信息。
河海鲜处理
河海鲜重量确认与通知点菜员功能:针对有些点菜时只能确定大概重量的河海,提供海鲜重量输入确认功能,并能将实际重量实时通知点菜人员并更新收银帐单,避免漏算。
河海鲜双计量单位管理:针对河海鲜盘点困难,系统提供斤两与条只数双计量单位。每天即可以统计出每个品种销售斤数,也能统计销售条只数,再与水池中所剩品种条只数、进货数核对,可以有效对河海鲜进行管理,避免人员做弊。
经理查询报表
实时查询所有桌台包房预定、就餐、营业收入情况
可查询每桌菜品落单时间、出品时间,方便管理人员对厨房出品进行监控。
可查询每笔帐单结算付款情况,方便财务人员进行稽核。
各种财务报表与稽核报表。如营业收入报表、结帐明细表、反结算稽核表、收银员结班表、折扣帐单查询、签单挂帐查询、退菜情况稽核、赠菜情况稽核等报表。
各种菜品类统计报表。品项销售排行(畅销、滞销)、退菜报表、单品销售统计、菜品赠送统计、套餐销售汇总表、类别销售统计等报表
各种员工绩效类报表。如点菜员销售统计、厨房出品统计等报表。
各种客户分析报表。如客户消费排行、客户喜好分析、客户流失统计等报表。
采购管理
根据历史菜品销售情况预测明天菜品销售数量,并可手工进行调整。
根据菜品销售预测数量与标准成本卡分解计算所需采购物料品种与数量,并可减去当前库存,得到实际需采购数量,减少因过量采购导致的原料变质损耗的情况。
根据安全库存生成建议采购单。
采购定单管理。
库存管理
采购入库、直拨、调拨、领料等各种出入库业务处理。
针对餐饮物料专门设计的多计量单位管理。
成品销售可直接减库存。
各种仓库报表。如进销存日报表、销存月报表、仓库收发存明细表等报表。
2.2连锁集团管理系统
功能模块
功能描述
连锁经营分析系统
可以查询各个门店也可以汇总输出所有门店的:日营业报表、月营业报表、年营业报表、时期营业报表、菜品销售排行统计、个菜销售统计、菜品月销售统计、菜品年销售统计、台位使用统计、客户消费统计
门店稽核功能:收银报表、某项单品分析报表、整单折扣报表、分时营业报表、分项营业报表、分市营业报表、折扣及整单取消记录、退单记录、餐厅宴请记录、每星期/每日/每月/分项/分市营业报表
连锁会员管理系统
客户会员卡可在所有分店通用,可以享受积分,进行储值消费。
可以查询客户在所有门店消费记录,分析客户消费喜好。
可以支持客户短信营销等功能
连锁配送管理系统
门店要货管理
配送中心门店要货需求汇总
生产配送计划生成
发货管理
门店收货管理
连锁数据控制系统
菜单管理系统。可统一管理各个门店的菜单品种、价格与促销计划。
标准成本卡设置系统。可统一设置各个门店菜品的标准成本卡。
权限控制系统。管理系统所有操作者权限。

c++课程设计 小型饭店管理信息系统

#include "stdafx.h"
#include "FinanceBook.h"
#include "AccountDaily.h"
// CAccountDaily 对话框
IMPLEMENT_DYNAMIC(CAccountDaily, CDialog)
CAccountDaily::CAccountDaily(CWnd* pParent /*=NULL*/)
: CDialog(CAccountDaily::IDD, pParent)
{
EnableAutomation();
}
CAccountDaily::~CAccountDaily()
{
}
void CAccountDaily::OnFinalRelease()
{
// 释放了对自动化对象的最后一个引用后,将调用
// OnFinalRelease。基类将自动
// 删除该对象。在调用该基类之前,请添加您的
// 对象所需的附加清理代码。
CDialog::OnFinalRelease();
}
void CAccountDaily::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
}
BEGIN_MESSAGE_MAP(CAccountDaily, CDialog)
ON_BN_CLICKED(IDOK, CAccountDaily::OnBnClickedOk)
END_MESSAGE_MAP()
BEGIN_DISPATCH_MAP(CAccountDaily, CDialog)
END_DISPATCH_MAP()
// 注意: 我们添加 IID_IAccountDaily 支持
// 以支持来自 VBA 的类型安全绑定。此 IID 必须同附加到 .IDL 文件中的
// 调度接口的 GUID 匹配。
// {535CE23C-51E3-4FD9-96FB-DB8A8C13BE92}
static const IID IID_IAccountDaily =
{ 0x535CE23C, 0x51E3, 0x4FD9, { 0x96, 0xFB, 0xDB, 0x8A, 0x8C, 0x13, 0xBE, 0x92 } };
BEGIN_INTERFACE_MAP(CAccountDaily, CDialog)
INTERFACE_PART(CAccountDaily, IID_IAccountDaily, Dispatch)
END_INTERFACE_MAP()
// CAccountDaily 消息处理程序
BOOL CAccountDaily::OnInitDialog()
{
CDialog::OnInitDialog();
// TODO: 在此添加额外的初始化
CButton *pRadioButton = (CButton*)GetDlgItem(IDC_PAYOUT);
pRadioButton-SetCheck(true);
CButton *pCheckBox = (CButton*)GetDlgItem(IDC_FORMAT_DAILY);
pCheckBox-SetCheck(true);
return TRUE; // return TRUE unless you set the focus to a control
// 异常: OCX 属性页应返回 FALSE
}
void CAccountDaily::CheckEnter()
{
//该函数的作用是检查输入格式,判断RadioButton和CheckBox的状态
CButton *pRadioButton = (CButton*)GetDlgItem(IDC_PAYOUT);
CButton *pCheckBox = (CButton*)GetDlgItem(IDC_FORMAT_DAILY);
int IsRadioButtonChecked = pRadioButton-GetCheck(),
IsCheckBox = pCheckBox-GetCheck();
GetDlgItemText(IDC_DATE_DAILY,dateTime);
GetDlgItemText(IDC_RESUME,resume);
GetDlgItemText(IDC_AMOUNT_DAILY,amount);
GetDlgItemText(IDC_REMARK_DAILY,remark);
if(!resume.GetLength())
{
MessageBox(L"费用摘要 不能为空! ",L"重要提示",MB_ICONWARNING);
GetDlgItem(IDC_RESUME)-SetFocus();
}
else if(!amount.GetLength())
{
MessageBox(L"发生金额 不能为空! ",L"重要提示",MB_ICONWARNING);
GetDlgItem(IDC_AMOUNT_DAILY)-SetFocus();
}
else
{
if(IsRadioButtonChecked)
type = L"支出";
else
type = L"收入";
int dot = 0, space = 0, ch = 0;
CString str;
for(int index = 0; index != amount.GetLength(); ++index)
{
if(amount.GetAt(index) == '.')
dot++;
if(amount.GetAt(index) == ' ')
space++;
if(amount.GetAt(index) < '0' || amount.GetAt(index) '9')
{
str = amount.GetAt(index);
ch++;
}
}
if(ch 0)
{
/***BUG:当字串中有其他字符,形如“a.6”时,会认为格式正确。***/
if(str != '.' str != ' ' || (space 0 || dot 1) )
{
MessageBox(L"金额格式有误,请您检查输入! ",L"重要提示",MB_ICONWARNING);
amountIsRigth = false;
GetDlgItem(IDC_AMOUNT_DAILY)-SetFocus();
}
else
amountIsRigth = true;
}
if(IsCheckBox)
amount = L"¥" + amount;
}
}
void CAccountDaily::OnBnClickedOk()
{
// TODO: 在此添加控件通知处理程序代码
//OnOK();
CheckEnter();
if(resume.GetLength() amount.GetLength() amountIsRigth)
MessageBox(dateTime + L"\n\n" + resume + L"\n\n" + type + L"\n\n" + amount + L"\n\n" + remark);
} 关于餐厅管理系统接口设计和餐厅管理系统接口设计图的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。 餐厅管理系统接口设计的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于餐厅管理系统接口设计图、餐厅管理系统接口设计的信息别忘了在本站进行查找喔。

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:详解springcloud 基于feign的服务接口的统一hystrix降级处理
下一篇:做接口测试接口文档数据(接口测试常用的几种数据准备方式)
相关文章

 发表评论

暂时没有评论,来抢沙发吧~