commit 8d4c0011862f69e76cf41bb3b1f49de317eea6e5 Author: mms37 Date: Sun May 29 17:32:48 2022 -0700 Initial diff --git a/.idea/.gitignore b/.idea/.gitignore new file mode 100644 index 0000000..26d3352 --- /dev/null +++ b/.idea/.gitignore @@ -0,0 +1,3 @@ +# Default ignored files +/shelf/ +/workspace.xml diff --git a/.idea/misc.xml b/.idea/misc.xml new file mode 100644 index 0000000..5295b2c --- /dev/null +++ b/.idea/misc.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/.idea/modules.xml b/.idea/modules.xml new file mode 100644 index 0000000..fdade1a --- /dev/null +++ b/.idea/modules.xml @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/cmpt213.assignment1.packagedeliveriestracker.iml b/cmpt213.assignment1.packagedeliveriestracker.iml new file mode 100644 index 0000000..c90834f --- /dev/null +++ b/cmpt213.assignment1.packagedeliveriestracker.iml @@ -0,0 +1,11 @@ + + + + + + + + + + + \ No newline at end of file diff --git a/out/production/cmpt213.assignment1.packagedeliveriestracker/Main.class b/out/production/cmpt213.assignment1.packagedeliveriestracker/Main.class new file mode 100644 index 0000000..ff63d60 Binary files /dev/null and b/out/production/cmpt213.assignment1.packagedeliveriestracker/Main.class differ diff --git a/out/production/cmpt213.assignment1.packagedeliveriestracker/PackageInfo.class b/out/production/cmpt213.assignment1.packagedeliveriestracker/PackageInfo.class new file mode 100644 index 0000000..1c96702 Binary files /dev/null and b/out/production/cmpt213.assignment1.packagedeliveriestracker/PackageInfo.class differ diff --git a/out/production/cmpt213.assignment1.packagedeliveriestracker/TextMenu.class b/out/production/cmpt213.assignment1.packagedeliveriestracker/TextMenu.class new file mode 100644 index 0000000..97b7710 Binary files /dev/null and b/out/production/cmpt213.assignment1.packagedeliveriestracker/TextMenu.class differ diff --git a/src/Main.java b/src/Main.java new file mode 100644 index 0000000..ec3b7ea --- /dev/null +++ b/src/Main.java @@ -0,0 +1,37 @@ +import java.util.ArrayList; +import java.util.List; +import java.util.Scanner; + +public class Main { + + private static ArrayList packageList=new ArrayList<>(); + + public static void main(String[] args) { +TextMenu menu=new TextMenu(); +do{ + menu.display(); + System.out.println("choose an option between 1 and 7:"); + Scanner scan = new Scanner(System.in); + int option=Integer.parseInt(scan.nextLine()); + if (option > 7 || option < 1){ + System.out.println("invalid input"); + } + else if(option == 7){ + break; + } + else{ + switch(option){ + case 1: menu.list(packageList); + case 2: menu.add(packageList); + case 3: menu.remove(packageList); + case 4: menu.overDueList(packageList); + case 5: menu.upcomingList(packageList); + case 6: menu.markDelivered(packageList); + } + } +} +while (true); + } + +} + diff --git a/src/PackageInfo.java b/src/PackageInfo.java new file mode 100644 index 0000000..e8fee88 --- /dev/null +++ b/src/PackageInfo.java @@ -0,0 +1,23 @@ +import java.text.DateFormat; +import java.text.SimpleDateFormat; +import java.time.LocalDate; +import java.time.LocalDateTime; +import java.util.Locale; + +public class PackageInfo { +private String name; + private String note; + private double price; + private double weight; + private boolean delivered; + private LocalDateTime expectedDate; + + @Override + public String toString() { + DateFormat date = new SimpleDateFormat("yyyy-mm-dd hh:mm"); + //date.setCalendar(expectedDate); + String isDelivered = delivered ? "yes" : "no"; +//add remaining date + return "Name: " + name + "\n" + "Notes: " + note + "\n" + "Price: " + price + "\n" + "Weight: " + weight + "\n" + "Expected Delivery Date: " + expectedDate + "\n" + "Delivered? " + isDelivered; + } +} diff --git a/src/TextMenu.java b/src/TextMenu.java new file mode 100644 index 0000000..4bdb7a4 --- /dev/null +++ b/src/TextMenu.java @@ -0,0 +1,80 @@ +import java.text.DateFormat; +import java.text.SimpleDateFormat; +import java.time.DateTimeException; +import java.time.LocalDateTime; +import java.time.format.DateTimeParseException; +import java.util.ArrayList; +import java.util.Calendar; +import java.util.Scanner; + +public class TextMenu { +private final String title = "title"; +private final String[] options = new String []{ + "List of all packages", + "Add a package", +"remove a package", +"list overdue packages", +"List upcoming packages", +"mark package as delivered", +"exit"}; + +public void display(){ + int tag = title.length(); + for (int i=0; i<= tag+3; i++){ + System.out.print("#"); + } + System.out.println("\n# " + title + " #"); + for (int i=0; i<= tag+3; i++){ + System.out.print("#"); + } + DateFormat today = new SimpleDateFormat("yyyy-mm-dd"); + Calendar cal=Calendar.getInstance(); + System.out.println("\nToday is: " + today.format(cal.getTime())); +for (int i = 0; i < options.length; i++){ + System.out.println(i+1 + ": " + options[i]); +} +} + +public void list(ArrayList packageList){ + +} + public void add(ArrayList packageList){ + Scanner scan = new Scanner(System.in); + String pName; + do { + System.out.println("enter package a valid name:"); + pName = scan.nextLine(); + } + while (pName.length()==0); + System.out.println("notes:"); + String pNotes = scan.nextLine(); + boolean checkDate = false; + while (checkDate == false) { + try { + System.out.println("enter date as yyyy-mm-dd hh-mm:"); + LocalDateTime pDate = LocalDateTime.parse(scan.nextLine()); + } catch (DateTimeParseException e) { + System.out.println("invalid date format"); + } + checkDate = true; + } + } + + public void remove(ArrayList packageList){ + + } + + public void overDueList(ArrayList packageList){ + + } + + public void upcomingList(ArrayList packageList){ + + } + + public void markDelivered(ArrayList packageList){ + + } + + +}