2번째 조별과제를 시작했다.


나는 예약 조회, 예약 목록 조회 기능을 맞았다.
hashMap을 사용해서 uuid 예약번호 값을 key 값으로 조회할 수 있게 구현했다.
toString 값을 Override 하지 않으면 주소값이 출력된다.
toString을 Override 안 했을 때 출력값

했을 때 출력값

toString을 Override 한 내용에 맞게 값이 출력된다.
import java.time.LocalDateTime;
import java.util.UUID;
public class Reservation {
private Room room; // 객실
private String customerName; // 고객 이름
private String customerPhoneNumber; // 고객 전화번호
private LocalDateTime reservationDate; // 예약날짜
private UUID reservationNumber; // 예약번호 (uuid)
/* 생성자 */
Reservation(){}
public Reservation(Room room, String customerName, String customerPhoneNumber, LocalDateTime reservationDate, UUID reservationNumber) {
this.room = room;
this.customerName = customerName;
this.customerPhoneNumber = customerPhoneNumber;
this.reservationDate = reservationDate;
this.reservationNumber = reservationNumber;
}
/* getter */
public Room getRoom() {
return room;
}
public String getCustomerName() {
return customerName;
}
public String getCustomerPhoneNumber() {
return customerPhoneNumber;
}
public LocalDateTime getReservationDate() {
return reservationDate;
}
public UUID getReservationNumber() {
return reservationNumber;
}
public LocalDateTime setReservationDate(LocalDateTime reservationDate) {
this.reservationDate = reservationDate;
return reservationDate;
}
public UUID setReservationNumber(UUID reservationNumber) {
this.reservationNumber = reservationNumber;
return reservationNumber;
}
@Override
public String toString(){
return "객실("+room+")"+",\n"+"고객이름:"+customerName+","+"전화번호:"+customerPhoneNumber+","+"예약날짜:"+reservationDate+","+"예약번호:"+reservationNumber;
}
}
@Override
public String toString(){
return "객실("+room+")"+",\n"+"고객이름:"+customerName+","+"전화번호:"+customerPhoneNumber+","+"예약날짜:"+reservationDate+","+"예약번호:"+reservationNumber;
}
public class ReservationContext {
Reservation reservation= new Reservation();
Room room= new Room();
ReservationContext(){
ReservationItems();
}
static List<Reservation> reservationList =new ArrayList<>(); //전체 예약목록
static List<Reservation> reservation1 =new ArrayList<>();
static List<Reservation> reservation2 =new ArrayList<>();
static List<Reservation> reservation3 =new ArrayList<>();
static List<Reservation> reservation4 =new ArrayList<>();
static Map<UUID, List<Reservation>> reservationNumberMap = new HashMap<UUID, List<Reservation>>();
public void ReservationItems(){
Room roomItme1 = new Room(100,52,1000000);
Room roomItme2 = new Room(200,88,2000000);
Room roomItme3 = new Room(300,40,3000000);
Room roomItme4 = new Room(400,45,4000000);
reservation.setReservationDate(LocalDateTime.now());
UUID number1 = reservation.setReservationNumber(UUID.randomUUID());
reservation1.add(new Reservation(roomItme1,"서예린","010-1234-1234",reservation.getReservationDate(),reservation.getReservationNumber()));
reservationNumberMap.put(number1,reservation1);
UUID number2=reservation.setReservationNumber(UUID.randomUUID());
reservation2.add(new Reservation(roomItme2,"홍길동","010-5481-8618",reservation.getReservationDate(),reservation.getReservationNumber()));
reservationNumberMap.put(number2,reservation2);
UUID number3=reservation.setReservationNumber(UUID.randomUUID());
reservation3.add(new Reservation(roomItme3,"김가나","010-1361-5489",reservation.getReservationDate(),reservation.getReservationNumber()));
reservationNumberMap.put(number3,reservation3);
UUID number4=reservation.setReservationNumber(UUID.randomUUID());
reservation4.add(new Reservation(roomItme4,"서예린","010-8688-7848",reservation.getReservationDate(),reservation.getReservationNumber()));
reservationNumberMap.put(number4,reservation4);
}
public static void selectAllReservation(){ //전체 예약리스트 출력
reservationNumberMap.forEach((key, value) -> {
System.out.println(value);
});
}
public void selectReservationUseNumber(UUID reservationNumber){ // 예약번호로 찾는 리스트
System.out.println("예약번호:"+reservationNumber+", 예약정보:"+ reservationNumberMap.get(reservationNumber));
}
}
public static void selectAllReservation(){ //전체 예약리스트 출력
reservationNumberMap.forEach((key, value) -> {
System.out.println(value);
});
}