@chevre/domain 20.2.0-alpha.5 → 20.2.0-alpha.50

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.
Files changed (133) hide show
  1. package/example/src/chevre/aggregateEventReservation.ts +37 -0
  2. package/example/src/chevre/aggregation/aggregateSystem.ts +112 -0
  3. package/example/src/chevre/attendIfNotAttended.ts +22 -0
  4. package/example/src/chevre/createManyEventsIfNotExist.ts +209 -0
  5. package/example/src/chevre/findByOrderNumberAndReservationId.ts +20 -0
  6. package/example/src/chevre/findScreeningRoomsByBranchCode.ts +27 -0
  7. package/example/src/chevre/importEventsFromCOA.ts +8 -1
  8. package/example/src/chevre/migrateEventOffersItemOfferedAvailableChannel.ts +2 -1
  9. package/example/src/chevre/migrateOwnershipInfos2newUserPool.ts +1 -1
  10. package/example/src/chevre/migrateProjectSubscription.ts +51 -0
  11. package/example/src/chevre/ownershipInfosCsv2peopleJson.ts +2 -2
  12. package/example/src/chevre/processReserve.ts +2 -0
  13. package/example/src/chevre/searchEventIds.ts +24 -0
  14. package/example/src/chevre/searchEventTicketOffers.ts +5 -4
  15. package/example/src/chevre/searchEvents.ts +20 -41
  16. package/example/src/chevre/searchOffersByCatalog.ts +27 -0
  17. package/example/src/chevre/updateTransaction.ts +38 -0
  18. package/lib/chevre/factory/event.d.ts +2 -0
  19. package/lib/chevre/factory/event.js +2 -0
  20. package/lib/chevre/repo/action.d.ts +68 -1
  21. package/lib/chevre/repo/action.js +227 -6
  22. package/lib/chevre/repo/aggregation.d.ts +37 -0
  23. package/lib/chevre/repo/aggregation.js +67 -0
  24. package/lib/chevre/repo/assetTransaction.d.ts +32 -0
  25. package/lib/chevre/repo/assetTransaction.js +148 -0
  26. package/lib/chevre/repo/code.d.ts +13 -16
  27. package/lib/chevre/repo/code.js +33 -19
  28. package/lib/chevre/repo/event.d.ts +64 -17
  29. package/lib/chevre/repo/event.js +456 -156
  30. package/lib/chevre/repo/mongoose/model/aggregation.d.ts +7 -0
  31. package/lib/chevre/repo/mongoose/model/aggregation.js +47 -0
  32. package/lib/chevre/repo/mongoose/model/event.js +4 -3
  33. package/lib/chevre/repo/mongoose/model/offer.js +2 -1
  34. package/lib/chevre/repo/mongoose/model/project.js +7 -1
  35. package/lib/chevre/repo/mongoose/model/telemetry.js +4 -28
  36. package/lib/chevre/repo/offer.d.ts +10 -0
  37. package/lib/chevre/repo/offer.js +47 -16
  38. package/lib/chevre/repo/order.d.ts +6 -0
  39. package/lib/chevre/repo/order.js +53 -7
  40. package/lib/chevre/repo/place.d.ts +26 -1
  41. package/lib/chevre/repo/place.js +216 -12
  42. package/lib/chevre/repo/product.d.ts +1 -0
  43. package/lib/chevre/repo/product.js +5 -0
  44. package/lib/chevre/repo/project.d.ts +4 -1
  45. package/lib/chevre/repo/project.js +9 -10
  46. package/lib/chevre/repo/reservation.d.ts +7 -8
  47. package/lib/chevre/repo/reservation.js +181 -76
  48. package/lib/chevre/repo/task.d.ts +31 -4
  49. package/lib/chevre/repo/task.js +146 -33
  50. package/lib/chevre/repo/transaction.d.ts +45 -5
  51. package/lib/chevre/repo/transaction.js +187 -29
  52. package/lib/chevre/repo/trip.js +33 -27
  53. package/lib/chevre/repository.d.ts +3 -0
  54. package/lib/chevre/repository.js +5 -1
  55. package/lib/chevre/service/aggregation/event/aggregateScreeningEvent.d.ts +1 -1
  56. package/lib/chevre/service/aggregation/event/aggregateScreeningEvent.js +86 -59
  57. package/lib/chevre/service/aggregation/event/aggregateUseActionsOnEvent.js +5 -8
  58. package/lib/chevre/service/aggregation/system.d.ts +93 -0
  59. package/lib/chevre/service/aggregation/system.js +377 -0
  60. package/lib/chevre/service/aggregation.d.ts +2 -0
  61. package/lib/chevre/service/aggregation.js +3 -1
  62. package/lib/chevre/service/assetTransaction/pay/movieTicket/validation.js +5 -1
  63. package/lib/chevre/service/assetTransaction/pay/potentialActions.js +2 -4
  64. package/lib/chevre/service/assetTransaction/pay.d.ts +19 -4
  65. package/lib/chevre/service/assetTransaction/pay.js +65 -32
  66. package/lib/chevre/service/assetTransaction/registerService.js +4 -1
  67. package/lib/chevre/service/assetTransaction/reserve/factory.d.ts +3 -0
  68. package/lib/chevre/service/assetTransaction/reserve/factory.js +33 -2
  69. package/lib/chevre/service/assetTransaction/reserve/validateStartRequest.d.ts +16 -0
  70. package/lib/chevre/service/assetTransaction/reserve/validateStartRequest.js +84 -0
  71. package/lib/chevre/service/assetTransaction/reserve.d.ts +38 -6
  72. package/lib/chevre/service/assetTransaction/reserve.js +120 -94
  73. package/lib/chevre/service/assetTransaction.d.ts +1 -1
  74. package/lib/chevre/service/code.d.ts +2 -3
  75. package/lib/chevre/service/delivery/factory.d.ts +1 -1
  76. package/lib/chevre/service/delivery/factory.js +1 -0
  77. package/lib/chevre/service/delivery/product/factory.js +9 -3
  78. package/lib/chevre/service/event.d.ts +2 -4
  79. package/lib/chevre/service/event.js +35 -14
  80. package/lib/chevre/service/offer/event/authorize.d.ts +4 -7
  81. package/lib/chevre/service/offer/event/authorize.js +33 -87
  82. package/lib/chevre/service/offer/event/cancel.js +0 -1
  83. package/lib/chevre/service/offer/event/factory.d.ts +3 -2
  84. package/lib/chevre/service/offer/event/factory.js +25 -5
  85. package/lib/chevre/service/offer/event/searchEventTicketOffers.d.ts +14 -7
  86. package/lib/chevre/service/offer/event/searchEventTicketOffers.js +95 -53
  87. package/lib/chevre/service/offer/event/voidTransaction.js +0 -2
  88. package/lib/chevre/service/offer/eventServiceByCOA/factory.d.ts +2 -1
  89. package/lib/chevre/service/offer/eventServiceByCOA.js +10 -2
  90. package/lib/chevre/service/offer/factory.js +10 -3
  91. package/lib/chevre/service/offer/product/searchProductOffers.d.ts +1 -0
  92. package/lib/chevre/service/offer/product/searchProductOffers.js +1 -1
  93. package/lib/chevre/service/offer/product.d.ts +1 -0
  94. package/lib/chevre/service/offer/product.js +6 -2
  95. package/lib/chevre/service/offer.d.ts +13 -2
  96. package/lib/chevre/service/offer.js +86 -60
  97. package/lib/chevre/service/order/onOrderStatusChanged/factory.js +25 -27
  98. package/lib/chevre/service/order/onOrderStatusChanged.js +2 -1
  99. package/lib/chevre/service/order/placeOrder.js +16 -0
  100. package/lib/chevre/service/order/returnOrder.js +6 -4
  101. package/lib/chevre/service/order/sendOrder.js +4 -2
  102. package/lib/chevre/service/payment/any.d.ts +5 -0
  103. package/lib/chevre/service/payment/any.js +7 -1
  104. package/lib/chevre/service/payment/movieTicket.d.ts +2 -2
  105. package/lib/chevre/service/payment/movieTicket.js +8 -2
  106. package/lib/chevre/service/product.js +5 -3
  107. package/lib/chevre/service/report/telemetry.js +1 -1
  108. package/lib/chevre/service/reserve/checkInReservation.js +2 -2
  109. package/lib/chevre/service/reserve/confirmReservation.js +7 -10
  110. package/lib/chevre/service/reserve/potentialActions/onReservationCanceled.js +2 -1
  111. package/lib/chevre/service/reserve/potentialActions/onReservationCheckedIn.js +2 -1
  112. package/lib/chevre/service/reserve/potentialActions/onReservationConfirmed.js +2 -1
  113. package/lib/chevre/service/reserve/potentialActions/onReservationUsed.js +32 -35
  114. package/lib/chevre/service/reserve/useReservation.d.ts +0 -3
  115. package/lib/chevre/service/reserve/useReservation.js +58 -32
  116. package/lib/chevre/service/task/confirmPayTransaction.js +20 -1
  117. package/lib/chevre/service/task/confirmReserveTransaction.d.ts +4 -0
  118. package/lib/chevre/service/task/confirmReserveTransaction.js +5 -5
  119. package/lib/chevre/service/task/importEventsFromCOA.js +3 -1
  120. package/lib/chevre/service/task/returnPayTransaction.js +10 -4
  121. package/lib/chevre/service/task.js +6 -9
  122. package/lib/chevre/service/transaction/moneyTransfer.js +9 -1
  123. package/lib/chevre/service/transaction/orderProgramMembership/findPaymentCardPermit.d.ts +1 -1
  124. package/lib/chevre/service/transaction/orderProgramMembership.js +2 -1
  125. package/lib/chevre/service/transaction/placeOrder.js +5 -3
  126. package/lib/chevre/service/transaction/placeOrderInProgress/result/acceptedOffers.js +42 -27
  127. package/lib/chevre/service/transaction/placeOrderInProgress.js +7 -7
  128. package/lib/chevre/service/transaction/returnOrder.js +8 -6
  129. package/lib/chevre/settings.d.ts +2 -0
  130. package/lib/chevre/settings.js +20 -12
  131. package/package.json +3 -3
  132. package/example/src/chevre/aggregateReservationOnProject.ts +0 -32
  133. package/example/src/chevre/migratePlaceAdditionalProperties.ts +0 -162
