@chevre/domain 21.2.0-alpha.10 → 21.2.0-alpha.100

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 (235) hide show
  1. package/example/src/chevre/aggregation/aggregateSystem.ts +58 -31
  2. package/example/src/chevre/createManyEventsIfNotExist.ts +4 -1
  3. package/example/src/chevre/deleteTasksByName.ts +10 -2
  4. package/example/src/chevre/importEventsFromCOA.ts +3 -4
  5. package/example/src/chevre/migrateOrderAdditionalProperties.ts +85 -0
  6. package/example/src/chevre/processPay.ts +5 -1
  7. package/example/src/chevre/processReserve.ts +4 -1
  8. package/example/src/chevre/saveTasks.ts +13 -10
  9. package/example/src/chevre/searchAbortedTasks.ts +36 -0
  10. package/example/src/chevre/searchActions.ts +33 -0
  11. package/example/src/chevre/searchReservationNumbersByOrderNumbers.ts +37 -1
  12. package/example/src/chevre/searchSendEmailActions.ts +44 -0
  13. package/example/src/chevre/task/executeTasks.ts +26 -0
  14. package/example/src/chevre/transaction/findCreditCard.ts +1 -1
  15. package/example/src/chevre/transaction/orderMembershipService.ts +1 -1
  16. package/example/src/chevre/transaction/processReturnOrder.ts +40 -0
  17. package/example/src/chevre/transaction/startExportTasks.ts +20 -0
  18. package/example/src/chevre/updateTransaction.ts +1 -1
  19. package/example/src/playOnMoment.ts +24 -0
  20. package/lib/chevre/credentials.d.ts +1 -0
  21. package/lib/chevre/credentials.js +2 -1
  22. package/lib/chevre/eventEmitter/assetTransaction.d.ts +21 -0
  23. package/lib/chevre/eventEmitter/assetTransaction.js +25 -0
  24. package/lib/chevre/eventEmitter/task.d.ts +18 -0
  25. package/lib/chevre/eventEmitter/task.js +25 -0
  26. package/lib/chevre/eventEmitter/transaction.d.ts +21 -0
  27. package/lib/chevre/eventEmitter/transaction.js +25 -0
  28. package/lib/chevre/eventEmitter.d.ts +4 -0
  29. package/lib/chevre/eventEmitter.js +9 -0
  30. package/lib/chevre/index.d.ts +3 -2
  31. package/lib/chevre/index.js +5 -3
  32. package/lib/chevre/repo/accountTransaction.d.ts +3 -11
  33. package/lib/chevre/repo/accountTransaction.js +1 -54
  34. package/lib/chevre/repo/action.d.ts +29 -1
  35. package/lib/chevre/repo/action.js +98 -55
  36. package/lib/chevre/repo/assetTransaction.d.ts +25 -9
  37. package/lib/chevre/repo/assetTransaction.js +256 -85
  38. package/lib/chevre/repo/comment.d.ts +4 -1
  39. package/lib/chevre/repo/comment.js +20 -5
  40. package/lib/chevre/repo/confirmationNumber.d.ts +0 -1
  41. package/lib/chevre/repo/confirmationNumber.js +3 -15
  42. package/lib/chevre/repo/creativeWork.d.ts +1 -3
  43. package/lib/chevre/repo/emailMessage.d.ts +1 -27
  44. package/lib/chevre/repo/event.d.ts +5 -1
  45. package/lib/chevre/repo/merchantReturnPolicy.d.ts +1 -3
  46. package/lib/chevre/repo/mongoose/schemas/account.d.ts +4 -2
  47. package/lib/chevre/repo/mongoose/schemas/accountTitle.d.ts +29 -3
  48. package/lib/chevre/repo/mongoose/schemas/accountTransaction.d.ts +31 -3
  49. package/lib/chevre/repo/mongoose/schemas/accountTransaction.js +1 -1
  50. package/lib/chevre/repo/mongoose/schemas/accountingReport.d.ts +13 -3
  51. package/lib/chevre/repo/mongoose/schemas/action.d.ts +43 -3
  52. package/lib/chevre/repo/mongoose/schemas/action.js +19 -1
  53. package/lib/chevre/repo/mongoose/schemas/additionalProperty.d.ts +17 -3
  54. package/lib/chevre/repo/mongoose/schemas/aggregation.d.ts +4 -2
  55. package/lib/chevre/repo/mongoose/schemas/assetTransaction.d.ts +44 -3
  56. package/lib/chevre/repo/mongoose/schemas/assetTransaction.js +32 -19
  57. package/lib/chevre/repo/mongoose/schemas/authorization.d.ts +19 -3
  58. package/lib/chevre/repo/mongoose/schemas/authorization.js +1 -1
  59. package/lib/chevre/repo/mongoose/schemas/categoryCode.d.ts +25 -3
  60. package/lib/chevre/repo/mongoose/schemas/comments.d.ts +27 -3
  61. package/lib/chevre/repo/mongoose/schemas/comments.js +1 -1
  62. package/lib/chevre/repo/mongoose/schemas/creativeWork.d.ts +43 -3
  63. package/lib/chevre/repo/mongoose/schemas/customer.d.ts +25 -3
  64. package/lib/chevre/repo/mongoose/schemas/emailMessages.d.ts +21 -3
  65. package/lib/chevre/repo/mongoose/schemas/event.d.ts +71 -3
  66. package/lib/chevre/repo/mongoose/schemas/member.d.ts +13 -3
  67. package/lib/chevre/repo/mongoose/schemas/merchantReturnPolicy.d.ts +21 -3
  68. package/lib/chevre/repo/mongoose/schemas/offer.d.ts +65 -3
  69. package/lib/chevre/repo/mongoose/schemas/offerCatalog.d.ts +27 -3
  70. package/lib/chevre/repo/mongoose/schemas/offerItemCondition.d.ts +74 -0
  71. package/lib/chevre/repo/mongoose/schemas/offerItemCondition.js +45 -0
  72. package/lib/chevre/repo/mongoose/schemas/order.d.ts +51 -3
  73. package/lib/chevre/repo/mongoose/schemas/order.js +1 -1
  74. package/lib/chevre/repo/mongoose/schemas/ownershipInfo.d.ts +25 -3
  75. package/lib/chevre/repo/mongoose/schemas/ownershipInfo.js +1 -1
  76. package/lib/chevre/repo/mongoose/schemas/place.d.ts +49 -3
  77. package/lib/chevre/repo/mongoose/schemas/priceSpecification.d.ts +29 -3
  78. package/lib/chevre/repo/mongoose/schemas/product.d.ts +31 -3
  79. package/lib/chevre/repo/mongoose/schemas/project.d.ts +23 -3
  80. package/lib/chevre/repo/mongoose/schemas/reservation.d.ts +63 -5
  81. package/lib/chevre/repo/mongoose/schemas/reservation.js +1 -1
  82. package/lib/chevre/repo/mongoose/schemas/role.d.ts +11 -3
  83. package/lib/chevre/repo/mongoose/schemas/seller.d.ts +31 -3
  84. package/lib/chevre/repo/mongoose/schemas/seller.js +6 -0
  85. package/lib/chevre/repo/mongoose/schemas/serviceOutput.d.ts +11 -3
  86. package/lib/chevre/repo/mongoose/schemas/serviceOutput.js +1 -1
  87. package/lib/chevre/repo/mongoose/schemas/task.d.ts +30 -3
  88. package/lib/chevre/repo/mongoose/schemas/task.js +2 -1
  89. package/lib/chevre/repo/mongoose/schemas/telemetry.d.ts +21 -3
  90. package/lib/chevre/repo/mongoose/schemas/transaction.d.ts +40 -3
  91. package/lib/chevre/repo/mongoose/schemas/transaction.js +2 -1
  92. package/lib/chevre/repo/mongoose/schemas/trip.d.ts +11 -3
  93. package/lib/chevre/repo/offerItemCondition.d.ts +22 -0
  94. package/lib/chevre/repo/offerItemCondition.js +120 -0
  95. package/lib/chevre/repo/order.d.ts +55 -3
  96. package/lib/chevre/repo/order.js +56 -5
  97. package/lib/chevre/repo/reservation.d.ts +12 -4
  98. package/lib/chevre/repo/reservation.js +16 -44
  99. package/lib/chevre/repo/seller.js +19 -19
  100. package/lib/chevre/repo/task.d.ts +42 -2
  101. package/lib/chevre/repo/task.js +90 -9
  102. package/lib/chevre/repo/transaction.d.ts +23 -3
  103. package/lib/chevre/repo/transaction.js +174 -54
  104. package/lib/chevre/repository.d.ts +5 -2
  105. package/lib/chevre/repository.js +8 -4
  106. package/lib/chevre/service/aggregation/system.d.ts +67 -22
  107. package/lib/chevre/service/aggregation/system.js +101 -89
  108. package/lib/chevre/service/assetTransaction/cancelReservation.js +1 -28
  109. package/lib/chevre/service/assetTransaction/moneyTransfer.js +1 -23
  110. package/lib/chevre/service/assetTransaction/pay/potentialActions.js +17 -1
  111. package/lib/chevre/service/assetTransaction/pay.d.ts +5 -1
  112. package/lib/chevre/service/assetTransaction/pay.js +18 -32
  113. package/lib/chevre/service/assetTransaction/refund.js +1 -23
  114. package/lib/chevre/service/assetTransaction/registerService.js +1 -25
  115. package/lib/chevre/service/assetTransaction/reserve/factory.d.ts +15 -5
  116. package/lib/chevre/service/assetTransaction/reserve/factory.js +122 -58
  117. package/lib/chevre/service/assetTransaction/reserve.d.ts +10 -1
  118. package/lib/chevre/service/assetTransaction/reserve.js +85 -69
  119. package/lib/chevre/service/assetTransaction.d.ts +6 -2
  120. package/lib/chevre/service/assetTransaction.js +9 -5
  121. package/lib/chevre/service/event.js +3 -1
  122. package/lib/chevre/service/notification/factory.js +2 -2
  123. package/lib/chevre/service/notification.d.ts +3 -1
  124. package/lib/chevre/service/notification.js +41 -7
  125. package/lib/chevre/service/offer/event/authorize.d.ts +3 -0
  126. package/lib/chevre/service/offer/event/authorize.js +8 -2
  127. package/lib/chevre/service/offer/event/factory.d.ts +3 -0
  128. package/lib/chevre/service/offer/event/factory.js +16 -5
  129. package/lib/chevre/service/offer/event/voidTransaction.d.ts +2 -0
  130. package/lib/chevre/service/offer/event/voidTransaction.js +17 -1
  131. package/lib/chevre/service/offer.js +1 -1
  132. package/lib/chevre/service/order/deleteOrder.d.ts +3 -1
  133. package/lib/chevre/service/order/deleteOrder.js +8 -8
  134. package/lib/chevre/service/order/onOrderStatusChanged/factory.d.ts +5 -2
  135. package/lib/chevre/service/order/onOrderStatusChanged/factory.js +41 -81
  136. package/lib/chevre/service/order/onOrderStatusChanged.js +1 -3
  137. package/lib/chevre/service/order/onOrderUpdated.d.ts +16 -0
  138. package/lib/chevre/service/order/onOrderUpdated.js +22 -0
  139. package/lib/chevre/service/order/placeOrder.d.ts +1 -0
  140. package/lib/chevre/service/order/placeOrder.js +41 -24
  141. package/lib/chevre/service/order/returnOrder.d.ts +1 -0
  142. package/lib/chevre/service/order/returnOrder.js +7 -12
  143. package/lib/chevre/service/order/sendOrder.d.ts +1 -0
  144. package/lib/chevre/service/order/sendOrder.js +7 -10
  145. package/lib/chevre/service/order.d.ts +2 -1
  146. package/lib/chevre/service/order.js +3 -1
  147. package/lib/chevre/service/payment/any/onPaid.js +1 -1
  148. package/lib/chevre/service/payment/any/onRefund.js +1 -1
  149. package/lib/chevre/service/payment/any.d.ts +9 -5
  150. package/lib/chevre/service/payment/any.js +80 -18
  151. package/lib/chevre/service/payment/creditCard.d.ts +1 -1
  152. package/lib/chevre/service/payment/creditCard.js +21 -15
  153. package/lib/chevre/service/payment/movieTicket/checkByIdentifier.d.ts +7 -6
  154. package/lib/chevre/service/payment/movieTicket/validation.d.ts +6 -6
  155. package/lib/chevre/service/payment/movieTicket/validation.js +54 -31
  156. package/lib/chevre/service/payment/movieTicket.d.ts +2 -2
  157. package/lib/chevre/service/payment/movieTicket.js +5 -4
  158. package/lib/chevre/service/product.js +1 -5
  159. package/lib/chevre/service/report/telemetry.d.ts +0 -11
  160. package/lib/chevre/service/report/telemetry.js +21 -24
  161. package/lib/chevre/service/reserve/cancelReservation.d.ts +5 -3
  162. package/lib/chevre/service/reserve/cancelReservation.js +147 -139
  163. package/lib/chevre/service/reserve/checkInReservation.d.ts +9 -4
  164. package/lib/chevre/service/reserve/checkInReservation.js +77 -3
  165. package/lib/chevre/service/reserve/confirmReservation.d.ts +7 -4
  166. package/lib/chevre/service/reserve/confirmReservation.js +125 -58
  167. package/lib/chevre/service/reserve/factory.d.ts +1 -1
  168. package/lib/chevre/service/reserve/potentialActions/onReservationCanceled.d.ts +17 -5
  169. package/lib/chevre/service/reserve/potentialActions/onReservationCanceled.js +26 -24
  170. package/lib/chevre/service/reserve/potentialActions/onReservationCheckedIn.js +2 -3
  171. package/lib/chevre/service/reserve/potentialActions/onReservationConfirmed.js +2 -31
  172. package/lib/chevre/service/reserve/potentialActions/onReservationUsed.js +2 -3
  173. package/lib/chevre/service/reserve/useReservation.d.ts +7 -3
  174. package/lib/chevre/service/reserve/useReservation.js +61 -71
  175. package/lib/chevre/service/reserve/verifyToken4reservation.d.ts +15 -0
  176. package/lib/chevre/service/reserve/verifyToken4reservation.js +56 -0
  177. package/lib/chevre/service/reserve.d.ts +3 -2
  178. package/lib/chevre/service/reserve.js +4 -2
  179. package/lib/chevre/service/task/cancelPendingReservation.js +5 -1
  180. package/lib/chevre/service/task/confirmRegisterServiceTransaction.js +1 -1
  181. package/lib/chevre/service/task/deleteTransaction.js +10 -8
  182. package/lib/chevre/service/task/importOffersFromCOA.js +4 -0
  183. package/lib/chevre/service/task/onAuthorizationCreated.d.ts +7 -0
  184. package/lib/chevre/service/task/onAuthorizationCreated.js +108 -0
  185. package/lib/chevre/service/task/placeOrder.js +1 -1
  186. package/lib/chevre/service/task/reserve.js +10 -7
  187. package/lib/chevre/service/task/returnOrder.js +1 -1
  188. package/lib/chevre/service/task/returnPayTransaction.js +2 -12
  189. package/lib/chevre/service/task/sendOrder.js +1 -1
  190. package/lib/chevre/service/task/useReservation.d.ts +7 -0
  191. package/lib/chevre/service/task/useReservation.js +36 -0
  192. package/lib/chevre/service/task/voidReserveTransaction.js +3 -1
  193. package/lib/chevre/service/task.d.ts +9 -0
  194. package/lib/chevre/service/task.js +43 -4
  195. package/lib/chevre/service/transaction/deleteTransaction.d.ts +21 -0
  196. package/lib/chevre/service/transaction/deleteTransaction.js +232 -0
  197. package/lib/chevre/service/transaction/moneyTransfer/exportTasks/factory.js +11 -1
  198. package/lib/chevre/service/transaction/moneyTransfer/factory.js +3 -1
  199. package/lib/chevre/service/transaction/moneyTransfer/potentialActions.d.ts +1 -0
  200. package/lib/chevre/service/transaction/moneyTransfer/potentialActions.js +1 -1
  201. package/lib/chevre/service/transaction/moneyTransfer.js +9 -12
  202. package/lib/chevre/service/transaction/orderProgramMembership.js +6 -2
  203. package/lib/chevre/service/transaction/placeOrder/exportTasks/factory.js +42 -30
  204. package/lib/chevre/service/transaction/placeOrder.js +1 -5
  205. package/lib/chevre/service/transaction/placeOrderInProgress/factory.js +1 -1
  206. package/lib/chevre/service/transaction/placeOrderInProgress/potentialActions/moneyTransfer.d.ts +1 -0
  207. package/lib/chevre/service/transaction/placeOrderInProgress/potentialActions/moneyTransfer.js +1 -1
  208. package/lib/chevre/service/transaction/placeOrderInProgress/potentialActions/registerService.d.ts +1 -0
  209. package/lib/chevre/service/transaction/placeOrderInProgress/potentialActions/registerService.js +1 -1
  210. package/lib/chevre/service/transaction/placeOrderInProgress/potentialActions.d.ts +1 -0
  211. package/lib/chevre/service/transaction/placeOrderInProgress/result/acceptedOffers.d.ts +3 -0
  212. package/lib/chevre/service/transaction/placeOrderInProgress/result/acceptedOffers.js +7 -3
  213. package/lib/chevre/service/transaction/placeOrderInProgress/result.d.ts +1 -0
  214. package/lib/chevre/service/transaction/placeOrderInProgress/result.js +2 -2
  215. package/lib/chevre/service/transaction/placeOrderInProgress/validation/validateMovieTicket.d.ts +1 -1
  216. package/lib/chevre/service/transaction/placeOrderInProgress/validation/validateMovieTicket.js +2 -2
  217. package/lib/chevre/service/transaction/placeOrderInProgress/validation.d.ts +2 -1
  218. package/lib/chevre/service/transaction/placeOrderInProgress/validation.js +23 -17
  219. package/lib/chevre/service/transaction/placeOrderInProgress.d.ts +0 -3
  220. package/lib/chevre/service/transaction/placeOrderInProgress.js +22 -11
  221. package/lib/chevre/service/transaction/returnOrder/exportTasks/factory.js +10 -1
  222. package/lib/chevre/service/transaction/returnOrder/potentialActions/returnPaymentMethod.js +25 -17
  223. package/lib/chevre/service/transaction/returnOrder.d.ts +4 -0
  224. package/lib/chevre/service/transaction/returnOrder.js +225 -35
  225. package/lib/chevre/service/transaction.d.ts +8 -13
  226. package/lib/chevre/service/transaction.js +12 -145
  227. package/lib/chevre/settings.d.ts +4 -1
  228. package/lib/chevre/settings.js +15 -5
  229. package/package.json +5 -5
  230. package/example/src/chevre/migrateMoneyTransferPendingTransactionIdentifier.ts +0 -96
  231. package/example/src/chevre/migrateMovieAdditionalProperties.ts +0 -98
  232. package/lib/chevre/service/task/deleteAssetTransaction.d.ts +0 -12
  233. package/lib/chevre/service/task/deleteAssetTransaction.js +0 -65
  234. package/lib/chevre/service/task/deleteOrder.d.ts +0 -6
  235. package/lib/chevre/service/task/deleteOrder.js +0 -35
