自动饮料售货机课程设计完整版.docx

上传人:b****3 文档编号:10271348 上传时间:2023-05-24 格式:DOCX 页数:38 大小:4.05MB
下载 相关 举报
自动饮料售货机课程设计完整版.docx_第1页
第1页 / 共38页
自动饮料售货机课程设计完整版.docx_第2页
第2页 / 共38页
自动饮料售货机课程设计完整版.docx_第3页
第3页 / 共38页
自动饮料售货机课程设计完整版.docx_第4页
第4页 / 共38页
自动饮料售货机课程设计完整版.docx_第5页
第5页 / 共38页
自动饮料售货机课程设计完整版.docx_第6页
第6页 / 共38页
自动饮料售货机课程设计完整版.docx_第7页
第7页 / 共38页
自动饮料售货机课程设计完整版.docx_第8页
第8页 / 共38页
自动饮料售货机课程设计完整版.docx_第9页
第9页 / 共38页
自动饮料售货机课程设计完整版.docx_第10页
第10页 / 共38页
自动饮料售货机课程设计完整版.docx_第11页
第11页 / 共38页
自动饮料售货机课程设计完整版.docx_第12页
第12页 / 共38页
自动饮料售货机课程设计完整版.docx_第13页
第13页 / 共38页
自动饮料售货机课程设计完整版.docx_第14页
第14页 / 共38页
自动饮料售货机课程设计完整版.docx_第15页
第15页 / 共38页
自动饮料售货机课程设计完整版.docx_第16页
第16页 / 共38页
自动饮料售货机课程设计完整版.docx_第17页
第17页 / 共38页
自动饮料售货机课程设计完整版.docx_第18页
第18页 / 共38页
自动饮料售货机课程设计完整版.docx_第19页
第19页 / 共38页
自动饮料售货机课程设计完整版.docx_第20页
第20页 / 共38页
亲,该文档总共38页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

自动饮料售货机课程设计完整版.docx

《自动饮料售货机课程设计完整版.docx》由会员分享,可在线阅读,更多相关《自动饮料售货机课程设计完整版.docx(38页珍藏版)》请在冰点文库上搜索。

自动饮料售货机课程设计完整版.docx

自动饮料售货机课程设计完整版

 

广东职业技术学院

课程设计报告书

2013-2014学年第一学期

课程名称:

数据库系统设计

设计题目:

自动饮料售货机系统设计及实现

系别:

信息工程系

班级:

信管12

姓名:

起止日期:

2013.12.9~2013.12.20

指导教师:

杨XX

摘要

自动售货机是一种可以给顾客选择商品而且不需要实际的人员操作的一种销售模式,顾客可以根据自动售货机上的商品最大限度的选择自己所需的商品。

顾客可以投入金额选择商品,然后自动售货机对其做出相应的判断,最后售出商品。

自动售货机分顾客模块、普通管理员模块和系统管理员模块。

顾客模块完成饮料的销售,管理员模块实现补充饮料、零钱,取现和统计分析等功能

自动售货机分顾客需求管理、饮料供应系统管理、零钱供应系统管理、售货机管理、管理员管理、取现管理、销售记录管理等主要功能模块。

关键词:

自动售货,顾客选择,自动找零

概要设计

◆顾客模块

1、顾客购买管理功能模块

当顾客投入其实际金额,机器显示货币金额,接下来顾客选择要购买的饮料,如果投币金额足够并且所购买的饮料存在,则提示用户在出口处取走饮料,同时找零.如果货币金额不足,则提示信息,如果所购饮料已经售完,显示售完信息。

2、饮料供应管理

每当售出一件商品时,商品库存会自动的减少其商品的库存量,并在销售商品的记录中增加其销售额及销售记录。

◆普通管理员模块

普通管理员可以通过系统登录用户密码来查看商品销售情况,并且针对性的补充所需饮料以及用于找零的金钱。

系统管理可以管理普通管理员,查看各饮料的总销售额。

1、商品管理

管理员可以修改商品的价格,添加新的商品。

以及查询,删除商品,查询库存,当库存不足时以便补充商品。

2、零钱补充管理

当零钱不足时添加零钱,保存零钱补充记录。

3、商品补充管理

当商品不足时添加商品,保存商品补充记录。

4、取现管理

管理员提取自动售货机里的现金,保存提取记录。

5、销售记录管理

分析各类饮料的销售情况,分析畅销饮料和滞销饮料。