@@ -306,7 +306,7 @@ function validateAppliedReturnPolicy(params) {
306
306
  function confirm(params) {
307
307
  return (repos) => __awaiter(this, void 0, void 0, function* () {
308
308
  var _a;
309
- let transaction = yield repos.transaction.findById({ typeOf: factory.transactionType.ReturnOrder, id: params.id });
309
+ const transaction = yield repos.transaction.findById({ typeOf: factory.transactionType.ReturnOrder, id: params.id });
310
310
  if (transaction.status === factory.transactionStatusType.Confirmed) {
311
311
  // すでに確定済の場合
312
312
  return transaction.result;
@@ -356,14 +356,14 @@ function confirm(params) {
356
356
  // useConfirmRefund: params.useConfirmRefund
357
357
  });
358
358
  // ステータス変更
359
- transaction = yield repos.transaction.confirm({
359
+ yield repos.transaction.confirm({
360
360
  typeOf: transaction.typeOf,
361
361
  id: transaction.id,
362
362
  authorizeActions: [],
363
363
  result: result,
364
364
  potentialActions: potentialActions
365
365
  });
366
- return transaction.result;
366
+ return result;
367
367
  });
368
368
  }
369
369
  exports.confirm = confirm;
@@ -386,9 +386,11 @@ function exportTasksById(params) {
386
386
  transaction,
387
387
  runsAt: taskRunsAt
388
388
  });
389
- yield Promise.all(taskAttributes.map((taskAttribute) => __awaiter(this, void 0, void 0, function* () {
390
- yield repos.task.save(taskAttribute);
391
- })));
389
+ // saveManyに変更(2023-02-01~)
390
+ yield repos.task.saveMany(taskAttributes);
391
+ // await Promise.all(taskAttributes.map(async (taskAttribute) => {
392
+ // await repos.task.save(taskAttribute);
393
+ // }));
392
394
  });
