track account
This commit is contained in:
@@ -59,18 +59,18 @@ public final class TestReservations {
|
||||
|
||||
mgr.UpdateAccount(acct);
|
||||
|
||||
CabinReservation cabin = new CabinReservation(new Address("30 cabin ave", "Carnelian", "CA", "96140"));
|
||||
cabin.setMailing_address(new Address("30 cabin ave", "Carnelian Bay", "CA", "96140"));
|
||||
cabin.setNumberOfBeds(4);
|
||||
cabin.setNumberOfFloors(2);
|
||||
cabin.setNumberOfBedRooms(3);
|
||||
cabin.setSquareFeet(806);
|
||||
cabin.setReservation_start_date(ZonedDateTime.of(2025, 9, 05, 10, 0, 0, 0, ZoneId.of("UTC")));
|
||||
cabin.setReservation_end_date(ZonedDateTime.of(2025, 11, 30, 22, 0, 0, 0, ZoneId.of("UTC")));
|
||||
mgr.addReservation(acct2, cabin);
|
||||
CabinReservation cabin2 = new CabinReservation(new Address("30 cabin ave", "Carnelian", "CA", "96140"));
|
||||
cabin2.setMailing_address(new Address("30 cabin ave", "Carnelian Bay", "CA", "96140"));
|
||||
cabin2.setNumberOfBeds(4);
|
||||
cabin2.setNumberOfFloors(2);
|
||||
cabin2.setNumberOfBedRooms(3);
|
||||
cabin2.setSquareFeet(806);
|
||||
cabin2.setReservation_start_date(ZonedDateTime.of(2025, 9, 05, 10, 0, 0, 0, ZoneId.of("UTC")));
|
||||
cabin2.setReservation_end_date(ZonedDateTime.of(2025, 11, 30, 22, 0, 0, 0, ZoneId.of("UTC")));
|
||||
mgr.addReservation(acct2, cabin2);
|
||||
mgr.UpdateAccount(acct2);
|
||||
|
||||
cabin = new CabinReservation(new Address("40 cabin ave", "Carnelian", "CA", "96140"));
|
||||
CabinReservation cabin = new CabinReservation(new Address("40 cabin ave", "Carnelian", "CA", "96140"));
|
||||
cabin.setMailing_address(new Address("40 cabin ave", "Carnelian Bay", "CA", "96140"));
|
||||
cabin.setNumberOfBeds(4);
|
||||
cabin.setNumberOfFloors(2);
|
||||
|
||||
@@ -7,6 +7,8 @@ import java.nio.file.Files;
|
||||
import java.nio.file.Path;
|
||||
import java.nio.file.Paths;
|
||||
|
||||
import java.util.Collections;
|
||||
|
||||
public class Account {
|
||||
private String account_number = "-99";
|
||||
private String phone_number;
|
||||
@@ -44,24 +46,21 @@ public class Account {
|
||||
return sb.toString();
|
||||
}
|
||||
|
||||
public boolean add(Reservation rsrv) throws ReservationException {
|
||||
public boolean add(Reservation rsrv) throws DuplicateObjectException {
|
||||
boolean result = false;
|
||||
if (rsrv == null) {
|
||||
return false;
|
||||
}
|
||||
try {
|
||||
rsrv.checkValid();
|
||||
result = reservation_list.add(rsrv);
|
||||
|
||||
if (!result) {
|
||||
throw new DuplicateObjectException("Error Reservation already exists.");
|
||||
}
|
||||
} catch (DuplicateObjectException e) {
|
||||
System.out.println(String.format("%s", e.getMessage()));
|
||||
} catch (ReservationException e) {
|
||||
System.out.println(e.toString());
|
||||
} finally {
|
||||
}
|
||||
if(result){
|
||||
/* add account number to reservation for tracking purposes */
|
||||
rsrv.setAccountNumber( this.account_number );
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
@@ -147,4 +146,9 @@ public class Account {
|
||||
this.setMailing_address(acct.mailing_address);
|
||||
}
|
||||
|
||||
public Reservation[] getAllReservations() {
|
||||
// TODO Auto-generated method stub
|
||||
throw new UnsupportedOperationException("Unimplemented method 'getAllReservations'");
|
||||
}
|
||||
|
||||
}
|
||||
@@ -1,7 +1,10 @@
|
||||
package lodge.reservationsystem;
|
||||
|
||||
import java.io.IOException;
|
||||
import java.lang.classfile.Superclass;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Collections;
|
||||
import java.util.List;
|
||||
|
||||
public class AccountList extends ArrayList<Account> {
|
||||
|
||||
@@ -57,4 +60,18 @@ public class AccountList extends ArrayList<Account> {
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
public List<Account> getList() {
|
||||
return Collections.unmodifiableList(this);
|
||||
}
|
||||
|
||||
public List<? extends Reservation> getListOfReservations() {
|
||||
ArrayList<Reservation> readList = new ArrayList<Reservation>();
|
||||
for (Account acct: this){
|
||||
for (Reservation rsrv: acct.getAllReservations()){
|
||||
readList.add(rsrv);
|
||||
}
|
||||
}
|
||||
return Collections.unmodifiableList(readList);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -14,7 +14,7 @@ public class AccountReservationList extends ArrayList<Reservation> {
|
||||
Reservation rsrv = this.find(reservation.getReservation_number());
|
||||
if( rsrv != null ){
|
||||
result = false;
|
||||
throw new DuplicateObjectException(String.format("Error Duplicate: Reservation %s", rsrv.getReservation_number()));
|
||||
throw new DuplicateObjectException(String.format("Error No Dups, Reservation exists: %s.", rsrv.getReservation_number()));
|
||||
}
|
||||
try {
|
||||
result = reservation.checkValid();
|
||||
|
||||
@@ -236,6 +236,9 @@ final class DataRepository {
|
||||
case "reservation_end_date":
|
||||
rsrv.setReservation_end_date(ZonedDateTime.parse(jsonReader.nextString()));
|
||||
break;
|
||||
case "account_number":
|
||||
rsrv.setAccountNumber(jsonReader.nextString());
|
||||
break;
|
||||
|
||||
default:
|
||||
System.out.println(name);
|
||||
|
||||
@@ -26,7 +26,9 @@ public abstract class Reservation{
|
||||
private Integer numberOfFloors;
|
||||
private Integer squareFeet;
|
||||
|
||||
Float price;
|
||||
private Float price;
|
||||
|
||||
protected String accountNumber = null;
|
||||
|
||||
protected Reservation() {
|
||||
numberOfBeds = 1;
|
||||
@@ -48,6 +50,14 @@ public abstract class Reservation{
|
||||
return this.reservation_number;
|
||||
}
|
||||
|
||||
public String getAccountNumber() {
|
||||
return this.accountNumber;
|
||||
}
|
||||
|
||||
protected void setAccountNumber(String account_number) {
|
||||
this.accountNumber = account_number;
|
||||
}
|
||||
|
||||
public void setPhysical_address(Address physical_address) {
|
||||
this.physical_address = physical_address;
|
||||
}
|
||||
@@ -195,6 +205,7 @@ public abstract class Reservation{
|
||||
sb.append("\"reservation_status\": \"").append(reservation_status).append("\",");
|
||||
sb.append("\"reservation_start_date\": \"").append(reservation_start_date).append("\",");
|
||||
sb.append("\"reservation_end_date\": \"").append(reservation_end_date).append("\",");
|
||||
sb.append("\"account_number\": \"").append(accountNumber).append("\",");
|
||||
sb.append("\"physical_address\": ").append(physical_address).append(",");
|
||||
sb.append("\"mailing_address\": ").append(mailing_address).append(",");
|
||||
sb.append("\"kitchen\": \"").append(kitchen).append("\",");
|
||||
|
||||
Reference in New Issue
Block a user