@chevre/domain 22.5.0 → 22.6.0-alpha.1

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.
@@ -0,0 +1,16 @@
1
+ // tslint:disable:no-console
2
+ import * as mongoose from 'mongoose';
3
+
4
+ import { chevre } from '../../../lib/index';
5
+
6
+ async function main() {
7
+ await mongoose.connect(<string>process.env.MONGOLAB_URI, { autoIndex: false });
8
+ const reservationRepo = await chevre.repository.Reservation.createInstance(mongoose.connection);
9
+ const ids = await reservationRepo.searchIdsByReservationNumber({ reservationNumber: { $in: ['283297254100608'] } });
10
+ console.log(ids);
11
+ console.log(ids.length, 'reservations found');
12
+ }
13
+
14
+ main()
15
+ .then(console.log)
16
+ .catch(console.error);
@@ -1120,23 +1120,16 @@ class ReservationRepo {
1120
1120
  reservationNumber: {
1121
1121
  $in: params.reservationNumber.$in
1122
1122
  }
1123
+ }, {
1124
+ _id: 0,
1125
+ id: { $toString: '$_id' }
1123
1126
  })
1124
- .select({ _id: 1 })
1127
+ .lean()
1125
1128
  .setOptions({ maxTimeMS: settings_1.MONGO_MAX_TIME_MS })
1126
1129
  .exec()
1127
- .then((docs) => docs.map((doc) => doc._id.toString()));
1130
+ .then((docs) => docs.map(({ id }) => id));
1128
1131
  });
1129
1132
  }
1130
- // public async deleteReservedTicketUnderName() {
1131
- // const conditions = {
1132
- // 'reservedTicket.underName': { $exists: true }
1133
- // };
1134
- // const update = {
1135
- // $unset: { 'reservedTicket.underName': 1 }
1136
- // };
1137
- // return this.reservationModel.updateMany(conditions, update)
1138
- // .exec();
1139
- // }
1140
1133
  getCursor(conditions, projection) {
1141
1134
  return this.reservationModel.find(conditions, projection)
1142
1135
  .sort({ bookingTime: factory.sortType.Descending })
@@ -1,7 +1,6 @@
1
1
  import { Settings } from '../../settings';
2
2
  import type { ActionRepo } from '../../repo/action';
3
3
  import type { AssetTransactionRepo } from '../../repo/assetTransaction';
4
- import type { EventRepo } from '../../repo/event';
5
4
  import type { ReservationRepo } from '../../repo/reservation';
6
5
  import type { TaskRepo } from '../../repo/task';
7
6
  interface ICheckInReservationParams {
@@ -34,7 +33,6 @@ interface ICheckInReservationParams {
34
33
  export declare function checkInReservation(params: ICheckInReservationParams): (repos: {
35
34
  action: ActionRepo;
36
35
  assetTransaction: AssetTransactionRepo;
37
- event: EventRepo;
38
36
  reservation: ReservationRepo;
39
37
  task: TaskRepo;
40
38
  }, settings: Settings) => Promise<void>;
@@ -44,20 +44,35 @@ function checkInReservation(params) {
44
44
  }
45
45
  }
46
46
  yield repos.reservation.checkInIfNot({ reservationNumber: { $in: params.object.reservationNumbers }, now });
47
- // 予約番号リストを予約IDリストに変換
48
- checkedInReservationIds = yield repos.reservation.searchIdsByReservationNumber({
49
- reservationNumber: { $in: params.object.reservationNumbers }
50
- });
47
+ if (!settings.useExperimentalFeature) {
48
+ // 予約番号リストを予約IDリストに変換
49
+ checkedInReservationIds = yield repos.reservation.searchIdsByReservationNumber({
50
+ reservationNumber: { $in: params.object.reservationNumbers }
51
+ });
52
+ }
53
+ }
54
+ if (Array.isArray(checkedInReservationIds)) {
55
+ yield (0, onReservationCheckedIn_1.onReservationCheckedIn)({
56
+ project: params.project,
57
+ object: {
58
+ ids: checkedInReservationIds
59
+ // reservationFor: params.object.reservationFor
60
+ },
61
+ now,
62
+ purpose: params.purpose
63
+ })(repos, settings);
64
+ }
65
+ else if (Array.isArray(params.object.reservationNumbers) && params.object.reservationNumbers.length > 0) {
66
+ yield (0, onReservationCheckedIn_1.onReservationCheckedIn)({
67
+ project: params.project,
68
+ object: {
69
+ reservationNumbers: params.object.reservationNumbers
70
+ // reservationFor: params.object.reservationFor
71
+ },
72
+ now,
73
+ purpose: params.purpose
74
+ })(repos, settings);
51
75
  }
52
- yield (0, onReservationCheckedIn_1.onReservationCheckedIn)({
53
- project: params.project,
54
- object: {
55
- ids: checkedInReservationIds,
56
- reservationFor: params.object.reservationFor
57
- },
58
- now,
59
- purpose: params.purpose
60
- })({ event: repos.event, task: repos.task }, settings);
61
76
  });
62
77
  }
