java监听窗口饮品,Java 完成部分水吧点饮品系统的:点饮品,饮品管理片段的实现...
实现流程:(服务员登录—主要工作是点饮品)
登录(Waiter)—— 客户来消费 —— 点饮品(数量 —— 统计) ——付款(是否是会员)—— ①会员②非会员 —— 付款成功——(数据统计)
①付款方式有两种:1.积分兑换(可能积分不足,被系统自动计算为打折方式)2.打折方式
② 付款方式:全款
//服务员登录后的界面
public void waiterView(){
do {
System.out.println(str+"\n\t1.点饮品\n\t2.会员管理\n"+str+"\n请输入操作编号:");
int goNext = input.nextInt();
if(goNext == 1){
oderDrinkView();
}else if(goNext == 2){
manageVipView();
}else{
System.out.println("输入错误!");
continue;
}
} while (true);
}
//点饮品界面
public void oderDrinkView(){
boolean ifGo = true;
do {
System.out.println(str+"\n\t1.咖啡\n\t2.奶茶\n\t3.茶叶\n\t4.啤酒\n"+str+"\n请选择种类:");
int choice = input.nextInt();
switch (choice) {
case 1:
//调用点饮品方法
choiceDrink("Coffee");
System.out.println("您一共点了"+moneyAll+"元的饮品");
System.out.println("还要点其他什么吗?y/n");
char buyMore = input.next().charAt(0);
if(buyMore == 'y'){
continue;
}else{
//执行付款操作
pay(moneyAll);
}
break;
case 2:
choiceDrink("MilkTea");
System.out.println("您一共点了"+moneyAll+"元的饮品");
System.out.println("还要点其他什么吗?y/n");
char buyMore2 = input.next().charAt(0);
if(buyMore2 == 'y'){
continue;
}else{
//执行付款操作
pay(moneyAll);
}
break;
case 3:
choiceDrink("Tea");
System.out.println("您一共点了"+moneyAll+"元的饮品");
System.out.println("还要点其他什么吗?y/n");
char buyMore3 = input.next().charAt(0);
if(buyMore3 == 'y'){
continue;
}else{
//执行付款操作
pay(moneyAll);
}
break;
case 4:
choiceDrink("Bear");
System.out.println("您一共点了"+moneyAll+"元的饮品");
System.out.println("还要点其他什么吗?y/n");
char buyMore4 = input.next().charAt(0);
if(buyMore4 == 'y'){
continue;
}else{
//执行付款操作
pay(moneyAll);
}
break;
default:
break;
}
} while (ifGo);
}
//点饮品操作(根据饮品类型来显示饮品)
public void choiceDrink(String type){
System.out.println("名称\t分类\t售价\t兑换所需积分\t数量\tID");
for(int i=0;i
if(drink[i].isSale == true && drink[i].type.equals(type)){
drink[i].show(weight);
}
}
System.out.println("请输入要点的饮品ID:");
int ID = input.nextInt();
System.out.println("请输入要点的饮品数量:");
int num = input.nextInt();
for(int i=0;i
if(drink[i].ID == ID){
moneyAll = moneyAll+drink[i].salePrice*num;
drink[i].count -= num;
}else{
continue;
}
}
}
//消费者支付操作
public void pay(double moneyAllNeed){
int i;
System.out.println("请问是否有会员卡?y/n");
char isCard = input.next().charAt(0);
if(isCard == 'y'){
System.out.println("请输入您的电话号码:");
//默认是刷卡机刷出的号码都是正确的
String phoneNum = input.next();
for(i=0;i
if(phoneNum.equals(vip[i].phoneNum)){
//运行出错,输出的折后需支付是0
moneyPay = moneyAllNeed*(vip[i].getDiscount());
System.out.println("您是:"+vip[i].getRigidly()+"\t可享折扣:"+vip[i].getDiscount()+"\t剩余积分:"+vip[i].getScore());
scoreAll = (int)moneyAll*10;
holdScore = vip[i].getScore();
break;
}
}
if(i == vipCount){
System.out.println("用户不存在");
//按理说是存在此用户,在这里不做循环处理
}else{
System.out.println("您好请选择支付方式:\n1.打折支付 \n2.积分兑换");
int choice_pay = input.nextInt();
if(choice_pay == 1){
System.out.println("您好,您一共消费"+moneyAll+"元,打折后需支付:"+moneyPay+"元");
moneyAll = 0.0;
}else{
System.out.println("您好,您一共消费"+moneyAll+"元,需支付积分:"+scoreAll);
if(holdScore > scoreAll){
System.out.println("支付成功");
}else{
System.out.println("积分不够,只能打折支付");
System.out.println("您好,您一共消费"+moneyAll+"元,打折后需支付:"+moneyPay+"元");
}
moneyAll = 0.0;
}
}
}else{
b621
System.out.println("您好,您一共消费"+moneyAll+"元");
moneyAll = 0.0;
}
}
标签:
java监听窗口饮品,Java 完成部分水吧点饮品系统的:点饮品,饮品管理片段的实现...相关推荐
- java 监听窗口是否改变_JAVA项目监听文件是否发生变化
一.spring容器都初始化完成之后做操作 packagecom.bijian.study.listener;importorg.springframework.beans.factory.annot ...
- java 监听 变量_[Java学习小记]使用PropertyChangeSupport来监听变量的变化
今天要处理的问题是:监听一个变量,当该变量的值出现变化时能够获知,并进行相应处理. 使用java.bean.PropertyChangeSupport类.看如下的构造方法,其实就是将你要控制的对象绑定 ...
- java监听设计模式(java观察者设计模式)
今天给大家分享一下观察者设计模式(监听设计模式),该模式在很多主流得框架.源码中使用率非常高.在分享之前先给大家讲一个我们使用手机的一个场景,我们都用过手机,当我们手机来电话的时候,会有各种复杂的操作 ...
- AWT_addMouseListener鼠标监听事件(Java)
AWT_addMouseListener鼠标监听事件(Java) package reflect;import java.awt.*; import java.awt.event.MouseAdapt ...
- java swing列表数据加监听,【Java Swing公开课|Java监听列表项选择事件怎么用,看完这篇文章你一定就会了】- 环球网校...
[摘要]作为一门面向对象编程语言,Java吸收了C++语言的优点,也展现了其强大的一面,我们能在各个地方看到其功能强大和简单易用的两个特征,当然,也吸引了很多程序员的注意力,所以就有人想了解Java的 ...
- java监听机制_详解java的事件监听机制和观察者设计模式
首先说说监听器: 监听器就是一个实现特定接口的普通java程序,这个程序专门用于监听另一个java对象的方法调用或属性改变,当被监听对象发生上述事件后,监听器某个方法将立即被执 行. java的事件监 ...
- AWT_addKeyListener键盘监听事件(Java)
AWT_addKeyListener键盘监听事件(Java) package reflect; import java.awt.*; import java.awt.event.KeyAdapter; ...
- AWT_事件监听2(Java)
AWT_事件监听2(Java) package Demo01;import java.awt.*; import java.awt.event.ActionEvent; import java.awt ...
- java 监听控制台输入
分享一下我写的java监听控制台输入并可以给出响应的功能. 很多时候需要监听控制台的输入内容,相当于信号监听,根据输入的内容做出相应的动作,这里给出我的一个简单实现. 要注意的是:监听得到的消息中前后 ...
最新文章
- 全面综述:图像特征提取与匹配技术
- 探讨DHCP之一:了解DHCP
- weather_在Weather App中使用Android Location API –搜索城市
- C语言回调函数Demo - Win32版
- Centos下安装apahce的configure: error: APR not found. Please read the documentation解决办法
- VMware Data Recovery备份恢复vmware虚拟机
- Java高级架构师需要掌握什么?
- Hive与Hadoop的调用关系
- windows录屏_电脑自带录屏软件怎么打开?详细操作教程
- svn“Previous operation has not finished; run 'cleanup' if it was interrupted“报错的解决方法...
- 【Flink】FLink assigned slot xx was removed
- 业务复杂就用 if-else?刚来的技术大佬用这招彻底干掉了!
- Tuxedo 8.110gR3 开发环境的安装与配置
- [转帖]CentOS 7安装并启动Google浏览器(★firecat亲测有效★)
- 电脑一敲键盘就跳转计算机,Win10系统电脑关机后一敲键盘就开机 win10系统为什么按键盘任意键自动开机...
- Android 的录音分享特性
- 最细致全面架设外网传奇教程
- 删除wmspdmv监控进程-- 背后的眼睛
- 谷歌浏览器出现应用程序无法启动,提示应用程序的并行配置不正确
- Java正则表达式(详解)
热门文章
- 快上车!2021次“网易云信号”回顾列车发车啦!
- 被压缩的视觉:视频编解码技术
- ABAP,Java和JavaScript的序列化,反序列化
- 代码管理 ,git 命令整理
- 将不确定变为确定~transactionscope何时提升为分布式事务?
- 【字符比较】单字符比较值是否相等
- (转)基于MVC4+EasyUI的Web开发框架经验总结(9)--在Datagrid里面实现外键字段的转义操作...
- 转 :Vim文件编码识别与乱码处理
- android studio编译慢的问题
- 404 – File or directory not found.