-
Notifications
You must be signed in to change notification settings - Fork 0
/
hotelbooking.cpp
73 lines (59 loc) · 2.24 KB
/
hotelbooking.cpp
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
73
//****************************************************************************
// Copyright [2018] <吴文绪>
// 文件名称:hotelbooking.cpp
// 当前版本:1.0
// 摘要:本文件中实现HotelBooking类的成员函数
// 作者:吴文绪
// 完成日期:2018.7.28
//****************************************************************************
#include "hotelbooking.h"
#include "hotel.h"
// 构造函数,按照传入信息构造订单,
// 其中基类AbstractBooking中的数据成员单价 unit_price被初始化为每晚消费*总时长
// amount为订购的房间数
HotelBooking::HotelBooking(const QDate& created_date,
unsigned int price_pernight_perroom,
unsigned int amount,
const Customer& customer,
const Platform& platform,
const Hotel& hotel,
const QDate& check_in_date,
const QDate& check_out_date)
: AbstractBooking(created_date,
price_pernight_perroom * check_in_date.daysTo(check_out_date),
amount, customer, platform, hotel),
check_in_date_(check_in_date), check_out_date_(check_out_date), review_(-1) {
hotel_name_ = hotel.GetName();
}
HotelBooking::~HotelBooking() {}
//****************取值函数*****************************************************
const string& HotelBooking::GetHotelName() const {
return hotel_name_;
}
const string& HotelBooking::GetRoomType() const {
return room_type_;
}
const QDate& HotelBooking::GetCheckInDate() const {
return check_in_date_;
}
const QDate& HotelBooking::GetCheckOutDate() const {
return check_out_date_;
}
unsigned int HotelBooking::GetPricePerNightPerRoom() const {
return GetUnitPrice() / check_in_date_.daysTo(check_out_date_);
}
int HotelBooking::GetRiew() const {
return review_;
}
//****************************************************************************
//***************设值函数*****************************************************
void HotelBooking::SetRoomType(const string& room_type) {
room_type_ = room_type;
}
void HotelBooking::SetRoomNumber(const string& room_number) {
room_number_ = room_number;
}
void HotelBooking::SetRiew(int review) {
review_ = review;
}
//*****************************************************************************