@chevre/domain 28.0.0-alpha.20 → 28.0.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.
@@ -1,8 +1,9 @@
1
1
  import type { Connection } from 'mongoose';
2
- import { AcceptedOfferInReserveRepo, IAcceptedOffer } from './acceptedOfferInReserve';
2
+ import { factory } from '../factory';
3
+ import { AcceptedOfferInReserveRepo } from './acceptedOfferInReserve';
3
4
  type IDistinctField = 'acceptedOffers.id' | 'acceptedOffers.itemOffered.reservationNumber' | 'acceptedOffers.itemOffered.reservationFor.id' | 'acceptedOffers.serialNumber' | 'acceptedOffers.offeredThrough.identifier' | 'acceptedOffers.itemOffered.reservationFor.superEvent.location.branchCode';
4
5
  interface ISearchSlicedAcceptedOffersResult {
5
- partialAcceptedOffers: Pick<IAcceptedOffer, 'id' | 'itemOffered' | 'offeredThrough' | 'priceSpecification' | 'serialNumber' | 'typeOf'>[];
6
+ partialAcceptedOffers: Pick<factory.acceptedOffer.IAcceptedOffer, 'id' | 'itemOffered' | 'offeredThrough' | 'priceSpecification' | 'serialNumber' | 'typeOf'>[];
6
7
  }
7
8
  /**
8
9
  * 注文オファーリポジトリ
@@ -40,7 +41,7 @@ export declare class AcceptedOfferRepo extends AcceptedOfferInReserveRepo {
40
41
  reservedTicket?: never;
41
42
  };
42
43
  };
43
- }): Promise<Pick<IAcceptedOffer, 'id' | 'itemOffered' | 'offeredThrough' | 'priceSpecification' | 'serialNumber' | 'typeOf'>[]>;
44
+ }): Promise<Pick<factory.acceptedOffer.IAcceptedOffer, 'id' | 'itemOffered' | 'offeredThrough' | 'priceSpecification' | 'serialNumber' | 'typeOf'>[]>;
44
45
  /**
45
46
  * 注文オファーをsliceして検索する(2024-01-10~)
46
47
  * 注文通知に渡すオファーを参照するためにのみ使用
@@ -1,14 +1,8 @@
1
1
  import type { Connection } from 'mongoose';
2
2
  import { factory } from '../factory';
3
3
  import { IModel } from './mongoose/schemas/assetTransaction';
4
+ import type { IAcceptedOfferInDoc } from './mongoose/schemas/order';
4
5
  import { IAcceptedOfferByReserveTransaction } from './factory/acceptedOffer/reserveTransaction2itemOffered';
5
- export type IAcceptedOffer = Pick<factory.acceptedOffer.IAcceptedOffer, 'id' | 'itemOffered' | 'offeredThrough' | 'serialNumber' | 'typeOf'> & {
6
- /**
7
- * COA以外では注文ドキュメントにpriceSpecificationが存在しないのでIFを補完
8
- */
9
- priceSpecification?: factory.acceptedOffer.ITicketPriceSpecification;
10
- name?: never;
11
- };
12
6
  /**
13
7
  * 予約取引に依存した注文オファーリポジトリ
14
8
  */
@@ -27,5 +21,9 @@ export declare class AcceptedOfferInReserveRepo {
27
21
  /**
28
22
  * 予約取引からオファー詳細情報を付加する
29
23
  */
30
- protected addAcceptedOffersDetails(acceptedOffers: IAcceptedOffer[]): Promise<IAcceptedOffer[]>;
24
+ protected addAcceptedOffersDetails(
25
+ /**
26
+ * 注文ドキュメント内の生オファーを受け取る
27
+ */
28
+ acceptedOffers: IAcceptedOfferInDoc[]): Promise<factory.acceptedOffer.IAcceptedOffer[]>;
31
29
  }
