@hyper.software/common-helpers 1.0.63 → 1.0.64
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,10 +1,10 @@
|
|
|
1
1
|
import { Moment } from 'moment';
|
|
2
|
-
import { IBooking, IRoom, IRoomBooking, IRoomTypePricePlanPricingInformation, IRoomTypePricePlanPricingRules } from '@hyper.software/common-models/lib/interfaces';
|
|
2
|
+
import { IBooking, ICompany, IRoom, IRoomBooking, IRoomTypePricePlanPricingInformation, IRoomTypePricePlanPricingRules } from '@hyper.software/common-models/lib/interfaces';
|
|
3
3
|
export declare const getTotalCostForRoomBooking: (roomBooking: IRoomBooking & {
|
|
4
4
|
price?: number;
|
|
5
5
|
pricingRules?: IRoomTypePricePlanPricingRules;
|
|
6
6
|
pricingInformation?: Partial<IRoomTypePricePlanPricingInformation>;
|
|
7
|
-
}, checkinDate: Moment, checkoutDate: Moment, numberOfAdults: number) => number;
|
|
7
|
+
}, checkinDate: Moment, checkoutDate: Moment, numberOfAdults: number, booking?: IBooking, company?: ICompany) => number;
|
|
8
8
|
export declare const getServicesCost: (booking: IBooking) => number;
|
|
9
9
|
export declare const getAccommodationCost: (roomBookings: Array<{
|
|
10
10
|
roomId?: string;
|
|
@@ -13,6 +13,6 @@ export declare const getAccommodationCost: (roomBookings: Array<{
|
|
|
13
13
|
pricingRules?: IRoomTypePricePlanPricingRules;
|
|
14
14
|
personsPayingBreakfast?: number;
|
|
15
15
|
room?: IRoom;
|
|
16
|
-
}>, _checkinDate: Moment, _checkoutDate: Moment, numberOfAdults: number) => number;
|
|
16
|
+
}>, _checkinDate: Moment, _checkoutDate: Moment, numberOfAdults: number, booking?: IBooking, company?: ICompany) => number;
|
|
17
17
|
export declare const ensureValueIsNumber: (value: string | number, isDouble?: boolean) => number | null;
|
|
18
18
|
export declare const removeInvalidCharacters: (value: string, isDouble: boolean) => string;
|
|
@@ -31,7 +31,7 @@ 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 getTotalCostForRoomBooking = function (roomBooking, checkinDate, checkoutDate, numberOfAdults) {
|
|
34
|
+
var getTotalCostForRoomBooking = function (roomBooking, checkinDate, checkoutDate, numberOfAdults, booking, company) {
|
|
35
35
|
var _a, _b, _c;
|
|
36
36
|
if (!roomBooking) {
|
|
37
37
|
return 0;
|
|
@@ -64,6 +64,9 @@ var getTotalCostForRoomBooking = function (roomBooking, checkinDate, checkoutDat
|
|
|
64
64
|
totalCost += calculation;
|
|
65
65
|
checkinDate.add(1, 'days');
|
|
66
66
|
}
|
|
67
|
+
if (booking && company) {
|
|
68
|
+
totalCost += calculateTourismTaxCost(booking, company);
|
|
69
|
+
}
|
|
67
70
|
return totalCost;
|
|
68
71
|
};
|
|
69
72
|
exports.getTotalCostForRoomBooking = getTotalCostForRoomBooking;
|
|
@@ -100,7 +103,14 @@ var getServicesCost = function (booking) {
|
|
|
100
103
|
return servicesCost;
|
|
101
104
|
};
|
|
102
105
|
exports.getServicesCost = getServicesCost;
|
|
103
|
-
var
|
|
106
|
+
var calculateTourismTaxCost = function (booking, company) {
|
|
107
|
+
var _a;
|
|
108
|
+
var tourismTaxRate = ((_a = company === null || company === void 0 ? void 0 : company.receipts) === null || _a === void 0 ? void 0 : _a.tourismTax) || 0;
|
|
109
|
+
var numberOfAdults = booking.numberOfAdults || 0;
|
|
110
|
+
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
|
+
return tourismTaxRate * numberOfAdults * lengthOfStay;
|
|
112
|
+
};
|
|
113
|
+
var getAccommodationCost = function (roomBookings, _checkinDate, _checkoutDate, numberOfAdults, booking, company) {
|
|
104
114
|
if (!_checkinDate || !_checkoutDate) {
|
|
105
115
|
return null;
|
|
106
116
|
}
|
|
@@ -109,7 +119,7 @@ var getAccommodationCost = function (roomBookings, _checkinDate, _checkoutDate,
|
|
|
109
119
|
var totalCost = 0;
|
|
110
120
|
for (var _i = 0, roomBookings_1 = roomBookings; _i < roomBookings_1.length; _i++) {
|
|
111
121
|
var roomBooking = roomBookings_1[_i];
|
|
112
|
-
var costForRoomBooking = (0, exports.getTotalCostForRoomBooking)(roomBooking, (0, moment_1.default)(checkinDate.toISOString()), (0, moment_1.default)(checkoutDate.toISOString()), roomBooking.personsPayingBreakfast || numberOfAdults);
|
|
122
|
+
var costForRoomBooking = (0, exports.getTotalCostForRoomBooking)(roomBooking, (0, moment_1.default)(checkinDate.toISOString()), (0, moment_1.default)(checkoutDate.toISOString()), roomBooking.personsPayingBreakfast || numberOfAdults, booking, company);
|
|
113
123
|
totalCost += costForRoomBooking;
|
|
114
124
|
}
|
|
115
125
|
return totalCost;
|
|
@@ -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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"}
|