-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathReservationManager.h
More file actions
72 lines (64 loc) · 2.62 KB
/
Copy pathReservationManager.h
File metadata and controls
72 lines (64 loc) · 2.62 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
//Author: Melvin Duran
//Last Update: 11/28/2025
//
// Includes bookStay, modifyStay. and cancelStay methods for the manager class
//
#include <iostream>
#include "Discount.h"
#include "room.h"
#include "Guest.h"
#include "AvailableRooms.h"
#include "Reservation.h"
using namespace std;
class ReservationManager
{
public:
/*
* This method will return a reservation based on the info
* a guest has provided.
* - resID: Unique ID given to Reservation
* - guestInfo: Guest object
* - checkIn: Check in date
* - checkOut: Check out date
* - guesetCount: Number of guests in room
* - resDate: Date that reservation was made
* - sRequest: Special Requests from guest
* - discountType: Type of discount
* - roomChosen: Room that was chosen by guest
* - roomsAvailable: List of available rooms (passed by reference)
*/
Reservation bookStay(int resID, Guest guestInfo, int checkIn, int checkOut, int guestCount,
int resDate, string sRequest, Discount discountType, Room roomChosen, AvailableRooms& roomsAvailable);
/*
* This method will modify(update) a current Reservation or stay depending on the
* reason code
* - “new_room” : Updates room ID for a reservation
* - “new_check_in_date” : Updates check in date for a reservation
* - “new_check_out_date” : Updates check out date for a reservation
* - “new_number_of_guests” : Updates number of guests in a reservation
* - “new_status” : Updates status of the reservation
* - “new_total_price” : Updates total price of the reservation
* - “new_payment_status” : Updates payment status of a reservation
* - “new_special_request” : Updates special requests for a reservation
* - “new_discount” : Updates any discounts for a reservation (only one discount per
* reservation)
*/
void modifyStay(Reservation &guestReservation, string updateNeeded, string newInformation);
/*
* This method will cancel a reservation (set a reservation to cancelled).
* Will also update room availability by setting the roomChosen originally to available.
*/
void cancelStay(Reservation &guestReservation, Room roomChosen, AvailableRooms &roomsAvailable);
/*
* Added Method by Ruben Palomino
* Check in guest to change status to Cheked in
* Will be used in Admin Dashboard
*/
void checkIn(Reservation& guestReservation, AvailableRooms& roomsAvailable);
/*
* Added Method by Ruben Palomino
* Check out guest to change status to Cheked out
* Will be used in Admin Dashboard
*/
void checkOut(Reservation& guestReservation, AvailableRooms& roomsAvailable);
};