@@ -27,7 +27,7 @@ declare const modelName = "Telemetry";
27
27
  /**
28
28
  * 測定スキーマ
29
29
  */
30
- declare const schema: Schema<any, import("mongoose").Model<any, any, any, any, any>, {}, {}, {}, {}, import("mongoose").ResolveSchemaOptions<{
30
+ declare const schema: Schema<any, import("mongoose").Model<any, any, any, any, any, any>, {}, {}, {}, {}, {
31
31
  collection: string;
32
32
  id: true;
33
33
  read: string;
@@ -51,13 +51,31 @@ declare const schema: Schema<any, import("mongoose").Model<any, any, any, any, a
51
51
  minimize: false;
52
52
  versionKey: false;
53
53
  };
54
- }>, {
54
+ }, {
55
55
  object?: any;
56
56
  error?: any;
57
+ result?: any;
58
+ project?: any;
59
+ startDate?: Date | undefined;
60
+ endDate?: Date | undefined;
61
+ purpose?: any;
62
+ }, import("mongoose").Document<unknown, {}, import("mongoose").FlatRecord<{
63
+ object?: any;
64
+ error?: any;
65
+ result?: any;
57
66
  project?: any;
58
67
  startDate?: Date | undefined;
59
68
  endDate?: Date | undefined;
69
+ purpose?: any;
70
+ }>> & Omit<import("mongoose").FlatRecord<{
71
+ object?: any;
72
+ error?: any;
60
73
  result?: any;
74
+ project?: any;
75
+ startDate?: Date | undefined;
76
+ endDate?: Date | undefined;
61
77
  purpose?: any;
62
- }>;
78
+ }> & {
79
+ _id: import("mongoose").Types.ObjectId;
80
+ }, never>>;
63
81
  export { modelName, schema };
