9.13

发布时间 2023-09-13 23:35:58作者: 酥饼馅红豆沙
今天重写了一下开学测试题
package file;
import java.util.Scanner;
import java.util.ArrayList;
public class WarehouseManagement {
    public static void main(String[] args) {
        ArrayList<WarehouseInformation> x = new ArrayList<WarehouseInformation>();
        while(true) {
            System.out.println("***********************************************************");
            System.out.println("           石家庄铁道大学前进22软件开发有限公司");
            System.out.println("                   仓库管理系统2022版");
            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("**********************************************************");
            Scanner sc = new Scanner(System.in);
            String line = sc.nextLine();
            switch(line) {
                case "1":
                    //System.out.println("商品入库管理");
                    ruku(x);
                    break;
                case "2":
                    //System.out.println("商品信息修改");
                    xiugai(x);
                    break;
                case "3":
                    //System.out.println("商品出库管理");
                    chuku(x);
                    break;
                case "4":
                    //System.out.println("仓库盘点管理");
                    pandian(x);
                    break;
                case "5":
                    System.out.println("***********************************************************");
                    System.out.println("石家庄铁道大学前进22软件开发有限公司仓库管理系统2022版");
                    System.out.println("制作人:王慧山");
                    System.out.println("***********************************************************");
                    System.exit(0);
                default:
                    System.out.println("该选项不存在,请重新输入");
            }
        }

    }


    public static void ruku(ArrayList<WarehouseInformation> x) {
        System.out.println("***********************************************************");
        System.out.println("           石家庄铁道大学前进22软件开发有限公司");
        System.out.println("                   仓库管理系统2022版");
        System.out.println("***********************************************************");
        System.out.println("                     商品编号:");
        System.out.println("                     商品名称:");
        System.out.println("                     供货商信息:");
        System.out.println("                     入库时间:");
        System.out.println("                     存放仓库号:");
        System.out.println("                     存放位置信息:");
        System.out.println("                     入库商品数量:");
        System.out.println("**********************************************************");
        System.out.println("请依次输入内容:");
        Scanner sc = new Scanner(System.in);
        String itemno;
        int index = -1;
        while(true) {
            itemno = sc.nextLine();
            if(itemno.length() != 8) {
                System.out.println("您输入的商品编码不正确,请重新输入");
            }else {
                break;
            }
        }
        String itemname = sc.nextLine();
        String suppliername = sc.nextLine();
        String warehousingtime;
        while(true) {
            warehousingtime = sc.nextLine();
            if(warehousingtime.length() != 8) {
                System.out.println("录入错误,请重新输入");
            }else {
                break;
            }
        }
        String warehousenumber;
        while(true) {
            warehousenumber = sc.nextLine();
            if(warehousenumber.length() != 3) {
                System.out.println("录入错误,请重新输入");
            }else {
                break;
            }
        }
        String warehouseplace;
        while(true) {
            warehouseplace = sc.nextLine();
            if(warehouseplace.length() != 8) {
                System.out.println("录入错误,请重新输入");
            }else {
                break;
            }
        }
        int itemnumber = sc.nextInt();

        WarehouseInformation s = new WarehouseInformation();
        s.setItemno(itemno);
        s.setItemname(itemname);
        s.setSuppliername(suppliername);
        s.setWarehousingtime(warehousingtime);
        s.setWarehousenumber(warehousenumber);
        s.setWarehouseplace(warehouseplace);
        s.setItemnumber(itemnumber);
        System.out.println("***********************************************************");
        System.out.println("           石家庄铁道大学前进22软件开发有限公司");
        System.out.println("                   仓库管理系统2022版");
        System.out.println("***********************************************************");
        System.out.println("                     商品编号:"+itemno);
        System.out.println("                     商品名称:"+itemname);
        System.out.println("                     供货商信息:"+suppliername);
        System.out.println("                     入库时间:"+warehousingtime);
        System.out.println("                     存放仓库号:"+warehousenumber);
        System.out.println("                     存放位置信息:"+warehouseplace);
        System.out.println("                     入库商品数量:"+itemnumber);
        System.out.println("                  该商品入库操作已完成,是否提交(Y/N)");
        System.out.println("**********************************************************");

        String z = sc.nextLine();
        String yn = sc.nextLine();
        if("Y".equals(yn)) {
            x.add(s);
            System.out.println("入库成功");
            return;
        }else {
            ruku(x);
        }

    }