@@ -41,7 +41,11 @@ class AcceptedOfferInReserveRepo {
41
41
  /**
42
42
  * 予約取引からオファー詳細情報を付加する
43
43
  */
44
- async addAcceptedOffersDetails(acceptedOffers) {
44
+ async addAcceptedOffersDetails(
45
+ /**
46
+ * 注文ドキュメント内の生オファーを受け取る
47
+ */
48
+ acceptedOffers) {
45
49
  const offeredThroughIdentifier = acceptedOffers.at(0)?.offeredThrough?.identifier;
46
50
  if (offeredThroughIdentifier === factory_1.factory.service.webAPI.Identifier.COA) {
47
51
  // COAでは予約取引を参照しない
@@ -67,18 +71,20 @@ class AcceptedOfferInReserveRepo {
67
71
  // itemOfferedByReserveは必ず存在するはず
68
72
  if (itemOfferedByReserve === undefined) {
69
73
  console.error('repo:acceptedOffer: addAcceptedOffersDetails: itemOfferedByReserve: undefined!!!', acceptedOffer.itemOffered.id);
74
+ throw new factory_1.factory.errors.Internal(`itemOfferedByReserve not found. itemOffered.id:${acceptedOffer.itemOffered.id}`);
70
75
  }
71
- const nameByReserveTransaction = acceptedOfferByReserveTransaction?.name;
76
+ // const nameByReserveTransaction = acceptedOfferByReserveTransaction?.name;
72
77
  const { priceSpecification: _originalPriceSpec, // 注文ドキュメントのpriceSpecificationはもう採用しない(2026-05-21~)
73
78
  name: _originalName, // 注文ドキュメントのnameはもう採用しない(2026-06-09~)
74
- itemOffered, ...acceptedOfferWithoutPrice } = acceptedOffer;
79
+ itemOffered: _itemOffered, ...acceptedOfferWithoutPrice } = acceptedOffer;
75
80
  return {
76
81
  ...acceptedOfferWithoutPrice,
77
- ...((nameByReserveTransaction !== undefined) && { name: nameByReserveTransaction }), // 予約取引参照の値で上書き(2026-06-09~)
82
+ // ...((nameByReserveTransaction !== undefined) && { name: nameByReserveTransaction }), // 予約取引参照の値で上書き(2026-06-09~)
78
83
  ...((priceSpecByReserveTransaction !== undefined) && { priceSpecification: priceSpecByReserveTransaction }), // 予約取引参照の値で上書き
79
- ...(itemOfferedByReserve !== undefined)
80
- ? { itemOffered: itemOfferedByReserve } // 予約取引参照の値で上書き
81
- : { itemOffered }
84
+ itemOffered: itemOfferedByReserve // 予約取引参照の値で上書き
85
+ // ...(itemOfferedByReserve !== undefined)
86
+ // ? { itemOffered: itemOfferedByReserve } // 予約取引参照の値で上書き
87
+ // : { itemOffered }
82
88
  };
83
89
  });
84
90
  }
@@ -1,22 +1,22 @@
1
1
  import type { Connection } from 'mongoose';
2
2
  import { factory } from '../factory';
3
- import { AcceptedOfferInReserveRepo, IAcceptedOffer } from './acceptedOfferInReserve';
3
+ import { AcceptedOfferInReserveRepo } from './acceptedOfferInReserve';
4
4
  type IProjection4searchWithUnwoundAcceptedOffers = {
5
5
  [key in keyof factory.order.IOrder]?: 1;
6
6
  } & {};
7
- type IMinimizedReservationFor = Pick<IAcceptedOffer['itemOffered']['reservationFor'], 'id' | 'typeOf'>;
8
- type IMinimizedItemOffered = Pick<IAcceptedOffer['itemOffered'], 'additionalProperty' | 'additionalTicketText' | 'id' | 'issuedThrough' | 'programMembershipUsed' | 'reservationNumber' | 'reservedTicket' | 'typeOf'> & {
7
+ type IMinimizedReservationFor = Pick<factory.acceptedOffer.IAcceptedOffer['itemOffered']['reservationFor'], 'id' | 'typeOf'>;
8
+ type IMinimizedItemOffered = Pick<factory.acceptedOffer.IAcceptedOffer['itemOffered'], 'additionalProperty' | 'additionalTicketText' | 'id' | 'issuedThrough' | 'programMembershipUsed' | 'reservationNumber' | 'reservedTicket' | 'typeOf'> & {
9
9
  reservationFor: IMinimizedReservationFor;
10
10
  };
11
- type IMinimizedAcceptedOffer = Pick<IAcceptedOffer, 'id' | 'name' | 'offeredThrough' | 'priceSpecification' | 'serialNumber' | 'typeOf'> & {
11
+ type IMinimizedAcceptedOffer = Pick<factory.acceptedOffer.IAcceptedOffer, 'id' | 'name' | 'offeredThrough' | 'priceSpecification' | 'serialNumber' | 'typeOf'> & {
12
12
  itemOffered: IMinimizedItemOffered;
13
13
  };
14
- type IAcceptedOfferInOrder = Pick<IAcceptedOffer, 'id' | 'offeredThrough' | 'priceSpecification' | 'serialNumber' | 'typeOf'> & {
14
+ type IAcceptedOfferAsFindResult = Pick<factory.acceptedOffer.IAcceptedOffer, 'id' | 'offeredThrough' | 'priceSpecification' | 'serialNumber' | 'typeOf'> & {
15
15
  /**
16
16
  * reservationFor最小化に対応
17
17
  * 2026-09-01~
18
18
  */
19
- itemOffered: IAcceptedOffer['itemOffered'] | IMinimizedItemOffered;
19
+ itemOffered: factory.acceptedOffer.IAcceptedOffer['itemOffered'] | IMinimizedItemOffered;
20
20
  };
21
21
  /**
22
22
  * 注文オファー管理リポジトリ
@@ -39,7 +39,7 @@ export declare class AdminAcceptedOfferRepo extends AcceptedOfferInReserveRepo {
39
39
  */
40
40
  minimizeReservationFor: boolean;
41
41
  }): Promise<(factory.order.IOrder & {
42
- acceptedOffers: [IAcceptedOffer | IMinimizedAcceptedOffer];
42
+ acceptedOffers: [factory.acceptedOffer.IAcceptedOffer | IMinimizedAcceptedOffer];
43
43
  _id?: never;
44
44
  })[]>;
45
45
  /**
@@ -59,6 +59,6 @@ export declare class AdminAcceptedOfferRepo extends AcceptedOfferInReserveRepo {
59
59
  * 2026-08-31~
60
60
  */
61
61
  minimizeReservationFor: boolean;
62
- }): Promise<IAcceptedOfferInOrder[]>;
62
+ }): Promise<IAcceptedOfferAsFindResult[]>;
63
63
  }