@@ -27,7 +27,7 @@ declare const modelName = "Transaction";
27
27
  /**
28
28
  * 取引スキーマ
29
29
  */
30
- declare const schema: Schema<any, import("mongoose").Model<any, any, any, any, any>, {}, {}, {}, {}, import("mongoose").ResolveSchemaOptions<{
30
+ declare const schema: Schema<any, import("mongoose").Model<any, any, any, any, any, any>, {}, {}, {}, {}, {
31
31
  collection: string;
32
32
  id: true;
33
33
  read: string;
@@ -51,11 +51,29 @@ declare const schema: Schema<any, import("mongoose").Model<any, any, any, any, a
51
51
  minimize: false;
52
52
  versionKey: false;
53
53
  };
54
- }>, {
54
+ }, {
55
55
  object?: any;
56
+ error?: any;
56
57
  typeOf?: string | undefined;
57
58
  status?: string | undefined;
59
+ result?: any;
60
+ expires?: Date | undefined;
61
+ project?: any;
62
+ agent?: any;
63
+ recipient?: any;
64
+ startDate?: Date | undefined;
65
+ endDate?: Date | undefined;
66
+ potentialActions?: any;
67
+ tasksExportationStatus?: string | undefined;
68
+ tasksExportedAt?: Date | undefined;
69
+ seller?: any;
70
+ tasksExportAction?: any;
71
+ }, import("mongoose").Document<unknown, {}, import("mongoose").FlatRecord<{
72
+ object?: any;
58
73
  error?: any;
74
+ typeOf?: string | undefined;
75
+ status?: string | undefined;
76
+ result?: any;
59
77
  expires?: Date | undefined;
60
78
  project?: any;
61
79
  agent?: any;
@@ -65,7 +83,26 @@ declare const schema: Schema<any, import("mongoose").Model<any, any, any, any, a
65
83
  potentialActions?: any;
66
84
  tasksExportationStatus?: string | undefined;
67
85
  tasksExportedAt?: Date | undefined;
86
+ seller?: any;
87
+ tasksExportAction?: any;
88
+ }>> & Omit<import("mongoose").FlatRecord<{
89
+ object?: any;
90
+ error?: any;
91
+ typeOf?: string | undefined;
92
+ status?: string | undefined;
68
93
  result?: any;
94
+ expires?: Date | undefined;
95
+ project?: any;
96
+ agent?: any;
97
+ recipient?: any;
98
+ startDate?: Date | undefined;
99
+ endDate?: Date | undefined;
100
+ potentialActions?: any;
101
+ tasksExportationStatus?: string | undefined;
102
+ tasksExportedAt?: Date | undefined;
69
103
  seller?: any;
70
- }>;
104
+ tasksExportAction?: any;
105
+ }> & {
106
+ _id: import("mongoose").Types.ObjectId;
107
+ }, never>>;
71
108
  export { modelName, schema };
