@chevre/domain 25.0.0-alpha.8 → 25.0.0
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.
- package/lib/chevre/repo/message.d.ts +7 -15
- package/lib/chevre/repo/message.js +37 -74
- package/lib/chevre/repo/mongoose/schemas/message.d.ts +1 -1
- package/lib/chevre/repo/mongoose/schemas/order.d.ts +4 -0
- package/lib/chevre/repo/mongoose/schemas/order.js +11 -110
- package/lib/chevre/repo/mongoose/schemas/setting.d.ts +7 -15
- package/lib/chevre/repo/mongoose/schemas/setting.js +1 -1
- package/lib/chevre/repo/mongoose/schemas/transaction.js +51 -50
- package/lib/chevre/repo/order.d.ts +3 -7
- package/lib/chevre/repo/order.js +56 -26
- package/lib/chevre/repo/orderInTransaction.d.ts +45 -22
- package/lib/chevre/repo/orderInTransaction.js +108 -77
- package/lib/chevre/repo/orderNumber.d.ts +4 -0
- package/lib/chevre/repo/orderNumber.js +32 -60
- package/lib/chevre/repo/passport.d.ts +5 -2
- package/lib/chevre/repo/setting/waiter.d.ts +17 -0
- package/lib/chevre/repo/setting/waiter.js +39 -0
- package/lib/chevre/repo/setting.d.ts +12 -11
- package/lib/chevre/repo/setting.js +6 -18
- package/lib/chevre/repo/task.d.ts +1 -1
- package/lib/chevre/repo/transaction/placeOrder.d.ts +1 -6
- package/lib/chevre/repo/transaction/placeOrder.js +37 -26
- package/lib/chevre/repo/transaction.d.ts +1 -1
- package/lib/chevre/repo/transaction.js +2 -2
- package/lib/chevre/repository.d.ts +5 -0
- package/lib/chevre/repository.js +11 -0
- package/lib/chevre/service/assetTransaction/reserve/start.d.ts +0 -2
- package/lib/chevre/service/offer/any.d.ts +2 -3
- package/lib/chevre/service/offer/any.js +8 -8
- package/lib/chevre/service/offer/event/authorize/processStartReserve4chevre.d.ts +0 -2
- package/lib/chevre/service/offer/event/authorize.d.ts +0 -4
- package/lib/chevre/service/offer/event/authorize.js +6 -8
- package/lib/chevre/service/offer/event/voidTransaction.js +29 -17
- package/lib/chevre/service/offer/event/voidTransactionByActionId.js +16 -12
- package/lib/chevre/service/offer/eventServiceByCOA/acceptOffer.d.ts +0 -6
- package/lib/chevre/service/offer/eventServiceByCOA/acceptOffer.js +10 -12
- package/lib/chevre/service/offer/eventServiceByCOA/authorize/factory.d.ts +1 -1
- package/lib/chevre/service/offer/eventServiceByCOA/authorize.js +7 -7
- package/lib/chevre/service/offer/eventServiceByCOA/changeOffers.js +21 -17
- package/lib/chevre/service/order/deleteOrder.d.ts +6 -10
- package/lib/chevre/service/order/deleteOrder.js +7 -48
- package/lib/chevre/service/order/onOrderStatusChanged/onOrderCancelled/factory.d.ts +1 -1
- package/lib/chevre/service/order/onOrderStatusChanged/onOrderDeliveredPartially/factory.d.ts +1 -1
- package/lib/chevre/service/order/onOrderStatusChanged/onOrderPaymentDue.d.ts +4 -1
- package/lib/chevre/service/order/onOrderStatusChanged/onOrderPaymentDue.js +1 -26
- package/lib/chevre/service/order/onOrderStatusChanged/onOrderReturned/factory.d.ts +1 -1
- package/lib/chevre/service/order/placeOrder/createPlacingOrderFromExistingTransaction.js +3 -2
- package/lib/chevre/service/order/placeOrder/factory.d.ts +1 -1
- package/lib/chevre/service/order/placeOrder/factory.js +6 -6
- package/lib/chevre/service/order/placeOrder/voidAcceptedOfferIfNecessary.d.ts +1 -3
- package/lib/chevre/service/order/placeOrder/voidAcceptedOfferIfNecessary.js +3 -15
- package/lib/chevre/service/order/placeOrder.js +6 -6
- package/lib/chevre/service/order.d.ts +1 -2
- package/lib/chevre/service/order.js +1 -5
- package/lib/chevre/service/payment/any/authorize/fixOrderAsNeeded.d.ts +2 -4
- package/lib/chevre/service/payment/any/authorize/fixOrderAsNeeded.js +4 -6
- package/lib/chevre/service/payment/any/authorize.d.ts +2 -0
- package/lib/chevre/service/payment/any/publishPaymentUrl.d.ts +0 -4
- package/lib/chevre/service/payment/any/publishPaymentUrl.js +5 -8
- package/lib/chevre/service/task/acceptCOAOffer.js +8 -10
- package/lib/chevre/service/task/authorizePayment.js +2 -6
- package/lib/chevre/service/task/deleteTransaction.js +2 -10
- package/lib/chevre/service/task/publishPaymentUrl.js +6 -9
- package/lib/chevre/service/taskHandler.js +0 -1
- package/lib/chevre/service/transaction/deleteTransaction.d.ts +8 -16
- package/lib/chevre/service/transaction/deleteTransaction.js +46 -145
- package/lib/chevre/service/transaction/placeOrder/confirm/factory/result.d.ts +7 -2
- package/lib/chevre/service/transaction/placeOrder/confirm/potentialActions/sendEmailMessage.d.ts +3 -2
- package/lib/chevre/service/transaction/placeOrder/confirm/potentialActions.d.ts +3 -2
- package/lib/chevre/service/transaction/placeOrder/confirm.d.ts +2 -5
- package/lib/chevre/service/transaction/placeOrder/confirm.js +29 -24
- package/lib/chevre/service/transaction/placeOrder/exportTasks/factory.d.ts +2 -3
- package/lib/chevre/service/transaction/placeOrder/exportTasks/factory.js +45 -54
- package/lib/chevre/service/transaction/placeOrder/exportTasksById.d.ts +0 -4
- package/lib/chevre/service/transaction/placeOrder/exportTasksById.js +2 -3
- package/lib/chevre/service/transaction/placeOrder/issueOrderNumberIfNotExist.d.ts +5 -0
- package/lib/chevre/service/transaction/placeOrder/issueOrderNumberIfNotExist.js +37 -23
- package/lib/chevre/service/transaction/placeOrder/start/factory.d.ts +20 -4
- package/lib/chevre/service/transaction/placeOrder/start/factory.js +20 -7
- package/lib/chevre/service/transaction/placeOrder/start.d.ts +9 -4
- package/lib/chevre/service/transaction/placeOrder/start.js +18 -1
- package/lib/chevre/service/transaction/placeOrder/updateAgent.d.ts +0 -4
- package/lib/chevre/service/transaction/placeOrder/updateAgent.js +20 -22
- package/lib/chevre/service/transaction/placeOrder.d.ts +1 -2
- package/lib/chevre/service/transaction/placeOrder.js +1 -3
- package/lib/chevre/service/transaction.d.ts +0 -4
- package/lib/chevre/service/transaction.js +1 -1
- package/lib/chevre/service.d.ts +0 -2
- package/lib/chevre/service.js +0 -2
- package/package.json +2 -2
- package/lib/chevre/factory/order.d.ts +0 -2
- package/lib/chevre/factory/order.js +0 -5
- package/lib/chevre/service/order/placeOrderWithoutTransaction.d.ts +0 -22
- package/lib/chevre/service/order/placeOrderWithoutTransaction.js +0 -51
- package/lib/chevre/service/task/deletePerson.d.ts +0 -6
- package/lib/chevre/service/task/deletePerson.js +0 -465
|
@@ -46,9 +46,6 @@ export declare class MessageRepo {
|
|
|
46
46
|
projectFields(params: ISearchConditions, inclusion: IKeyOfProjection[]): Promise<(IEmailMessage & {
|
|
47
47
|
id: string;
|
|
48
48
|
})[]>;
|
|
49
|
-
/**
|
|
50
|
-
* コードをキーにしてなければ作成する(複数対応)
|
|
51
|
-
*/
|
|
52
49
|
/**
|
|
53
50
|
* コードをキーにしてひとつ更新(なければ作成する)
|
|
54
51
|
*/
|
|
@@ -62,18 +59,13 @@ export declare class MessageRepo {
|
|
|
62
59
|
id: string;
|
|
63
60
|
};
|
|
64
61
|
}): Promise<IFindByIdentifierResult>;
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
}): Promise<{
|
|
73
|
-
n?: number;
|
|
74
|
-
ok?: number;
|
|
75
|
-
deletedCount?: number;
|
|
76
|
-
} | null>;
|
|
62
|
+
/**
|
|
63
|
+
* 発行日時を基準に複数削除
|
|
64
|
+
* 2026-06-28~
|
|
65
|
+
*/
|
|
66
|
+
deleteDatePublishedPassedCertainPeriod(params: {
|
|
67
|
+
$lt: Date;
|
|
68
|
+
}): Promise<void>;
|
|
77
69
|
unsetUnnecessaryFields(params: {
|
|
78
70
|
filter: any;
|
|
79
71
|
$unset: any;
|
|
@@ -80,65 +80,6 @@ class MessageRepo {
|
|
|
80
80
|
.lean() // 2024-09-19~
|
|
81
81
|
.exec();
|
|
82
82
|
}
|
|
83
|
-
// 重複エラーをハンドルするためにupsertOneByIdentifierへ移行(2025-05-11~)
|
|
84
|
-
/**
|
|
85
|
-
* コードをキーにしてなければ作成する(複数対応)
|
|
86
|
-
*/
|
|
87
|
-
// public async upsertByIdentifier(
|
|
88
|
-
// params: Pick<
|
|
89
|
-
// IEmailMessage,
|
|
90
|
-
// 'about' | 'identifier' | 'mainEntity' | 'name' | 'project' | 'sender' | 'text' | 'toRecipient' | 'provider'
|
|
91
|
-
// >[]
|
|
92
|
-
// ): Promise<BulkWriteResult | void> {
|
|
93
|
-
// const now = new Date();
|
|
94
|
-
// const bulkWriteOps: AnyBulkWriteOperation<IEmailMessage>[] = [];
|
|
95
|
-
// if (Array.isArray(params)) {
|
|
96
|
-
// params.forEach((creatingNoteParams) => {
|
|
97
|
-
// const { about, identifier, project, text, mainEntity, name, sender, toRecipient, provider } = creatingNoteParams;
|
|
98
|
-
// if (typeof identifier !== 'string' || identifier.length === 0) {
|
|
99
|
-
// throw new factory.errors.ArgumentNull('identifier');
|
|
100
|
-
// }
|
|
101
|
-
// if (typeof text !== 'string') {
|
|
102
|
-
// throw new factory.errors.ArgumentNull('text');
|
|
103
|
-
// }
|
|
104
|
-
// // リソースのユニークネスを保証するfilter
|
|
105
|
-
// const filter: RootFilterQuery<IEmailMessage> = {
|
|
106
|
-
// // typeOf: { $eq: factory.creativeWorkType.EmailMessage },
|
|
107
|
-
// 'project.id': { $eq: project.id },
|
|
108
|
-
// identifier: { $eq: identifier }
|
|
109
|
-
// };
|
|
110
|
-
// const setOnInsert: MatchKeysAndValues<IEmailMessage> = {
|
|
111
|
-
// identifier,
|
|
112
|
-
// project,
|
|
113
|
-
// datePublished: now,
|
|
114
|
-
// typeOf: factory.creativeWorkType.EmailMessage
|
|
115
|
-
// };
|
|
116
|
-
// // 変更可能な属性のみ上書き
|
|
117
|
-
// const setFields: MatchKeysAndValues<IEmailMessage> = {
|
|
118
|
-
// provider,
|
|
119
|
-
// mainEntity,
|
|
120
|
-
// about,
|
|
121
|
-
// sender,
|
|
122
|
-
// text,
|
|
123
|
-
// toRecipient,
|
|
124
|
-
// ...(typeof name === 'string') ? { name } : undefined
|
|
125
|
-
// };
|
|
126
|
-
// const updateFilter: UpdateFilter<IEmailMessage> = {
|
|
127
|
-
// $setOnInsert: setOnInsert,
|
|
128
|
-
// $set: setFields
|
|
129
|
-
// };
|
|
130
|
-
// const updateOne: UpdateOneModel<IEmailMessage> = {
|
|
131
|
-
// filter,
|
|
132
|
-
// update: updateFilter,
|
|
133
|
-
// upsert: true
|
|
134
|
-
// };
|
|
135
|
-
// bulkWriteOps.push({ updateOne });
|
|
136
|
-
// });
|
|
137
|
-
// }
|
|
138
|
-
// if (bulkWriteOps.length > 0) {
|
|
139
|
-
// return this.messageModel.bulkWrite(bulkWriteOps, { ordered: false });
|
|
140
|
-
// }
|
|
141
|
-
// }
|
|
142
83
|
/**
|
|
143
84
|
* コードをキーにしてひとつ更新(なければ作成する)
|
|
144
85
|
*/
|
|
@@ -219,22 +160,44 @@ class MessageRepo {
|
|
|
219
160
|
}
|
|
220
161
|
return doc;
|
|
221
162
|
}
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
deletedCount: result?.deletedCount
|
|
235
|
-
};
|
|
236
|
-
});
|
|
163
|
+
/**
|
|
164
|
+
* 発行日時を基準に複数削除
|
|
165
|
+
* 2026-06-28~
|
|
166
|
+
*/
|
|
167
|
+
async deleteDatePublishedPassedCertainPeriod(params) {
|
|
168
|
+
const { $lt } = params;
|
|
169
|
+
if ($lt instanceof Date) {
|
|
170
|
+
await this.messageModel.deleteMany({
|
|
171
|
+
datePublished: { $lt }
|
|
172
|
+
})
|
|
173
|
+
.exec();
|
|
174
|
+
}
|
|
237
175
|
}
|
|
176
|
+
// public async deleteByMainEntityOrderNumber(params: {
|
|
177
|
+
// project: { id: string };
|
|
178
|
+
// mainEntity: { orderNumber: string };
|
|
179
|
+
// }): Promise<{
|
|
180
|
+
// n?: number;
|
|
181
|
+
// // opTime: result.opTime,
|
|
182
|
+
// ok?: number;
|
|
183
|
+
// // operationTime,
|
|
184
|
+
// deletedCount?: number;
|
|
185
|
+
// } | null> {
|
|
186
|
+
// return this.messageModel.deleteMany({
|
|
187
|
+
// 'project.id': { $eq: params.project.id },
|
|
188
|
+
// 'mainEntity.orderNumber': { $exists: true, $eq: params.mainEntity.orderNumber }
|
|
189
|
+
// })
|
|
190
|
+
// .exec()
|
|
191
|
+
// .then((result) => {
|
|
192
|
+
// return {
|
|
193
|
+
// // n: result?.n,
|
|
194
|
+
// // opTime: result.opTime,
|
|
195
|
+
// // ok: result?.ok,
|
|
196
|
+
// // operationTime,
|
|
197
|
+
// deletedCount: result?.deletedCount
|
|
198
|
+
// };
|
|
199
|
+
// });
|
|
200
|
+
// }
|
|
238
201
|
async unsetUnnecessaryFields(params) {
|
|
239
202
|
return this.messageModel.updateMany(params.filter, { $unset: params.$unset }, { timestamps: false })
|
|
240
203
|
.exec();
|
|
@@ -16,7 +16,7 @@ export type IEmailMessage = factory.creativeWork.message.email.ICreativeWork & {
|
|
|
16
16
|
typeOf: factory.organizationType.Corporation;
|
|
17
17
|
};
|
|
18
18
|
};
|
|
19
|
-
type IDocType =
|
|
19
|
+
type IDocType = Pick<IEmailMessage, 'about' | 'identifier' | 'name' | 'project' | 'sender' | 'text' | 'toRecipient' | 'typeOf' | 'datePublished' | 'mainEntity' | 'provider'>;
|
|
20
20
|
type IModel = Model<IDocType, Record<string, never>, Record<string, never>, IVirtuals>;
|
|
21
21
|
type ISchemaDefinition = SchemaDefinition<IDocType>;
|
|
22
22
|
type ISchema = Schema<IDocType, IModel, Record<string, never>, Record<string, never>, IVirtuals, Record<string, never>, ISchemaDefinition, IDocType>;
|
|
@@ -3,6 +3,10 @@ import { IVirtuals } from '../virtuals';
|
|
|
3
3
|
import { factory } from '../../../factory';
|
|
4
4
|
type IDocType = Omit<factory.order.IOrder, 'id'> & {
|
|
5
5
|
acceptedOffers?: factory.order.IAcceptedOffer[];
|
|
6
|
+
/**
|
|
7
|
+
* 注文取引IDとして再定義(2026-06-22~)
|
|
8
|
+
*/
|
|
9
|
+
identifier?: string;
|
|
6
10
|
};
|
|
7
11
|
type IModel = Model<IDocType, Record<string, never>, Record<string, never>, IVirtuals>;
|
|
8
12
|
type ISchemaDefinition = SchemaDefinition<IDocType>;
|
|
@@ -12,7 +12,7 @@ const schemaDefinition = {
|
|
|
12
12
|
project: { type: mongoose_1.SchemaTypes.Mixed, required: true },
|
|
13
13
|
typeOf: { type: String, required: true },
|
|
14
14
|
name: String,
|
|
15
|
-
seller: mongoose_1.SchemaTypes.Mixed,
|
|
15
|
+
seller: { type: mongoose_1.SchemaTypes.Mixed, required: true },
|
|
16
16
|
customer: mongoose_1.SchemaTypes.Mixed,
|
|
17
17
|
returner: mongoose_1.SchemaTypes.Mixed,
|
|
18
18
|
confirmationNumber: String,
|
|
@@ -25,7 +25,8 @@ const schemaDefinition = {
|
|
|
25
25
|
previousOrderStatus: String,
|
|
26
26
|
orderDate: { type: Date, required: true },
|
|
27
27
|
dateReturned: Date,
|
|
28
|
-
orderedItem: [mongoose_1.SchemaTypes.Mixed]
|
|
28
|
+
orderedItem: [mongoose_1.SchemaTypes.Mixed],
|
|
29
|
+
identifier: { type: String, required: true }, // 注文取引IDとして再定義(2026-06-22~)
|
|
29
30
|
// 以下廃止(2026-06-13~)
|
|
30
31
|
// identifier: SchemaTypes.Mixed, // 廃止するためにMixed化(2026-06-12~)
|
|
31
32
|
// isGift: Boolean,
|
|
@@ -60,15 +61,14 @@ const indexes = [
|
|
|
60
61
|
{ 'project.id': 1, orderDate: -1 },
|
|
61
62
|
{ name: 'searchByProjectId-v20220721' }
|
|
62
63
|
],
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
// ],
|
|
64
|
+
[
|
|
65
|
+
// 注文取引IDはユニークなはず
|
|
66
|
+
{ identifier: 1 },
|
|
67
|
+
{
|
|
68
|
+
unique: true,
|
|
69
|
+
name: 'uniqueIdentifier'
|
|
70
|
+
}
|
|
71
|
+
],
|
|
72
72
|
[
|
|
73
73
|
// 注文番号はユニークなはず
|
|
74
74
|
{ orderNumber: 1 },
|
|
@@ -77,15 +77,6 @@ const indexes = [
|
|
|
77
77
|
name: 'uniqueOrderNumber'
|
|
78
78
|
}
|
|
79
79
|
],
|
|
80
|
-
// [
|
|
81
|
-
// { 'seller.typeOf': 1, orderDate: -1 },
|
|
82
|
-
// {
|
|
83
|
-
// name: 'searchBySellerTypeOf',
|
|
84
|
-
// partialFilterExpression: {
|
|
85
|
-
// 'seller.typeOf': { $exists: true }
|
|
86
|
-
// }
|
|
87
|
-
// }
|
|
88
|
-
// ],
|
|
89
80
|
[
|
|
90
81
|
{ 'seller.id': 1, orderDate: -1 },
|
|
91
82
|
{
|
|
@@ -152,24 +143,6 @@ const indexes = [
|
|
|
152
143
|
}
|
|
153
144
|
}
|
|
154
145
|
],
|
|
155
|
-
// [
|
|
156
|
-
// { 'customer.additionalProperty': 1, orderDate: -1 },
|
|
157
|
-
// {
|
|
158
|
-
// name: 'searchByCustomerAdditionalProperty',
|
|
159
|
-
// partialFilterExpression: {
|
|
160
|
-
// 'customer.additionalProperty': { $exists: true }
|
|
161
|
-
// }
|
|
162
|
-
// }
|
|
163
|
-
// ],
|
|
164
|
-
// [
|
|
165
|
-
// { 'customer.memberOf.membershipNumber': 1, orderDate: -1 },
|
|
166
|
-
// {
|
|
167
|
-
// name: 'searchByCustomerMemberhipNumberAndOrderDate',
|
|
168
|
-
// partialFilterExpression: {
|
|
169
|
-
// 'customer.memberOf.membershipNumber': { $exists: true }
|
|
170
|
-
// }
|
|
171
|
-
// }
|
|
172
|
-
// ],
|
|
173
146
|
[
|
|
174
147
|
{ 'customer.givenName': 1, orderDate: -1 },
|
|
175
148
|
{
|
|
@@ -233,15 +206,6 @@ const indexes = [
|
|
|
233
206
|
}
|
|
234
207
|
}
|
|
235
208
|
],
|
|
236
|
-
// [
|
|
237
|
-
// { 'paymentMethods.typeOf': 1, orderDate: -1 },
|
|
238
|
-
// {
|
|
239
|
-
// name: 'searchByPaymentMethodTypeAndOrderDate',
|
|
240
|
-
// partialFilterExpression: {
|
|
241
|
-
// 'paymentMethods.typeOf': { $exists: true }
|
|
242
|
-
// }
|
|
243
|
-
// }
|
|
244
|
-
// ],
|
|
245
209
|
[
|
|
246
210
|
{ 'paymentMethods.paymentMethod.identifier': 1, orderDate: -1 },
|
|
247
211
|
{
|
|
@@ -269,15 +233,6 @@ const indexes = [
|
|
|
269
233
|
}
|
|
270
234
|
}
|
|
271
235
|
],
|
|
272
|
-
// [
|
|
273
|
-
// { 'acceptedOffers.itemOffered.identifier': 1, orderDate: -1 },
|
|
274
|
-
// {
|
|
275
|
-
// name: 'searchByItemOfferedIdentifier',
|
|
276
|
-
// partialFilterExpression: {
|
|
277
|
-
// 'acceptedOffers.itemOffered.identifier': { $exists: true }
|
|
278
|
-
// }
|
|
279
|
-
// }
|
|
280
|
-
// ],
|
|
281
236
|
[
|
|
282
237
|
{ 'acceptedOffers.itemOffered.id': 1, orderDate: -1 },
|
|
283
238
|
{
|
|
@@ -287,42 +242,6 @@ const indexes = [
|
|
|
287
242
|
}
|
|
288
243
|
}
|
|
289
244
|
],
|
|
290
|
-
// [
|
|
291
|
-
// { 'acceptedOffers.itemOffered.issuedThrough.typeOf': 1, orderDate: -1 },
|
|
292
|
-
// {
|
|
293
|
-
// name: 'searchByItemOfferedIssuedThroughTypeOf',
|
|
294
|
-
// partialFilterExpression: {
|
|
295
|
-
// 'acceptedOffers.itemOffered.issuedThrough.typeOf': { $exists: true }
|
|
296
|
-
// }
|
|
297
|
-
// }
|
|
298
|
-
// ],
|
|
299
|
-
// [
|
|
300
|
-
// { 'acceptedOffers.itemOffered.issuedThrough.id': 1, orderDate: -1 },
|
|
301
|
-
// {
|
|
302
|
-
// name: 'searchByItemOfferedIssuedThroughId',
|
|
303
|
-
// partialFilterExpression: {
|
|
304
|
-
// 'acceptedOffers.itemOffered.issuedThrough.id': { $exists: true }
|
|
305
|
-
// }
|
|
306
|
-
// }
|
|
307
|
-
// ],
|
|
308
|
-
// [
|
|
309
|
-
// { 'acceptedOffers.itemOffered.programMembershipUsed.identifier': 1, orderDate: -1 },
|
|
310
|
-
// {
|
|
311
|
-
// name: 'searchByItemOfferedProgramMembershipUsedIdentifier',
|
|
312
|
-
// partialFilterExpression: {
|
|
313
|
-
// 'acceptedOffers.itemOffered.programMembershipUsed.identifier': { $exists: true }
|
|
314
|
-
// }
|
|
315
|
-
// }
|
|
316
|
-
// ],
|
|
317
|
-
// [
|
|
318
|
-
// { 'acceptedOffers.itemOffered.programMembershipUsed.issuedThrough.serviceType.codeValue': 1, orderDate: -1 },
|
|
319
|
-
// {
|
|
320
|
-
// name: 'searchByItemOfferedMembershipUsedServiceType',
|
|
321
|
-
// partialFilterExpression: {
|
|
322
|
-
// 'acceptedOffers.itemOffered.programMembershipUsed.issuedThrough.serviceType.codeValue': { $exists: true }
|
|
323
|
-
// }
|
|
324
|
-
// }
|
|
325
|
-
// ],
|
|
326
245
|
[
|
|
327
246
|
{ 'acceptedOffers.itemOffered.reservationNumber': 1, orderDate: -1 },
|
|
328
247
|
{
|
|
@@ -341,24 +260,6 @@ const indexes = [
|
|
|
341
260
|
}
|
|
342
261
|
}
|
|
343
262
|
],
|
|
344
|
-
// [
|
|
345
|
-
// { 'acceptedOffers.itemOffered.reservationFor.identifier': 1, orderDate: -1 },
|
|
346
|
-
// {
|
|
347
|
-
// name: 'searchByItemOfferedReservationForIdentifierAndOrderDate',
|
|
348
|
-
// partialFilterExpression: {
|
|
349
|
-
// 'acceptedOffers.itemOffered.reservationFor.identifier': { $exists: true }
|
|
350
|
-
// }
|
|
351
|
-
// }
|
|
352
|
-
// ],
|
|
353
|
-
// [
|
|
354
|
-
// { 'acceptedOffers.itemOffered.reservationFor.name': 1, orderDate: -1 },
|
|
355
|
-
// {
|
|
356
|
-
// name: 'searchByItemOfferedReservationForNameAndOrderDate',
|
|
357
|
-
// partialFilterExpression: {
|
|
358
|
-
// 'acceptedOffers.itemOffered.reservationFor.name': { $exists: true }
|
|
359
|
-
// }
|
|
360
|
-
// }
|
|
361
|
-
// ],
|
|
362
263
|
[
|
|
363
264
|
{ 'acceptedOffers.itemOffered.reservationFor.endDate': 1, orderDate: -1 },
|
|
364
265
|
{
|
|
@@ -31,13 +31,7 @@ interface IOnTaskStatusChanged {
|
|
|
31
31
|
interface IOnEventChanged {
|
|
32
32
|
informEvent2agg?: factory.project.IInformParams[];
|
|
33
33
|
}
|
|
34
|
-
interface
|
|
35
|
-
/**
|
|
36
|
-
* AggService通知先
|
|
37
|
-
*/
|
|
38
|
-
informTransaction?: factory.project.IInformParams[];
|
|
39
|
-
}
|
|
40
|
-
interface IStorageSettings {
|
|
34
|
+
export interface IStorageSettings {
|
|
41
35
|
/**
|
|
42
36
|
* 取引保管期間(Confirmed)
|
|
43
37
|
* default:365
|
|
@@ -53,6 +47,11 @@ interface IStorageSettings {
|
|
|
53
47
|
assetTransactionInDays?: number;
|
|
54
48
|
taskInDays?: number;
|
|
55
49
|
eventInDays?: number;
|
|
50
|
+
/**
|
|
51
|
+
* メッセージ保管日数
|
|
52
|
+
* 2026-06-28~
|
|
53
|
+
*/
|
|
54
|
+
messageInDays?: number;
|
|
56
55
|
/**
|
|
57
56
|
* イベント終了日時からn日後まで座席をロックする
|
|
58
57
|
*/
|
|
@@ -80,7 +79,7 @@ interface ITriggerWebhookSettings {
|
|
|
80
79
|
retryCountMax?: number;
|
|
81
80
|
retryIntervalInMS?: number;
|
|
82
81
|
}
|
|
83
|
-
interface IWaiterSettings {
|
|
82
|
+
export interface IWaiterSettings {
|
|
84
83
|
disabled?: boolean;
|
|
85
84
|
passportUnavailable?: boolean;
|
|
86
85
|
passportIssuers: string[];
|
|
@@ -111,7 +110,6 @@ export interface IJWTSetting {
|
|
|
111
110
|
algorithm: Algorithm;
|
|
112
111
|
}
|
|
113
112
|
export interface IOrderNumberSetting {
|
|
114
|
-
validFrom: Date;
|
|
115
113
|
/**
|
|
116
114
|
* fpe暗号鍵
|
|
117
115
|
*/
|
|
@@ -120,11 +118,6 @@ export interface IOrderNumberSetting {
|
|
|
120
118
|
* "A"
|
|
121
119
|
*/
|
|
122
120
|
version: string;
|
|
123
|
-
versioningForceProjects?: string[];
|
|
124
|
-
/**
|
|
125
|
-
* 強制的にバージョニング不使用のプロジェクト
|
|
126
|
-
*/
|
|
127
|
-
versioningExceptionProjects?: string[];
|
|
128
121
|
}
|
|
129
122
|
export interface ITransactionNumberSetting {
|
|
130
123
|
validFrom: Date;
|
|
@@ -236,7 +229,6 @@ export interface ISetting {
|
|
|
236
229
|
onResourceUpdated?: {
|
|
237
230
|
informResource?: factory.project.IInformParams[];
|
|
238
231
|
};
|
|
239
|
-
onTransactionStatusChanged?: IOnTransactionStatusChanged;
|
|
240
232
|
orderNumber?: IOrderNumberSetting;
|
|
241
233
|
project: {
|
|
242
234
|
id: string;
|
|
@@ -16,7 +16,7 @@ const schemaDefinition = {
|
|
|
16
16
|
onReservationStatusChanged: mongoose_1.SchemaTypes.Mixed,
|
|
17
17
|
onTaskStatusChanged: mongoose_1.SchemaTypes.Mixed,
|
|
18
18
|
onResourceUpdated: mongoose_1.SchemaTypes.Mixed,
|
|
19
|
-
onTransactionStatusChanged:
|
|
19
|
+
// onTransactionStatusChanged: SchemaTypes.Mixed, // discontinue(2026-06-29~)
|
|
20
20
|
orderNumber: mongoose_1.SchemaTypes.Mixed,
|
|
21
21
|
quota: mongoose_1.SchemaTypes.Mixed,
|
|
22
22
|
serviceOutputIdentifier: mongoose_1.SchemaTypes.Mixed,
|
|
@@ -22,8 +22,6 @@ const schemaDefinition = {
|
|
|
22
22
|
startDate: Date,
|
|
23
23
|
endDate: Date,
|
|
24
24
|
tasksExportAction: mongoose_1.SchemaTypes.Mixed,
|
|
25
|
-
// tasksExportedAt: Date, // discontinue(2024-06-19~)
|
|
26
|
-
// tasksExportationStatus: String, // discontinue(2024-06-19~)
|
|
27
25
|
potentialActions: mongoose_1.SchemaTypes.Mixed,
|
|
28
26
|
instrument: mongoose_1.SchemaTypes.Mixed
|
|
29
27
|
};
|
|
@@ -81,24 +79,6 @@ const indexes = [
|
|
|
81
79
|
{ expires: 1, startDate: -1 },
|
|
82
80
|
{ name: 'searchByExpiresAndStartDate' }
|
|
83
81
|
],
|
|
84
|
-
[
|
|
85
|
-
{ 'result.order.confirmationNumber': 1, startDate: -1 },
|
|
86
|
-
{
|
|
87
|
-
name: 'searchByResultOrderConfirmationNumber',
|
|
88
|
-
partialFilterExpression: {
|
|
89
|
-
'result.order.confirmationNumber': { $exists: true }
|
|
90
|
-
}
|
|
91
|
-
}
|
|
92
|
-
],
|
|
93
|
-
[
|
|
94
|
-
{ 'result.order.orderNumber': 1, startDate: -1 },
|
|
95
|
-
{
|
|
96
|
-
name: 'searchByResultOrderNumberAndStartDate',
|
|
97
|
-
partialFilterExpression: {
|
|
98
|
-
'result.order.orderNumber': { $exists: true }
|
|
99
|
-
}
|
|
100
|
-
}
|
|
101
|
-
],
|
|
102
82
|
[
|
|
103
83
|
{ 'object.confirmationNumber': 1, startDate: -1 },
|
|
104
84
|
{
|
|
@@ -126,36 +106,6 @@ const indexes = [
|
|
|
126
106
|
}
|
|
127
107
|
}
|
|
128
108
|
],
|
|
129
|
-
[
|
|
130
|
-
// 結果の注文番号はユニークなはず
|
|
131
|
-
{
|
|
132
|
-
typeOf: 1,
|
|
133
|
-
'result.order.orderNumber': 1
|
|
134
|
-
},
|
|
135
|
-
{
|
|
136
|
-
name: 'searchPlaceOrderByOrderNumber',
|
|
137
|
-
unique: true,
|
|
138
|
-
partialFilterExpression: {
|
|
139
|
-
'result.order.orderNumber': { $exists: true }
|
|
140
|
-
}
|
|
141
|
-
}
|
|
142
|
-
],
|
|
143
|
-
[
|
|
144
|
-
// 注文取引のobject.orderNumberも発行されている場合ユニークなはず(2026-02-21~)
|
|
145
|
-
{
|
|
146
|
-
typeOf: 1,
|
|
147
|
-
'object.orderNumber': 1
|
|
148
|
-
},
|
|
149
|
-
{
|
|
150
|
-
name: 'uniquePlacingOrderNumber20260221',
|
|
151
|
-
unique: true,
|
|
152
|
-
partialFilterExpression: {
|
|
153
|
-
typeOf: factory_1.factory.transactionType.PlaceOrder,
|
|
154
|
-
'object.orderNumber': { $exists: true },
|
|
155
|
-
startDate: { $gte: new Date('2026-02-21T11:00:00Z') }
|
|
156
|
-
}
|
|
157
|
-
}
|
|
158
|
-
],
|
|
159
109
|
[
|
|
160
110
|
// 注文取引のobject.orderNumberも発行されている場合ユニークなはず(2026-02-21~)
|
|
161
111
|
{
|
|
@@ -261,6 +211,57 @@ const indexes = [
|
|
|
261
211
|
}
|
|
262
212
|
}
|
|
263
213
|
]
|
|
214
|
+
// result.order廃止につきインデックス廃止(2026-06-28~)
|
|
215
|
+
// [
|
|
216
|
+
// { 'result.order.confirmationNumber': 1, startDate: -1 },
|
|
217
|
+
// {
|
|
218
|
+
// name: 'searchByResultOrderConfirmationNumber',
|
|
219
|
+
// partialFilterExpression: {
|
|
220
|
+
// 'result.order.confirmationNumber': { $exists: true }
|
|
221
|
+
// }
|
|
222
|
+
// }
|
|
223
|
+
// ],
|
|
224
|
+
// [
|
|
225
|
+
// { 'result.order.orderNumber': 1, startDate: -1 },
|
|
226
|
+
// {
|
|
227
|
+
// name: 'searchByResultOrderNumberAndStartDate',
|
|
228
|
+
// partialFilterExpression: {
|
|
229
|
+
// 'result.order.orderNumber': { $exists: true }
|
|
230
|
+
// }
|
|
231
|
+
// }
|
|
232
|
+
// ],
|
|
233
|
+
// result.order廃止につきインデックス廃止(2026-06-28~)
|
|
234
|
+
// [
|
|
235
|
+
// // 結果の注文番号はユニークなはず
|
|
236
|
+
// {
|
|
237
|
+
// typeOf: 1,
|
|
238
|
+
// 'result.order.orderNumber': 1
|
|
239
|
+
// },
|
|
240
|
+
// {
|
|
241
|
+
// name: 'searchPlaceOrderByOrderNumber',
|
|
242
|
+
// unique: true,
|
|
243
|
+
// partialFilterExpression: {
|
|
244
|
+
// 'result.order.orderNumber': { $exists: true }
|
|
245
|
+
// }
|
|
246
|
+
// }
|
|
247
|
+
// ],
|
|
248
|
+
// uniquePlacingOrderNumberと重複しているので廃止(2026-06-28~)
|
|
249
|
+
// [
|
|
250
|
+
// // 注文取引のobject.orderNumberも発行されている場合ユニークなはず(2026-02-21~)
|
|
251
|
+
// {
|
|
252
|
+
// typeOf: 1,
|
|
253
|
+
// 'object.orderNumber': 1
|
|
254
|
+
// },
|
|
255
|
+
// {
|
|
256
|
+
// name: 'uniquePlacingOrderNumber20260221',
|
|
257
|
+
// unique: true,
|
|
258
|
+
// partialFilterExpression: {
|
|
259
|
+
// typeOf: factory.transactionType.PlaceOrder,
|
|
260
|
+
// 'object.orderNumber': { $exists: true },
|
|
261
|
+
// startDate: { $gte: new Date('2026-02-21T11:00:00Z') }
|
|
262
|
+
// }
|
|
263
|
+
// }
|
|
264
|
+
// ],
|
|
264
265
|
];
|
|
265
266
|
exports.indexes = indexes;
|
|
266
267
|
/**
|
|
@@ -26,7 +26,7 @@ interface IAggregateOrder {
|
|
|
26
26
|
export type IOrderOnStatusChanged = Pick<IOrderWithoutAcceptedOffers & {
|
|
27
27
|
id: string;
|
|
28
28
|
}, 'id' | 'orderNumber' | 'broker' | 'confirmationNumber' | 'customer' | 'dateReturned' | 'name' | 'orderDate' | 'orderStatus' | 'orderedItem' | 'paymentMethods' | 'previousOrderStatus' | 'price' | 'priceCurrency' | 'project' | 'returner' | 'seller' | 'typeOf'>;
|
|
29
|
-
type ISearchConditions = Pick<factory.order.ISearchConditions, 'acceptedOffers' | 'broker' | 'confirmationNumbers' | 'customer' | 'name' | 'orderDate' | 'orderNumbers' | 'orderStatuses' | 'paymentMethods' | 'project' | 'provider' | 'seller'>;
|
|
29
|
+
type ISearchConditions = Pick<factory.order.ISearchConditions, 'acceptedOffers' | 'broker' | 'confirmationNumbers' | 'customer' | 'name' | 'orderDate' | 'orderNumbers' | 'orderStatuses' | 'paymentMethods' | 'project' | 'provider' | 'seller' | 'identifier'>;
|
|
30
30
|
/**
|
|
31
31
|
* 注文リポジトリ
|
|
32
32
|
*/
|
|
@@ -34,12 +34,6 @@ export declare class OrderRepo {
|
|
|
34
34
|
private readonly orderModel;
|
|
35
35
|
constructor(connection: Connection);
|
|
36
36
|
static CREATE_MONGO_CONDITIONS(params: ISearchConditions): FilterQuery<factory.order.IOrder>[];
|
|
37
|
-
/**
|
|
38
|
-
* なければ作成する
|
|
39
|
-
*/
|
|
40
|
-
createIfNotExist(order: IOrderWithoutAcceptedOffers & {
|
|
41
|
-
acceptedOffers: factory.order.IAcceptedOffer[];
|
|
42
|
-
}): Promise<void>;
|
|
43
37
|
/**
|
|
44
38
|
* 注文ステータスを変更する
|
|
45
39
|
*/
|
|
@@ -140,12 +134,14 @@ export declare class OrderRepo {
|
|
|
140
134
|
})[]>;
|
|
141
135
|
getCursor(conditions: any, projection: any): import("mongoose").Cursor<import("mongoose").Document<unknown, Record<string, never>, IDocType, import("./mongoose/virtuals").IVirtuals, {}> & Omit<factory.order.IOrder, "id"> & {
|
|
142
136
|
acceptedOffers?: factory.order.IAcceptedOffer[];
|
|
137
|
+
identifier?: string;
|
|
143
138
|
} & {
|
|
144
139
|
_id: import("mongoose").Types.ObjectId;
|
|
145
140
|
} & {
|
|
146
141
|
__v: number;
|
|
147
142
|
}, import("mongoose").QueryOptions<IDocType>, (import("mongoose").Document<unknown, Record<string, never>, IDocType, import("./mongoose/virtuals").IVirtuals, {}> & Omit<factory.order.IOrder, "id"> & {
|
|
148
143
|
acceptedOffers?: factory.order.IAcceptedOffer[];
|
|
144
|
+
identifier?: string;
|
|
149
145
|
} & {
|
|
150
146
|
_id: import("mongoose").Types.ObjectId;
|
|
151
147
|
} & {
|