64
64
  export {};
@@ -94,11 +94,12 @@ class AdminAcceptedOfferRepo extends acceptedOfferInReserve_1.AcceptedOfferInRes
94
94
  // itemOfferedByReserveは必ず存在するはず
95
95
  if (itemOfferedByReserve === undefined) {
96
96
  console.error('repo:acceptedOffer: searchWithUnwoundAcceptedOffers: itemOfferedByReserve: undefined!!!', acceptedOffer.itemOffered.id);
97
+ throw new factory_1.factory.errors.Internal(`itemOfferedByReserve not found. itemOffered.id:${acceptedOffer.itemOffered.id}`);
97
98
  }
98
99
  const nameByReserveTransaction = acceptedOfferByReserveTransaction?.name;
99
100
  const { priceSpecification: _originalPriceSpec, // 注文ドキュメントのpriceSpecificationはもう採用しない(2026-05-21~)
100
101
  name: _originalName, // 注文ドキュメントのnameはもう採用しない(2026-06-09~)
101
- itemOffered, ...acceptedOfferWithoutPrice } = acceptedOffer;
102
+ itemOffered: _itemOffered, ...acceptedOfferWithoutPrice } = acceptedOffer;
102
103
  return {
103
104
  ...order,
104
105
  acceptedOffers: [
@@ -106,9 +107,10 @@ class AdminAcceptedOfferRepo extends acceptedOfferInReserve_1.AcceptedOfferInRes
106
107
  ...acceptedOfferWithoutPrice,
107
108
  ...((nameByReserveTransaction !== undefined) && { name: nameByReserveTransaction }), // 予約取引参照の値で上書き(2026-06-09~)
108
109
  ...((priceSpecByReserveTransaction !== undefined) && { priceSpecification: priceSpecByReserveTransaction }), // 予約取引参照の値で上書き
109
- ...(itemOfferedByReserve !== undefined)
110
- ? { itemOffered: minimizeItemOffered(itemOfferedByReserve, options) } // 予約取引参照の値で上書き(2026-05-25~)
111
- : { itemOffered: minimizeItemOffered(itemOffered, options) }
110
+ itemOffered: minimizeItemOffered(itemOfferedByReserve, options) // 予約取引参照の値で上書き(2026-05-25~)
111
+ // ...(itemOfferedByReserve !== undefined)
112
+ // ? { itemOffered: minimizeItemOffered(itemOfferedByReserve, options) } // 予約取引参照の値で上書き(2026-05-25~)
113
+ // : { itemOffered: minimizeItemOffered(itemOffered, options) }
112
114
  }
113
115
  ]
114
116
  };
@@ -21,8 +21,9 @@ export type IMinimizedAcceptedOffer = Pick<factory.acceptedOffer.IOptimizedAccep
21
21
  priceSpecification?: never;
22
22
  name?: never;
23
23
  };
24
+ export type IAcceptedOfferInDoc = IMinimizedAcceptedOffer | factory.acceptedOffer.ICOAAcceptedOffer;
24
25
  type IDocType = Omit<factory.order.IOrder, 'id'> & {
25
- acceptedOffers?: IMinimizedAcceptedOffer[] | factory.acceptedOffer.ICOAAcceptedOffer[];
26
+ acceptedOffers?: IAcceptedOfferInDoc[];
26
27
  /**
27
28
  * 注文取引IDとして再定義(2026-06-22~)
28
29
  */
@@ -133,7 +133,7 @@ export declare class OrderRepo {
133
133
  id: string;
134
134
  })[]>;