@@ -22,13 +22,14 @@ const schema = new mongoose_1.Schema({
22
22
  expires: Date,
23
23
  startDate: Date,
24
24
  endDate: Date,
25
+ tasksExportAction: mongoose_1.SchemaTypes.Mixed,
25
26
  tasksExportedAt: Date,
26
27
  tasksExportationStatus: String,
27
28
  potentialActions: mongoose_1.SchemaTypes.Mixed
28
29
  }, {
29
30
  collection: 'transactions',
30
31
  id: true,
31
- read: 'primaryPreferred',
32
+ read: 'primary',
32
33
  writeConcern: writeConcern_1.writeConcern,
33
34
  strict: true,
34
35
  strictQuery: false,
@@ -27,7 +27,7 @@ declare const modelName = "Trip";
27
27
  /**
28
28
  * トリップスキーマ
29
29
  */
30
- declare const schema: Schema<any, import("mongoose").Model<any, any, any, any, any>, {}, {}, {}, {}, import("mongoose").ResolveSchemaOptions<{
30
+ declare const schema: Schema<any, import("mongoose").Model<any, any, any, any, any, any>, {}, {}, {}, {}, {
31
31
  collection: string;
32
32
  id: true;
33
33
  read: string;
@@ -51,8 +51,16 @@ declare const schema: Schema<any, import("mongoose").Model<any, any, any, any, a
51
51
  minimize: false;
52
52
  versionKey: false;
53
53
  };
54
- }>, {
54
+ }, {
55
55
  typeOf: string;
56
56
  project?: any;
57
- }>;
57
+ }, import("mongoose").Document<unknown, {}, import("mongoose").FlatRecord<{
58
+ typeOf: string;
59
+ project?: any;
60
+ }>> & Omit<import("mongoose").FlatRecord<{
61
+ typeOf: string;
62
+ project?: any;
63
+ }> & {
64
+ _id: import("mongoose").Types.ObjectId;
65
+ }, never>>;
58
66
  export { modelName, schema };
@@ -0,0 +1,22 @@
1
+ import { Connection } from 'mongoose';
2
+ import * as factory from '../factory';
3
+ interface IProjection {
4
+ [key: string]: 0 | 1;
5
+ }
6
+ /**
7
+ * アイテムコンディションリポジトリ
8
+ */
9
+ export declare class MongoRepository {
10
+ private readonly offerItemConditionModel;
11
+ constructor(connection: Connection);
12
+ static CREATE_MONGO_CONDITIONS(params: factory.offerItemCondition.ISearchConditions): any[];
13
+ findById(params: {
14
+ id: string;
15
+ }): Promise<factory.offerItemCondition.IOfferItemCondition>;
16
+ search(params: factory.offerItemCondition.ISearchConditions, projection?: IProjection): Promise<factory.offerItemCondition.IOfferItemCondition[]>;
17
+ save(params: factory.offerItemCondition.IOfferItemCondition): Promise<factory.offerItemCondition.IOfferItemCondition>;
18
+ deleteById(params: {
19
+ id: string;
20
+ }): Promise<void>;
21
+ }
22
+ export {};
@@ -0,0 +1,120 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ var __rest = (this && this.__rest) || function (s, e) {
12
+ var t = {};
13
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
14
+ t[p] = s[p];
15
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
16
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
17
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
18
+ t[p[i]] = s[p[i]];
19
+ }
20
+ return t;
21
+ };
22
+ Object.defineProperty(exports, "__esModule", { value: true });
23
+ exports.MongoRepository = void 0;
24
+ const factory = require("../factory");
25
+ const offerItemCondition_1 = require("./mongoose/schemas/offerItemCondition");
26
+ /**
27
+ * アイテムコンディションリポジトリ
28
+ */
29
+ class MongoRepository {
30
+ constructor(connection) {
31
+ this.offerItemConditionModel = connection.model(offerItemCondition_1.modelName, offerItemCondition_1.schema);
32
+ }
33
+ static CREATE_MONGO_CONDITIONS(params) {
34
+ var _a, _b, _c, _d, _e, _f;
35
+ const andConditions = [];
36
+ const projectIdEq = (_b = (_a = params.project) === null || _a === void 0 ? void 0 : _a.id) === null || _b === void 0 ? void 0 : _b.$eq;
37
+ if (typeof projectIdEq === 'string') {
38
+ andConditions.push({ 'project.id': { $eq: projectIdEq } });
39
+ }
40
+ const idEq = (_c = params.id) === null || _c === void 0 ? void 0 : _c.$eq;
41
+ if (typeof idEq === 'string') {
42
+ andConditions.push({ _id: { $eq: idEq } });
43
+ }
44
+ const idIn = (_d = params.id) === null || _d === void 0 ? void 0 : _d.$in;
45
+ if (Array.isArray(idIn)) {
46
+ andConditions.push({ _id: { $in: idIn } });
47
+ }
48
+ const identifierEq = (_e = params.identifier) === null || _e === void 0 ? void 0 : _e.$eq;
49
+ if (typeof identifierEq === 'string') {
50
+ andConditions.push({ identifier: { $eq: identifierEq } });
51
+ }
52
+ const identifierIn = (_f = params.identifier) === null || _f === void 0 ? void 0 : _f.$in;
53
+ if (Array.isArray(identifierIn)) {
54
+ andConditions.push({ identifier: { $in: identifierIn } });
55
+ }
56
+ return andConditions;
57
+ }
58
+ findById(params) {
59
+ return __awaiter(this, void 0, void 0, function* () {
60
+ const doc = yield this.offerItemConditionModel.findOne({ _id: params.id }, {
61
+ __v: 0,
62
+ createdAt: 0,
63
+ updatedAt: 0
64
+ })
65
+ .exec();
66
+ if (doc === null) {
67
+ throw new factory.errors.NotFound(this.offerItemConditionModel.modelName);
68
+ }
69
+ return doc.toObject();
70
+ });
71
+ }
72
+ search(params, projection) {
73
+ var _a;
74
+ return __awaiter(this, void 0, void 0, function* () {
75
+ const conditions = MongoRepository.CREATE_MONGO_CONDITIONS(params);
76
+ const positiveProjectionExists = (projection !== undefined && projection !== null)
77
+ ? Object.values(projection)
78
+ .some((value) => value !== 0)
79
+ : false;
80
+ const query = this.offerItemConditionModel.find((conditions.length > 0) ? { $and: conditions } : {}, (positiveProjectionExists)
81
+ ? projection
82
+ : Object.assign(Object.assign({}, projection), { __v: 0, createdAt: 0, updatedAt: 0 }));
83
+ if (typeof params.limit === 'number' && params.limit > 0) {
84
+ const page = (typeof params.page === 'number' && params.page > 0) ? params.page : 1;
85
+ query.limit(params.limit)
86
+ .skip(params.limit * (page - 1));
87
+ }
88
+ if (((_a = params.sort) === null || _a === void 0 ? void 0 : _a.identifier) !== undefined) {
89
+ query.sort({ identifier: params.sort.identifier });
90
+ }
91
+ return query.setOptions({ maxTimeMS: 10000 })
92
+ .exec()
93
+ .then((docs) => docs.map((doc) => doc.toObject()));
94
+ });
95
+ }
96
+ save(params) {
97
+ return __awaiter(this, void 0, void 0, function* () {
98
+ let doc;
99
+ if (params.id === '') {
100
+ doc = yield this.offerItemConditionModel.create(params);
101
+ }
102
+ else {
103
+ const { id, identifier, project, typeOf } = params, updateFields = __rest(params, ["id", "identifier", "project", "typeOf"]);
104
+ doc = yield this.offerItemConditionModel.findOneAndUpdate({ _id: params.id }, updateFields, { upsert: false, new: true })
105
+ .exec();
106
+ }
107
+ if (doc === null) {
108
+ throw new factory.errors.NotFound(this.offerItemConditionModel.modelName);
109
+ }
110
+ return doc.toObject();
111
+ });
112
+ }
113
+ deleteById(params) {
114
+ return __awaiter(this, void 0, void 0, function* () {
115
+ yield this.offerItemConditionModel.findOneAndRemove({ _id: params.id })
116
+ .exec();
117
+ });
118
+ }
119
+ }
120
+ exports.MongoRepository = MongoRepository;
@@ -1,3 +1,27 @@
1
+ /// <reference types="mongoose/types/aggregate" />
2
+ /// <reference types="mongoose/types/callback" />
3
+ /// <reference types="mongoose/types/collection" />
4
+ /// <reference types="mongoose/types/connection" />
5
+ /// <reference types="mongoose/types/cursor" />
6
+ /// <reference types="mongoose/types/document" />
7
+ /// <reference types="mongoose/types/error" />
8
+ /// <reference types="mongoose/types/expressions" />
9
+ /// <reference types="mongoose/types/helpers" />
10
+ /// <reference types="mongoose/types/middlewares" />
11
+ /// <reference types="mongoose/types/indexes" />
12
+ /// <reference types="mongoose/types/models" />
13
+ /// <reference types="mongoose/types/mongooseoptions" />
14
+ /// <reference types="mongoose/types/pipelinestage" />
15
+ /// <reference types="mongoose/types/populate" />
16
+ /// <reference types="mongoose/types/query" />
17
+ /// <reference types="mongoose/types/schemaoptions" />
18
+ /// <reference types="mongoose/types/schematypes" />
19
+ /// <reference types="mongoose/types/session" />
20
+ /// <reference types="mongoose/types/types" />
21
+ /// <reference types="mongoose/types/utility" />
22
+ /// <reference types="mongoose/types/validation" />
23
+ /// <reference types="mongoose/types/virtuals" />
24
+ /// <reference types="mongoose/types/inferschematype" />
1
25
  import { Connection } from 'mongoose';
