@hyper.software/common-helpers 1.0.64 → 1.0.66
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -1,11 +1,14 @@
|
|
|
1
1
|
import { Moment } from 'moment';
|
|
2
|
-
import { IBooking, ICompany, IRoom, IRoomBooking, IRoomTypePricePlanPricingInformation, IRoomTypePricePlanPricingRules } from '@hyper.software/common-models/lib/interfaces';
|
|
2
|
+
import { IBooking, ICompany, IRoom, IRoomBooking, IRoomTypePricePlan, IRoomTypePricePlanPricingInformation, IRoomTypePricePlanPricingRules } from '@hyper.software/common-models/lib/interfaces';
|
|
3
|
+
export declare const getDefaultRoomTypePricePlan: (roomTypePricePlans: IRoomTypePricePlan[]) => IRoomTypePricePlan;
|
|
3
4
|
export declare const getTotalCostForRoomBooking: (roomBooking: IRoomBooking & {
|
|
4
5
|
price?: number;
|
|
5
6
|
pricingRules?: IRoomTypePricePlanPricingRules;
|
|
6
7
|
pricingInformation?: Partial<IRoomTypePricePlanPricingInformation>;
|
|
7
|
-
}, checkinDate: Moment, checkoutDate: Moment, numberOfAdults: number
|
|
8
|
+
}, checkinDate: Moment, checkoutDate: Moment, numberOfAdults: number) => number;
|
|
8
9
|
export declare const getServicesCost: (booking: IBooking) => number;
|
|
10
|
+
export declare const getLengthOfStayRoomBooking: (roomBooking: IRoomBooking) => number;
|
|
11
|
+
export declare const getBreakfastCost: (roomBooking: IRoomBooking, numberOfAdults: any) => number;
|
|
9
12
|
export declare const getAccommodationCost: (roomBookings: Array<{
|
|
10
13
|
roomId?: string;
|
|
11
14
|
breakfastIncluded?: boolean;
|
|
@@ -26,12 +26,20 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
26
26
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
27
27
|
};
|
|
28
28
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
29
|
-
exports.removeInvalidCharacters = exports.ensureValueIsNumber = exports.getAccommodationCost = exports.getServicesCost = exports.getTotalCostForRoomBooking = void 0;
|
|
29
|
+
exports.removeInvalidCharacters = exports.ensureValueIsNumber = exports.getAccommodationCost = exports.getBreakfastCost = exports.getLengthOfStayRoomBooking = exports.getServicesCost = exports.getTotalCostForRoomBooking = exports.getDefaultRoomTypePricePlan = void 0;
|
|
30
30
|
var moment_1 = __importDefault(require("moment"));
|
|
31
31
|
var helpers_1 = require("../../helpers");
|
|
32
32
|
var interfaces_1 = require("@hyper.software/common-models/lib/interfaces");
|
|
33
33
|
var dateService = __importStar(require("../dateService/dateService"));
|
|
34
|
-
var
|
|
34
|
+
var getDefaultRoomTypePricePlan = function (roomTypePricePlans) {
|
|
35
|
+
if (!Array.isArray(roomTypePricePlans)) {
|
|
36
|
+
return null;
|
|
37
|
+
}
|
|
38
|
+
return (roomTypePricePlans.find(function (roomTypePricePlan) { return roomTypePricePlan.type === interfaces_1.CHANNEL_TYPE.BOOKING; }) ||
|
|
39
|
+
roomTypePricePlans.find(function (roomTypePricePlan) { return roomTypePricePlan.type === interfaces_1.CHANNEL_TYPE.DEFAULT; }));
|
|
40
|
+
};
|
|
41
|
+
exports.getDefaultRoomTypePricePlan = getDefaultRoomTypePricePlan;
|
|
42
|
+
var getTotalCostForRoomBooking = function (roomBooking, checkinDate, checkoutDate, numberOfAdults) {
|
|
35
43
|
var _a, _b, _c;
|
|
36
44
|
if (!roomBooking) {
|
|
37
45
|
return 0;
|
|
@@ -53,8 +61,9 @@ var getTotalCostForRoomBooking = function (roomBooking, checkinDate, checkoutDat
|
|
|
53
61
|
})
|
|
54
62
|
: null;
|
|
55
63
|
}
|
|
56
|
-
var
|
|
57
|
-
|
|
64
|
+
var pricingInfo = roomBooking.pricingInformation || {};
|
|
65
|
+
var dateKey = checkinDate.format(helpers_1.DATE_FORMATS.YYYY_MM_DD);
|
|
66
|
+
var cost = roomBooking.pricePerNight || (0, exports.ensureValueIsNumber)(pricingInfo[dateKey]) || 0;
|
|
58
67
|
var calculation = actualNumberOfAdults === maxNumberOfAdults || !discountOrIncrease.value
|
|
59
68
|
? cost
|
|
60
69
|
: (discountOrIncrease === null || discountOrIncrease === void 0 ? void 0 : discountOrIncrease.type) === interfaces_1.DISCOUNT_TYPE.PERCENTAGE
|
|
@@ -64,9 +73,6 @@ var getTotalCostForRoomBooking = function (roomBooking, checkinDate, checkoutDat
|
|
|
64
73
|
totalCost += calculation;
|
|
65
74
|
checkinDate.add(1, 'days');
|
|
66
75
|
}
|
|
67
|
-
if (booking && company) {
|
|
68
|
-
totalCost += calculateTourismTaxCost(booking, company);
|
|
69
|
-
}
|
|
70
76
|
return totalCost;
|
|
71
77
|
};
|
|
72
78
|
exports.getTotalCostForRoomBooking = getTotalCostForRoomBooking;
|
|
@@ -103,6 +109,13 @@ var getServicesCost = function (booking) {
|
|
|
103
109
|
return servicesCost;
|
|
104
110
|
};
|
|
105
111
|
exports.getServicesCost = getServicesCost;
|
|
112
|
+
var getLengthOfStayRoomBooking = function (roomBooking) {
|
|
113
|
+
if (!(roomBooking === null || roomBooking === void 0 ? void 0 : roomBooking.checkinDate) || !(roomBooking === null || roomBooking === void 0 ? void 0 : roomBooking.checkoutDate)) {
|
|
114
|
+
return 0;
|
|
115
|
+
}
|
|
116
|
+
return (0, moment_1.default)(dateService.normalizeDate(roomBooking.checkoutDate)).diff((0, moment_1.default)(dateService.normalizeDate(roomBooking.checkinDate)), 'days');
|
|
117
|
+
};
|
|
118
|
+
exports.getLengthOfStayRoomBooking = getLengthOfStayRoomBooking;
|
|
106
119
|
var calculateTourismTaxCost = function (booking, company) {
|
|
107
120
|
var _a;
|
|
108
121
|
var tourismTaxRate = ((_a = company === null || company === void 0 ? void 0 : company.receipts) === null || _a === void 0 ? void 0 : _a.tourismTax) || 0;
|
|
@@ -110,6 +123,16 @@ var calculateTourismTaxCost = function (booking, company) {
|
|
|
110
123
|
var lengthOfStay = (0, moment_1.default)(dateService.normalizeDate(booking === null || booking === void 0 ? void 0 : booking.checkoutDate)).diff((0, moment_1.default)(dateService.normalizeDate(booking === null || booking === void 0 ? void 0 : booking.checkinDate)));
|
|
111
124
|
return tourismTaxRate * numberOfAdults * lengthOfStay;
|
|
112
125
|
};
|
|
126
|
+
var getBreakfastCost = function (roomBooking, numberOfAdults) {
|
|
127
|
+
var _a, _b, _c;
|
|
128
|
+
if (!(roomBooking === null || roomBooking === void 0 ? void 0 : roomBooking.breakfastIncluded)) {
|
|
129
|
+
return 0;
|
|
130
|
+
}
|
|
131
|
+
var breakfastCost = ((_c = (_b = (_a = roomBooking === null || roomBooking === void 0 ? void 0 : roomBooking.room) === null || _a === void 0 ? void 0 : _a.roomType) === null || _b === void 0 ? void 0 : _b.breakfastInformation) === null || _c === void 0 ? void 0 : _c.cost) || 0;
|
|
132
|
+
var personsPayingBreakfast = (roomBooking === null || roomBooking === void 0 ? void 0 : roomBooking.personsPayingBreakfast) || numberOfAdults;
|
|
133
|
+
return breakfastCost * personsPayingBreakfast;
|
|
134
|
+
};
|
|
135
|
+
exports.getBreakfastCost = getBreakfastCost;
|
|
113
136
|
var getAccommodationCost = function (roomBookings, _checkinDate, _checkoutDate, numberOfAdults, booking, company) {
|
|
114
137
|
if (!_checkinDate || !_checkoutDate) {
|
|
115
138
|
return null;
|
|
@@ -119,8 +142,11 @@ var getAccommodationCost = function (roomBookings, _checkinDate, _checkoutDate,
|
|
|
119
142
|
var totalCost = 0;
|
|
120
143
|
for (var _i = 0, roomBookings_1 = roomBookings; _i < roomBookings_1.length; _i++) {
|
|
121
144
|
var roomBooking = roomBookings_1[_i];
|
|
122
|
-
var costForRoomBooking = (0, exports.getTotalCostForRoomBooking)(roomBooking, (0, moment_1.default)(checkinDate.toISOString()), (0, moment_1.default)(checkoutDate.toISOString()), roomBooking.personsPayingBreakfast || numberOfAdults
|
|
145
|
+
var costForRoomBooking = (0, exports.getTotalCostForRoomBooking)(roomBooking, (0, moment_1.default)(checkinDate.toISOString()), (0, moment_1.default)(checkoutDate.toISOString()), roomBooking.personsPayingBreakfast || numberOfAdults);
|
|
123
146
|
totalCost += costForRoomBooking;
|
|
147
|
+
if (booking && company) {
|
|
148
|
+
totalCost += calculateTourismTaxCost(booking, company);
|
|
149
|
+
}
|
|
124
150
|
}
|
|
125
151
|
return totalCost;
|
|
126
152
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bookingsService.js","sourceRoot":"","sources":["../../../src/services/bookingService/bookingsService.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,kDAAuC;AACvC,yCAAqD;AACrD,
|
|
1
|
+
{"version":3,"file":"bookingsService.js","sourceRoot":"","sources":["../../../src/services/bookingService/bookingsService.ts"],"names":[],"mappings":"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"}
|