统计销售额。

6、售货机管理

统计顾客投入的现金,方便提取;零钱管理。

◆系统管理员管理

1、普通管理员管理

实现普通管理员的添加,删除,查询,修改。

2、系统管理员管理

实现系统管理员的添加,删除,查询,修改。

3、销售额汇总

查看各饮料的总销售额。

4、取现记录

查看哪个普通管理员在什么时候取了多少现金。

5、商品补充记录

查看哪个普通管理员在什么时候添加了什么商品多少数量。

6、零钱补充记录

查看哪个普通管理员在什么时候补充了多少零钱。

7、普通管理登陆记录

查看哪个普通管理员什么时候登陆过系统。

8、系统管理登陆记录

查看哪个系统管理员什么时候登陆过系统。

◆E-R图

各实体属性:

1、顾客模块

1.1顾客模块E-R图

2、普通管理员模块

管理员登陆:

2.2.1管理员登陆模块E-R图

零钱补充:

2.2.2零钱补充模块E-R图

饮料补充:

2.2.3饮料补充模块E-R图

取现管理:

2.2.4取现管理模块E-R图

◆数据库表

关系模式转换:

1.顾客模块:

顾客(顾客编号)

饮料(商品编号(PK)、商品名称、成本价格、库存数量)

购买(时间、价格、数量,顾客编号(PK)、商品编号)

2.管理员登录

管理员(管理员编号(FK)、姓名、性别、密码)

饮料机(投入金额、找零金额)

登录(时间、密码,管理员编号(FK)、流水线号)

3.零钱补充

管理员(管理员编号(FK)、姓名、性别、密码)

饮料机(投入金额、找零金额、流水线号)

零钱补充(时间、金额,管理员编号(FK)、流水线号)

4.饮料补充

管理员(管理员编号(FK)、姓名、性别、密码)

饮料机(投入金额、找零金额、流水线号)

饮料补充(时间、数量,管理员编号(FK)、流水线号)

5.取现管理

管理员(管理员编号(FK)、姓名、性别、密码)

饮料机(投入金额、找零金额、流水线号)

取现(时间、金额,管理员编号(FK)、流水线号)

1、

2.3.1商品表

2、

2.3.2售货机表

3、

2.3.3零钱补充表

4、

2.3.4普通管理员表

5、

2.3.5系统管理员表

6、

2.3.6销售记录表

7、

2.3.7商品补充记录表

8、

2.3.8取现记录表

9、

2.3.9管理员登陆记录表

10、

2.3.10系统管理员登陆记录表

 

详细设计

◆主界面——顾客专区

界面:

图3.1.1

运行后:

图3.1.2

说明:

1.根据系统功能模块,参考主界面图,设计主菜单、工具栏和状态栏,工具栏中按钮要加提示(tip)。

2.主界面窗体名为“Main”

3.编写菜单和工具栏按钮单击事件,实现当单击该对象时显示对应窗体。

4.创建各个功能模块窗体,窗体要求如下:

窗体名

名称

标题

查看价格

SViewPrice

查看价格

管理员登录

SAdminlogin

管理员登录

软件设计规格要求:

界面对象

单击事件

其它说明

界面初始化

⏹各picturebox根据数据库里上架的商品编号获取图片显示

⏹单选按钮获取数据库里上架商品的商品编号显示

“确定金额”按钮

⏹确定顾客投入的金额

“显示器”

⏹显示顾客投入的金额

“确定”按钮

如果没输入数量,提示顾客"请输入你要购买的饮料的数量!

"

⏹根据顾客选择的商品编号和数量进行比较,库存大于或等于顾客选择的数量则继续;否则提示顾客“非常抱歉!

您选择的饮料库存不足,请您选择其他。

⏹比较商品总额和顾客投入的金钱,若顾客让投入的金额大于售货机里的找零金额,售出商品,减少此饮料的库存量,以及售货机里的找零金额,添加销售记录;若顾客让投入的金额等于售货机里的找零金额,售出商品,减少此饮料的库存量,添加销售记录;否则,交易失败,提示顾客“非常抱歉!

饮料机里的零钱不足给您找零,欢迎再次光临!

“刷新”按钮

⏹若要再次购买,把上次的痕迹清空

◆查看价格管理

界面

图3.1.3

 

软件设计规格要求:

界面对象

单击事件

其它说明

页面初始化

⏹显示所有商品价格

“查询”按钮