63
78
  exports.checkInReservation = checkInReservation;
@@ -1,4 +1,4 @@
1
- import type { EventRepo } from '../../../repo/event';
1
+ import type { ReservationRepo } from '../../../repo/reservation';
2
2
  import type { TaskRepo } from '../../../repo/task';
3
3
  import { Settings } from '../../../settings';
4
4
  export declare function onReservationCheckedIn(params: {
@@ -14,12 +14,6 @@ export declare function onReservationCheckedIn(params: {
14
14
  * 予約番号で発券
15
15
  */
16
16
  reservationNumbers?: string[];
17
- reservationFor?: {
18
- /**
19
- * 集計対象イベントID
20
- */
21
- ids?: string[];
22
- };
23
17
  };
24
18
  now: Date;
25
19
  purpose: {
@@ -29,6 +23,6 @@ export declare function onReservationCheckedIn(params: {
29
23
  code: string;
30
24
  };
31
25
  }): (repos: {
32
- event: EventRepo;
26
+ reservation: ReservationRepo;
33
27
  task: TaskRepo;
34
28
  }, settings: Settings) => Promise<void>;
@@ -31,10 +31,14 @@ function onReservationCheckedIn(params) {
31
31
  });
32
32
  }
33
33
  if (Array.isArray(params.object.reservationNumbers) && params.object.reservationNumbers.length > 0) {
34
- reservations4inform = params.object.reservationNumbers.map((reservationNumber, index) => {
35
- return Object.assign({ typeOf: factory.reservationType.EventReservation, project,
36
- reservationNumber, checkedIn: true, modifiedTime: params.now }, (index === 0 && typeof ticketToken === 'string') ? { reservedTicket: { ticketToken } } : undefined);
37
- });
34
+ // ReservationPackageへ変更(2024-11-03~)
35
+ reservations4inform = yield Promise.all(params.object.reservationNumbers.map((reservationNumber, index) => __awaiter(this, void 0, void 0, function* () {
36
+ const subReservationIds = yield repos.reservation.searchIdsByReservationNumber({
37
+ reservationNumber: { $in: [reservationNumber] }
38
+ });
39
+ return Object.assign({ typeOf: factory.reservationType.ReservationPackage, project,
40
+ reservationNumber, checkedIn: true, modifiedTime: params.now, subReservation: subReservationIds.map((id) => ({ id })) }, (index === 0 && typeof ticketToken === 'string') ? { reservedTicket: { ticketToken } } : undefined);
41
+ })));
38
42
  }
39
43
  if (reservations4inform.length > 0) {
40
44
  const informTaskRunsAt = params.now;
@@ -15,7 +15,7 @@ const acceptedOffer_1 = require("../../repo/acceptedOffer");
15
15
  const action_1 = require("../../repo/action");
16
16
  const assetTransaction_1 = require("../../repo/assetTransaction");
17
17
  const authorization_1 = require("../../repo/authorization");
18
- const event_1 = require("../../repo/event");
18
+ // import { EventRepo } from '../../repo/event';
19
19
  const order_1 = require("../../repo/order");
20
20
  const ownershipInfo_1 = require("../../repo/ownershipInfo");
21
21
  const reservation_1 = require("../../repo/reservation");
@@ -31,7 +31,7 @@ function call(data) {
31
31
  action: new action_1.ActionRepo(connection),
32
32
  assetTransaction: new assetTransaction_1.AssetTransactionRepo(connection),
33
33
  code: new authorization_1.AuthorizationRepo(connection),
34
- event: new event_1.EventRepo(connection),
34
+ // event: new EventRepo(connection),
35
35
  order: new order_1.OrderRepo(connection),
36
36
  ownershipInfo: new ownershipInfo_1.OwnershipInfoRepo(connection),
37
37
  reservation: new reservation_1.ReservationRepo(connection),
@@ -102,7 +102,7 @@ function onAuthorizationCreated(params) {
102
102
  })({
103
103
  action: repos.action,
104
104
  assetTransaction: repos.assetTransaction,
105
- event: repos.event,
105
+ // event: repos.event,
106
106
  reservation: repos.reservation,
107
107
  task: repos.task
108
108
  }, settings);
package/package.json CHANGED
@@ -11,7 +11,7 @@
11
11
  "dependencies": {
12
12
  "@aws-sdk/client-cognito-identity-provider": "3.600.0",
13
13
  "@aws-sdk/credential-providers": "3.600.0",
14
- "@chevre/factory": "4.388.0",
14
+ "@chevre/factory": "4.389.0-alpha.0",
15
15
  "@cinerino/sdk": "10.16.0-alpha.5",
16
16
  "@motionpicture/coa-service": "9.5.0",
17
17
  "@motionpicture/gmo-service": "5.3.0",
@@ -108,5 +108,5 @@
108
108
  "postversion": "git push origin --tags",
109
109
  "prepublishOnly": "npm run clean && npm run build && npm test && npm run doc"
110
110
  },
111
- "version": "22.5.0"
111
+ "version": "22.6.0-alpha.1"
112
112
  }