@chevre/domain 24.1.0-alpha.25 → 24.1.0-alpha.26
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 -2
- package/lib/chevre/repo/orderInTransaction.d.ts +9 -2
- package/lib/chevre/repo/orderInTransaction.js +3 -9
- package/lib/chevre/service/delivery/factory.d.ts +6 -1
- package/lib/chevre/service/delivery/factory.js +1 -1
- package/lib/chevre/service/delivery/reservation/factory.d.ts +1 -3
- package/lib/chevre/service/delivery/reservation/factory.js +0 -17
- package/lib/chevre/service/offer/any.d.ts +5 -2
- package/lib/chevre/service/offer/event/authorize/factory.d.ts +3 -2
- package/lib/chevre/service/offer/eventServiceByCOA/authorize/factory.d.ts +1 -4
- package/lib/chevre/service/order/onOrderStatusChanged/onOrderDeliveredPartially/factory.d.ts +6 -1
- package/package.json +2 -2
|
@@ -4,7 +4,12 @@ type IProjection4searchWithUnwoundAcceptedOffers = {
|
|
|
4
4
|
[key in keyof factory.order.IOrder]?: 1;
|
|
5
5
|
} & {};
|
|
6
6
|
type IDistinctField = 'acceptedOffers.id' | 'acceptedOffers.itemOffered.reservationNumber' | 'acceptedOffers.itemOffered.reservationFor.id' | 'acceptedOffers.serialNumber' | 'acceptedOffers.offeredThrough.identifier' | 'acceptedOffers.itemOffered.reservationFor.superEvent.location.branchCode';
|
|
7
|
-
type IAcceptedOffer = factory.order.IAcceptedOffer
|
|
7
|
+
type IAcceptedOffer = Omit<factory.order.IAcceptedOffer, 'priceSpecification'> & {
|
|
8
|
+
/**
|
|
9
|
+
* COA以外では注文ドキュメントにpriceSpecificationが存在しないのでIFを補完
|
|
10
|
+
*/
|
|
11
|
+
priceSpecification?: factory.order.ITicketPriceSpecification;
|
|
12
|
+
};
|
|
8
13
|
interface ISearchSlicedAcceptedOffersResult {
|
|
9
14
|
acceptedOffers: IAcceptedOffer[];
|
|
10
15
|
numAcceptedOffers: number;
|
|
@@ -31,7 +36,7 @@ export declare class AcceptedOfferRepo {
|
|
|
31
36
|
useMatchBeforeUnwind: boolean;
|
|
32
37
|
useReserveTransaction: boolean;
|
|
33
38
|
}): Promise<(factory.order.IOrder & {
|
|
34
|
-
acceptedOffers: [
|
|
39
|
+
acceptedOffers: [IAcceptedOffer];
|
|
35
40
|
_id?: never;
|
|
36
41
|
})[]>;
|
|
37
42
|
aggreateOwnershipInfosByOrder(filter: {
|
|
@@ -42,7 +42,9 @@ export declare class OrderInTransactionRepo {
|
|
|
42
42
|
project: {
|
|
43
43
|
id: string;
|
|
44
44
|
};
|
|
45
|
-
}): Promise<factory.order.IAcceptedOffer
|
|
45
|
+
}): Promise<(Omit<factory.order.IAcceptedOffer, 'priceSpecification'> & {
|
|
46
|
+
priceSpecification?: factory.order.ITicketPriceSpecification;
|
|
47
|
+
})[]>;
|
|
46
48
|
/**
|
|
47
49
|
* 取引進行中の注文からacceptedOffersを検索する
|
|
48
50
|
*/
|
|
@@ -61,7 +63,12 @@ export declare class OrderInTransactionRepo {
|
|
|
61
63
|
* このメソッドでdocumentが初めて生成される(typeOf:PlaceOrderとして)
|
|
62
64
|
*/
|
|
63
65
|
acceptOffer(params: Pick<IOrderInTransaction, 'orderNumber' | 'project'> & {
|
|
64
|
-
acceptedOffers: IAcceptedOffer
|
|
66
|
+
acceptedOffers: (Omit<IAcceptedOffer, 'priceSpecification'> & {
|
|
67
|
+
/**
|
|
68
|
+
* COA以外では注文ドキュメントにpriceSpecificationが存在しないのでIFを補完
|
|
69
|
+
*/
|
|
70
|
+
priceSpecification?: factory.order.ITicketPriceSpecification;
|
|
71
|
+
})[];
|
|
65
72
|
}): Promise<import("mongoose").UpdateWriteOpResult | undefined>;
|
|
66
73
|
/**
|
|
67
74
|
* serialNumberからオファーを除外する
|
|
@@ -71,21 +71,15 @@ class OrderInTransactionRepo {
|
|
|
71
71
|
}
|
|
72
72
|
return doc.acceptedOffers.map((acceptedOffer) => {
|
|
73
73
|
const priceBySubReservation = subReservations.find((subReservation) => subReservation.id === acceptedOffer.itemOffered.id)?.price;
|
|
74
|
-
//
|
|
74
|
+
// COA予約でなければ、予約取引の価格は必ず存在するはず
|
|
75
75
|
if (priceBySubReservation === undefined) {
|
|
76
|
-
|
|
76
|
+
throw new factory_1.factory.errors.Internal(`findAcceptedOffersWithPriceByOrderNumber: priceBySubReservation undefined. ${acceptedOffer.itemOffered.id}`);
|
|
77
77
|
}
|
|
78
|
-
// const priceSpecMatched = isDeepStrictEqual(acceptedOffer.priceSpecification, priceBySubReservation);
|
|
79
|
-
// debug('findAcceptedOffersWithPriceByOrderNumber: priceSpecMatched?', priceSpecMatched, acceptedOffer.itemOffered.id, params.orderNumber, params.project.id);
|
|
80
|
-
// if (!priceSpecMatched) {
|
|
81
|
-
// console.error('findAcceptedOffersWithPriceByOrderNumber: priceSpecMatched: false!!!', acceptedOffer.itemOffered.id, params.orderNumber, params.project.id);
|
|
82
|
-
// }
|
|
83
|
-
// const overwritePriceSpec = priceSpecMatched || acceptedOffer.priceSpecification === undefined;
|
|
84
78
|
return {
|
|
85
79
|
...acceptedOffer,
|
|
80
|
+
priceSpecification: priceBySubReservation
|
|
86
81
|
// // 予約取引内の価格仕様と一致した場合のみ上書きしてみる
|
|
87
82
|
// ...((overwritePriceSpec && priceBySubReservation !== undefined) && { priceSpecification: priceBySubReservation })
|
|
88
|
-
...((priceBySubReservation !== undefined) && { priceSpecification: priceBySubReservation })
|
|
89
83
|
};
|
|
90
84
|
});
|
|
91
85
|
}
|
|
@@ -5,7 +5,12 @@ export type IOwnershipInfo = factory.ownershipInfo.IOwnershipInfo<factory.owners
|
|
|
5
5
|
*/
|
|
6
6
|
export declare function createOwnershipInfosFromOrder(params: {
|
|
7
7
|
order: Pick<factory.order.IOrder, 'orderDate' | 'project' | 'customer' | 'orderNumber' | 'seller'> & {
|
|
8
|
-
acceptedOffers: factory.order.IAcceptedOffer
|
|
8
|
+
acceptedOffers: (Omit<factory.order.IAcceptedOffer, 'priceSpecification'> & {
|
|
9
|
+
/**
|
|
10
|
+
* COA以外では注文ドキュメントにpriceSpecificationが存在しないのでIFを補完
|
|
11
|
+
*/
|
|
12
|
+
priceSpecification?: factory.order.ITicketPriceSpecification;
|
|
13
|
+
})[];
|
|
9
14
|
};
|
|
10
15
|
offerIndexBase: number;
|
|
11
16
|
}): IOwnershipInfo[];
|
|
@@ -43,7 +43,7 @@ function createOwnershipInfosFromOrder(params) {
|
|
|
43
43
|
ownershipInfo = (0, factory_2.createReservationOwnershipInfo)({
|
|
44
44
|
project: params.order.project,
|
|
45
45
|
ownedBy: ownedBy,
|
|
46
|
-
acceptedOffer
|
|
46
|
+
acceptedOffer,
|
|
47
47
|
ownedFrom: ownedFrom,
|
|
48
48
|
identifier: identifier,
|
|
49
49
|
acquiredFrom: acquiredFrom
|
|
@@ -6,9 +6,7 @@ export declare function createReservationOwnershipInfo(params: {
|
|
|
6
6
|
id: string;
|
|
7
7
|
};
|
|
8
8
|
ownedBy: factory.ownershipInfo.IOwner[];
|
|
9
|
-
acceptedOffer: factory.order.IAcceptedOffer
|
|
10
|
-
itemOffered: factory.order.IReservation;
|
|
11
|
-
};
|
|
9
|
+
acceptedOffer: Pick<factory.order.IAcceptedOffer, 'itemOffered'>;
|
|
12
10
|
ownedFrom: Date;
|
|
13
11
|
identifier: string;
|
|
14
12
|
acquiredFrom: factory.ownershipInfo.IAcquiredFrom;
|
|
@@ -19,31 +19,14 @@ function createReservationOwnershipInfo(params) {
|
|
|
19
19
|
else {
|
|
20
20
|
throw new factory_1.factory.errors.NotImplemented(`itemOffered.typeOf '${itemOffered.typeOf}' not implemented`); // eslint-disable-line @typescript-eslint/no-explicit-any
|
|
21
21
|
}
|
|
22
|
-
// let bookingService = params.acceptedOffer.offeredThrough;
|
|
23
|
-
// if (bookingService === undefined) {
|
|
24
|
-
// // デフォルトブッキングサービスはChevre
|
|
25
|
-
// bookingService = {
|
|
26
|
-
// typeOf: 'WebAPI',
|
|
27
|
-
// identifier: factory.service.webAPI.Identifier.Chevre
|
|
28
|
-
// };
|
|
29
|
-
// }
|
|
30
22
|
let typeOfGood;
|
|
31
23
|
if (itemOffered.typeOf === factory_1.factory.reservationType.EventReservation) {
|
|
32
24
|
typeOfGood = {
|
|
33
25
|
typeOf: itemOffered.typeOf,
|
|
34
26
|
id: itemOffered.id,
|
|
35
27
|
reservationNumber: itemOffered.reservationNumber,
|
|
36
|
-
// bookingService: bookingService,
|
|
37
28
|
...(typeof itemOffered.issuedThrough?.typeOf === 'string') ? { issuedThrough: itemOffered.issuedThrough } : undefined
|
|
38
29
|
};
|
|
39
|
-
// } else if (itemOffered.typeOf === factory.reservationType.BusReservation) {
|
|
40
|
-
// typeOfGood = {
|
|
41
|
-
// typeOf: itemOffered.typeOf,
|
|
42
|
-
// id: itemOffered.id,
|
|
43
|
-
// reservationNumber: itemOffered.reservationNumber,
|
|
44
|
-
// bookingService: bookingService,
|
|
45
|
-
// ...(typeof itemOffered.issuedThrough?.typeOf === 'string') ? { issuedThrough: itemOffered.issuedThrough } : undefined
|
|
46
|
-
// };
|
|
47
30
|
}
|
|
48
31
|
else {
|
|
49
32
|
throw new factory_1.factory.errors.NotImplemented(`itemOffered.typeOf '${itemOffered.typeOf}' not implemented`); // eslint-disable-line @typescript-eslint/no-explicit-any
|
|
@@ -10,8 +10,11 @@ export declare function acceptOffer(params: {
|
|
|
10
10
|
project: {
|
|
11
11
|
id: string;
|
|
12
12
|
};
|
|
13
|
-
acceptedOffers: (factory.order.IAcceptedOffer & {
|
|
14
|
-
|
|
13
|
+
acceptedOffers: (Omit<factory.order.IAcceptedOffer, 'priceSpecification'> & {
|
|
14
|
+
/**
|
|
15
|
+
* COA以外では注文ドキュメントにpriceSpecificationが存在しないのでIFを補完
|
|
16
|
+
*/
|
|
17
|
+
priceSpecification?: factory.order.ITicketPriceSpecification;
|
|
15
18
|
})[];
|
|
16
19
|
}): IAcceptOfferOperation<void>;
|
|
17
20
|
export declare function voidAcceptedOffer(params: {
|
|
@@ -32,10 +32,11 @@ declare function acceptedOffers2authorizeResult(params: {
|
|
|
32
32
|
ticketOffers: factory.product.ITicketOffer[];
|
|
33
33
|
}): factory.action.authorize.offer.eventService.IResult;
|
|
34
34
|
type IObjectSubReservation = factory.assetTransaction.reserve.IObjectSubReservation;
|
|
35
|
-
export type IResultAcceptedOffer = factory.order.IAcceptedOffer & {
|
|
36
|
-
itemOffered: factory.order.
|
|
35
|
+
export type IResultAcceptedOffer = Omit<factory.order.IAcceptedOffer, 'priceSpecification'> & {
|
|
36
|
+
itemOffered: factory.order.IEventReservation;
|
|
37
37
|
offeredThrough: factory.offer.IOfferedThrough;
|
|
38
38
|
serialNumber: string;
|
|
39
|
+
priceSpecification?: factory.order.ITicketPriceSpecification;
|
|
39
40
|
};
|
|
40
41
|
declare function responseBody2acceptedOffers4result(params: {
|
|
41
42
|
issuedThrough: factory.assetTransaction.reserve.IIssuedThrough;
|
|
@@ -21,10 +21,7 @@ export declare function createAuthorizeSeatReservationActionAttributes(params: {
|
|
|
21
21
|
export declare function offers2resultPrice(offers: IAcceptedOffer4COA[]): {
|
|
22
22
|
price: number;
|
|
23
23
|
};
|
|
24
|
-
type IResultAcceptedOffer =
|
|
25
|
-
itemOffered: factory.order.ICOAEventReservation;
|
|
26
|
-
offeredThrough: factory.offer.IOfferedThrough;
|
|
27
|
-
};
|
|
24
|
+
type IResultAcceptedOffer = factory.order.ICOAAcceptedOffer;
|
|
28
25
|
/**
|
|
29
26
|
* COA仮予約結果から注文アイテムを生成する
|
|
30
27
|
*/
|
package/lib/chevre/service/order/onOrderStatusChanged/onOrderDeliveredPartially/factory.d.ts
CHANGED
|
@@ -5,7 +5,12 @@ type IInTransitOrder = Pick<factory.order.IOrder, 'confirmationNumber' | 'projec
|
|
|
5
5
|
limit: number;
|
|
6
6
|
page: number;
|
|
7
7
|
};
|
|
8
|
-
deliveredAcceptedOffers: factory.order.IAcceptedOffer
|
|
8
|
+
deliveredAcceptedOffers: (Omit<factory.order.IAcceptedOffer, 'priceSpecification'> & {
|
|
9
|
+
/**
|
|
10
|
+
* COA以外では注文ドキュメントにpriceSpecificationが存在しないのでIFを補完
|
|
11
|
+
*/
|
|
12
|
+
priceSpecification?: factory.order.ITicketPriceSpecification;
|
|
13
|
+
})[];
|
|
9
14
|
orderStatus: factory.orderStatus.OrderInTransit;
|
|
10
15
|
};
|
|
11
16
|
declare function createInformTasks(params: {
|
package/package.json
CHANGED
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
"dependencies": {
|
|
12
12
|
"@aws-sdk/client-cognito-identity-provider": "3.600.0",
|
|
13
13
|
"@aws-sdk/credential-providers": "3.600.0",
|
|
14
|
-
"@chevre/factory": "8.2.0-alpha.
|
|
14
|
+
"@chevre/factory": "8.2.0-alpha.1",
|
|
15
15
|
"@motionpicture/coa-service": "10.0.0",
|
|
16
16
|
"@motionpicture/gmo-service": "6.1.0-alpha.0",
|
|
17
17
|
"@sendgrid/client": "8.1.4",
|
|
@@ -91,5 +91,5 @@
|
|
|
91
91
|
"postversion": "git push origin --tags",
|
|
92
92
|
"prepublishOnly": "npm run clean && npm run build"
|
|
93
93
|
},
|
|
94
|
-
"version": "24.1.0-alpha.
|
|
94
|
+
"version": "24.1.0-alpha.26"
|
|
95
95
|
}
|