2
26
  import * as factory from '../factory';
3
27
  /**
@@ -34,7 +58,9 @@ export declare class MongoRepository {
34
58
  additionalProperty?: factory.propertyValue.IPropertyValue<string>[];
35
59
  name?: string;
36
60
  orderNumber: string;
37
- }): Promise<void>;
61
+ }): Promise<{
62
+ updatedAt: Date;
63
+ }>;
38
64
  findById(params: {
39
65
  id: string;
40
66
  inclusion: string[];
@@ -62,7 +88,9 @@ export declare class MongoRepository {
62
88
  /**
63
89
  * 注文を検索する
64
90
  */
65
- search(params: factory.order.ISearchConditions, projection?: any): Promise<factory.order.IOrder[]>;
91
+ search(params: factory.order.ISearchConditions, projection?: {
92
+ [key: string]: 0 | 1;
93
+ }): Promise<factory.order.IOrder[]>;
66
94
  /**
67
95
  * 注文の受入オファーIDリストを検索する
68
96
  */
@@ -70,7 +98,11 @@ export declare class MongoRepository {
70
98
  /**
71
99
  * オファー展開の注文検索
72
100
  */
73
- searchWithUnwoundAcceptedOffer(params: factory.order.ISearchConditions, projection?: any): Promise<factory.order.IOrder[]>;
101
+ searchWithUnwoundAcceptedOffer(params: factory.order.ISearchConditions, projection?: {
102
+ [key: string]: any;
103
+ }): Promise<Omit<factory.order.IOrder[], 'acceptedOffers'> & {
104
+ acceptedOffers?: factory.order.IAcceptedOffer<factory.order.IItemOffered> | factory.order.IAcceptedOffer<factory.order.IItemOffered>[];
105
+ }>;
74
106
  /**
75
107
  * 特典口座情報が未保管であれば保管する
76
108
  */
@@ -86,4 +118,24 @@ export declare class MongoRepository {
86
118
  $in: string[];
87
119
  };
88
120
  }): Promise<(string)[]>;