⏹根据商品编号查询价格

当文本框为空时单击提示没有输入商品编号

“返回”按钮

⏹回到页面初始化

 

◆管理员登录管理

界面:

图3.1.4

 

软件设计规格要求:

界面对象

单击事件

其它说明

密码

输入密码时显示”***”

tbAdminName

⏹输入“用户名”

可输入可选择

cbchiose

⏹管理员的身份选择

不可输入

“登录”按钮

⏹根据cbchiose判断是普通管理员还是系统管理员

⏹判断该管理员在数据库中是否存在,若不存在则提示“无该管理员”,若存在继续以下步骤。

⏹查询该管理员是否已锁定,若是则提示“该管理员已锁定,请联系系统管理员!

”,否则继续以下步骤。

⏹查询输入的密码与数据库中该管理员的密码是否匹配

⏹若不匹配,显示密码错误提示信息,修改数据库密码错误次数(次数增加1),并判断错误次数是否超过最大次数(3次),若是,则锁定该管理员(将数据库锁定标识位设为True),提示“该管理员已锁定,请联系系统管理员!

”。

⏹若匹配,则将数据库密码错误次数改为0

⏹若密码匹配,则显示管理员管理界面。

⏹每一次管理员登录成功,便在数据库中的SAdminlogin或者SAdminToplogin表中记录管理员的ID和登录时间.

在登录界面按回车键相当于单击“登录”按钮

“取消”按钮

⏹退出此窗口

◆普通管理员主界面

界面:

图3.2.1

说明:

1根据系统功能模块,参考主界面图,设计主菜单、工具栏和状态栏,工具栏中按钮要加提示(tip)。

2.主界面窗体名为“SMain”

3编写菜单和工具栏按钮单击事件,实现当单击该对象时显示对应窗体。

4.创建各个功能模块窗体,窗体要求如下:

窗体名

名称

标题

窗体类型

商品管理

SDrinks

商品管理

SDI(子窗体)

售货机管理

SSalement

售货机管理

SDI

销售记录表

SSale

销售记录表

SDI

各饮料销售情况汇总

SDrinkTimes

各饮料销售情况汇总

SDI

◆商品管理

界面:

图3.2.2

软件设计要求:

界面对象

单击事件

其它说明

界面初始化

⏹Datagridview显示所有商品资料

“查询”按钮

⏹查询商品资料

当编号为空时提示输入商品编号

“清空”按钮

⏹添加新商品时的清空操作,清空文本框之前的记录的数据

“添加”按钮

⏹添加新商品

当商品编号重复时提示

“修改”按钮

⏹修改商品资料

不能修改商品编号

“删除”按钮

⏹删除商品

慎重删除

“上架“按钮

⏹把商品放到售货机里面,即把商品上架

◆售货机管理

界面:

图3.2.3

界面的3个状态:

初始化状态,添加状态,取现状态,补充饮料状态

 

状态表:

状态

界面各控件的状态

初始化状态

⏹添加,取现,补充饮料控件可用,其他控件不可用;

⏹文本框清空;

⏹两个标签分别显示投入金额和找零金额。

添加状态

⏹添加,取现,补充饮料控件不可用;

⏹确定和取消和Nud可用;

⏹其他不可用。

取现状态

⏹添加,取现,补充饮料控件不可用;

⏹确定和取消和Nud可用;

⏹其他不可用。

补充饮料状态

⏹添加,取现,补充饮料控件不可用;

⏹确定、取消、文本框和Nud可用;

⏹其他不可用

软件设计规格要求:

界面对象

单击事件

其它说明

页面初始化

⏹添加,取现,补充饮料控件可用,其他控件不可用;

⏹文本框清空;

⏹两个标签分别显示投入金额和找零金额。

“添加”按钮

⏹根据输入找零金额增加售货机里的找零金额,并添加一条零钱补充记录

当Nud为0单击时提示没有输入要添加的金额数

“取现”按钮

⏹根据输入找零金额增加售货机里的找零金额,并添加一条取现记录

当Nud为0单击时提示没有输入要添加的金额数

“补充饮料”按钮

⏹根据输入的商品编号和数量,向商品表里增加库存量,并添加一条饮料补充记录

当Nud为0单击时提示没有输入要添加的商品数;

当文本框为空时,提示没有输入要添加的商品编号

◆销售记录

界面:

图3.2.4

软件设计规格要求:

界面对象

单击事件