393
395
  }
394
396
  exports.exportTasksById = exportTasksById;
@@ -23,6 +23,8 @@ export declare type ISettings = factory.project.ISettings & {
23
23
  maxNumCreditCardPaymentMethod?: number;
24
24
  };
25
25
  export declare const DEFAULT_PAYMENT_METHOD_TYPE_FOR_CREDIT_CARD: string;
26
+ export declare const USE_ASSET_TRANSACTION_SYNC_PROCESSING: boolean;
27
+ export declare const USE_PAY_ASSET_TRANSACTION_SYNC_PROCESSING: boolean;
26
28
  /**
27
29
  * グローバル設定
28
30
  */
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.settings = exports.DEFAULT_PAYMENT_METHOD_TYPE_FOR_CREDIT_CARD = exports.DEFAULT_SENDER_EMAIL = exports.TRANSACTION_CANCELED_STORAGE_PERIOD_IN_DAYS = exports.TRANSACTION_CONFIRMED_STORAGE_PERIOD_IN_DAYS = exports.ASSET_TRANSACTION_STORAGE_PERIOD_IN_DAYS = exports.ABORTED_TASKS_WITHOUT_REPORT = void 0;
3
+ exports.settings = exports.USE_PAY_ASSET_TRANSACTION_SYNC_PROCESSING = exports.USE_ASSET_TRANSACTION_SYNC_PROCESSING = exports.DEFAULT_PAYMENT_METHOD_TYPE_FOR_CREDIT_CARD = exports.DEFAULT_SENDER_EMAIL = exports.TRANSACTION_CANCELED_STORAGE_PERIOD_IN_DAYS = exports.TRANSACTION_CONFIRMED_STORAGE_PERIOD_IN_DAYS = exports.ASSET_TRANSACTION_STORAGE_PERIOD_IN_DAYS = exports.ABORTED_TASKS_WITHOUT_REPORT = void 0;
4
4
  const factory = require("./factory");
