@vendit-dev/thirdparty-adapters 0.7.29 → 0.7.30

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.
@@ -121,12 +121,15 @@ var getMealConditionText = function (_mealCondition) {
121
121
  function groupByRoomWithTotalCounts(roomAndRoomRateInformations, totalRoomCount) {
122
122
  var groupedRooms = Array(totalRoomCount).fill([]);
123
123
  return roomAndRoomRateInformations.reduce(function (acc, curr) {
124
- var RoomTypeCode = curr.RoomInformation.RoomTypeCode, RoomDate = curr.RoomRateInformation.RoomDate;
124
+ var RoomTypeCode = curr.RoomInformation.RoomTypeCode, RoomRateInformation = curr.RoomRateInformation;
125
+ var roomRateInformation = (0, tl_lincoln_types_1.makeArray)(RoomRateInformation);
125
126
  var existingRooms = acc.find(function (groupedRoom) {
126
127
  var _a, _b;
127
- return groupedRoom.length > 0
128
- && ((_b = (_a = groupedRoom[0]) === null || _a === void 0 ? void 0 : _a.RoomInformation) === null || _b === void 0 ? void 0 : _b.RoomTypeCode) === RoomTypeCode
129
- && !groupedRoom.some(function (room) { return room.RoomRateInformation.RoomDate === RoomDate; });
128
+ return groupedRoom.length > 0 &&
129
+ ((_b = (_a = groupedRoom[0]) === null || _a === void 0 ? void 0 : _a.RoomInformation) === null || _b === void 0 ? void 0 : _b.RoomTypeCode) === RoomTypeCode &&
130
+ !groupedRoom.some(function (room) {
131
+ return (0, tl_lincoln_types_1.makeArray)(room.RoomRateInformation).some(function (r) { return r.RoomDate === roomRateInformation[0].RoomDate; });
132
+ });
130
133
  });
131
134
  if (existingRooms) {
132
135
  existingRooms.push(curr);
@@ -199,61 +202,81 @@ function formatPhoneNumber(text) {
199
202
  return onlyNumberText;
200
203
  }
201
204
  var makePaymentInfo = function (_a) {
202
- var datas = _a.datas, basicInformation = _a.basicInformation, reservationType = _a.reservationType, OptionList = _a.OptionList, PointDiscountList = _a.PointDiscountList;
203
- var paymentInfo = datas.reduce(function (paymentInput, _a) {
204
- var _b, _c, _d, _e;
205
- var RoomInfo = _a.RoomInformation, RoomRateInformation = _a.RoomRateInformation;
206
- var roomAmount = (_b = RoomRateInformation === null || RoomRateInformation === void 0 ? void 0 : RoomRateInformation.TotalPerRoomRate) !== null && _b !== void 0 ? _b : (((RoomRateInformation === null || RoomRateInformation === void 0 ? void 0 : RoomRateInformation.PerMaleRate) || 0)
207
- * (RoomInfo.RoomPaxMaleCount || 0)
208
- + ((RoomRateInformation === null || RoomRateInformation === void 0 ? void 0 : RoomRateInformation.PerFemaleRate)
209
- || (RoomRateInformation === null || RoomRateInformation === void 0 ? void 0 : RoomRateInformation.PerMaleRate)
210
- || 0)
211
- * (RoomInfo.RoomPaxFemaleCount || 0)
212
- || 0);
213
- paymentInput.amount += roomAmount;
214
- (_c = paymentInput.segments) === null || _c === void 0 ? void 0 : _c.push({
215
- amount: roomAmount,
216
- servedAt: RoomRateInformation.RoomDate,
217
- referenceType: 'RESERVATION',
218
- referenceSubType: reservationType,
219
- });
220
- if (basicInformation.MealCondition !== 'Other'
221
- && basicInformation.MealCondition !== 'WithoutMeal') {
222
- paymentInput.amount += (RoomRateInformation === null || RoomRateInformation === void 0 ? void 0 : RoomRateInformation.TotalPerRoomServiceFee) || 0;
223
- (_d = paymentInput.segments) === null || _d === void 0 ? void 0 : _d.push({
224
- amount: (RoomRateInformation === null || RoomRateInformation === void 0 ? void 0 : RoomRateInformation.TotalPerRoomServiceFee) || 0,
225
- servedAt: RoomRateInformation.RoomDate,
226
- referenceType: 'SERVICE',
227
- referenceSubType: (0, exports.formattedNameForMealCondition)(basicInformation.MealCondition, basicInformation.SpecificMealCondition),
228
- });
229
- }
230
- if ((OptionList === null || OptionList === void 0 ? void 0 : OptionList.length) > 0) {
231
- (_e = paymentInput.segments) === null || _e === void 0 ? void 0 : _e.push.apply(_e, OptionList.map(function (option) { return ({
232
- amount: 0,
233
- servedAt: option.OptionDate,
234
- referenceType: 'SERVICE',
235
- referenceSubType: option.Name,
236
- }); }));
237
- }
238
- return Object.assign(paymentInput, {
205
+ var datas = _a.datas, basicInformation = _a.basicInformation, reservationType = _a.reservationType, OptionList = _a.OptionList, PointDiscountList = _a.PointDiscountList, basicRateInformation = _a.basicRateInformation;
206
+ var paymentInfo = (basicRateInformation === null || basicRateInformation === void 0 ? void 0 : basicRateInformation.Payment) === 'Hotel Collect'
207
+ ? {
208
+ amount: basicRateInformation.TotalAccommodationCharge || 0,
209
+ commissionAmount: basicRateInformation.TotalAccommodationCommissionAmount || 0,
239
210
  reservationType: reservationType,
211
+ segments: [],
212
+ externalRoomTypeCode: '',
213
+ }
214
+ : datas.reduce(function (paymentInput, _a) {
215
+ var _b, _c, _d, _e, _f, _g, _h, _j, _k;
216
+ var RoomInfo = _a.RoomInformation, RoomRateInformation = _a.RoomRateInformation;
217
+ var roomRateInformations = (0, tl_lincoln_types_1.makeArray)(RoomRateInformation);
218
+ var roomAmount = roomRateInformations.reduce(function (acc, curr) {
219
+ return (acc +
220
+ (curr.TotalPerRoomRate ||
221
+ 0 ||
222
+ (curr.PerMaleRate || 0) * (RoomInfo.RoomPaxMaleCount || 0) +
223
+ (curr.PerFemaleRate || curr.PerMaleRate || 0) *
224
+ (RoomInfo.RoomPaxFemaleCount || 0) ||
225
+ 0));
226
+ }, 0);
227
+ paymentInput.amount += roomAmount;
228
+ for (var _i = 0, roomRateInformations_1 = roomRateInformations; _i < roomRateInformations_1.length; _i++) {
229
+ var roomRateInformation = roomRateInformations_1[_i];
230
+ if (roomRateInformation.TotalPerRoomRate) {
231
+ (_b = paymentInput.segments) === null || _b === void 0 ? void 0 : _b.push({
232
+ amount: roomRateInformation.TotalPerRoomRate,
233
+ servedAt: roomRateInformation.RoomDate,
234
+ referenceType: 'RESERVATION',
235
+ referenceSubType: reservationType,
236
+ });
237
+ }
238
+ }
239
+ if (basicInformation.MealCondition !== 'Other' &&
240
+ basicInformation.MealCondition !== 'WithoutMeal') {
241
+ for (var _l = 0, roomRateInformations_2 = roomRateInformations; _l < roomRateInformations_2.length; _l++) {
242
+ var roomRateInformation = roomRateInformations_2[_l];
243
+ paymentInput.amount +=
244
+ roomRateInformation.TotalPerRoomServiceFee || 0;
245
+ (_c = paymentInput.segments) === null || _c === void 0 ? void 0 : _c.push({
246
+ amount: roomRateInformation.TotalPerRoomServiceFee || 0,
247
+ servedAt: roomRateInformation.RoomDate,
248
+ referenceType: 'SERVICE',
249
+ referenceSubType: (0, exports.formattedNameForMealCondition)(basicInformation.MealCondition, basicInformation.SpecificMealCondition),
250
+ });
251
+ }
252
+ }
253
+ if ((OptionList === null || OptionList === void 0 ? void 0 : OptionList.length) > 0) {
254
+ (_d = paymentInput.segments) === null || _d === void 0 ? void 0 : _d.push.apply(_d, OptionList.map(function (option) { return ({
255
+ amount: 0,
256
+ servedAt: option.OptionDate,
257
+ referenceType: 'SERVICE',
258
+ referenceSubType: option.Name,
259
+ }); }));
260
+ }
261
+ return Object.assign(paymentInput, {
262
+ reservationType: reservationType,
263
+ type: 'platform',
264
+ externalRoomTypeCode: (_e = RoomInfo.NetRmTypeGroupCode) !== null && _e !== void 0 ? _e : (_g = (_f = datas[0]) === null || _f === void 0 ? void 0 : _f.RoomInformation) === null || _g === void 0 ? void 0 : _g.NetRmTypeGroupCode,
265
+ externalRoomTypeName: (_h = RoomInfo.RoomTypeName) !== null && _h !== void 0 ? _h : (_k = (_j = datas[0]) === null || _j === void 0 ? void 0 : _j.RoomInformation) === null || _k === void 0 ? void 0 : _k.RoomTypeName,
266
+ useStartAt: "".concat(roomRateInformations[0].RoomDate).concat((basicInformation === null || basicInformation === void 0 ? void 0 : basicInformation.CheckInTime)
267
+ ? " ".concat(basicInformation === null || basicInformation === void 0 ? void 0 : basicInformation.CheckInTime)
268
+ : ''),
269
+ });
270
+ }, {
271
+ amount: 0,
272
+ commissionAmount: 0,
273
+ reservationType: 'lodge',
274
+ segments: [],
275
+ externalRoomTypeCode: '',
276
+ externalRoomTypeName: '',
240
277
  type: 'platform',
241
- externalRoomTypeCode: datas[0].RoomInformation.NetRmTypeGroupCode,
242
- externalRoomTypeName: datas[0].RoomInformation.RoomTypeName,
243
- useStartAt: "".concat(datas[0].RoomRateInformation.RoomDate).concat((basicInformation === null || basicInformation === void 0 ? void 0 : basicInformation.CheckInTime)
244
- ? " ".concat(basicInformation === null || basicInformation === void 0 ? void 0 : basicInformation.CheckInTime)
245
- : ''),
278
+ useStartAt: '',
246
279
  });
247
- }, {
248
- amount: 0,
249
- commissionAmount: 0,
250
- reservationType: 'lodge',
251
- segments: [],
252
- externalRoomTypeCode: '',
253
- externalRoomTypeName: '',
254
- type: 'platform',
255
- useStartAt: '',
256
- });
257
280
  if (PointDiscountList && (PointDiscountList === null || PointDiscountList === void 0 ? void 0 : PointDiscountList.length) > 0) {
258
281
  paymentInfo.amount -= PointDiscountList.reduce(function (acc, point) { return acc + point.PointsDiscount; }, 0);
259
282
  // auto segment 로 생성되도록 처리
@@ -298,9 +321,9 @@ var refineReservationData = function (infoTravelXML) {
298
321
  name: BasicInformation.GuestOrGroupNameKanjiName,
299
322
  email: Member === null || Member === void 0 ? void 0 : Member.UserMailAddr,
300
323
  reservedBy: SalesOfficeInformation === null || SalesOfficeInformation === void 0 ? void 0 : SalesOfficeInformation.SalesOfficeCompanyName,
301
- memo: "".concat((Member === null || Member === void 0 ? void 0 : Member.UserKana)
302
- || (Member === null || Member === void 0 ? void 0 : Member.UserName)
303
- || "".concat(BasicInformation.GuestOrGroupNameKanjiName), " ").concat(BasicInformation === null || BasicInformation === void 0 ? void 0 : BasicInformation.PackagePlanName, "\n").concat((OtherInfo === null || OtherInfo === void 0 ? void 0 : OtherInfo.GuestRequest)
324
+ memo: "".concat((Member === null || Member === void 0 ? void 0 : Member.UserKana) ||
325
+ (Member === null || Member === void 0 ? void 0 : Member.UserName) ||
326
+ "".concat(BasicInformation.GuestOrGroupNameKanjiName), " ").concat(BasicInformation === null || BasicInformation === void 0 ? void 0 : BasicInformation.PackagePlanName, "\n").concat((OtherInfo === null || OtherInfo === void 0 ? void 0 : OtherInfo.GuestRequest)
304
327
  ? "[\uC694\uCCAD\uC0AC\uD56D]\n".concat(OtherInfo.GuestRequest)
305
328
  : '', "\n").concat((OtherInfo === null || OtherInfo === void 0 ? void 0 : OtherInfo.AdditionalInformation)
306
329
  ? "[\uCD94\uAC00\uC815\uBCF4]\n".concat(OtherInfo.AdditionalInformation)
@@ -319,21 +342,22 @@ var refineReservationData = function (infoTravelXML) {
319
342
  useStartAt: useStartAt,
320
343
  platform: tl_lincoln_ota_1.TL_LINCOLN_TO_VENDIT_OTA_MAP[(SalesOfficeInformation === null || SalesOfficeInformation === void 0 ? void 0 : SalesOfficeInformation.SalesOfficeCompanyName) || 'ANONYMOUS'] || (SalesOfficeInformation === null || SalesOfficeInformation === void 0 ? void 0 : SalesOfficeInformation.SalesOfficeCompanyName),
321
344
  externalPlatformCode: SalesOfficeInformation === null || SalesOfficeInformation === void 0 ? void 0 : SalesOfficeInformation.SalesOfficeCode,
322
- externalPlatformName: (SalesOfficeInformation === null || SalesOfficeInformation === void 0 ? void 0 : SalesOfficeInformation.SalesOfficeCompanyName)
323
- || (SalesOfficeInformation === null || SalesOfficeInformation === void 0 ? void 0 : SalesOfficeInformation.SalesOfficeName),
345
+ externalPlatformName: (SalesOfficeInformation === null || SalesOfficeInformation === void 0 ? void 0 : SalesOfficeInformation.SalesOfficeCompanyName) ||
346
+ (SalesOfficeInformation === null || SalesOfficeInformation === void 0 ? void 0 : SalesOfficeInformation.SalesOfficeName),
324
347
  },
325
348
  reservations: groupedRooms.map(function (key, index) {
326
349
  var _a, _b, _c, _d;
327
350
  var datas = groupedRooms[index];
328
351
  var roomsSortedByDate = datas.sort(function (a, b) {
329
- return new Date(a.RoomRateInformation.RoomDate).valueOf()
330
- - new Date(b.RoomRateInformation.RoomDate).valueOf();
352
+ return new Date((0, tl_lincoln_types_1.makeArray)(a.RoomRateInformation)[0].RoomDate).valueOf() -
353
+ new Date((0, tl_lincoln_types_1.makeArray)(b.RoomRateInformation)[0].RoomDate).valueOf();
331
354
  });
332
- var reservationType = Number(Allotment.UseDiv) === 1
333
- && BasicInformation.CheckInDate === BasicInformation.CheckOutDate
355
+ var reservationType = Number(Allotment.UseDiv) === 1 &&
356
+ BasicInformation.CheckInDate === BasicInformation.CheckOutDate
334
357
  ? 'rent'
335
358
  : 'lodge';
336
- var CheckInDate = roomsSortedByDate[0].RoomRateInformation.RoomDate;
359
+ var CheckInDate = (0, tl_lincoln_types_1.makeArray)(roomsSortedByDate[0].RoomRateInformation)[0]
360
+ .RoomDate;
337
361
  var CheckOutDate = (_a = (0, moment_1.default)(CheckInDate)
338
362
  .add(BasicInformation === null || BasicInformation === void 0 ? void 0 : BasicInformation.Nights, 'days')) === null || _a === void 0 ? void 0 : _a.format('YYYY-MM-DD');
339
363
  var OptionList = Option ? (0, tl_lincoln_types_1.makeArray)(Option) : [];
@@ -344,6 +368,7 @@ var refineReservationData = function (infoTravelXML) {
344
368
  reservationType: reservationType,
345
369
  OptionList: OptionList,
346
370
  PointDiscountList: PointDiscountList,
371
+ basicRateInformation: BasicRateInformation,
347
372
  });
348
373
  return {
349
374
  useStartAt: "".concat(CheckInDate).concat((BasicInformation === null || BasicInformation === void 0 ? void 0 : BasicInformation.CheckInTime)
@@ -353,19 +378,19 @@ var refineReservationData = function (infoTravelXML) {
353
378
  ? " ".concat(BasicInformation === null || BasicInformation === void 0 ? void 0 : BasicInformation.CheckOutTime)
354
379
  : ''),
355
380
  sleeps: isGroupReservation
356
- ? (BasicInformation.GrandTotalPaxCount || 0)
357
- / BasicInformation.TotalRoomCount
358
- || ((_b = datas[0].RoomInformation) === null || _b === void 0 ? void 0 : _b.PerRoomPaxCount)
381
+ ? (BasicInformation.GrandTotalPaxCount || 0) /
382
+ BasicInformation.TotalRoomCount ||
383
+ ((_b = datas[0].RoomInformation) === null || _b === void 0 ? void 0 : _b.PerRoomPaxCount)
359
384
  : (_d = (_c = roomsSortedByDate[0]) === null || _c === void 0 ? void 0 : _c.RoomInformation) === null || _d === void 0 ? void 0 : _d.PerRoomPaxCount,
360
385
  guestName: "".concat(BasicInformation.GuestOrGroupNameKanjiName ||
361
386
  BasicInformation.GuestOrGroupNameSingleByte ||
362
387
  'Anonymous').concat(isGroupReservation ? " ".concat(index + 1) : ''),
363
388
  externalPlatformCode: SalesOfficeInformation === null || SalesOfficeInformation === void 0 ? void 0 : SalesOfficeInformation.SalesOfficeCode,
364
- externalPlatformName: (SalesOfficeInformation === null || SalesOfficeInformation === void 0 ? void 0 : SalesOfficeInformation.SalesOfficeCompanyName)
365
- || (SalesOfficeInformation === null || SalesOfficeInformation === void 0 ? void 0 : SalesOfficeInformation.SalesOfficeName),
389
+ externalPlatformName: (SalesOfficeInformation === null || SalesOfficeInformation === void 0 ? void 0 : SalesOfficeInformation.SalesOfficeCompanyName) ||
390
+ (SalesOfficeInformation === null || SalesOfficeInformation === void 0 ? void 0 : SalesOfficeInformation.SalesOfficeName),
366
391
  cmsOtaNumber: "".concat(BasicInformation.TravelAgencyBookingNumber).concat(isGroupReservation ? "v".concat(index + 1) : ''),
367
- cmsProductName: roomsSortedByDate[0].RoomInformation.RoomTypeName
368
- || BasicInformation.PackagePlanName,
392
+ cmsProductName: roomsSortedByDate[0].RoomInformation.RoomTypeName ||
393
+ BasicInformation.PackagePlanName,
369
394
  platform: tl_lincoln_ota_1.TL_LINCOLN_TO_VENDIT_OTA_MAP[(SalesOfficeInformation === null || SalesOfficeInformation === void 0 ? void 0 : SalesOfficeInformation.SalesOfficeCompanyName) || 'ANONYMOUS'] || (SalesOfficeInformation === null || SalesOfficeInformation === void 0 ? void 0 : SalesOfficeInformation.SalesOfficeCompanyName),
370
395
  otaNumber: "".concat(tl_lincoln_ota_1.TL_LINCOLN_TO_VENDIT_OTA_MAP[(SalesOfficeInformation === null || SalesOfficeInformation === void 0 ? void 0 : SalesOfficeInformation.SalesOfficeCompanyName) || 'ANONYMOUS'] || (SalesOfficeInformation === null || SalesOfficeInformation === void 0 ? void 0 : SalesOfficeInformation.SalesOfficeCompanyName), "|").concat("".concat(BasicInformation.TravelAgencyBookingNumber)),
371
396
  externalRoomTypeCode: roomsSortedByDate[0].RoomInformation.NetRmTypeGroupCode,
@@ -373,10 +398,10 @@ var refineReservationData = function (infoTravelXML) {
373
398
  type: reservationType,
374
399
  phone: formatPhoneNumber("".concat((Member === null || Member === void 0 ? void 0 : Member.UserTel) || Basic.PhoneNumber || '')),
375
400
  status: status,
376
- memoContent: "".concat((Member === null || Member === void 0 ? void 0 : Member.UserKana)
377
- || (Member === null || Member === void 0 ? void 0 : Member.UserName)
378
- || "".concat(BasicInformation.GuestOrGroupNameKanjiName), " ").concat(roomsSortedByDate[0].RoomInformation.RoomTypeName
379
- || BasicInformation.PackagePlanName, "\n").concat((OtherInfo === null || OtherInfo === void 0 ? void 0 : OtherInfo.GuestRequest)
401
+ memoContent: "".concat((Member === null || Member === void 0 ? void 0 : Member.UserKana) ||
402
+ (Member === null || Member === void 0 ? void 0 : Member.UserName) ||
403
+ "".concat(BasicInformation.GuestOrGroupNameKanjiName), " ").concat(roomsSortedByDate[0].RoomInformation.RoomTypeName ||
404
+ BasicInformation.PackagePlanName, "\n").concat((OtherInfo === null || OtherInfo === void 0 ? void 0 : OtherInfo.GuestRequest)
380
405
  ? "[\uC694\uCCAD\uC0AC\uD56D]\n".concat(OtherInfo.GuestRequest)
381
406
  : '', "\n").concat((OtherInfo === null || OtherInfo === void 0 ? void 0 : OtherInfo.AdditionalInformation)
382
407
  ? "[\uCD94\uAC00\uC815\uBCF4]\n".concat(OtherInfo.AdditionalInformation)
@@ -386,8 +411,8 @@ var refineReservationData = function (infoTravelXML) {
386
411
  paymentInfo: Object.assign(paymentInfo, !isFullyPaid && {
387
412
  amount: (DepositList === null || DepositList === void 0 ? void 0 : DepositList.reduce(function (acc, deposit) { return acc + ((deposit === null || deposit === void 0 ? void 0 : deposit.DepositAmount) || 0); }, 0)) || 0,
388
413
  isFullyPaid: false,
389
- outstandingAmount: paymentInfo.amount
390
- - ((DepositList === null || DepositList === void 0 ? void 0 : DepositList.reduce(function (acc, deposit) { return acc + ((deposit === null || deposit === void 0 ? void 0 : deposit.DepositAmount) || 0); }, 0)) || 0),
414
+ outstandingAmount: paymentInfo.amount -
415
+ ((DepositList === null || DepositList === void 0 ? void 0 : DepositList.reduce(function (acc, deposit) { return acc + ((deposit === null || deposit === void 0 ? void 0 : deposit.DepositAmount) || 0); }, 0)) || 0),
391
416
  }),
392
417
  };
393
418
  }),
@@ -228,7 +228,7 @@ export interface RoomAndRoomRateInformation {
228
228
  PlanGroupCode?: string | number;
229
229
  RepresentativePersonName?: string;
230
230
  };
231
- RoomRateInformation: RoomRateInformation & {
231
+ RoomRateInformation: SingleOrArray<RoomRateInformation & {
232
232
  PerMaleRate?: number;
233
233
  PerFemaleRate?: number;
234
234
  RoomRatePaxMaleCount?: number;
@@ -243,7 +243,7 @@ export interface RoomAndRoomRateInformation {
243
243
  RoomRateChildB50Request?: string;
244
244
  RoomRateChildC30Request?: string;
245
245
  RoomRateChildDNoneRequest?: string;
246
- };
246
+ }>;
247
247
  GuestInformation?: GuestInformation;
248
248
  }
249
249
  export interface RoomRateInformation {
@@ -293,7 +293,7 @@ export interface RoomAndGuestInformation {
293
293
  }
294
294
  export interface RoomAndGuestList {
295
295
  RoomInformation: RoomInformation;
296
- RoomRateInformation: RoomRateInformation;
296
+ RoomRateInformation: SingleOrArray<RoomRateInformation>;
297
297
  GuestInformation?: GuestInformation;
298
298
  }
299
299
  export interface GuestInformation {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vendit-dev/thirdparty-adapters",
3
- "version": "0.7.29",
3
+ "version": "0.7.30",
4
4
  "description": "Third party adapters between v-cloud and other PMS/CMS providers.",
5
5
  "main": "lib/index.js",
6
6
  "scripts": {
package/test.json ADDED
@@ -0,0 +1,58 @@
1
+ [
2
+ {
3
+ "type": "CREATED",
4
+ "externalId": "1116603917",
5
+ "externalRevision": "1",
6
+ "guestOrGroupInfo": {
7
+ "isGroupReservation": false,
8
+ "name": "JUNG ARIN",
9
+ "reservedBy": "Trip.com Group(new)",
10
+ "memo": "JUNG/ARIN 스위트 - 1478366334\n[요청사항]\nQuiet room preferred;Good view;Away from elevator;Basic Deal;For contacting the guest please dial: +82269178710(verification code:797800)or +827079157125(verification code:797800);Please contact guest by system generated mail (jejucenterpoint.337smd7gml930rt@guest.trip.com), preferred language: (Korean);This booking was made through Trip.com, a Ctrip Group brand.;Customer phone number:82-1062719614;Contact guest by Korean; Contact Trip.com via hotelSupport@trip.com\n[추가정보]\nGuest Names: JUNG ARIN; JUNG HOEGYEONG; JUNG WOOHYEOK; LEE JAESUN\n성인 2명, 아동 2명\n[결제정보]\n지불수단: 정보 없음\n\n수수료율: 정보 없음\n수수료 총액: 정보 없음\n[할인정보]\n",
11
+ "status": "reserved",
12
+ "phone": "",
13
+ "useExpireAt": "2025-08-07",
14
+ "useStartAt": "2025-08-06 15:00:00",
15
+ "platform": "TRIPDOTCOM",
16
+ "externalPlatformCode": "2Z",
17
+ "externalPlatformName": "Trip.com Group(new)"
18
+ },
19
+ "reservations": [
20
+ {
21
+ "useStartAt": "2025-08-06 15:00:00",
22
+ "useExpireAt": "2025-08-07",
23
+ "sleeps": 4,
24
+ "guestName": "JUNG ARIN",
25
+ "externalPlatformCode": "2Z",
26
+ "externalPlatformName": "Trip.com Group(new)",
27
+ "cmsOtaNumber": "1400819165251503",
28
+ "cmsProductName": "Suite - 515064650",
29
+ "platform": "TRIPDOTCOM",
30
+ "otaNumber": "TRIPDOTCOM|1400819165251503",
31
+ "externalRoomTypeCode": 4,
32
+ "externalRoomTypeName": "Suite - 515064650",
33
+ "type": "lodge",
34
+ "phone": "",
35
+ "status": "RESERVED",
36
+ "memoContent": "JUNG/ARIN Suite - 515064650\n[요청사항]\nQuiet room preferred;Good view;Away from elevator;Basic Deal;For contacting the guest please dial: +82269178710(verification code:797800)or +827079157125(verification code:797800);Please contact guest by system generated mail (jejucenterpoint.337smd7gml930rt@guest.trip.com), preferred language: (Korean);This booking was made through Trip.com, a Ctrip Group brand.;Customer phone number:82-1062719614;Contact guest by Korean; Contact Trip.com via hotelSupport@trip.com\n[추가정보]\nGuest Names: JUNG ARIN; JUNG HOEGYEONG; JUNG WOOHYEOK; LEE JAESUN\n[인원정보]\n성인 2명, 아동 2명\n",
37
+ "paymentInfo": {
38
+ "amount": 110500,
39
+ "commissionAmount": 0,
40
+ "reservationType": "lodge",
41
+ "segments": [
42
+ {
43
+ "amount": 110500,
44
+ "servedAt": "2025-08-06",
45
+ "referenceType": "RESERVATION",
46
+ "referenceSubType": "lodge"
47
+ }
48
+ ],
49
+ "externalRoomTypeCode": 4,
50
+ "externalRoomTypeName": "Suite - 515064650",
51
+ "type": "platform",
52
+ "useStartAt": "2025-08-06 15:00:00"
53
+ }
54
+ }
55
+ ],
56
+ "rawData": "{\"?xml\":\"\",\"AllotmentBookingReport\":{\"TransactionType\":{\"DataFrom\":\"FromTravelAgency\",\"DataClassification\":\"NewBookReport\",\"DataID\":\"1116603917-1\",\"SystemDate\":\"2025-07-22\"},\"AccommodationInformation\":{\"AccommodationName\":\"Jeju Centerpoint N\",\"AccommodationCode\":109485531},\"SalesOfficeInformation\":{\"SalesOfficeCompanyName\":\"Trip.com Group(new)\",\"SalesOfficeName\":\"Trip.com Group(new)\",\"SalesOfficeCode\":\"2Z\",\"SalesOfficeEmail\":\"hotelSupport@trip.com\",\"SalesOfficePhoneNumber\":8216883666},\"BasicInformation\":{\"TravelAgencyBookingNumber\":1400819165251503,\"TravelAgencyBookingDate\":\"2025-07-22\",\"TravelAgencyBookingTime\":\"07:50:53\",\"TravelAgencyReportNumber\":4972,\"GuestOrGroupNameSingleByte\":\"JUNG ARIN\",\"GuestOrGroupNameKanjiName\":\"JUNG ARIN\",\"CheckInDate\":\"2025-08-06\",\"CheckInTime\":\"15:00:00\",\"CheckOutDate\":\"2025-08-07\",\"Nights\":1,\"TotalRoomCount\":1,\"GrandTotalPaxCount\":4,\"TotalPaxMaleCount\":2,\"TotalChildB50Count\":2,\"PackagePlanName\":\"스위트 - 1478366334\",\"PackagePlanCode\":1478366334,\"MealCondition\":\"WithoutMeal\",\"SpecificMealCondition\":\"None Specified\",\"OtherServiceInformation\":\"Method of settlement: Travel company settlement\\nQuiet room preferred;Good view;Away from elevator;Basic Deal;For contacting the guest please dial: +82269178710(verification code:797800)or +827079157125(verification code:797800);Please contact guest by system generated mail (jejucenterpoint.337smd7gml930rt@guest.trip.com), preferred language: (Korean);This booking was made through Trip.com, a Ctrip Group brand.;Customer phone number:82-1062719614;Contact guest by Korean; Contact Trip.com via hotelSupport@trip.com\\nGuest Names: JUNG ARIN; JUNG HOEGYEONG; JUNG WOOHYEOK; LEE JAESUN\"},\"BasicRateInformation\":{\"RoomRateOrPersonalRate\":\"RoomRate\",\"TaxServiceFee\":\"IncludingServiceAndTax\",\"TotalAccommodationCharge\":110500},\"RoomAndGuestInformation\":{\"RoomAndGuestList\":{\"RoomInformation\":{\"RoomTypeCode\":515064650,\"RoomTypeName\":\"Suite - 515064650\",\"PerRoomPaxCount\":4,\"RoomPaxMaleCount\":2,\"RoomChildB50Count\":2},\"RoomRateInformation\":[{\"RoomDate\":\"2025-08-06\",\"TotalPerRoomRate\":110500},{\"RoomDate\":\"2025-08-06\"}]}},\"RisaplsInformation\":{\"RisaplsCommonInformation\":{\"Basic\":{\"SalesOfficeCompanyCode\":\"2Z\",\"TelegramDiv\":\"\",\"RisaplsDataID\":\"\",\"RisaplsTelegramNumber\":\"\",\"TelegramData\":\"NewBook Trip.com Group(new) SNT-NET 07-22 07:50 (2Z)\\nBooking No.: 1400819165251503 NO.00004972 Jeju Centerpoint N(109485531)\\nGuest:\\n JUNG ARIN TEL:\\n JUNG ARIN\\n Mail:jejucenterpoint.337smd7gml930rt@guest.trip.com\\n\\nMember:\\n JUNG/ARIN\\n JUNG/ARIN\\n\\nRate Name:스위트 - 1478366334(1478366334)\\nCheck-In:2025.08.06 1night No Meals incl. service charge and taxes\\nTransportaion: Check-in time:15:00\\nNo. of Guests: 4Person Details:(Adults)2Person+(KidsB)2Person\\nNo. of Rooms : 1Room\\n08.06 515064650 (Suite - 515064650) 110,500KRW Guest:JUNG ARIN\\n Adults 2Person\\n KidsB 1Person 添寝有・食事無(11歳)\\n KidsB 1Person 添寝有・食事無(12歳)\\n Accommodation cost : 110,500KRW\\n\\n Total Cost : 110,500KRW\\n [ Amounts claimed ] : 0KRW\\n ----------------------------------------------------------------\\n Method of settlement: Travel company settlement\\nRemarks:\\nQuiet room preferred;Good view;Away from elevator;Basic Deal;For contacting the guest please dial: +82269178710(verification code:797800)or +827079157125(verification code:797800);Please contact guest by system generated mail (jejucenterpoint.337smd7gml930rt@guest.trip.com), preferred language: (Korean);This booking was made through Trip.com, a Ctrip Group brand.;Customer phone number:82-1062719614;Contact guest by Korean; Contact Trip.com via hotelSupport@trip.com\\nGuest Names: JUNG ARIN; JUNG HOEGYEONG; JUNG WOOHYEOK; LEE JAESUN\\n\\nSales channels:\\nTrip.com Group(new)(2Z) TEL 008216883666\\nMail hotelSupport@trip.com\\n\\nRoom cost will be covered by Trip.com Group according to the contract.\\n---\",\"Email\":\"jejucenterpoint.337smd7gml930rt@guest.trip.com\",\"TotalPaxManCount\":2,\"Version\":2,\"AccommodationId\":\"I58252\"},\"Allotment\":{\"AssignDiv\":1,\"GenderDiv\":0,\"HandleDiv\":1,\"RsvUserDiv\":1,\"UseDiv\":1},\"RoomAndRoomRateInformation\":{\"RoomInformation\":{\"RoomTypeCode\":515064650,\"RoomTypeName\":\"Suite - 515064650\",\"PerRoomPaxCount\":4,\"RoomPaxMaleCount\":2,\"RoomChildB50Count\":2,\"RoomChildB50Request\":\"添寝有・食事無(11歳)\\n添寝有・食事無(12歳)\",\"RoomTypeAgent\":\"2Z\",\"RoomFrame\":\"--\",\"NetRmTypeGroupCode\":4,\"PlanGroupCode\":4,\"RepresentativePersonName\":\"JUNG ARIN\"},\"RoomRateInformation\":[{\"RoomDate\":\"2025-08-06\",\"TotalPerRoomRate\":110500,\"RoomRatePaxMaleCount\":2,\"RoomRateChildB50Count\":1,\"RoomRateChildB50Request\":\"添寝有・食事無(11歳)\"},{\"RoomDate\":\"2025-08-06\",\"RoomRateChildB50Count\":1,\"RoomRateChildB50Request\":\"添寝有・食事無(12歳)\"}]},\"Member\":{\"UserName\":\"JUNG/ARIN\",\"UserKana\":\"JUNG/ARIN\"},\"OtherInfo\":{\"GuestRequest\":\"Quiet room preferred;Good view;Away from elevator;Basic Deal;For contacting the guest please dial: +82269178710(verification code:797800)or +827079157125(verification code:797800);Please contact guest by system generated mail (jejucenterpoint.337smd7gml930rt@guest.trip.com), preferred language: (Korean);This booking was made through Trip.com, a Ctrip Group brand.;Customer phone number:82-1062719614;Contact guest by Korean; Contact Trip.com via hotelSupport@trip.com\",\"AdditionalInformation\":\"Guest Names: JUNG ARIN; JUNG HOEGYEONG; JUNG WOOHYEOK; LEE JAESUN\"}},\"AgentNativeInformation\":{\"Extend\":{\"AmountClaimed\":0},\"Extendmytrip\":{\"SettlementDiv\":6}}}}}"
57
+ }
58
+ ]