121
+ /**
122
+ * 注文に含まれるイベントIDを検索する
123
+ */
124
+ searchReservationForIdsByOrderNumbers(params: {
125
+ orderNumber: {
126
+ $in: string[];
127
+ };
128
+ }): Promise<string[]>;
129
+ /**
130
+ * 注文に含まれるacceptedOffersを検索する
131
+ */
132
+ searchAcceptedOffersByOrderNumbers(params: {
133
+ orderNumber: {
134
+ $in: string[];
135
+ };
136
+ }): Promise<{
137
+ id: string;
138
+ priceSpecification: factory.order.ITicketPriceSpecification;
139
+ }[]>;
140
+ getCursor(conditions: any, projection: any): import("mongoose").Cursor<any, import("mongoose").QueryOptions<any>>;
89
141
  }
@@ -779,14 +779,17 @@ class MongoRepository {
779
779
  const doc = yield this.orderModel.findOneAndUpdate({ orderNumber: { $eq: params.orderNumber } }, {
780
780
  $set: Object.assign(Object.assign({}, (Array.isArray(params.additionalProperty)) ? { additionalProperty: params.additionalProperty } : undefined), (typeof params.name === 'string') ? { name: params.name } : undefined)
781
781
  }, {
782
+ new: true,
782
783
  projection: {
783
- _id: 1
784
+ _id: 1,
785
+ updatedAt: 1
784
786
  }
785
787
  })
786
788
  .exec();
787
789
  if (doc === null) {
788
790
  throw new factory.errors.NotFound(this.orderModel.modelName);
789
791
  }
792
+ return { updatedAt: doc.updatedAt };
790
793
  });