5
5
  const transactionWebhookUrls = (typeof process.env.INFORM_TRANSACTION_URL === 'string')
6
6
  ? process.env.INFORM_TRANSACTION_URL.split(',')
@@ -14,9 +14,9 @@ const informOrderUrls = (typeof process.env.INFORM_ORDER_URL === 'string')
14
14
  const informReservationUrls = (typeof process.env.INFORM_RESERVATION_URL === 'string')
15
15
  ? process.env.INFORM_RESERVATION_URL.split(',')
16
16
  : [];
17
- const informUseReservationUrls = (typeof process.env.INFORM_USE_RESERVATION_URL === 'string')
18
- ? process.env.INFORM_USE_RESERVATION_URL.split(',')
19
- : [];
17
+ // const informUseReservationUrls = (typeof process.env.INFORM_USE_RESERVATION_URL === 'string')
18
+ // ? process.env.INFORM_USE_RESERVATION_URL.split(',')
19
+ // : [];
20
20
  // tslint:disable-next-line:no-magic-numbers
21
21
  const triggerWebhookTimeout = (process.env.TRIGGER_WEBHOOK_TIMEOUT !== undefined) ? Number(process.env.TRIGGER_WEBHOOK_TIMEOUT) : 15000;
22
22
  const MAXIMUM_RESERVATION_GRACE_PERIOD_IN_DAYS = (typeof process.env.MAXIMUM_RESERVATION_GRACE_PERIOD_IN_DAYS === 'string')
@@ -43,9 +43,14 @@ exports.TRANSACTION_CONFIRMED_STORAGE_PERIOD_IN_DAYS = 365;
43
43
  /**
44
44
  * 取引保管期間(Canceled)
45
45
  */
