Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

I nee to write a java program for the following. Warehouse: 1. Client has a phys

ID: 3838756 • Letter: I

Question

I nee to write a java program for the following.

Warehouse:

1. Client has a physical warehouse that is configured as per the attached.

2. Products are stored in aisles, on shelves, in bins. A. The aisles are numbered 1 - 6. B. Each aisles has shelving 3 shelves high 1. The selves are numbered 1 (physically lowest), 2 (physically middle) and 3 (physically highest). C. Each shelf has bins. 2. The bins are numbered 1 - 10 A. Numbering of the bins starts at the beginning of the aisle (i.e. as you enter the aisle). B. Each bin is of equal size.

3. Order sheets are picked up by Order Distribution Associates (ODA) who traverse through the warehouse picking the products for orders. 1. ODAs are responsible for 6 orders per traversal through the warehouse. 2. ODAs take a cart with 6 attached boxes (one for each order) from the Pick Up Order Desk (PUOD) and traverse through the warehouse picking the items on the orders and placing them in the appropriate boxes. 3. ODAs traverse the warehouse from aisle 1 - 6 in order and return the cart and picked orders to the Deliver Order Table (DOT). 4. Products are shipped to customers from the Deliver Order Table (DOT).

4. Order data is kept warehouse_data.txt.( 201 87 2 6 1 4 83 56 1 3 3 1 658 52 25 4 3 9 236 59 13 6 1 2 51 40 27 2 2 3 150 39 27 4 2 5 578 81 9 5 3 4 275 9 29 3 1 7 377 76 30 3 2 6 226 53 8 2 3 4 18 74 3 6 3 10 333 53 13 1 1 7 106 48 13 3 3 3 787 98 2 5 3 9 787 62 17 2 2 1 330 27 10 4 3 4 943 7 10 1 2 4 567 30 3 3 1 10 621 47 3 3 1 6 883 11 26 5 3 8 458 33 27 4 2 6 535 14 9 4 3 6 137 92 18 4 2 7 725 92 12 6 2 4 298 39 28 4 1 6 201 88 10 2 1 4 279 25 30 4 3 8 613 66 27 3 2 1 541 36 2 6 1 3 937 42 3 2 2 6 868 39 3 4 3 3 446 22 12 5 3 2 526 38 19 5 2 10 205 51 22 5 2 4 535 28 24 1 2 5 790 21 23 2 2 6 557 15 13 1 2 6 3 63 20 3 3 4 937 13 7 6 2 8 315 64 25 3 1 5 474 88 8 2 2 8 578 7 20 6 1 6 2 72 26 2 1 7 923 84 26 4 1 1 265 57 3 5 3 9 816 58 8 2 1 4 350 92 22 2 2 10 304 33 6 3 3 2 62 36 18 3 2 6 439 94 6 5 3 1 197 5 2 5 3 1 871 7 29 6 2 10 877 68 19 4 1 4 482 89 16 5 1 5 137 44 7 2 1 9 493 95 26 5 2 10 499 88 25 3 1 7 104 86 4 1 2 4 394 97 12 4 2 8 222 45 18 3 1 10 21 33 16 3 1 9 163 76 10 3 2 7 871 5 4 1 3 8 458 58 6 3 3 9 378 91 4 4 3 6 930 74 7 1 2 2 472 29 16 6 2 3 602 98 5 4 1 10 702 98 7 6 3 8 424 84 9 4 2 10 381 93 10 1 1 4 341 26 17 2 2 1 898 3 23 4 2 4 779 23 21 3 1 6 290 82 28 4 1 10 301 62 20 6 1 6 856 83 22 3 2 6 177 19 4 2 3 2 282 11 6 1 3 6 519 32 15 6 3 1 987 97 11 2 1 8 978 29 7 4 2 9 526 47 15 2 3 3 31 58 8 5 3 2 159 71 22 1 1 3 123 44 16 2 1 3 873 62 18 4 2 8 661 35 30 1 2 9 274 63 3 6 2 3 860 77 28 3 1 3 184 35 8 5 2 10 958 68 21 1 2 8 957 67 17 5 1 8 736 64 6 6 1 10 862 38 18 5 2 4 227 29 20 5 1 2 889 44 28 2 3 9 967 35 16 3 2 6 465 96 1 6 2 5 419 45 2 4 3 8)

