From 8d4c0011862f69e76cf41bb3b1f49de317eea6e5 Mon Sep 17 00:00:00 2001 From: mms37 Date: Sun, 29 May 2022 17:32:48 -0700 Subject: [PATCH] Initial --- .idea/.gitignore | 3 + .idea/misc.xml | 6 ++ .idea/modules.xml | 8 ++ ...3.assignment1.packagedeliveriestracker.iml | 11 +++ .../Main.class | Bin 0 -> 1515 bytes .../PackageInfo.class | Bin 0 -> 1467 bytes .../TextMenu.class | Bin 0 -> 3588 bytes src/Main.java | 37 ++++++++ src/PackageInfo.java | 23 +++++ src/TextMenu.java | 80 ++++++++++++++++++ 10 files changed, 168 insertions(+) create mode 100644 .idea/.gitignore create mode 100644 .idea/misc.xml create mode 100644 .idea/modules.xml create mode 100644 cmpt213.assignment1.packagedeliveriestracker.iml create mode 100644 out/production/cmpt213.assignment1.packagedeliveriestracker/Main.class create mode 100644 out/production/cmpt213.assignment1.packagedeliveriestracker/PackageInfo.class create mode 100644 out/production/cmpt213.assignment1.packagedeliveriestracker/TextMenu.class create mode 100644 src/Main.java create mode 100644 src/PackageInfo.java create mode 100644 src/TextMenu.java 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 0000000000000000000000000000000000000000..ff63d604819754824805435ca8d99f7605831ce3 GIT binary patch literal 1515 zcmZ`(-BTM?6#v~M&2E;PLV>neiiEaE0@(CJtr9>Hq)km)G#JI!k4th*x83Y!HXACw z`R1E5J~&gK9DQJ>Z^apKWX37>M($PeQW0 zQMcPIM{TEY6#WJUB#vS5P}ItHJJ3xE=5;9c@lu%2_VR1K?FN;=*Q!}CF)T1qyW@Fn zol$PaYX!FFW;S(jUu!pWk+6E^%AAE0IB8%+;yIiW7vI%8EJlwN&k%YUq;P{&yB(7nXcqZ8Kcp>0Xg|6|a$- z6B_o2{>PGu8YoE2vu#|}>#Q$Iyv};k*G+FrGqfb}CPRIs`zxI=J>x49Z!s=At(w=Q z@o)jWaaH0PZ={>bzqg_toBVX$!1dnH4_9KLh`2ziVmDkBbbRXdxv0~J?dD5s5&xq5 znO9gW5W!`yPS*WApc|d$ruNs>rbEbJ$*U=+s(hREE|>`J*ll7~;%>5cGwkY#?5(Hg znyb=&o6Z)M{6sC?(?-t8=#UGDB3UZGL6L`^5s1^!pC@3IdVe8#rz-(bDXUhuG;_Y@ zbpKkb;&uF*UbUG=ic3AuryUb?Bw}<2P$WJSBuk{lP)3}-=`x`A4MOrH1<51R`w)*p zlbiJBZ33}IZ`u8R2k(-WLIvxDkh8c-!4iahcK~B!AF0yJ9;{uY2Z#1>`~agHyBOQY zM0s`(=YB?Zacsc&5$0Ip2OMRq^JKMy+k}3PjRt#yE0A8$8jI;p-OF?f`|9<0p+4@U;`hL zH1Q2?;Wn}Ph_q42KVTX#{zT5esIbh*BtO3+86(q=A5Y|LI5(j007Yu*+dts~vk)PR OXf6h6pAZ(qr~d#{x=d{V literal 0 HcmV?d00001 diff --git a/out/production/cmpt213.assignment1.packagedeliveriestracker/PackageInfo.class b/out/production/cmpt213.assignment1.packagedeliveriestracker/PackageInfo.class new file mode 100644 index 0000000000000000000000000000000000000000..1c967026919d235b8218762b924cd35bf45a8730 GIT binary patch literal 1467 zcmaJ>>rN9v6#k~r?y@WbRnVehRZu{nUhqb_s4WOskfa2o{u;U?UD->sJ0N`rA3&eL zznYksVB!P#OvZR-x7wPbo18h9Ik!2N{r>al8-RIi7)YQ)L#K%(QVe~s`2o*4+}q7P z-FYo4k|8x`d$wF)=olN{)}S*CMM_c}%3RrYYmO*#DVF`fSO)6j1sjgt)Bo4m5ecg3pr%4g`Zgkv9wKv)dy zg^mHrr7l7prx_BSuWU0WhH#dl)8npSNVmsOTIWp+$6CG=N{}^i5tkT}wZN{B9V;s7 zh>1}pO}!EJZdEGLRTEx>7xE0c^y7XpoEkemj1^U7u#v7BkmhKRhi*G8He1wNm?gi>$!Z#EnEPumeh|faL;l?I8yTcz5QCgz4$GX zzYMqPHF1pk%NG531M{t=Zn!9L$0^%V0P|vCgtD8S9SqJ}EOFteU zMJFvTQ35mX$TEGa?x{@8kG;uk?jBs+|3)rXVI!C9v2K{ud(`m*E zxPhC*G2FrooyzzvbaW7&`3miMy6X$NOB0`Q;yv{AsSik|2iJ)`LvW7Z0>Nd1E0af< z06vmk2ZaYtL_YdqP?{MGL@~3m-$qP>3~u8NMa|F??-C?%k1S0jeqd0;{f8RzWHC>& Y1QxJJSSRfV1j|?<&LC6FY4xM)Bpeg literal 0 HcmV?d00001 diff --git a/out/production/cmpt213.assignment1.packagedeliveriestracker/TextMenu.class b/out/production/cmpt213.assignment1.packagedeliveriestracker/TextMenu.class new file mode 100644 index 0000000000000000000000000000000000000000..97b771014d6fc991e7322149ded0287ebbe49f94 GIT binary patch literal 3588 zcmbVOdv_DZ9lc{cRu*dm0zY^J6foGhF(!~W#4hDN573X$bNUsU|9evCon5UZ*AULZ$J*Wb&2R4f=H5HA z`;XhVJ^*k6e@&weF#~ZE2_yx!EXrj$Y)fZ;_?gR#s^kkK$1KP4PYT2a4$Y;I5=i)# zZ>x5svB`jGB83it)U3MdPb;S`keOH*Q?xXB8!Iw47ciAu2U1(_WZ^rrqPN0Ci-xI zoY~5m_ZI@r^6luyfPq6M2JwmYEUeUgRbiG}C(&IYrsWP_AZI=)QnHduVMsviPh%KI z3_NP$D2}m!fZ_G26sD>N5@}##d0M;21=8vL*+9N*0QrQ8;~LKhM%s>nQGuNSxKBNY z3s$9StJBg~lde~hehOp6SmEDLr7~15r|~3CYVRCN<0*_AIAvl2r|E$JqwZVw@Ps5A zW$6iQnpb|_srk|=DM~YNC@gbbR!##=ns^##Sr!M(S`{W|)+OtLn0OB74NRGs#tePb zth!k*rMMClF3{H?C73M$XiOitz2Vagcf|!0pTegFdMa{BO}I`;`p;Va0-to{KIK1n zH-0x#o`Jxu2K$Ua|3H3Y!d(h5@T|brCV7RDbR6Yr4;4*Z#Pb4emeXpMyi=`5W=UfX zFKRhHE7030k|t?Q(LT5&uuD0<@|xz)E=$`gXB}BlqZ;M1i4w}()(&kjWjT~!dn7?C zVJTc8$Byf(+Gq-N{N50_OojB8YFZ_`ut3icd=X0qY!el59X+9H)OdKxElFDo6Dppl zO0ULgkF}CLu^_#Ida17Hpj?AKf5TuNH&s&JgbqD09D!fZ$Y-vWRIr~@pf$HyPRKw| zc;uOmNc1^r*I7$^!Y%W*Sral-uUuB%th{V9k_n2Rlb)s9jbPkgu;`ZbRCF}v=;*Rl ztJ-pfd)neJ&&}`4d3~n3WgYDfT@q|QU2eGTI50+X^kLbwMzpWk*-`L$a8Ao=G_yVs zn-&NxKkj*QMW2SbLv!4UjgwXf*4*@edAb^{$=b43s?pN=TIyH>9-F!l9^ZNAikmyh zy4nlYyd(X(M~eDe_uoCo=-OhkOy>!XX;t`RHRN3J8n+6CY^kiVdDxk#&d}L(YIR0i zm6eqiRB1^w%$Y8-BYd%t7`|S-({&XRV@7X|u-T#C7^kDR1f?ywb+4o*E$xAhNan*@ zBOdgpT-UGpo~%wQf59!+HYf4RG=7C&8~BYr7Jkb^DUdVRP&A;sq=v(TC_Hv1WyyCv zy5hCgJx(V?0*JO*Ymu~`U9flt zr|^3LGd-)#o3(1AS&_n9)I#uy9eI6rP1v$lQ#AvB5;(A7y?0xNfj0{VBpjw-&Svw)x)XbBZy3-tg+Pwa90|`|-h>5Q7=xU9=BwG5(IuVl1g3Xg<>MJy--YMx(h`k(_1K}GCK>!Ey>L8!n@e>c7R^zwG%O3(}-geuO^n+GDB>9 z9#`2CSc&EpdFCY;yPh#tv2QGPV)w4(rMIy49URO&vWmmk+Qf}J|JJR?Rxxsq?)ULz zF_XKA6VvbElQT?yWM~yiD*oUw2{xUy! z^s>*wAkAI)0=`Hg`q!Q=;b0JpGv|7Plq9~6FELLLaU5U9S2*GvKSsYw#2EX)xsw0o zm!|j+wts|neY=hQ2F@9Hij4yt`3-!NqqLk)^QYw(%>`+tfq|f~?y$2lwN~UBzQyay z%m}s8k?V|nI{^9)pS~M`iz6(^VEp3ym@B@6=WgPKX|2%b$TT&RGh~0?>vulXG1Z8T z#$zLiuEZPY*U|Y#^gURk$s6bxP3q`NjK)V2H}3rNZO->NiO9pHKbmq3(o;j&Mge+p zgv38eQjaonjIGBwVuXY}!EvJ;c^v2Y9acaNMMfhz&Qp-@;ro=8^{=h}Vq^WA=$9Yh zhh(Q0r|={0n;6lD@MAv3ImaMg!K?IZlP5h=^P~mpMdBm<^*?tTeFi%DFP<~twkKLx z{7J;(y(JodV2OTufABL84F0qGgXbR@{O9)vpMF5_7=96W_%*!FdndJhgL?fgxW0)$ PFqUTfkGO%qV8{Oe;`>Z| literal 0 HcmV?d00001 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){ + + } + + +}