其它说明

页面初始化

⏹显示所有销售记录

“查询”按钮

⏹根据输入商品编号查询销售记录

当文本框为空单击时提示没有输入要查询的商品编号

“返回”按钮

⏹回到页面初始化

◆各饮料销售情况汇总

界面:

图3.2.5

软件设计规格要求:

页面初始化:

显示所有饮料的交易次数

◆系统管理员主界面

界面:

图3.3.1

说明:

1根据系统功能模块,参考主界面图,设计主菜单、工具栏和状态栏,工具栏中按钮要加提示(tip)。

2.主界面窗体名为“TopMain”

3编写菜单和工具栏按钮单击事件,实现当单击该对象时显示对应窗体。

4.创建各个功能模块窗体,窗体要求如下:

窗体名

名称

标题

窗体类型

普通管理员管理

SDrinks

普通管理员管理

SDI(子窗体)

系统管理员管理

SSalement

系统管理员管理

SDI

销售额汇总

SSale

销售额汇总

SDI

零钱补充记录

SDrinkTimes

零钱补充记录

SDI

取现记录

STakeAwayMoney

取现记录

SDI

商品补充记录

SAddDrink

商品补充记录

SDI

普通管理员登陆记录

SAdminloginment

普通管理员登陆记录

SDI

系统管理员登陆记录

SAdminToploginment

系统管理员登陆记录

SDI

◆普通管理员管理

界面:

图3.3.2

 

界面的3个状态:

初始化状态,添加状态,修改状态

图3.3.3

状态表:

状态

基面各控件的状态

初始化状态

⏹“添加”、、“删除”、“修改”、“清空”按钮可用。

⏹其他控件不可用

⏹GridView显示所有普通管理员资料。

添加状态

⏹“清空”按钮可用。

⏹“添加”、、“删除”、“修改”不可用

⏹“确定”和“取消”可用

修改状态

⏹“添加”、、“删除”、“修改”、“清空”按钮不可用。

⏹“确定”和“取消”可用

 

软件规格要求:

界面对象

单击事件

其它说明

初始化

界面进入初始化状态

密码和确认密码编辑框

输入时显示“*”

各界面对象(主要是输入对象和按钮)

按状态转换的要求改变其Enabled属性

“添加”按钮

⏹转换至“添加状态”。

“修改”按钮

⏹装换至“修改状态”。

“删除”按钮

⏹提示用户是否确定删除普通管理员,若是,则继续下步骤,否则什么都不做。

⏹尝试删除数据库中指定普通管理员记录,不成功的原因可能是该普通管理员有在其他表中存在参照,由外键约束产生异常。

⏹不论成功与否,都显示提示信息。

⏹删除后回到“初始化状态”。

⏹刷新GridView,重新显示所有普通管理员信息。

“确定”按钮

⏹判断密码和确认密码是否一致,不一致提示并返回,否则可继续进行数据保存。

⏹根据当前状态决定添加或修改数据库中普通管理员信息。

⏹不论成功与否,都显示提示信息。

保存成功回到初始化状态,不成功返回(什么事也别做)

⏹刷新GridView,重新显示所有普通管理员信息。

“取消”按钮

⏹取消此次操作,返回初始状态

◆系统管理员管理

界面:

图3.3.4

界面的3个状态:

初始化状态,添加状态,修改状态

图3.3.5

状态表:

状态

基面各控件的状态

初始化状态

⏹“添加”、、“删除”、“修改”、“清空”按钮可用。

⏹其他控件不可用

⏹GridView显示所有系统管理员资料。

添加状态

⏹“清空”按钮可用。

⏹“添加”、、“删除”、“修改”不可用

⏹“确定”和“取消”可用

修改状态

⏹“添加”、、“删除”、“修改”、“清空”按钮不可用。

⏹“确定”和“取消”可用

 

软件规格要求:

界面对象

单击事件

其它说明

初始化

界面进入初始化状态

密码和确认密码编辑框

输入时显示“*”

各界面对象(主要是输入对象和按钮)

按状态转换的要求改变其Enabled属性

“添加”按钮

⏹转换至“添加状态”。

“修改”按钮

⏹装换至“修改状态”。

“删除”按钮

⏹提示用户是否确定删除系统管理员,若是,则继续下步骤,否则什么都不做。

⏹尝试删除数据库中指定系统管理员记录,不成功的原因可能是该系统管理员管理员有在其他表中存在参照,由外键约束产生异常。