5. Client needs a program that will print a listing of the products that should be picked in the order they should be picked. Products should be picked according to the following protocol: 1. Products should be picked starting at aisle1 and continuing in order through aisle 6, 2. Products should be picked from shelf 3, then shelf 2, then shelf 1 of each aisle, 3. Products should be picked from the bins in order (bin 1, then bin 2, then bin 3 ….through bin 10).

6. Your program should generate and print the following information for each product: aisle, shelf, bin, product number, product description, order number

7. The information in #6 above is to printed in the order that the products are to be picked.

Explanation / Answer

package chegg.generics;

import java.io.BufferedReader;
import java.io.File;
import java.io.FileReader;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;

public class ProductShippingMgmt {

   public static void main(String[] args) {
       List<Product> productList = ProductShippingMgmt
               .readProductsFromFile(new File("d://products.txt"));

   }

   private static List<Product> readProductsFromFile(File file) {
       StringBuilder buildString = new StringBuilder();
       List<Product> list = new ArrayList<Product>();
       try (BufferedReader br = new BufferedReader(new FileReader(file))) {
           String sCurrentLine;
           while ((sCurrentLine = br.readLine()) != null) {
               buildString.append(sCurrentLine);
           }

           int startIndx = 0;
           int endIndex = 5;

           String[] lineStr = buildString.toString().split(" ");

           for (; endIndex <= lineStr.length;) {
               Product product = new Product();
               product.setNumber(Integer.parseInt(lineStr[startIndx]));
               product.setDescription(Integer.parseInt(lineStr[startIndx + 1]));
               product.setOrderNumber(Integer.parseInt(lineStr[startIndx + 2]));
               product.setAisles(Integer.parseInt(lineStr[startIndx + 3]));
               product.setSelve(Integer.parseInt(lineStr[startIndx + 4]));
               product.setBin(Integer.parseInt(lineStr[startIndx + 5]));
               list.add(product);
               startIndx = endIndex + 1;
               endIndex = endIndex + 6;
           }

           // for (Product product : list) {
           // System.out.println(product);
           // }

           Collections.sort(list);

           System.out
                   .println("Sorted List Or Products should be picked according to the following order");

           for (Product product : list) {
               System.out.println(product);
           }

       } catch (IOException e) {
           e.printStackTrace();
       }
       return list;
   }
}

class Product implements Comparable<Product> {

   private int number;
   private int description;
   private int orderNumber;
   private int aisles;
   private int selve;
   private int bin;

   public int getNumber() {
       return number;
   }

   public void setNumber(int number) {
       this.number = number;
   }

   public int getDescription() {
       return description;
   }

   public void setDescription(int description) {
       this.description = description;
   }

   public int getOrderNumber() {
       return orderNumber;
   }

   public void setOrderNumber(int orderNumber) {
       this.orderNumber = orderNumber;
   }

   public int getAisles() {
       return aisles;
   }

   public void setAisles(int aisles) {
       this.aisles = aisles;
   }

   public int getSelve() {
       return selve;
   }

   public void setSelve(int selve) {
       this.selve = selve;
   }

   public int getBin() {
       return bin;
   }

   public void setBin(int bin) {
       this.bin = bin;
   }

   @Override
   public String toString() {
       return "Product [ aisles=" + aisles + ", selve=" + selve + ", bin="
               + bin + ",ProductNumber=" + number + ", description="
               + description + ", orderNumber=" + orderNumber + "]";
   }