46
- exports.TRANSACTION_CANCELED_STORAGE_PERIOD_IN_DAYS = 7;
46
+ exports.TRANSACTION_CANCELED_STORAGE_PERIOD_IN_DAYS = (typeof process.env.TRANSACTION_CANCELED_STORAGE_PERIOD_IN_DAYS === 'string')
47
+ ? Number(process.env.TRANSACTION_CANCELED_STORAGE_PERIOD_IN_DAYS)
48
+ // tslint:disable-next-line:no-magic-numbers
49
+ : 7;
47
50
  exports.DEFAULT_SENDER_EMAIL = process.env.DEFAULT_SENDER_EMAIL;
48
51
  exports.DEFAULT_PAYMENT_METHOD_TYPE_FOR_CREDIT_CARD = String(process.env.DEFAULT_PAYMENT_METHOD_TYPE_FOR_CREDIT_CARD);
52
+ exports.USE_ASSET_TRANSACTION_SYNC_PROCESSING = process.env.USE_ASSET_TRANSACTION_SYNC_PROCESSING === '1';
53
+ exports.USE_PAY_ASSET_TRANSACTION_SYNC_PROCESSING = process.env.USE_PAY_ASSET_TRANSACTION_SYNC_PROCESSING === '1';
49
54
  /**
50
55
  * グローバル設定
51
56
  */
@@ -76,13 +81,16 @@ exports.settings = Object.assign({ transactionWebhookUrls, onOrderStatusChanged:
76
81
  .map((url) => {
77
82
  return { recipient: { url } };
78
83
  })
79
- }, onReservationUsed: {
80
- informAction: informUseReservationUrls
81
- .filter((url) => url.length > 0)
82
- .map((url) => {
83
- return { recipient: { url } };
84
- })
85
- }, webhook: {
84
+ },
85
+ // 廃止(2023-01-30~)
86
+ // onReservationUsed: {
87
+ // informAction: informUseReservationUrls
88
+ // .filter((url) => url.length > 0)
89
+ // .map((url) => {
90
+ // return { recipient: { url } };
91
+ // })
92
+ // },
93
+ webhook: {
86
94
  timeout: triggerWebhookTimeout
87
95
  }, maximumReservationGracePeriodInDays: MAXIMUM_RESERVATION_GRACE_PERIOD_IN_DAYS, userPoolIdOld: String(process.env.USERPOOL_ID_OLD), userPoolIdNew: String(process.env.USERPOOL_ID_NEW) }, (typeof MAX_NUM_CREDIT_CARD_PAYMENT_METHOD === 'number')
88
96
  ? { maxNumCreditCardPaymentMethod: MAX_NUM_CREDIT_CARD_PAYMENT_METHOD }
package/package.json CHANGED
@@ -9,8 +9,8 @@
9
9
  }
10
10
  ],
11
11
  "dependencies": {
12
- "@chevre/factory": "4.281.0-alpha.2",
13
- "@cinerino/sdk": "3.135.0-alpha.6",
12
+ "@chevre/factory": "4.284.0-alpha.4",
13
+ "@cinerino/sdk": "3.137.0-alpha.2",
14
14
  "@motionpicture/coa-service": "9.2.0",
15
15
  "@motionpicture/gmo-service": "5.2.0",
16
16
  "@sendgrid/mail": "6.4.0",
@@ -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.5"
123
+ "version": "20.2.0-alpha.50"
124
124
  }
