source: src/main/java/com/example/rezevirajmasa/demo/dto/ReservationDTO.java

main
Last change on this file was e48199a, checked in by Aleksandar Panovski <apano77@…>, 10 days ago

Final version for DB

  • Property mode set to 100644
File size: 3.8 KB
RevLine 
[deea3c4]1package com.example.rezevirajmasa.demo.dto;
2
[2518b3a]3import com.example.rezevirajmasa.demo.model.PreorderedItem;
[deea3c4]4import com.example.rezevirajmasa.demo.model.Reservation;
5import com.example.rezevirajmasa.demo.model.Restaurant;
[e48199a]6import lombok.Setter;
[deea3c4]7
8import java.math.BigDecimal;
9import java.time.LocalDateTime;
[e15e8d9]10import java.util.List;
[e48199a]11import java.util.stream.Collectors;
[deea3c4]12
[e48199a]13@Setter
[deea3c4]14public class ReservationDTO {
15 private Long reservationID;
16 private String userEmail;
17 private BigDecimal rating;
18 private Long tableNumber;
19 private LocalDateTime reservationDateTime;
20 private LocalDateTime checkInTime;
[2518b3a]21 private Long restaurantId;
[deea3c4]22 private int partySize;
[b67dfd3]23 private String reservationStatus;
[deea3c4]24 private String specialRequests;
25 private String paymentStatus;
[e48199a]26 private List<PreorderedItemDto> preOrderedItems;
[deea3c4]27
28 public ReservationDTO() {
29 }
30
[b67dfd3]31 public ReservationDTO(Long reservationID, String userEmail, BigDecimal rating, Long tableNumber,
32 LocalDateTime reservationDateTime, LocalDateTime checkInTime, Long restaurantId,
33 int partySize, String reservationStatus, String specialRequests,
[e48199a]34 String paymentStatus, List<PreorderedItemDto> preOrderedItems) {
[deea3c4]35 this.reservationID = reservationID;
36 this.userEmail = userEmail;
37 this.rating = rating;
38 this.tableNumber = tableNumber;
39 this.reservationDateTime = reservationDateTime;
40 this.checkInTime = checkInTime;
[b67dfd3]41 this.restaurantId = restaurantId;
[deea3c4]42 this.partySize = partySize;
[b67dfd3]43 this.reservationStatus = reservationStatus;
[deea3c4]44 this.specialRequests = specialRequests;
45 this.paymentStatus = paymentStatus;
[e15e8d9]46 this.preOrderedItems = preOrderedItems;
[deea3c4]47 }
48
49 public ReservationDTO(Reservation reservation) {
50 this.reservationID = reservation.getReservationID();
51 this.userEmail = reservation.getUser().getEmail();
52 this.rating = reservation.getRestaurant().getRating();
53 this.tableNumber = reservation.getTable().getId();
54 this.reservationDateTime = reservation.getReservationDateTime();
55 this.checkInTime = reservation.getCheckInTime();
[2518b3a]56 this.restaurantId = reservation.getRestaurant().getRestaurantId();
[deea3c4]57 this.partySize = reservation.getPartySize();
[b67dfd3]58 this.reservationStatus = reservation.getReservationStatus();
[deea3c4]59 this.specialRequests = reservation.getSpecialRequests();
60 this.paymentStatus = reservation.getPaymentStatus();
[e48199a]61
62 this.preOrderedItems = reservation.getPreOrderedItems().stream()
63 .map(preorderedItem -> new PreorderedItemDto(
64 preorderedItem.getPreorderedItemName(),
65 preorderedItem.getQuantity(),
66 preorderedItem.getPrice(),
67 preorderedItem.getMenu().getMenuID()))
68 .collect(Collectors.toList());
[e15e8d9]69 }
70
[deea3c4]71 public Long getReservationID() {
72 return reservationID;
73 }
74
75 public String getUserEmail() {
76 return userEmail;
77 }
78
79 public BigDecimal getRating() {
80 return rating;
81 }
82
83 public Long getTableNumber() {
84 return tableNumber;
85 }
86
87 public LocalDateTime getReservationDateTime() {
88 return reservationDateTime;
89 }
90
91 public LocalDateTime getCheckInTime() {
92 return checkInTime;
93 }
94
[2518b3a]95 public Long getRestaurantId() {
96 return restaurantId;
[deea3c4]97 }
98
99 public int getPartySize() {
100 return partySize;
101 }
102
103 public String getStatus() {
[b67dfd3]104 return reservationStatus;
[deea3c4]105 }
106
107 public String getSpecialRequests() {
108 return specialRequests;
109 }
110
111 public String getPaymentStatus() {
112 return paymentStatus;
113 }
114
[e48199a]115 public List<PreorderedItemDto> getPreOrderedItems() {
[2518b3a]116 return preOrderedItems;
117 }
118
[f5b256e]119}
Note: See TracBrowser for help on using the repository browser.