java面向过程外卖订餐系统 完整版

在这里插入图片描述

package com.blog.demo;

import java.util.Scanner;

public class OrderingMgr {
    public static void main(String[] args) {
        String[] names = new String[4];//用户名
        String[] dishMeges = new String[4];//餐品信息
        int[] times = new int[4];//送餐时间
        String[] addresses = new String[4];//送餐地址
        double[] sumPrices = new double[4];//总金额
        int[] states = new int[4];//订单预定状态信息
        int[] praiseNums = {100,200,300};//点赞数量

        String dishNames[] = {"红烧茄子", "红烧排骨", "鱼香肉丝"};
        double price[] = {24.0, 36.0, 32};
        int num = 0;//菜品份数
        double scPrice=5.0;//运费
        //初始化订单信息
        names[0] = "张琴";
        dishMeges[0] = "红烧带鱼 2份";
        times[0] = 12;
        addresses[0] = "天成路201号";
        sumPrices[0] = 76.0;
        states[0] = 0;

        names[1] = "小明";
        dishMeges[1] = "红烧带鱼 2份";
        times[1] = 12;
        addresses[1] = "天成路211号";
        sumPrices[1] = 76.0;
        states[1] = 1;


        boolean isExit = false;
        Scanner sc = new Scanner(System.in);
        System.out.println("欢迎使用外卖订餐系统");
        do {
            System.out.println("*****************************");
            System.out.println("1.我要订餐");
            System.out.println("2.查看餐袋");
            System.out.println("3.签收订单");
            System.out.println("4.删除订单");
            System.out.println("5.我要点赞");
            System.out.println("6.退出系统");
            System.out.println("*****************************");
            System.out.print("请选择:");
            int choose = sc.nextInt();
            while (choose>6||choose<0){
                System.out.print("\t\t输入错误!请重新输入:");
                choose = sc.nextInt();
            }
            switch (choose) {
                case 1:{
                    System.out.println("****我要订餐****");
                    for (int i = 0; i < names.length; i++) {
                        if(names[i] ==null){
                            System.out.print("请输入订餐名:");
                            names[i]=sc.next();
                            System.out.println("序号\t菜品\t\t单价");
                            for (int j = 0; j < dishNames.length; j++) {
                                System.out.println((j + 1) + "\t\t" + dishNames[j] + "\t\t" + price[j] + "元");
                            }
                            System.out.print("请输入菜品编号:");
                            int id=sc.nextInt();
                            while(id>dishNames.length||id<0){
                                System.out.print("\t\t编号输入错误!请重新输入:");
                                id=sc.nextInt();
                            }

                            System.out.print("请选择你要需要的份数:");
                            num=sc.nextInt();
                            while (num<0){
                                System.out.print("份数输入错误!请重新输入:");
                                num=sc.nextInt();
                            }
                            dishMeges[i]=dishNames[id-1]+"  "+num+"份";
                            System.out.print("请输入送餐时间(送餐时间是10点到20点整点送餐):");
                            int time=sc.nextInt();
                            while (time >=20||time<=10){
                                System.out.print("您输入的时间不是规定的送餐时间,请重新输入:");
                                time=sc.nextInt();
                            }
                            times[i]=time;
                            System.out.print("请输入送餐地址:");
                            addresses[i] = sc.next();
                            System.out.println("订餐成功!");
                            System.out.print("您定的是:");
                            System.out.println(dishNames[id - 1] + "\t" + num + "份");
                            System.out.println("送餐时间:" + time + "点");
                            System.out.println("餐费:" + price[id - 1] * num + "元,送餐费" + scPrice + "元,送餐地址:" + addresses[i]+ ",总计:" + (price[id - 1] * num + scPrice));

                            break;


                        }

                    }
                }


                case 2:{
                    System.out.println("****查看餐袋****");
                    System.out.println("序号\t订餐人\t餐品信息\t送餐时间\t送餐地址\t总金额\t订单状态");
                    for (int i = 0; i < names.length; i++) {
                        if (names[i] != null) {
                            String state="null";
                            if (states[i]== 0||states[i]==1) {
                                if(states[i]==0){
                                    state="已预订";
                                    System.out.println((i + 1) + "\t\t" + names[i] +"\t\t"+ dishMeges[i] + "\t\t" + times[i] + "\t\t" + addresses[i] + "\t\t" + sumPrices[i] + "元" + "\t\t" + state);
                                }
                                else if(states[i]==1){
                                    state="已完成";
                                    System.out.println((i + 1) + "\t\t" + names[i] +"\t\t"+ dishMeges[i] + "\t\t" + times[i] + "\t\t" + addresses[i] + "\t\t" + sumPrices[i] + "元" + "\t\t" + state);
                                }

                            }
                        }
                    }
                    break;
                }
                case 3:{
                    System.out.println("****签收订单****");
                    System.out.print("请选择要签收的订单序号:");
                    int ordId=sc.nextInt();
                    while(ordId>names.length||ordId<0){
                        ordId=sc.nextInt();
                        System.out.print("\t\t订单编号输入错误!请重新输入:");
                    }
                    for (int i = 0; i < names.length; i++) {
                        if (names[i]!=null&&states[i]==0&&(i+1)==ordId){
                            states[i]=1;
                            System.out.println("订单签收成功!");

                        }
                        else if(names[i]!=null&&states[i]==1&&(i+1)==ordId){
                            System.out.println("订单已经签收!");
                        }

                    }
                    break;
                }
                case 4:{
                    System.out.println("****删除订单****");
                    System.out.println("序号\t订餐人\t餐品信息\t送餐时间\t送餐地址\t总金额\t订单状态");
                    for (int i = 0; i < names.length; i++) {
                        if (names[i] != null) {
                            String state;
                            if (states[i]== 0||states[i]==1) {
                                if(states[i]==0){
                                    state="已预订";
                                    System.out.println((i + 1) + "\t\t" + names[i] +"\t\t"+ dishMeges[i] + "\t\t" + times[i] + "\t\t" + addresses[i] + "\t\t" + sumPrices[i] + "元" + "\t\t" + state);
                                }
                                else if(states[i]==1){
                                    state="已完成";
                                    System.out.println((i + 1) + "\t\t" + names[i] +"\t\t"+ dishMeges[i] + "\t\t" + times[i] + "\t\t" + addresses[i] + "\t\t" + sumPrices[i] + "元" + "\t\t" + state);
                                }

                            }
                        }
                    }
                    System.out.print("请选择你要删除的订单序号:");
                    int delId=sc.nextInt();
                    while(delId<0||delId>names.length){
                        System.out.print("\t\t订单编号输入错误!请重新输入:");
                        delId=sc.nextInt();
                    }
                    for (int i = 0; i < names.length; i++) {
                        if (names[i]!=null&&(i + 1)==delId) {
                            names[i]=null;
                            dishMeges[i]=null;
                            times[i]=0;
                            addresses[i]=null;
                            sumPrices[i]=0;
                            states[i]=-1;

                        }

                    }
                    System.out.println("删除成功!");
                    break;

                }
                case 5:{
                    System.out.println("****我要点赞****");
                    System.out.println("序号\t菜品\t\t单价");
                    for (int i = 0; i < dishNames.length; i++) {
                        String praiseNum=(praiseNums[i]>0)?praiseNums[i]+"赞":"0赞";
                        System.out.println((i + 1) + "\t\t" + dishNames[i] + "\t\t" + price[i] + "元\t"+praiseNum);
                    }
                    System.out.print("请选择你要点赞的菜品序号:");
                    int praiseNum=sc.nextInt();
                    while(praiseNum>praiseNums.length||praiseNum<0){
                        System.out.println("序号输入错误!请重新输入");
                        praiseNum=sc.nextInt();
                    }
                    praiseNums[praiseNum-1]++;
                    System.out.println("点赞成功!");
                    break;

                }
                case 6:
                {
                    isExit=true;
                }


            }


        } while (isExit == false);
        System.out.println("欢迎下次使用!");
    }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值