@@ -1,32 +0,0 @@
1
- // tslint:disable:no-console
2
- import * as moment from 'moment';
3
- import * as mongoose from 'mongoose';
4
-
5
- import { chevre } from '../../../lib/index';
6
-
7
- const project = { id: <string>process.env.PROJECT_ID };
8
-
9
- async function main() {
10
- await mongoose.connect(<string>process.env.MONGOLAB_URI);
11
-
12
- // const now = new Date();
13
- await chevre.service.aggregation.project.aggregate({
14
- project: { id: project.id },
15
- reservationFor: {
16
- startFrom: moment('2022-01-01T00:00:00+09:00')
17
- .toDate(),
18
- startThrough: moment('2022-01-31T23:59:59+09:00')
19
- .toDate(),
20
- }
21
- })({
22
- project: new chevre.repository.Project(mongoose.connection),
23
- reservation: new chevre.repository.Reservation(mongoose.connection),
24
- task: new chevre.repository.Task(mongoose.connection)
25
- });
26
- }
27
-
28
- main()
29
- .then(() => {
30
- console.log('success!');
31
- })
32
- .catch(console.error);
@@ -1,162 +0,0 @@
1
- // tslint:disable:no-console
2
- // import * as moment from 'moment';
3
- import * as mongoose from 'mongoose';
4
-
5
- import { chevre } from '../../../lib/index';
6
-
7
- // const project = { id: String(process.env.PROJECT_ID) };
8
- const EXCLUDED_PROJECT_ID = process.env.EXCLUDED_PROJECT_ID;
9
-
10
- // tslint:disable-next-line:max-func-body-length
11
- async function main() {
12
- await mongoose.connect(<string>process.env.MONGOLAB_URI, { autoIndex: false });
13
-
14
- const placeRepo = new chevre.repository.Place(mongoose.connection);
15
-
16
- const cursor = placeRepo.getCursor(
17
- {
18
- // 'project.id': { $eq: project.id },
19
- 'project.id': { $ne: EXCLUDED_PROJECT_ID }
20
- // typeOf: { $eq: chevre.factory.eventType.ScreeningEventSeries },
21
- // starDate: { $gte: new Date() }
22
- // _id: { $eq: 'al6aff83w' }
23
- },
24
- {
25
- // _id: 1,
26
- }
27
- );
28
- console.log('creativeWorks found');
29
-
30
- const additionalPropertyNames: string[] = [];
31
- const additionalPropertyNamesOnSections: string[] = [];
32
- const additionalPropertyNamesOnSeats: string[] = [];
33
- const projectIds: string[] = [];
34
- const unexpextedprojectIds: string[] = [];
35
- const projectIdsOnSections: string[] = [];
36
- const unexpextedprojectIdsOnSections: string[] = [];
37
- const projectIdsOnSeats: string[] = [];
38
- const unexpextedprojectIdsOnSeats: string[] = [];
39
-
40
- let i = 0;
41
- let updateCount = 0;
42
- // tslint:disable-next-line:max-func-body-length
43
- await cursor.eachAsync(async (doc) => {
44
- i += 1;
45
- const movieTheater: chevre.factory.place.movieTheater.IPlace = doc.toObject();
46
-
47
- if (Array.isArray(movieTheater.containsPlace)) {
48
- movieTheater.containsPlace.forEach((screeningRoom) => {
49
- const additionalPropertyNamesOnResource = screeningRoom.additionalProperty?.map((p) => p.name);
50
- console.log(
51
- (Array.isArray(additionalPropertyNamesOnResource)) ? additionalPropertyNamesOnResource.length : 0,
52
- 'additionalPropertyNamesOnResource found',
53
- movieTheater.project.id,
54
- movieTheater.id
55
- );
56
- if (Array.isArray(additionalPropertyNamesOnResource) && additionalPropertyNamesOnResource.length > 0) {
57
- console.log(
58
- additionalPropertyNamesOnResource.length,
59
- 'additionalPropertyNamesOnResource found',
60
- movieTheater.project.id,
61
- movieTheater.id
62
- );
63
- additionalPropertyNames.push(...additionalPropertyNamesOnResource);
64
- projectIds.push(movieTheater.project.id);
65
- additionalPropertyNamesOnResource.forEach((name) => {
66
- if (!name.match(/^[a-zA-Z]*$/)) {
67
- // throw new Error(`not matched ${creativeWork.project.id} ${creativeWork.id}`);
68
- unexpextedprojectIds.push(movieTheater.project.id);
69
- }
70
- // tslint:disable-next-line:no-magic-numbers
71
- if (name.length < 5) {
72
- // throw new Error(`length matched ${creativeWork.project.id} ${creativeWork.id} ${name}`);
73
- unexpextedprojectIds.push(movieTheater.project.id);
74
- }
75
- });
76
- }
77
-
78
- if (Array.isArray(screeningRoom.containsPlace)) {
79
- screeningRoom.containsPlace.forEach((section) => {
80
- const additionalPropertyNamesOnSection = section.additionalProperty?.map((p) => p.name);
81
- console.log(
82
- (Array.isArray(additionalPropertyNamesOnSection)) ? additionalPropertyNamesOnSection.length : 0,
83
- 'additionalPropertyNamesOnSection found',
84
- movieTheater.project.id,
85
- movieTheater.id
86
- );
87
- if (Array.isArray(additionalPropertyNamesOnSection) && additionalPropertyNamesOnSection.length > 0) {
88
- console.log(
89
- additionalPropertyNamesOnSection.length,
90
- 'additionalPropertyNamesOnSection found',
91
- movieTheater.project.id,
92
- movieTheater.id
93
- );
94
- additionalPropertyNamesOnSections.push(...additionalPropertyNamesOnSection);
95
- projectIdsOnSections.push(movieTheater.project.id);
96
- additionalPropertyNamesOnSection.forEach((name) => {
97
- if (!name.match(/^[a-zA-Z]*$/)) {
98
- // throw new Error(`not matched ${creativeWork.project.id} ${creativeWork.id}`);
99
- unexpextedprojectIdsOnSections.push(movieTheater.project.id);
100
- }
101
- // tslint:disable-next-line:no-magic-numbers
102
- if (name.length < 5) {
103
- // throw new Error(`length matched ${creativeWork.project.id} ${creativeWork.id} ${name}`);
104
- unexpextedprojectIdsOnSections.push(movieTheater.project.id);
105
- }
106
- });
107
- }
108
-
109
- if (Array.isArray(section.containsPlace)) {
110
- section.containsPlace.forEach((seat) => {
111
- const additionalPropertyNamesOnSeat = seat.additionalProperty?.map((p) => p.name);
112
- console.log(
113
- (Array.isArray(additionalPropertyNamesOnSeat)) ? additionalPropertyNamesOnSeat.length : 0,
114
- 'additionalPropertyNamesOnSeat found',
115
- movieTheater.project.id,
116
- movieTheater.id
117
- );
118
- if (Array.isArray(additionalPropertyNamesOnSeat) && additionalPropertyNamesOnSeat.length > 0) {
119
- console.log(
120
- additionalPropertyNamesOnSeat.length,
121
- 'additionalPropertyNamesOnSeat found',
122
- movieTheater.project.id,
123
- movieTheater.id
124
- );
125
- additionalPropertyNamesOnSeats.push(...additionalPropertyNamesOnSeat);
126
- projectIdsOnSeats.push(movieTheater.project.id);
127
- additionalPropertyNamesOnSeat.forEach((name) => {
128
- if (!name.match(/^[a-zA-Z]*$/)) {
129
- // throw new Error(`not matched ${creativeWork.project.id} ${creativeWork.id}`);
130
- unexpextedprojectIdsOnSeats.push(movieTheater.project.id);
131
- }
132
- // tslint:disable-next-line:no-magic-numbers
133
- if (name.length < 5) {
134
- // throw new Error(`length matched ${creativeWork.project.id} ${creativeWork.id} ${name}`);
135
- unexpextedprojectIdsOnSeats.push(movieTheater.project.id);
136
- }
137
- });
138
- }
139
-
140
- });
141
- }
142
- });
143
- }
144
- });
145
- }
146
- });
147
- console.log(i, 'places checked');
148
- console.log(updateCount, 'places updated');
149
- console.log([...new Set(additionalPropertyNames)], 'screeningRooms');
150
- console.log([...new Set(projectIds)], 'screeningRooms');
151
- console.log([...new Set(unexpextedprojectIds)], 'screeningRooms');
152
- console.log([...new Set(additionalPropertyNamesOnSections)], 'sections');
153
- console.log([...new Set(projectIdsOnSections)], 'sections');
154
- console.log([...new Set(unexpextedprojectIdsOnSections)], 'sections');
155
- console.log([...new Set(additionalPropertyNamesOnSeats)], 'seats');
156
- console.log([...new Set(projectIdsOnSeats)], 'seats');
157
- console.log([...new Set(unexpextedprojectIdsOnSeats)], 'seats');
158
- }
159
-
160
- main()
161
- .then()
162
- .catch(console.error);