⏹不论成功与否,都显示提示信息。

⏹删除后回到“初始化状态”。

⏹刷新GridView,重新显示所有系统管理员信息。

“确定”按钮

⏹判断密码和确认密码是否一致,不一致提示并返回,否则可继续进行数据保存。

⏹根据当前状态决定添加或修改数据库中系统管理员信息。

⏹不论成功与否,都显示提示信息。

保存成功回到初始化状态,不成功返回(什么事也别做)

⏹刷新GridView,重新显示所有系统管理员信息。

“取消”按钮

⏹取消此次操作,返回初始状态

 

◆销售额汇总

界面:

图3.3.6

软件设计规格要求:

页面初始化:

显示所有饮料的销售总额。

 

◆取现记录

界面:

图3.3.7

软件设计规格要求:

界面对象

单击事件

其它说明

页面初始化

⏹显示所有取现记录

“查询”按钮

⏹根据输入普通管理员编号查询取现记录

当文本框为空单击时提示没有输入要查询的普通管理员编号

“返回”按钮

⏹回到页面初始化

 

◆零钱补充记录

界面:

图3.3.8

 

软件设计规格要求:

界面对象

单击事件

其它说明

页面初始化

⏹显示所有零钱补充记录

“查询”按钮

⏹根据输入普通管理员编号查询零钱补充记录

当文本框为空单击时提示没有输入要查询的普通管理员编号

“返回”按钮

⏹回到页面初始化

◆商品补充记录

界面:

图3.3.9

 

软件设计规格要求:

界面对象

单击事件

其它说明

页面初始化

⏹显示所有商品补充记录

“查询”按钮

⏹若选择了“根据商品编号”根据输入商品编号查询商品补充记录;

⏹若选择了“根据普通管理员”根据输入商品编号查询商品补充记录。

当文本框为空单击时提示没有输入要查询的商品编号或者管理员编号

“返回”按钮

⏹回到页面初始化

 

◆普通管理员登陆记录

界面:

图3.3.10

 

软件设计规格要求:

界面对象

单击事件

其它说明

页面初始化

⏹显示所有普通管理员登陆记录

“查询”按钮

⏹根据输入普通管理员编号查询普通管理员登陆记录

当文本框为空单击时提示没有输入要查询的普通管理员编号

“返回”按钮

⏹回到页面初始化

 

◆系统管理员登陆记录

界面:

图3.3.11

 

软件设计规格要求:

界面对象

单击事件

其它说明

页面初始化

⏹显示所有系统管理员登陆记录

“查询”按钮

⏹根据输入系统管理员编号查询系统管理员登陆记录

当文本框为空单击时提示没有输入要查询的系统管理员编号

“返回”按钮

⏹回到页面初始化

程序设计总结

◆开发过程的归纳和总结

归纳:

1、自动饮料售货机的前台——顾客专区的饮料如何上架是个问题,不想走传统的手动的加载图片,每一次上新的饮料都点击pictruebox加载饮料图片很麻烦,所以采用了一种新方法,在商品表里把商品放到某个架号,顾客专区一运行就读取图片到货架上,以及相应的商品编号,价格,更方便快捷的上架新的饮料。

2、自动饮料售货机的后台——管理员专区,分普通管理员和系统管理员,普通管理员管理商品,查看销售情况,取现,添加零钱的权限;系统管理员管理普通管理员,查看销售总额和各管理员的活动记录,以及添加系统管理员和管理系统管理员

总结:

总的来说完成了老师的要求,当然也挺满意我们的成果。

但是,我们的作品还有些待改善的地方,比如没有密码加密,登陆界面还可以实现在Combobox选择了身份后,在另一个Combobox自动读取在哪个表里的所有用户名;还可以在下拉列表选择用户名后显示当前用户的图片等等。

◆所遇到的技术难点及解决办法

1、数据库不过关:

E-R图不熟悉;数据表有点乱。

2、存储过程不会写:

自动流水线号不会生成。

解决办法:

杨伟明老师的提点和找网上资料。

致谢

在这两周的实训里,真的非常感谢我们的指导老师,杨XX老师对我们的作品的指正和给予的意见。

同时也谢谢班上同学在我们编程有困难的时候及时给予的帮助。

这同时也说明一个问题,当我们遇到难题的时候要及时的向老师和同学求助。

今后,我们将会更加努力的。

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 求职职场 > 简历

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

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