@chevre/domain 20.2.0-alpha.8 → 20.2.0-alpha.9

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.
@@ -230,23 +230,25 @@ function aggregateReservationByOffer(params) {
230
230
  let reservationCount4offer;
231
231
  let attendeeCount4offer;
232
232
  let checkInCount4offer;
233
- // tslint:disable-next-line:no-suspicious-comment
234
- // TODO EventReservationを旅客対応
233
+ let reservationType = factory.reservationType.EventReservation;
234
+ if (params.event.typeOf === factory.eventType.Event) {
235
+ reservationType = factory.reservationType.BusReservation;
236
+ }
235
237
  reservationCount4offer = yield repos.reservation.count({
236
- typeOf: factory.reservationType.EventReservation,
238
+ typeOf: reservationType,
237
239
  reservationFor: { ids: [params.event.id] },
238
240
  reservationStatuses: [factory.reservationStatusType.ReservationConfirmed],
239
241
  reservedTicket: { ticketType: { ids: [params.offer.id] } }
240
242
  });
241
243
  attendeeCount4offer = yield repos.reservation.count({
242
- typeOf: factory.reservationType.EventReservation,
244
+ typeOf: reservationType,
243
245
  reservationFor: { ids: [params.event.id] },
244
246
  reservationStatuses: [factory.reservationStatusType.ReservationConfirmed],
245
247
  reservedTicket: { ticketType: { ids: [params.offer.id] } },
246
248
  attended: true
247
249
  });
248
250
  checkInCount4offer = yield repos.reservation.count({
249
- typeOf: factory.reservationType.EventReservation,
251
+ typeOf: reservationType,
250
252
  reservationFor: { ids: [params.event.id] },
251
253
  reservationStatuses: [factory.reservationStatusType.ReservationConfirmed],
252
254
  reservedTicket: { ticketType: { ids: [params.offer.id] } },
@@ -399,8 +401,12 @@ function aggregateReservationByEvent(params) {
399
401
  let attendeeCount;
400
402
  let checkInCount;
401
403
  let reservationCount;
404
+ let reservationType = factory.reservationType.EventReservation;
405
+ if (params.event.typeOf === factory.eventType.Event) {
406
+ reservationType = factory.reservationType.BusReservation;
407
+ }
402
408
  reservationCount = yield repos.reservation.count({
403
- typeOf: factory.reservationType.EventReservation,
409
+ typeOf: reservationType,
404
410
  reservationFor: { ids: [params.event.id] },
405
411
  reservationStatuses: [factory.reservationStatusType.ReservationConfirmed]
406
412
  });
@@ -430,13 +436,13 @@ function aggregateReservationByEvent(params) {
430
436
  }
431
437
  }
432
438
  attendeeCount = yield repos.reservation.count({
433
- typeOf: factory.reservationType.EventReservation,
439
+ typeOf: reservationType,
434
440
  reservationFor: { ids: [params.event.id] },
435
441
  // reservationStatuses: [factory.reservationStatusType.ReservationConfirmed],
436
442
  attended: true
437
443
  });
438
444
  checkInCount = yield repos.reservation.count({
439
- typeOf: factory.reservationType.EventReservation,
445
+ typeOf: reservationType,
440
446
  reservationFor: { ids: [params.event.id] },
441
447
  // reservationStatuses: [factory.reservationStatusType.ReservationConfirmed],
442
448
  checkedIn: true
@@ -162,7 +162,8 @@ function movieTicket2reservation4invoice(movieTicket, order, paymentMethodType)
162
162
  }
163
163
  });
164
164
  }
165
- return o.itemOffered.typeOf === factory.reservationType.EventReservation
165
+ return (o.itemOffered.typeOf === factory.reservationType.EventReservation
166
+ || o.itemOffered.typeOf === factory.reservationType.BusReservation)
166
167
  && mvtkUnitPriceSpec !== undefined
167
168
  && o.itemOffered.reservationFor.id === movieTicket.serviceOutput.reservationFor.id
168
169
  && ((_d = o.itemOffered.reservedTicket.ticketedSeat) === null || _d === void 0 ? void 0 : _d.seatNumber) === movieTicket.serviceOutput.reservedTicket.ticketedSeat.seatNumber
@@ -184,7 +184,8 @@ function createConfirmReservationActionObject4ChevreByOrder(params) {
184
184
  const chevreReservationNumbers = (Array.isArray(params.order.acceptedOffers))
185
185
  ? params.order.acceptedOffers.filter((o) => {
186
186
  var _a;
187
- return o.itemOffered.typeOf === factory.reservationType.EventReservation
187
+ return (o.itemOffered.typeOf === factory.reservationType.EventReservation
188
+ || o.itemOffered.typeOf === factory.reservationType.BusReservation)
188
189
  && ((_a = o.offeredThrough) === null || _a === void 0 ? void 0 : _a.identifier) === factory.service.webAPI.Identifier.Chevre;
189
190
  })
190
191
  .map((o) => {
@@ -271,7 +271,8 @@ function createReturnReserveTransactionTasks(order, simpleOrder) {
271
271
  // 注文アイテムから返却アクションを作成する
272
272
  const acceptedOffers = (Array.isArray(order.acceptedOffers)) ? order.acceptedOffers : [];
273
273
  for (const acceptedOffer of acceptedOffers) {
274
- if (acceptedOffer.itemOffered.typeOf === factory.reservationType.EventReservation) {
274
+ if (acceptedOffer.itemOffered.typeOf === factory.reservationType.EventReservation
275
+ || acceptedOffer.itemOffered.typeOf === factory.reservationType.BusReservation) {
275
276
  const reservation = acceptedOffer.itemOffered;
276
277
  const reservationNumber = reservation.reservationNumber;
277
278
  // 予約番号ごとに返却アクションを作成する
@@ -41,6 +41,22 @@ function createOrder(params) {
41
41
  : undefined) });
42
42
  return Object.assign(Object.assign({}, o), { itemOffered });
43
43
  }
44
+ else if (o.itemOffered.typeOf === factory.reservationType.BusReservation) {
45
+ let itemOffered = o.itemOffered;
46
+ const reservationFor = itemOffered.reservationFor;
47
+ itemOffered = Object.assign(Object.assign({}, itemOffered), { reservationFor: Object.assign(Object.assign(Object.assign({}, reservationFor), (reservationFor.arrivalTime !== undefined)
48
+ ? {
49
+ arrivalTime: moment(reservationFor.arrivalTime)
50
+ .toDate()
51
+ }
52
+ : undefined), (reservationFor.departureTime !== undefined)
53
+ ? {
54
+ departureTime: moment(reservationFor.departureTime)
55
+ .toDate()
56
+ }
57
+ : undefined) });
58
+ return Object.assign(Object.assign({}, o), { itemOffered });
59
+ }
44
60
  else {
45
61
  return o;
46
62
  }
@@ -37,7 +37,8 @@ function verifyToken4reservation(params) {
37
37
  }
38
38
  const acceptedOffers = (Array.isArray(order.acceptedOffers)) ? order.acceptedOffers : [];
39
39
  const reservationExistsInOrder = acceptedOffers.some((offer) => {
40
- return offer.itemOffered.typeOf === factory.reservationType.EventReservation
40
+ return (offer.itemOffered.typeOf === factory.reservationType.EventReservation
41
+ || offer.itemOffered.typeOf === factory.reservationType.BusReservation)
41
42
  && offer.itemOffered.id === params.reservationId;
42
43
  });
43
44
  if (!reservationExistsInOrder) {
package/package.json CHANGED
@@ -120,5 +120,5 @@
120
120
  "postversion": "git push origin --tags",
121
121
  "prepublishOnly": "npm run clean && npm run build && npm test && npm run doc"
122
122
  },
123
- "version": "20.2.0-alpha.8"
123
+ "version": "20.2.0-alpha.9"
124
124
  }