@chevre/domain 24.1.0-alpha.20 → 24.1.0-alpha.21
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/acceptedOffer.d.ts +7 -1
- package/lib/chevre/repo/acceptedOffer.js +59 -34
- package/lib/chevre/service/order/deleteOrder.js +2 -1
- package/lib/chevre/service/order/sendOrder.js +2 -1
- package/lib/chevre/service/reserve/findByCode.js +2 -1
- package/lib/chevre/service/reserve/findReservations.js +0 -8
- package/lib/chevre/service/reserve/searchByOrder.js +2 -1
- package/lib/chevre/service/task/confirmReserveTransaction.js +2 -1
- package/lib/chevre/service/task/payment/payByTask.js +2 -1
- package/lib/chevre/service/transaction/returnOrder/preStart.js +2 -4
- package/lib/chevre/service/validation/validateOrder.js +5 -79
- package/package.json +1 -1
|
@@ -20,6 +20,10 @@ export declare class AcceptedOfferRepo {
|
|
|
20
20
|
* 予約番号指定で予約取引からitemOfferedを生成する
|
|
21
21
|
*/
|
|
22
22
|
private findSubReservationsByReservationNumbers;
|
|
23
|
+
/**
|
|
24
|
+
* 予約取引からオファー詳細情報を付加する
|
|
25
|
+
*/
|
|
26
|
+
private addAcceptedOffersDetails;
|
|
23
27
|
/**
|
|
24
28
|
* オファー展開の注文検索
|
|
25
29
|
*/
|
|
@@ -73,7 +77,7 @@ export declare class AcceptedOfferRepo {
|
|
|
73
77
|
};
|
|
74
78
|
};
|
|
75
79
|
};
|
|
76
|
-
}, options
|
|
80
|
+
}, options: {
|
|
77
81
|
useReserveTransaction: boolean;
|
|
78
82
|
}): Promise<IAcceptedOffer[]>;
|
|
79
83
|
/**
|
|
@@ -89,6 +93,8 @@ export declare class AcceptedOfferRepo {
|
|
|
89
93
|
$eq: string;
|
|
90
94
|
};
|
|
91
95
|
};
|
|
96
|
+
}, options: {
|
|
97
|
+
useReserveTransaction: boolean;
|
|
92
98
|
}): Promise<ISearchSlicedAcceptedOffersResult>;
|
|
93
99
|
countByOrderNumber(filter: {
|
|
94
100
|
orderNumber: {
|
|
@@ -1,12 +1,17 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
2
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
6
|
exports.AcceptedOfferRepo = void 0;
|
|
7
|
+
const debug_1 = __importDefault(require("debug"));
|
|
4
8
|
const factory_1 = require("../factory");
|
|
5
9
|
const order_1 = require("./mongoose/schemas/order");
|
|
6
10
|
const assetTransaction_1 = require("./mongoose/schemas/assetTransaction");
|
|
7
11
|
const reserveTransaction2itemOffered_1 = require("./factory/acceptedOffer/reserveTransaction2itemOffered");
|
|
8
12
|
const order_2 = require("./order");
|
|
9
13
|
const settings_1 = require("../settings");
|
|
14
|
+
const debug = (0, debug_1.default)('chevre-domain:repo:acceptedOffer');
|
|
10
15
|
/**
|
|
11
16
|
* 注文オファーリポジトリ
|
|
12
17
|
*/
|
|
@@ -37,6 +42,42 @@ class AcceptedOfferRepo {
|
|
|
37
42
|
return [...a, ...(0, reserveTransaction2itemOffered_1.reserveTransaction2itemOffered)(b)];
|
|
38
43
|
}, []);
|
|
39
44
|
}
|
|
45
|
+
/**
|
|
46
|
+
* 予約取引からオファー詳細情報を付加する
|
|
47
|
+
*/
|
|
48
|
+
async addAcceptedOffersDetails(acceptedOffers) {
|
|
49
|
+
const offeredThroughIdentifier = acceptedOffers.at(0)?.offeredThrough?.identifier;
|
|
50
|
+
if (offeredThroughIdentifier === factory_1.factory.service.webAPI.Identifier.COA) {
|
|
51
|
+
// COAでは予約取引を参照しない
|
|
52
|
+
return acceptedOffers;
|
|
53
|
+
}
|
|
54
|
+
const reservationNumbers = [...new Set(acceptedOffers.map((acceptedOffer) => String(acceptedOffer.serialNumber)))];
|
|
55
|
+
debug('addAcceptedOffersDetails:', reservationNumbers.length, 'reservationNumbers found.');
|
|
56
|
+
let subReservations = [];
|
|
57
|
+
if (reservationNumbers.length > 0) {
|
|
58
|
+
subReservations = await this.findSubReservationsByReservationNumbers({ reservationNumbers });
|
|
59
|
+
}
|
|
60
|
+
debug('addAcceptedOffersDetails: reservationNumbers.length === subReservations.length?', reservationNumbers.length === subReservations.length);
|
|
61
|
+
return acceptedOffers.map((acceptedOffer) => {
|
|
62
|
+
const subReservation = subReservations.find(((reservation) => reservation.id === acceptedOffer.itemOffered.id));
|
|
63
|
+
// 予約は必ず存在するはず
|
|
64
|
+
if (subReservation === undefined) {
|
|
65
|
+
console.error('addAcceptedOffersDetails: subReservation: undefined!!!', acceptedOffer.itemOffered.id);
|
|
66
|
+
}
|
|
67
|
+
const priceSpecByReserveTransaction = subReservation?.price;
|
|
68
|
+
// 予約の価格は必ず存在するはず
|
|
69
|
+
if (priceSpecByReserveTransaction === undefined) {
|
|
70
|
+
console.error('addAcceptedOffersDetails: priceSpecByReserveTransaction: undefined!!!', acceptedOffer.itemOffered.id);
|
|
71
|
+
}
|
|
72
|
+
const { priceSpecification, ...acceptedOfferWithoutPrice } = acceptedOffer;
|
|
73
|
+
return {
|
|
74
|
+
...acceptedOfferWithoutPrice,
|
|
75
|
+
...(priceSpecByReserveTransaction !== undefined)
|
|
76
|
+
? { priceSpecification: priceSpecByReserveTransaction } // 予約取引参照の値で上書き
|
|
77
|
+
: { priceSpecification } // 万が一予約取引に存在しなければ注文ドキュメントの値を採用
|
|
78
|
+
};
|
|
79
|
+
});
|
|
80
|
+
}
|
|
40
81
|
/**
|
|
41
82
|
* オファー展開の注文検索
|
|
42
83
|
*/
|
|
@@ -81,12 +122,12 @@ class AcceptedOfferRepo {
|
|
|
81
122
|
&& offeredThroughIdentifier !== factory_1.factory.service.webAPI.Identifier.COA; // COAでは予約取引を参照しない
|
|
82
123
|
if (useReserveTransaction) {
|
|
83
124
|
const reservationNumbers = [...new Set(orders.map((order) => String(order.acceptedOffers[0].serialNumber)))];
|
|
84
|
-
|
|
125
|
+
debug('searchWithUnwoundAcceptedOffers:', reservationNumbers.length, 'reservationNumbers found.');
|
|
85
126
|
let subReservations = [];
|
|
86
127
|
if (reservationNumbers.length > 0) {
|
|
87
128
|
subReservations = await this.findSubReservationsByReservationNumbers({ reservationNumbers });
|
|
88
129
|
}
|
|
89
|
-
|
|
130
|
+
debug('searchWithUnwoundAcceptedOffers: reservationNumbers.length === subReservations.length?', reservationNumbers.length === subReservations.length);
|
|
90
131
|
return orders.map((order) => {
|
|
91
132
|
const acceptedOffer = order.acceptedOffers[0];
|
|
92
133
|
const subReservation = subReservations.find(((reservation) => reservation.id === acceptedOffer.itemOffered.id));
|
|
@@ -243,37 +284,10 @@ class AcceptedOfferRepo {
|
|
|
243
284
|
const acceptedOffers = await aggregate
|
|
244
285
|
.option({ maxTimeMS: settings_1.MONGO_MAX_TIME_MS })
|
|
245
286
|
.exec();
|
|
246
|
-
// 予約取引を参照(2026-05-
|
|
247
|
-
const
|
|
248
|
-
const useReserveTransaction = options?.useReserveTransaction === true
|
|
249
|
-
&& offeredThroughIdentifier !== factory_1.factory.service.webAPI.Identifier.COA; // COAでは予約取引を参照しない
|
|
287
|
+
// 予約取引を参照(2026-05-18~)
|
|
288
|
+
const useReserveTransaction = options?.useReserveTransaction === true;
|
|
250
289
|
if (useReserveTransaction) {
|
|
251
|
-
|
|
252
|
-
// console.log(reservationNumbers.length, 'reservationNumbers found')
|
|
253
|
-
let subReservations = [];
|
|
254
|
-
if (reservationNumbers.length > 0) {
|
|
255
|
-
subReservations = await this.findSubReservationsByReservationNumbers({ reservationNumbers });
|
|
256
|
-
}
|
|
257
|
-
// console.log(subReservations.length, 'subReservations found');
|
|
258
|
-
return acceptedOffers.map((acceptedOffer) => {
|
|
259
|
-
const subReservation = subReservations.find(((reservation) => reservation.id === acceptedOffer.itemOffered.id));
|
|
260
|
-
// 予約は必ず存在するはず
|
|
261
|
-
if (subReservation === undefined) {
|
|
262
|
-
console.error('searchAcceptedOffersByOrderNumber: subReservation: undefined!!!', acceptedOffer.itemOffered.id);
|
|
263
|
-
}
|
|
264
|
-
const priceSpecByReserveTransaction = subReservation?.price;
|
|
265
|
-
// 予約の価格は必ず存在するはず
|
|
266
|
-
if (priceSpecByReserveTransaction === undefined) {
|
|
267
|
-
console.error('searchAcceptedOffersByOrderNumber: priceSpecByReserveTransaction: undefined!!!', acceptedOffer.itemOffered.id);
|
|
268
|
-
}
|
|
269
|
-
const { priceSpecification, ...acceptedOfferWithoutPrice } = acceptedOffer;
|
|
270
|
-
return {
|
|
271
|
-
...acceptedOfferWithoutPrice,
|
|
272
|
-
...(priceSpecByReserveTransaction !== undefined)
|
|
273
|
-
? { priceSpecification: priceSpecByReserveTransaction } // 予約取引参照の値で上書き
|
|
274
|
-
: { priceSpecification } // 万が一予約取引に存在しなければ注文ドキュメントの値を採用
|
|
275
|
-
};
|
|
276
|
-
});
|
|
290
|
+
return this.addAcceptedOffersDetails(acceptedOffers);
|
|
277
291
|
}
|
|
278
292
|
else {
|
|
279
293
|
return acceptedOffers;
|
|
@@ -282,7 +296,7 @@ class AcceptedOfferRepo {
|
|
|
282
296
|
/**
|
|
283
297
|
* 注文オファーをsliceして検索する(2024-01-10~)
|
|
284
298
|
*/
|
|
285
|
-
async searchSlicedAcceptedOffersByOrderNumber(filter) {
|
|
299
|
+
async searchSlicedAcceptedOffersByOrderNumber(filter, options) {
|
|
286
300
|
const aggregate = this.orderModel.aggregate([
|
|
287
301
|
{ $match: { orderNumber: { $eq: filter.orderNumber.$eq } } },
|
|
288
302
|
{ $match: { 'project.id': { $eq: filter.project.id.$eq } } },
|
|
@@ -301,7 +315,18 @@ class AcceptedOfferRepo {
|
|
|
301
315
|
if (result === undefined) {
|
|
302
316
|
throw new factory_1.factory.errors.NotFound(factory_1.factory.order.OrderType.Order);
|
|
303
317
|
}
|
|
304
|
-
|
|
318
|
+
const { acceptedOffers, numAcceptedOffers } = result;
|
|
319
|
+
// 予約取引を参照(2026-05-18~)
|
|
320
|
+
const useReserveTransaction = options?.useReserveTransaction === true;
|
|
321
|
+
if (useReserveTransaction) {
|
|
322
|
+
return {
|
|
323
|
+
acceptedOffers: await this.addAcceptedOffersDetails(acceptedOffers),
|
|
324
|
+
numAcceptedOffers
|
|
325
|
+
};
|
|
326
|
+
}
|
|
327
|
+
else {
|
|
328
|
+
return result;
|
|
329
|
+
}
|
|
305
330
|
}
|
|
306
331
|
async countByOrderNumber(filter) {
|
|
307
332
|
const aggregate = this.orderModel.aggregate([
|
|
@@ -96,7 +96,8 @@ function deleteReservationsByOrder(order) {
|
|
|
96
96
|
acceptedOffers: {
|
|
97
97
|
// itemOffered: { typeOf: { $in: [factory.reservationType.EventReservation] } }
|
|
98
98
|
}
|
|
99
|
-
})
|
|
99
|
+
}, { useReserveTransaction: true } // 予約取引参照(2026-05-18~)
|
|
100
|
+
);
|
|
100
101
|
const reservationIds = acceptedOffers.map((o) => String(o.itemOffered.id));
|
|
101
102
|
if (reservationIds.length > 0) {
|
|
102
103
|
await repos.reservation.deleteByIds({ project: { id: order.project.id }, ids: reservationIds });
|
|
@@ -102,7 +102,8 @@ function sendOrder(params) {
|
|
|
102
102
|
$slice: [offerIndexBase, limit],
|
|
103
103
|
orderNumber: { $eq: order.orderNumber },
|
|
104
104
|
project: { id: { $eq: order.project.id } }
|
|
105
|
-
})
|
|
105
|
+
}, { useReserveTransaction: true } // 予約取引参照(2026-05-18~)
|
|
106
|
+
);
|
|
106
107
|
acceptedOffers = searchSlicedAcceptedOffersResult.acceptedOffers;
|
|
107
108
|
debug('delivering...', order.orderNumber, acceptedOffers.map((offer) => `${offer.itemOffered.id}`), // eslint-disable-line @typescript-eslint/no-explicit-any
|
|
108
109
|
params.object.acceptedOffers, 'offerIndexBase:', offerIndexBase);
|
|
@@ -39,7 +39,8 @@ function findByCode(params) {
|
|
|
39
39
|
// typeOf?: { $in?: factory.order.IItemOffered['typeOf'][] };
|
|
40
40
|
}
|
|
41
41
|
}
|
|
42
|
-
}
|
|
42
|
+
}, { useReserveTransaction: true } // 予約取引参照(2026-05-18~)
|
|
43
|
+
)).shift();
|
|
43
44
|
if (acceptedOffer === undefined) {
|
|
44
45
|
throw new factory_1.factory.errors.NotFound('acceptedOffer');
|
|
45
46
|
}
|
|
@@ -1,13 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
3
|
exports.findReservations = findReservations;
|
|
7
|
-
const debug_1 = __importDefault(require("debug"));
|
|
8
|
-
// import { isDeepStrictEqual } from 'util';
|
|
9
4
|
const factory_1 = require("../../factory");
|
|
10
|
-
const debug = (0, debug_1.default)('chevre-domain:service:reserve:findReservations');
|
|
11
5
|
/**
|
|
12
6
|
* 予約を検索する
|
|
13
7
|
*/
|
|
@@ -30,8 +24,6 @@ function findReservations(params, options) {
|
|
|
30
24
|
const subReservations = await repos.assetTransaction.reserve.findSubReservationsById({
|
|
31
25
|
ids: reservationIds
|
|
32
26
|
});
|
|
33
|
-
// 予約取引から参照した予約数と同じはず
|
|
34
|
-
debug('useReserveTransaction: true. reservations.length === subReservations.length?', rawReservations.length === subReservations.length);
|
|
35
27
|
return rawReservations.map((reservation) => {
|
|
36
28
|
const subReservationByTransaction = subReservations.find((s) => s.id === reservation.id);
|
|
37
29
|
const priceByTransaction = subReservationByTransaction?.price;
|
|
@@ -16,7 +16,8 @@ function searchByOrder(params) {
|
|
|
16
16
|
// typeOf: { $in: [reservationType] }
|
|
17
17
|
}
|
|
18
18
|
}
|
|
19
|
-
})
|
|
19
|
+
}, { useReserveTransaction: true } // 予約取引参照(2026-05-18~)
|
|
20
|
+
);
|
|
20
21
|
const reservationIds = acceptedOffers.map((offer) => {
|
|
21
22
|
if (offer.itemOffered.typeOf === reservationType) {
|
|
22
23
|
return offer.itemOffered.id;
|
|
@@ -137,7 +137,8 @@ function fixOrderAsPurpose(params) {
|
|
|
137
137
|
const acceptedOffers = await repos.acceptedOffer.searchAcceptedOffersByOrderNumber({
|
|
138
138
|
orderNumber: { $eq: order.orderNumber },
|
|
139
139
|
project: { id: { $eq: params.project.id } }
|
|
140
|
-
})
|
|
140
|
+
}, { useReserveTransaction: true } // 予約取引参照(2026-05-18~)
|
|
141
|
+
);
|
|
141
142
|
return {
|
|
142
143
|
...order,
|
|
143
144
|
acceptedOffers
|
|
@@ -77,7 +77,8 @@ function fixOrderAsPurpose(params, transaction) {
|
|
|
77
77
|
reservedTicket: { ticketedSeat: { seatNumber: { $in: seatNumbers } } }
|
|
78
78
|
}
|
|
79
79
|
}
|
|
80
|
-
})
|
|
80
|
+
}, { useReserveTransaction: true } // 予約取引参照(2026-05-18~)
|
|
81
|
+
);
|
|
81
82
|
}
|
|
82
83
|
return {
|
|
83
84
|
...orderWithoutAcceptedOffers,
|
|
@@ -141,13 +141,11 @@ function fixOrders(params) {
|
|
|
141
141
|
const eventIds = await repos.acceptedOffer.distinctValues({
|
|
142
142
|
orderNumber: { $in: [params.object.order[0].orderNumber] }
|
|
143
143
|
}, 'acceptedOffers.itemOffered.reservationFor.id');
|
|
144
|
-
// const acceptedOffers = await repos.acceptedOffer.searchAcceptedOffersByOrderNumbers({
|
|
145
|
-
// orderNumber: { $in: [params.object.order[0].orderNumber] }
|
|
146
|
-
// });
|
|
147
144
|
const acceptedOffers = await repos.acceptedOffer.searchAcceptedOffersByOrderNumber({
|
|
148
145
|
orderNumber: { $eq: params.object.order[0].orderNumber },
|
|
149
146
|
project: { id: { $eq: params.project.id } }
|
|
150
|
-
})
|
|
147
|
+
}, { useReserveTransaction: true } // 予約取引参照(2026-05-18~)
|
|
148
|
+
);
|
|
151
149
|
return { acceptedOffers, eventIds, offerIds, orders };
|
|
152
150
|
};
|
|
153
151
|
}
|
|
@@ -10,47 +10,6 @@ const factory_1 = require("../../factory");
|
|
|
10
10
|
const factory_2 = require("../offer/event/authorize/factory");
|
|
11
11
|
// import { acceptedOffers2amount as acceptedOffers2amount4product } from '../offer/product/factory';
|
|
12
12
|
const validateMovieTicket_1 = require("../transaction/placeOrder/confirm/validation/validateMovieTicket");
|
|
13
|
-
// const debug = createDebug('chevre-domain:service:validation');
|
|
14
|
-
// type ICreatingCheckEventTask = Pick<
|
|
15
|
-
// factory.task.checkResource.IAttributes,
|
|
16
|
-
// 'data' | 'executionResults' | 'name' | 'numberOfTried' | 'project' | 'remainingNumberOfTries' | 'runsAt' | 'status' | 'description'
|
|
17
|
-
// > & {
|
|
18
|
-
// description: string;
|
|
19
|
-
// };
|
|
20
|
-
// function createCheckEventTasks(params: {
|
|
21
|
-
// order: Pick<factory.order.IOrder, 'orderNumber' | 'typeOf'>;
|
|
22
|
-
// project: { id: string };
|
|
23
|
-
// reservationForIds: string[];
|
|
24
|
-
// }): ICreatingCheckEventTask[] {
|
|
25
|
-
// const { order, project, reservationForIds } = params;
|
|
26
|
-
// const runsAt = new Date();
|
|
27
|
-
// return reservationForIds.map((reservationForId) => {
|
|
28
|
-
// const object: factory.task.checkResource.IResourceAsEvent = { id: reservationForId, typeOf: factory.eventType.ScreeningEvent };
|
|
29
|
-
// const data: factory.task.checkResource.IData = {
|
|
30
|
-
// object,
|
|
31
|
-
// project: { id: project.id, typeOf: factory.organizationType.Project },
|
|
32
|
-
// typeOf: factory.actionType.CheckAction
|
|
33
|
-
// };
|
|
34
|
-
// const description: string = util.format(
|
|
35
|
-
// '%s:%s:%s:%s',
|
|
36
|
-
// order.typeOf,
|
|
37
|
-
// order.orderNumber,
|
|
38
|
-
// factory.eventType.ScreeningEvent,
|
|
39
|
-
// reservationForId
|
|
40
|
-
// );
|
|
41
|
-
// return {
|
|
42
|
-
// description,
|
|
43
|
-
// project: { id: project.id, typeOf: factory.organizationType.Project },
|
|
44
|
-
// name: factory.taskName.CheckResource,
|
|
45
|
-
// status: factory.taskStatus.Ready,
|
|
46
|
-
// runsAt,
|
|
47
|
-
// remainingNumberOfTries: 3,
|
|
48
|
-
// numberOfTried: 0,
|
|
49
|
-
// executionResults: [],
|
|
50
|
-
// data
|
|
51
|
-
// };
|
|
52
|
-
// });
|
|
53
|
-
// }
|
|
54
13
|
function validateOrder(params) {
|
|
55
14
|
return async (repos) => {
|
|
56
15
|
const order = await repos.order.projectFieldsByOrderNumber({
|
|
@@ -63,7 +22,8 @@ function validateOrder(params) {
|
|
|
63
22
|
const acceptedOffers = await repos.acceptedOffer.searchAcceptedOffersByOrderNumber({
|
|
64
23
|
orderNumber: { $eq: params.orderNumber },
|
|
65
24
|
project: { id: { $eq: params.project.id } }
|
|
66
|
-
})
|
|
25
|
+
}, { useReserveTransaction: true } // 予約取引参照(2026-05-18~)
|
|
26
|
+
);
|
|
67
27
|
let payTransactions = [];
|
|
68
28
|
if (order.paymentMethods.length > 0) {
|
|
69
29
|
payTransactions = await repos.assetTransaction.search({
|
|
@@ -101,14 +61,8 @@ function validateOrder(params) {
|
|
|
101
61
|
throw new Error(`invalid acceptedOffer.priceSpecification.priceComponent [${typeof priceSpecification.priceComponent}]`);
|
|
102
62
|
}
|
|
103
63
|
}
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
.isAfter((0, moment_1.default)('2023-09-30T15:00:00Z'))
|
|
107
|
-
// || typeOf !== factory.permit.PermitType.Permit
|
|
108
|
-
) {
|
|
109
|
-
if (typeof serialNumber !== 'string' || serialNumber.length === 0) {
|
|
110
|
-
throw new Error(`invalid acceptedOffer.serialNumber [${typeof serialNumber}]`);
|
|
111
|
-
}
|
|
64
|
+
if (typeof serialNumber !== 'string' || serialNumber.length === 0) {
|
|
65
|
+
throw new Error(`invalid acceptedOffer.serialNumber [${typeof serialNumber}]`);
|
|
112
66
|
}
|
|
113
67
|
});
|
|
114
68
|
let reservationForIds = [];
|
|
@@ -176,21 +130,8 @@ function validateOrder(params) {
|
|
|
176
130
|
}
|
|
177
131
|
break;
|
|
178
132
|
}
|
|
179
|
-
// case factory.permit.PermitType.Permit: {
|
|
180
|
-
// numOrderedItemExpected = acceptedOffers.length;
|
|
181
|
-
// const permitAcceptedOffers = acceptedOffers as factory.order.IAcceptedOffer<factory.order.IPermit>[];
|
|
182
|
-
// priceExpected = acceptedOffers2amount4product({
|
|
183
|
-
// acceptedOffers: permitAcceptedOffers
|
|
184
|
-
// });
|
|
185
|
-
// break;
|
|
186
|
-
// }
|
|
187
|
-
// case factory.actionType.MoneyTransfer:
|
|
188
|
-
// break;
|
|
189
133
|
default:
|
|
190
|
-
|
|
191
|
-
.isAfter((0, moment_1.default)('2024-02-01T15:00:00Z'))) {
|
|
192
|
-
throw new Error(`invalid itemOfferedTypeOf [${itemOfferedTypeOf}]`);
|
|
193
|
-
}
|
|
134
|
+
throw new Error(`invalid itemOfferedTypeOf [${itemOfferedTypeOf}]`);
|
|
194
135
|
}
|
|
195
136
|
// orderedItem検証
|
|
196
137
|
if (order.orderedItem.length !== numOrderedItemExpected) {
|
|
@@ -225,20 +166,5 @@ function validateOrder(params) {
|
|
|
225
166
|
throw new Error(`invalid ticketIdentifiers.length:${reservationReservedTicketIdentifiers.length} [expected:${acceptedOffers.length}]`);
|
|
226
167
|
}
|
|
227
168
|
}
|
|
228
|
-
// useMongoAsStockHolderProjectsの場合のイベント検証タスク作成を廃止(もう十分検証したので)(2025-07-11~)
|
|
229
|
-
// add check event task(2025-05-01~)
|
|
230
|
-
// const setting = <Pick<ISetting, 'useMongoAsStockHolderProjects'> | null>
|
|
231
|
-
// await repos.setting.findOne({ project: { id: { $eq: '*' } } }, ['useMongoAsStockHolderProjects']);
|
|
232
|
-
// const useMongoAsStockHolderProjects = setting?.useMongoAsStockHolderProjects;
|
|
233
|
-
// if (Array.isArray(useMongoAsStockHolderProjects) && useMongoAsStockHolderProjects.includes(params.project.id)) {
|
|
234
|
-
// const creatingCheckResourceTask = createCheckEventTasks({
|
|
235
|
-
// order: { orderNumber: order.orderNumber, typeOf: factory.order.OrderType.Order },
|
|
236
|
-
// project: { id: params.project.id },
|
|
237
|
-
// reservationForIds
|
|
238
|
-
// });
|
|
239
|
-
// if (creatingCheckResourceTask.length > 0) {
|
|
240
|
-
// await repos.task.saveMany(creatingCheckResourceTask, { emitImmediately: true });
|
|
241
|
-
// }
|
|
242
|
-
// }
|
|
243
169
|
};
|
|
244
170
|
}
|
package/package.json
CHANGED