    public static void xiugai(ArrayList<WarehouseInformation> x) {
        System.out.println("***********************************************************");
        System.out.println("           石家庄铁道大学前进22软件开发有限公司");
        System.out.println("                   仓库管理系统2022版");
        System.out.println("***********************************************************");
        System.out.println("                   请输入商品编号:");
        System.out.println("***********************************************************");

        Scanner sc = new Scanner(System.in);
        String itemno = sc.nextLine();
        if(itemno.length() != 8) {
            System.out.println("您输入的商品编号不符合标准");
            System.out.println();
            System.out.println();
            xiugai(x);
        }
        int index = -1;
        for(int i = 0; i < x.size(); i++) {
            WarehouseInformation s = x.get(i);
            if(s.getItemno().equals(itemno)) {
                index = i;
                break;
            }
        }
        if(index == -1) {
            System.out.println("该商品编号不存在");
            System.out.println();
            System.out.println();
            xiugai(x);
        }
        WarehouseInformation s = x.get(index);

        System.out.println("***********************************************************");
        System.out.println("           石家庄铁道大学前进22软件开发有限公司");
        System.out.println("                   仓库管理系统2022版");
        System.out.println("***********************************************************");
        System.out.println("                     1.商品编号:"+s.getItemno());
        System.out.println("                     2.商品名称:"+s.getItemname());
        System.out.println("                     3.供货商信息:"+s.getSuppliername());
        System.out.println("                     4.入库时间:"+s.getWarehousingtime());
        System.out.println("                     5.存放仓库号:"+s.getWarehousenumber());
        System.out.println("                     6.存放位置信息:"+s.getWarehouseplace());
        System.out.println("                     7.入库商品数量:"+s.getItemnumber());
        System.out.println("                  请选择需要修改的信息编号(1-7):");
        System.out.println("**********************************************************");

        String n = sc.nextLine();
        int b=-1;
        do {
            switch(n) {
                case "1":
                    System.out.println("***********************************************************");
                    System.out.println("           石家庄铁道大学前进22软件开发有限公司");
                    System.out.println("                   仓库管理系统2022版");
                    System.out.println("***********************************************************");
                    System.out.println("                     1.商品编号:"+s.getItemno());
                    System.out.println("                     2.商品名称:"+s.getItemname());
                    System.out.println("                     3.供货商信息:"+s.getSuppliername());
                    System.out.println("                     4.入库时间:"+s.getWarehousingtime());
                    System.out.println("                     5.存放仓库号:"+s.getWarehousenumber());
                    System.out.println("                     6.存放位置信息:"+s.getWarehouseplace());
                    System.out.println("                     7.入库商品数量:"+s.getItemnumber());
                    System.out.println("                  请选择需要修改的信息编号(1-7):"+n);
                    System.out.println("                     请输入修改后的商品编号:");
                    System.out.println("**********************************************************");
                    b=1;
                    break;
                case "2":
                    System.out.println("***********************************************************");
                    System.out.println("           石家庄铁道大学前进22软件开发有限公司");
                    System.out.println("                   仓库管理系统2022版");
                    System.out.println("***********************************************************");
                    System.out.println("                     1.商品编号:"+s.getItemno());
                    System.out.println("                     2.商品名称:"+s.getItemname());
                    System.out.println("                     3.供货商信息:"+s.getSuppliername());
                    System.out.println("                     4.入库时间:"+s.getWarehousingtime());
                    System.out.println("                     5.存放仓库号:"+s.getWarehousenumber());
                    System.out.println("                     6.存放位置信息:"+s.getWarehouseplace());
                    System.out.println("                     7.入库商品数量:"+s.getItemnumber());
                    System.out.println("                  请选择需要修改的信息编号(1-7):"+n);
                    System.out.println("                     请输入修改后的商品名称:");
                    System.out.println("**********************************************************");
                    b=1;
                    break;
                case "3":
                    System.out.println("***********************************************************");
                    System.out.println("           石家庄铁道大学前进22软件开发有限公司");
                    System.out.println("                   仓库管理系统2022版");
                    System.out.println("***********************************************************");
                    System.out.println("                     1.商品编号:"+s.getItemno());
                    System.out.println("                     2.商品名称:"+s.getItemname());
                    System.out.println("                     3.供货商信息:"+s.getSuppliername());
                    System.out.println("                     4.入库时间:"+s.getWarehousingtime());
                    System.out.println("                     5.存放仓库号:"+s.getWarehousenumber());
                    System.out.println("                     6.存放位置信息:"+s.getWarehouseplace());
                    System.out.println("                     7.入库商品数量:"+s.getItemnumber());
                    System.out.println("                  请选择需要修改的信息编号(1-7):"+n);
                    System.out.println("                     请输入修改后的供货商信息:");
                    System.out.println("**********************************************************");
                    b=1;
                    break;
                case "4":
                    System.out.println("***********************************************************");
                    System.out.println("           石家庄铁道大学前进22软件开发有限公司");
                    System.out.println("                   仓库管理系统2022版");
                    System.out.println("***********************************************************");
                    System.out.println("                     1.商品编号:"+s.getItemno());
                    System.out.println("                     2.商品名称:"+s.getItemname());
                    System.out.println("                     3.供货商信息:"+s.getSuppliername());
                    System.out.println("                     4.入库时间:"+s.getWarehousingtime());
                    System.out.println("                     5.存放仓库号:"+s.getWarehousenumber());
                    System.out.println("                     6.存放位置信息:"+s.getWarehouseplace());
                    System.out.println("                     7.入库商品数量:"+s.getItemnumber());
                    System.out.println("                  请选择需要修改的信息编号(1-7):"+n);
                    System.out.println("                     请输入修改后的入库时间:");
                    System.out.println("**********************************************************");
                    b=1;
                    break;
                case "5":
                    System.out.println("***********************************************************");
                    System.out.println("           石家庄铁道大学前进22软件开发有限公司");
                    System.out.println("                   仓库管理系统2022版");
                    System.out.println("***********************************************************");
                    System.out.println("                     1.商品编号:"+s.getItemno());
                    System.out.println("                     2.商品名称:"+s.getItemname());
                    System.out.println("                     3.供货商信息:"+s.getSuppliername());
                    System.out.println("                     4.入库时间:"+s.getWarehousingtime());
                    System.out.println("                     5.存放仓库号:"+s.getWarehousenumber());
                    System.out.println("                     6.存放位置信息:"+s.getWarehouseplace());
                    System.out.println("                     7.入库商品数量:"+s.getItemnumber());
                    System.out.println("                  请选择需要修改的信息编号(1-7):"+n);
                    System.out.println("                     请输入修改后的存放仓库号:");
                    System.out.println("**********************************************************");
                    b=1;
                    break;
                case "6":
                    System.out.println("***********************************************************");
                    System.out.println("           石家庄铁道大学前进22软件开发有限公司");
                    System.out.println("                   仓库管理系统2022版");
                    System.out.println("***********************************************************");
                    System.out.println("                     1.商品编号:"+s.getItemno());
                    System.out.println("                     2.商品名称:"+s.getItemname());
                    System.out.println("                     3.供货商信息:"+s.getSuppliername());
                    System.out.println("                     4.入库时间:"+s.getWarehousingtime());
                    System.out.println("                     5.存放仓库号:"+s.getWarehousenumber());
                    System.out.println("                     6.存放位置信息:"+s.getWarehouseplace());
                    System.out.println("                     7.入库商品数量:"+s.getItemnumber());
                    System.out.println("                  请选择需要修改的信息编号(1-7):"+n);
                    System.out.println("                     请输入修改后的存放位置信息:");
                    System.out.println("**********************************************************");
                    b=1;
                    break;
                case "7":
                    System.out.println("***********************************************************");
                    System.out.println("           石家庄铁道大学前进22软件开发有限公司");
                    System.out.println("                   仓库管理系统2022版");
                    System.out.println("***********************************************************");
                    System.out.println("                     1.商品编号:"+s.getItemno());
                    System.out.println("                     2.商品名称:"+s.getItemname());
                    System.out.println("                     3.供货商信息:"+s.getSuppliername());
                    System.out.println("                     4.入库时间:"+s.getWarehousingtime());
                    System.out.println("                     5.存放仓库号:"+s.getWarehousenumber());
                    System.out.println("                     6.存放位置信息:"+s.getWarehouseplace());
                    System.out.println("                     7.入库商品数量:"+s.getItemnumber());
                    System.out.println("                  请选择需要修改的信息编号(1-7):"+n);
                    System.out.println("                     请输入修改后的入库商品数量:");
                    System.out.println("**********************************************************");
                    b=1;
                    break;
                default:
                    System.out.println("该选项不存在");
                    break;
            }
        }while(b==-1);
        int a = 0;
        String l = null;
        if(n.equals("7")) {
            a=sc.nextInt();
            String j= sc.nextLine();
        }else {
            l = sc.nextLine();
        }
        System.out.println("请输入是否修改(Y/N):");
        String ny = sc.nextLine();
        if("Y".equals(ny)) {
            switch(n) {
                case "1":
                    s.setItemno(l);
                    break;
                case "2":
                    s.setItemname(l);
                    break;
                case "3":
                    s.setSuppliername(l);
                    break;
                case "4":
                    s.setWarehousingtime(l);
                    break;
                case "5":
                    s.setWarehousenumber(l);
                    break;
                case "6":
                    s.setWarehouseplace(l);
                    break;
                case "7":
                    s.setItemnumber(a);
                    break;
            }
            return;
        }else {
            return;
        }
    }
    public static void chuku(ArrayList<WarehouseInformation> x) {
        System.out.println("***********************************************************");
        System.out.println("           石家庄铁道大学前进22软件开发有限公司");
        System.out.println("                   仓库管理系统2022版");
        System.out.println("***********************************************************");
        System.out.println("                   请输入商品编号:");
        System.out.println("***********************************************************");

        Scanner sc = new Scanner(System.in);
        String itemno = sc.nextLine();
        if(itemno.length() != 8) {
            System.out.println("您输入的商品编号不符合标准");
            System.out.println();
            System.out.println();
            chuku(x);
        }
        int index = -1;
        for(int i = 0; i < x.size(); i++) {
            WarehouseInformation s = x.get(i);
            if(s.getItemno().equals(itemno)) {
                index = i;
                break;
            }
        }
        if(index == -1) {
            System.out.println("该商品编号不存在");
            System.out.println();
            System.out.println();
            xiugai(x);
        }
        WarehouseInformation s = x.get(index);

        while(true) {
            System.out.println("***********************************************************");
            System.out.println("           石家庄铁道大学前进22软件开发有限公司");
            System.out.println("                   仓库管理系统2022版");
            System.out.println("***********************************************************");
            System.out.println("                     1.商品编号:"+s.getItemno());
            System.out.println("                     2.商品名称:"+s.getItemname());
            System.out.println("                     3.供货商信息:"+s.getSuppliername());
            System.out.println("                     4.入库时间:"+s.getWarehousingtime());
            System.out.println("                     5.存放仓库号:"+s.getWarehousenumber());
            System.out.println("                     6.存放位置信息:"+s.getWarehouseplace());
            System.out.println("                     7.入库商品数量:"+s.getItemnumber());
            System.out.println("                     出库时间:");
            System.out.println("                     出库数量:");
            System.out.println("**********************************************************");

            String shipmenttime = sc.nextLine();
            int outnumber;
            while(true) {
                outnumber = sc.nextInt();
                if(outnumber<=s.getItemnumber()) {
                    break;
                }else {
                    System.out.println("您输入的出库量大于入库量,请重新输入");
                }
            }
            String Z = sc.nextLine();
            System.out.println("请输入是否储存(Y/N):");
            String yn = sc.nextLine();
            if("Y".equals(yn)) {
                s.setOutnumber(outnumber);
                s.setShipmenttime(shipmenttime);
                return;
            }else {
                return;
            }
        }
    }
    public static void pandian(ArrayList<WarehouseInformation> x) {
        System.out.println("***********************************************************");
        System.out.println("           石家庄铁道大学前进22软件开发有限公司");
        System.out.println("                   仓库管理系统2022版");
        System.out.println("***********************************************************");
        for(int i=0;i<x.size();i++) {
            int j =i+1;
            WarehouseInformation s =x.get(i);
            int sum = s.getItemnumber()-s.getOutnumber();
            System.out.println(j+"、    商品编号:"+s.getItemno()+"、商品名称:"+s.getItemname()+"、库存数量:"+sum);
        }
        System.out.println("***********************************************************");
    }
}