791
794
  }
792
795
  findById(params) {
@@ -896,8 +899,15 @@ class MongoRepository {
896
899
  var _a;
897
900
  return __awaiter(this, void 0, void 0, function* () {
898
901
  const conditions = MongoRepository.CREATE_MONGO_CONDITIONS(params);
902
+ const projectionSpecified = projection !== undefined && projection !== null;
903
+ const positiveProjectionExists = (projectionSpecified)
904
+ ? Object.values(projection)
905
+ .some((value) => value !== 0)
906
+ : false;
899
907
  const query = this.orderModel.find((conditions.length > 0) ? { $and: conditions } : {})
900
- .select(Object.assign({ __v: 0, createdAt: 0, updatedAt: 0 }, projection));
908
+ .select((projectionSpecified && positiveProjectionExists)
909
+ ? projection
910
+ : Object.assign({ __v: 0, createdAt: 0, updatedAt: 0 }, projection));
901
911
  if (typeof params.limit === 'number' && params.limit > 0) {
902
912
  const page = (typeof params.page === 'number' && params.page > 0) ? params.page : 1;
903
913
  query.limit(params.limit)
@@ -1002,13 +1012,54 @@ class MongoRepository {
1002
1012
  if (!Array.isArray(params.orderNumber.$in) || params.orderNumber.$in.length === 0) {
1003
1013
  return [];
1004
1014
  }
1005
- const reservationNumbers = yield this.orderModel.distinct('acceptedOffers.itemOffered.reservationNumber', {
1006
- orderNumber: params.orderNumber.$in
1015
+ return this.orderModel.distinct('acceptedOffers.itemOffered.reservationNumber', {
1016
+ 'acceptedOffers.itemOffered.reservationNumber': { $exists: true },
1017
+ orderNumber: { $in: params.orderNumber.$in }
1018
+ })
1019
+ .setOptions({ maxTimeMS: 10000 })
1020
+ .exec();
1021
+ });
1022
+ }
1023
+ /**
1024
+ * 注文に含まれるイベントIDを検索する
1025
+ */
1026
+ searchReservationForIdsByOrderNumbers(params) {
1027
+ return __awaiter(this, void 0, void 0, function* () {
1028
+ if (!Array.isArray(params.orderNumber.$in) || params.orderNumber.$in.length === 0) {
1029
+ return [];
1030
+ }
1031
+ return this.orderModel.distinct('acceptedOffers.itemOffered.reservationFor.id', {
1032
+ 'acceptedOffers.itemOffered.reservationFor.id': { $exists: true },
1033
+ orderNumber: { $in: params.orderNumber.$in }
1007
1034
  })
1008
1035
  .setOptions({ maxTimeMS: 10000 })
1009
1036
  .exec();
1010
- return [...new Set(reservationNumbers)];
1011
1037
  });
1012
1038
  }
1039
+ /**
1040
+ * 注文に含まれるacceptedOffersを検索する
1041
+ */
1042
+ searchAcceptedOffersByOrderNumbers(params) {
1043
+ return __awaiter(this, void 0, void 0, function* () {
1044
+ if (!Array.isArray(params.orderNumber.$in) || params.orderNumber.$in.length === 0) {
1045
+ return [];
1046
+ }
1047
+ const aggregate = this.orderModel.aggregate();
1048
+ aggregate.unwind('$acceptedOffers');
1049
+ aggregate.match({ orderNumber: { $in: params.orderNumber.$in } });
1050
+ aggregate.project({
1051
+ _id: 0,
1052
+ id: '$acceptedOffers.id',
1053
+ priceSpecification: '$acceptedOffers.priceSpecification'
1054
+ });
1055
+ return aggregate.option({ maxTimeMS: 10000 })
1056
+ .exec();
1057
+ });
1058
+ }
1059
+ getCursor(conditions, projection) {
1060
+ return this.orderModel.find(conditions, projection)
1061
+ .sort({ orderDate: factory.sortType.Descending })
1062
+ .cursor();
1063
+ }
1013
1064
  }
1014
1065
  exports.MongoRepository = MongoRepository;
@@ -23,19 +23,27 @@ export declare class MongoRepository {
23
23
  /**
24
24
  * 予約検索
25
25
  */
26
- search<T extends factory.reservationType>(params: factory.reservation.ISearchConditions<T>, projection?: any): Promise<factory.reservation.IReservation<factory.reservationType.EventReservation>[]>;
26
+ search<T extends factory.reservationType>(params: factory.reservation.ISearchConditions<T>, projection?: {
27
+ [key: string]: 0 | 1;
28
+ }): Promise<factory.reservation.IReservation<factory.reservationType.EventReservation>[]>;
27
29
  findById<T extends factory.reservationType>(params: {
28
30
  id: string;
29
31
  inclusion?: string[];
30
32
  exclusion?: string[];
31
33
  }): Promise<factory.reservation.IReservation<T>>;
32
- /**
33
- * 予約確定
34
- */
35
34
  confirmByReservationNumber(params: {
36
35
  reservationNumber: string;
37
36
  previousReservationStatus: factory.reservationStatusType;
38
37
  underName?: factory.reservation.IUnderName<factory.reservationType.EventReservation>;
38
+ broker?: factory.reservation.IBroker<factory.reservationType>;
39
+ issuedThrough?: factory.assetTransaction.reserve.IIssuedThrough;
40
+ }): Promise<void>;
41
+ confirmByIdIfNotExist(params: {
42
+ reservation: factory.assetTransaction.reserve.IObjectSubReservation;
43
+ reservationFor: factory.assetTransaction.reserve.IReservationFor;
44
+ underName?: factory.reservation.IUnderName<factory.reservationType.EventReservation>;
45
+ broker?: factory.reservation.IBroker<factory.reservationType>;
46
+ issuedThrough?: factory.assetTransaction.reserve.IIssuedThrough;
39
47
  }): Promise<void>;
40
48
  /**
41
49
  * 予約取消
@@ -10,8 +10,10 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
10
10
  };
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
12
  exports.MongoRepository = void 0;
13
+ const createDebug = require("debug");
13
14
  const reservation_1 = require("./mongoose/schemas/reservation");
14
15
  const factory = require("../factory");
16
+ const debug = createDebug('chevre-domain:repo');
15
17
  /**
16
18
  * 予約リポジトリ
17
19
  */
@@ -910,61 +912,31 @@ class MongoRepository {
910
912
  return doc.toObject();
911
913
  });
912
914
  }
913
- /**
914
- * 予約確定
915
- */
916
- // public async confirm<T extends factory.reservationType>(params: {
917
- // id: string;
918
- // previousReservationStatus: factory.reservationStatusType;
919
- // underName?: factory.reservation.IUnderName<T>;
920
- // }): Promise<factory.reservation.IReservation<T>> {
921
- // const conditions = {
922
- // _id: { $eq: String(params.id) },
923
- // reservationStatus: { $eq: params.previousReservationStatus }
924
- // };
925
- // // 更新属性をwhitelist化(2022-06-13~)
926
- // const update = {
927
- // // previousReservationStatusを保管(2023-01-19~)
928
- // previousReservationStatus: params.previousReservationStatus,
929
- // reservationStatus: factory.reservationStatusType.ReservationConfirmed,
930
- // modifiedTime: new Date(),
931
- // ...(params.underName !== undefined) ? { underName: params.underName } : undefined
932
- // };
933
- // const doc = await this.reservationModel.findOneAndUpdate(
934
- // conditions,
935
- // update,
936
- // { new: true }
937
- // )
938
- // .select({ __v: 0, createdAt: 0, updatedAt: 0 })
939
- // .exec();
940
- // // NotFoundであれば状態確認
941
- // if (doc === null) {
942
- // const reservation = await this.findById<T>({ id: String(params.id) });
943
- // if (reservation.reservationStatus === factory.reservationStatusType.ReservationConfirmed) {
944
- // // すでに確定済の場合
945
- // return reservation;
946
- // } else {
947
- // throw new factory.errors.Argument(
948
- // 'id',
949
- // `Reservation ${reservation.id} already changed -> ${reservation.reservationStatus}`
950
- // );
951
- // }
952
- // }
953
- // return doc.toObject();
954
- // }
955
915
  confirmByReservationNumber(params) {
916
+ var _a, _b;
956
917
  return __awaiter(this, void 0, void 0, function* () {
957
918
  const conditions = {
958
919
  reservationNumber: { $eq: String(params.reservationNumber) },
959
920
  reservationStatus: { $eq: params.previousReservationStatus }
960
921
  };
961
- const update = Object.assign({
922
+ const update = Object.assign(Object.assign(Object.assign({
962
923
  // previousReservationStatusを保管(2023-01-19~)
963
- previousReservationStatus: params.previousReservationStatus, reservationStatus: factory.reservationStatusType.ReservationConfirmed, modifiedTime: new Date() }, (params.underName !== undefined) ? { underName: params.underName } : undefined);
924
+ previousReservationStatus: params.previousReservationStatus, reservationStatus: factory.reservationStatusType.ReservationConfirmed, modifiedTime: new Date() }, (params.underName !== undefined) ? { underName: params.underName } : undefined), (typeof ((_a = params.broker) === null || _a === void 0 ? void 0 : _a.typeOf) === 'string') ? { broker: params.broker } : undefined), (typeof ((_b = params.issuedThrough) === null || _b === void 0 ? void 0 : _b.typeOf) === 'string') ? { issuedThrough: params.issuedThrough } : undefined);
964
925
  yield this.reservationModel.updateMany(conditions, update)
965
926
  .exec();
966
927
  });
967
928
  }
929
+ confirmByIdIfNotExist(params) {
930
+ var _a, _b;
931
+ return __awaiter(this, void 0, void 0, function* () {
932
+ const confirmedReservation = yield this.reservationModel.findOneAndUpdate({ _id: { $eq: params.reservation.id } }, {
933
+ $setOnInsert: Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({}, params.reservation), { _id: params.reservation.id, reservationFor: params.reservationFor, reservationStatus: factory.reservationStatusType.ReservationConfirmed, modifiedTime: new Date() }), (params.underName !== undefined) ? { underName: params.underName } : undefined), (typeof ((_a = params.broker) === null || _a === void 0 ? void 0 : _a.typeOf) === 'string') ? { broker: params.broker } : undefined), (typeof ((_b = params.issuedThrough) === null || _b === void 0 ? void 0 : _b.typeOf) === 'string') ? { issuedThrough: params.issuedThrough } : undefined)
934
+ }, { upsert: true, new: true })
935
+ .select({ _id: 1 })
936
+ .exec();
937
+ debug('confirmByIdIfNotExist processed.confirmedReservation:', confirmedReservation);
938
+ });
939
+ }
968
940
  /**
969
941
  * 予約取消
970
942
  */