   @Override
   public int hashCode() {
       final int prime = 31;
       int result = 1;
       result = prime * result + aisles;
       result = prime * result + bin;
       result = prime * result + description;
       result = prime * result + number;
       result = prime * result + orderNumber;
       result = prime * result + selve;
       return result;
   }

   @Override
   public boolean equals(Object obj) {
       if (this == obj)
           return true;
       if (obj == null)
           return false;
       if (getClass() != obj.getClass())
           return false;
       Product other = (Product) obj;
       if (aisles != other.aisles)
           return false;
       if (bin != other.bin)
           return false;
       if (description != other.description)
           return false;
       if (number != other.number)
           return false;
       if (orderNumber != other.orderNumber)
           return false;
       if (selve != other.selve)
           return false;
       return true;
   }

   @Override
   public int compareTo(Product o) {
       if (this.getAisles() != o.getAisles()) {
           return this.getAisles() < o.getAisles() ? -1 : 1;
       } else {
           if (this.getSelve() != o.getSelve()) {
               return this.getSelve() < o.getSelve() ? 1 : -1;
           } else {
               if (this.getBin() != o.getBin()) {
                   return this.getBin() < o.getBin() ? -1 : 1;
               } else {
                   return 0;
               }
           }
       }
   }
}

Input ( Place or copy this input into file in d drive of your system. i.e D://products.txt)
=------
201 87 2 6 1 4 83 56 1 3 3 1 658 52 25 4 3 9 236 59 13 6 1 2 51 40 27 2 2 3 150 39 27 4 2 5 578 81 9 5 3 4 275 9 29 3 1 7 377 76 30 3 2 6 226 53 8 2 3 4 18 74 3 6 3 10 333 53 13 1 1 7 106 48 13 3 3 3 787 98 2 5 3 9 787 62 17 2 2 1 330 27 10 4 3 4 943 7 10 1 2 4 567 30 3 3 1 10 621 47 3 3 1 6 883 11 26 5 3 8 458 33 27 4 2 6 535 14 9 4 3 6 137 92 18 4 2 7 725 92 12 6 2 4 298 39 28 4 1 6 201 88 10 2 1 4 279 25 30 4 3 8 613 66 27 3 2 1 541 36 2 6 1 3 937 42 3 2 2 6 868 39 3 4 3 3 446 22 12 5 3 2 526 38 19 5 2 10 205 51 22 5 2 4 535 28 24 1 2 5 790 21 23 2 2 6 557 15 13 1 2 6 3 63 20 3 3 4 937 13 7 6 2 8 315 64 25 3 1 5 474 88 8 2 2 8 578 7 20 6 1 6 2 72 26 2 1 7 923 84 26 4 1 1 265 57 3 5 3 9 816 58 8 2 1 4 350 92 22 2 2 10 304 33 6 3 3 2 62 36 18 3 2 6 439 94 6 5 3 1 197 5 2 5 3 1 871 7 29 6 2 10 877 68 19 4 1 4 482 89 16 5 1 5 137 44 7 2 1 9 493 95 26 5 2 10 499 88 25 3 1 7 104 86 4 1 2 4 394 97 12 4 2 8 222 45 18 3 1 10 21 33 16 3 1 9 163 76 10 3 2 7 871 5 4 1 3 8 458 58 6 3 3 9 378 91 4 4 3 6 930 74 7 1 2 2 472 29 16 6 2 3 602 98 5 4 1 10 702 98 7 6 3 8 424 84 9 4 2 10 381 93 10 1 1 4 341 26 17 2 2 1 898 3 23 4 2 4 779 23 21 3 1 6 290 82 28 4 1 10 301 62 20 6 1 6 856 83 22 3 2 6 177 19 4 2 3 2 282 11 6 1 3 6 519 32 15 6 3 1 987 97 11 2 1 8 978 29 7 4 2 9 526 47 15 2 3 3 31 58 8 5 3 2 159 71 22 1 1 3 123 44 16 2 1 3 873 62 18 4 2 8 661 35 30 1 2 9 274 63 3 6 2 3 860 77 28 3 1 3 184 35 8 5 2 10 958 68 21 1 2 8 957 67 17 5 1 8 736 64 6 6 1 10 862 38 18 5 2 4 227 29 20 5 1 2 889 44 28 2 3 9 967 35 16 3 2 6 465 96 1 6 2 5 419 45 2 4 3 8

Output"
--------
Sorted List Or Products should be picked according to the following order
Product [ aisles=1, selve=3, bin=6,ProductNumber=282, description=11, orderNumber=6]
Product [ aisles=1, selve=3, bin=8,ProductNumber=871, description=5, orderNumber=4]
Product [ aisles=1, selve=2, bin=2,ProductNumber=930, description=74, orderNumber=7]
Product [ aisles=1, selve=2, bin=4,ProductNumber=943, description=7, orderNumber=10]
Product [ aisles=1, selve=2, bin=4,ProductNumber=104, description=86, orderNumber=4]
Product [ aisles=1, selve=2, bin=5,ProductNumber=535, description=28, orderNumber=24]
Product [ aisles=1, selve=2, bin=6,ProductNumber=557, description=15, orderNumber=13]
Product [ aisles=1, selve=2, bin=8,ProductNumber=958, description=68, orderNumber=21]
Product [ aisles=1, selve=2, bin=9,ProductNumber=661, description=35, orderNumber=30]
Product [ aisles=1, selve=1, bin=3,ProductNumber=159, description=71, orderNumber=22]
Product [ aisles=1, selve=1, bin=4,ProductNumber=381, description=93, orderNumber=10]
Product [ aisles=1, selve=1, bin=7,ProductNumber=333, description=53, orderNumber=13]
Product [ aisles=2, selve=3, bin=2,ProductNumber=177, description=19, orderNumber=4]
Product [ aisles=2, selve=3, bin=3,ProductNumber=526, description=47, orderNumber=15]
Product [ aisles=2, selve=3, bin=4,ProductNumber=226, description=53, orderNumber=8]
Product [ aisles=2, selve=3, bin=9,ProductNumber=889, description=44, orderNumber=28]
Product [ aisles=2, selve=2, bin=1,ProductNumber=787, description=62, orderNumber=17]
Product [ aisles=2, selve=2, bin=1,ProductNumber=341, description=26, orderNumber=17]
Product [ aisles=2, selve=2, bin=3,ProductNumber=51, description=40, orderNumber=27]
Product [ aisles=2, selve=2, bin=6,ProductNumber=937, description=42, orderNumber=3]
Product [ aisles=2, selve=2, bin=6,ProductNumber=790, description=21, orderNumber=23]
Product [ aisles=2, selve=2, bin=8,ProductNumber=474, description=88, orderNumber=8]
Product [ aisles=2, selve=2, bin=10,ProductNumber=350, description=92, orderNumber=22]
Product [ aisles=2, selve=1, bin=3,ProductNumber=123, description=44, orderNumber=16]
Product [ aisles=2, selve=1, bin=4,ProductNumber=201, description=88, orderNumber=10]
Product [ aisles=2, selve=1, bin=4,ProductNumber=816, description=58, orderNumber=8]
Product [ aisles=2, selve=1, bin=7,ProductNumber=2, description=72, orderNumber=26]
Product [ aisles=2, selve=1, bin=8,ProductNumber=987, description=97, orderNumber=11]
Product [ aisles=2, selve=1, bin=9,ProductNumber=137, description=44, orderNumber=7]
Product [ aisles=3, selve=3, bin=1,ProductNumber=83, description=56, orderNumber=1]
Product [ aisles=3, selve=3, bin=2,ProductNumber=304, description=33, orderNumber=6]
Product [ aisles=3, selve=3, bin=3,ProductNumber=106, description=48, orderNumber=13]
Product [ aisles=3, selve=3, bin=4,ProductNumber=3, description=63, orderNumber=20]
Product [ aisles=3, selve=3, bin=9,ProductNumber=458, description=58, orderNumber=6]
Product [ aisles=3, selve=2, bin=1,ProductNumber=613, description=66, orderNumber=27]
Product [ aisles=3, selve=2, bin=6,ProductNumber=377, description=76, orderNumber=30]
Product [ aisles=3, selve=2, bin=6,ProductNumber=62, description=36, orderNumber=18]
Product [ aisles=3, selve=2, bin=6,ProductNumber=856, description=83, orderNumber=22]
Product [ aisles=3, selve=2, bin=6,ProductNumber=967, description=35, orderNumber=16]
Product [ aisles=3, selve=2, bin=7,ProductNumber=163, description=76, orderNumber=10]
Product [ aisles=3, selve=1, bin=3,ProductNumber=860, description=77, orderNumber=28]
Product [ aisles=3, selve=1, bin=5,ProductNumber=315, description=64, orderNumber=25]
Product [ aisles=3, selve=1, bin=6,ProductNumber=621, description=47, orderNumber=3]
Product [ aisles=3, selve=1, bin=6,ProductNumber=779, description=23, orderNumber=21]
Product [ aisles=3, selve=1, bin=7,ProductNumber=275, description=9, orderNumber=29]
Product [ aisles=3, selve=1, bin=7,ProductNumber=499, description=88, orderNumber=25]
Product [ aisles=3, selve=1, bin=9,ProductNumber=21, description=33, orderNumber=16]
Product [ aisles=3, selve=1, bin=10,ProductNumber=567, description=30, orderNumber=3]
Product [ aisles=3, selve=1, bin=10,ProductNumber=222, description=45, orderNumber=18]
Product [ aisles=4, selve=3, bin=3,ProductNumber=868, description=39, orderNumber=3]
Product [ aisles=4, selve=3, bin=4,ProductNumber=330, description=27, orderNumber=10]
Product [ aisles=4, selve=3, bin=6,ProductNumber=535, description=14, orderNumber=9]
Product [ aisles=4, selve=3, bin=6,ProductNumber=378, description=91, orderNumber=4]
Product [ aisles=4, selve=3, bin=8,ProductNumber=279, description=25, orderNumber=30]
Product [ aisles=4, selve=3, bin=8,ProductNumber=419, description=45, orderNumber=2]
Product [ aisles=4, selve=3, bin=9,ProductNumber=658, description=52, orderNumber=25]
Product [ aisles=4, selve=2, bin=4,ProductNumber=898, description=3, orderNumber=23]
Product [ aisles=4, selve=2, bin=5,ProductNumber=150, description=39, orderNumber=27]
Product [ aisles=4, selve=2, bin=6,ProductNumber=458, description=33, orderNumber=27]
Product [ aisles=4, selve=2, bin=7,ProductNumber=137, description=92, orderNumber=18]
Product [ aisles=4, selve=2, bin=8,ProductNumber=394, description=97, orderNumber=12]
Product [ aisles=4, selve=2, bin=8,ProductNumber=873, description=62, orderNumber=18]
Product [ aisles=4, selve=2, bin=9,ProductNumber=978, description=29, orderNumber=7]
Product [ aisles=4, selve=2, bin=10,ProductNumber=424, description=84, orderNumber=9]
Product [ aisles=4, selve=1, bin=1,ProductNumber=923, description=84, orderNumber=26]
Product [ aisles=4, selve=1, bin=4,ProductNumber=877, description=68, orderNumber=19]
Product [ aisles=4, selve=1, bin=6,ProductNumber=298, description=39, orderNumber=28]
Product [ aisles=4, selve=1, bin=10,ProductNumber=602, description=98, orderNumber=5]
Product [ aisles=4, selve=1, bin=10,ProductNumber=290, description=82, orderNumber=28]
Product [ aisles=5, selve=3, bin=1,ProductNumber=439, description=94, orderNumber=6]
Product [ aisles=5, selve=3, bin=1,ProductNumber=197, description=5, orderNumber=2]
Product [ aisles=5, selve=3, bin=2,ProductNumber=446, description=22, orderNumber=12]
Product [ aisles=5, selve=3, bin=2,ProductNumber=31, description=58, orderNumber=8]
Product [ aisles=5, selve=3, bin=4,ProductNumber=578, description=81, orderNumber=9]
Product [ aisles=5, selve=3, bin=8,ProductNumber=883, description=11, orderNumber=26]
Product [ aisles=5, selve=3, bin=9,ProductNumber=787, description=98, orderNumber=2]
Product [ aisles=5, selve=3, bin=9,ProductNumber=265, description=57, orderNumber=3]
Product [ aisles=5, selve=2, bin=4,ProductNumber=205, description=51, orderNumber=22]
Product [ aisles=5, selve=2, bin=4,ProductNumber=862, description=38, orderNumber=18]
Product [ aisles=5, selve=2, bin=10,ProductNumber=526, description=38, orderNumber=19]
Product [ aisles=5, selve=2, bin=10,ProductNumber=493, description=95, orderNumber=26]
Product [ aisles=5, selve=2, bin=10,ProductNumber=184, description=35, orderNumber=8]
Product [ aisles=5, selve=1, bin=2,ProductNumber=227, description=29, orderNumber=20]
Product [ aisles=5, selve=1, bin=5,ProductNumber=482, description=89, orderNumber=16]
Product [ aisles=5, selve=1, bin=8,ProductNumber=957, description=67, orderNumber=17]
Product [ aisles=6, selve=3, bin=1,ProductNumber=519, description=32, orderNumber=15]
Product [ aisles=6, selve=3, bin=8,ProductNumber=702, description=98, orderNumber=7]
Product [ aisles=6, selve=3, bin=10,ProductNumber=18, description=74, orderNumber=3]
Product [ aisles=6, selve=2, bin=3,ProductNumber=472, description=29, orderNumber=16]
Product [ aisles=6, selve=2, bin=3,ProductNumber=274, description=63, orderNumber=3]
Product [ aisles=6, selve=2, bin=4,ProductNumber=725, description=92, orderNumber=12]
Product [ aisles=6, selve=2, bin=5,ProductNumber=465, description=96, orderNumber=1]
Product [ aisles=6, selve=2, bin=8,ProductNumber=937, description=13, orderNumber=7]
Product [ aisles=6, selve=2, bin=10,ProductNumber=871, description=7, orderNumber=29]
Product [ aisles=6, selve=1, bin=2,ProductNumber=236, description=59, orderNumber=13]
Product [ aisles=6, selve=1, bin=3,ProductNumber=541, description=36, orderNumber=2]
Product [ aisles=6, selve=1, bin=4,ProductNumber=201, description=87, orderNumber=2]
Product [ aisles=6, selve=1, bin=6,ProductNumber=578, description=7, orderNumber=20]
Product [ aisles=6, selve=1, bin=6,ProductNumber=301, description=62, orderNumber=20]
Product [ aisles=6, selve=1, bin=10,ProductNumber=736, description=64, orderNumber=6]

Description :

1. Program reads all the records from file ( in above case it is d://products.txt)

2. Products stored in unorder way in arraylist.

3. Program performed ordering as given in above quation Please check the compreTo method of Product class. it is responsible of ordering products for shipping.

4. Program performed products list ordering Please check the code Collections.sort() method

5. Program printed all the products they should be picked as per the rules giuven in above query.

Let me know if you face any dificulties to make undestanding on above given code.

Hire Me For All Your Tutoring Needs
Integrity-first tutoring: clear explanations, guidance, and feedback.
Drop an Email at
drjack9650@gmail.com
Chat Now And Get Quote