135
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"> & {
136
- acceptedOffers?: import("./mongoose/schemas/order").IMinimizedAcceptedOffer[] | factory.acceptedOffer.ICOAAcceptedOffer[];
136
+ acceptedOffers?: import("./mongoose/schemas/order").IAcceptedOfferInDoc[];
137
137
  identifier?: string;
138
138
  paymentMethodId?: string;
139
139
  } & {
@@ -141,7 +141,7 @@ export declare class OrderRepo {
141
141
  } & {
142
142
  __v: number;
143
143
  }, import("mongoose").QueryOptions<IDocType>, (import("mongoose").Document<unknown, Record<string, never>, IDocType, import("./mongoose/virtuals").IVirtuals, {}> & Omit<factory.order.IOrder, "id"> & {
144
- acceptedOffers?: import("./mongoose/schemas/order").IMinimizedAcceptedOffer[] | factory.acceptedOffer.ICOAAcceptedOffer[];
144
+ acceptedOffers?: import("./mongoose/schemas/order").IAcceptedOfferInDoc[];
145
145
  identifier?: string;
146
146
  paymentMethodId?: string;
147
147
  } & {
@@ -1,6 +1,9 @@
1
1
  import { factory } from '../../../../factory';
2
2
  import type { ISetting } from '../../../../repo/setting';
3
3
  type IInTransitOrder = Pick<factory.order.IOrder, 'confirmationNumber' | 'project' | 'typeOf' | 'seller' | 'orderNumber' | 'price' | 'priceCurrency' | 'orderDate' | 'customer' | 'id'> & {
4
+ /**
5
+ * 何ページ目の配送か
6
+ */
4
7
  acceptedOffers: {
5
8
  limit: number;
6
9
  page: number;
@@ -5,15 +5,14 @@ exports.createNextSendOrderTasks = createNextSendOrderTasks;
5
5
  const factory_1 = require("../../../../factory");
6
6
  function creteOrder4inform(order) {
7
7
  const { deliveredAcceptedOffers, project, typeOf, orderNumber } = order;
8
- let acceptedOffers = deliveredAcceptedOffers;
9
- const offeredThroughIdentifier = acceptedOffers.at(0)?.offeredThrough?.identifier;
10
- if (offeredThroughIdentifier === factory_1.factory.service.webAPI.Identifier.COA) {
11
- // COAでは最小化しない
12
- }
13
- else {
14
- acceptedOffers = deliveredAcceptedOffers.map((acceptedOffer) => {
8
+ const acceptedOffers = deliveredAcceptedOffers.map((acceptedOffer) => {
9
+ if (acceptedOffer.offeredThrough?.identifier === factory_1.factory.service.webAPI.Identifier.COA) {
10
+ // COAでは最小化しない
11
+ return acceptedOffer;
12
+ }
13
+ else {
15
14
  const { itemOffered, ...acceptedOfferWithtoutItemOffered } = acceptedOffer;
16
- const { reservationFor, issuedThrough: _issuedThrough, ...itemOfferedWithoutReservationFor } = itemOffered;
15
+ const { reservationFor, issuedThrough: _issuedThrough, programMembershipUsed: _programMembershipUsed, ...itemOfferedWithoutReservationFor } = itemOffered;
17
16
  const itemOffered4inform = {
18
17
  ...itemOfferedWithoutReservationFor,
19
18
  reservationFor: { id: reservationFor.id, typeOf: reservationFor.typeOf } // minimize reservationFor(2026-09-28~)
@@ -22,8 +21,8 @@ function creteOrder4inform(order) {
22
21
  ...acceptedOfferWithtoutItemOffered,
23
22
  itemOffered: itemOffered4inform
24
23
  };
25
- });
26
- }
24
+ }
25
+ });
27
26
  return {
28
27
  project,
29
28
  typeOf,
package/package.json CHANGED
@@ -11,7 +11,7 @@
11
11
  "dependencies": {
12
12
  "@aws-sdk/client-cognito-identity-provider": "3.1090.0",
13
13
  "@aws-sdk/credential-providers": "3.1090.0",
14
- "@chevre/factory": "11.1.0-alpha.1",
14
+ "@chevre/factory": "11.1.0-alpha.2",
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",
@@ -88,5 +88,5 @@
88
88
  "postversion": "git push origin --tags",
89
89
  "prepublishOnly": "npm run clean && npm run build"
90
90
  },
91
- "version": "28.0.0-alpha.20"
91
+ "version": "28.0.0-alpha.21"
92
92
  }