我是靠谱客的博主 细心航空,最近开发中收集的这篇文章主要介绍Java 完成部分水吧点饮品系统的:点饮品,饮品管理片段的实现,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

实现流程:(服务员登录—主要工作是点饮品)
登录(Waiter)—— 客户来消费 —— 点饮品(数量 —— 统计) ——付款(是否是会员)—— ①会员②非会员 —— 付款成功——(数据统计)
①付款方式有两种:1.积分兑换(可能积分不足,被系统自动计算为打折方式)2.打折方式

② 付款方式:全款


//服务员登录后的界面
public void waiterView(){
do {
System.out.println(str+"nt1.点饮品nt2.会员管理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+"nt1.咖啡nt2.奶茶nt3.茶叶nt4.啤酒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<drinkCount;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<drinkCount;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<vipCount;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{
System.out.println("您好,您一共消费"+moneyAll+"元");
moneyAll = 0.0;
}
}

最后

以上就是细心航空为你收集整理的Java 完成部分水吧点饮品系统的:点饮品,饮品管理片段的实现的全部内容,希望文章能够帮你解决Java 完成部分水吧点饮品系统的:点饮品,饮品管理片段的实现所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(36)

评论列表共有 0 条评论

立即
投稿
返回
顶部