在庫ドメイン モデル

Current version: 10.1
注記

このドメイン モデルは、外部システムとのコントラクトを作成するクラスで構成されています。コントラクトはインターフェイスではなくクラスとして定義されているため、必要に応じて後でモデルを簡単に拡張できます。これは、『Framework Design Guidelines』ブックで定義されているベスト プラクティスのガイドラインに従っています。 

コントラクトのデフォルトの実装は、Connect の一部として提供されます。外部コマース システムを備えた実際の Connect プロバイダーに、デフォルトで提供される機能よりも多くの機能が含まれている場合は、実装を置き換えることができます。実際のクラスのすべてのインスタンス化は、依存関係挿入によって処理されます。

クラス: StockInformation

StockInformation クラスは、GetStockInformation サービス メソッドの厳密に型指定された複合戻り値として使用されます。

名前

タイプ

説明

Product

InventoryProduct

コマース システムの商品または商品バリアントの識別子。

Status

StockStatus

デフォルトで使用可能な値は、In-Stock、Out-Of-Stock、Pre-Orderable、Back-Orderable です。

Count

Double

商品が一定の数量でバンドルされる場合は、端数を含む可能性があります。

AvailabilityDate

DateTime

商品が在庫切れまたは取り寄せ注文可能である場合は、販売日を含む可能性があります。

クラス: OrderableInformation

OrderableInformation クラスは、GetPreOrdableInformation および GetBackOrderableInformation サービス メソッドの厳密に型指定された複合戻り値として使用されます。

名前

タイプ

説明

Product

InventoryProduct

コマース システムの商品または商品バリアントの識別子。

Status

StockStatus

デフォルトで使用可能な値は、In-Stock、Out-Of-Stock、Pre-Orderable、Back-Orderable です。

InStockDate

Datetime

商品が再入荷される ETA 日付。

ShippingDate

DateTime

商品が出荷可能になる ETA 日付。

CartQuantityLimit

Double

訪問者がカートに追加できる制限。

OrderableStartDate

DateTime

特定の商品に対して最初の注文を行うことができる日時。

OrderableEndDate

DateTime

特定の商品に対して最後の注文を行うことができる日時。

RemainingQuantity

Double

予約注文可能な商品の場合、注文が行われる残りの数量を含む可能性があります。

クラス: IndexStockInformation

IndexStockInformation クラスは、商品のインデックスを作成し、基本の在庫情報を含む場合に、StockStatusForIndexing パイプラインで使用される厳密に型指定された複合戻り値として使用されます。

エンティティは基本のエンティティである StockLocations から継承されます。次の表では、継承されたプロパティが斜体で表示されています

名前

タイプ

説明

Product

InventoryProduct

コマース システムの商品または商品バリアントの識別子

InStockLocations

List<string>

商品の在庫がある場所のリスト。

OutOfStockLocations

List<string>

商品が在庫切れである場所のリスト。

OrderableLocations

List<string>

商品を注文できる場所のリスト。

PreOrderable

Boolean

商品が予約注文可能かどうかを示します。

クラス: StockInformationUpdate

StockInformationUpdate クラスは、GetBackInStockInformation メソッドからの厳密に型指定された複合戻り値として使用され、再入荷される商品とその場所を示します。また、オプションで販売日と販売数も示します。

名前

タイプ

説明

Product ID

String

商品の ID。

StockInformationUpdateLocation

List< StockInformationUpdateLocation >

商品が購入可能な場所のリストです。オプションで、販売日と販売数の値を含む場合があります

クラス: StockInformationUpdateLocation

StockInformationUpdateLocation クラスは、GetBackInStockInformation メソッドから返される StockInformationUpdate クラスにのみネストされる厳密に型指定された値として使用され、商品が再入荷される場所を示します。また、オプションで販売日と販売数も示します。

名前

タイプ

説明

Location

String

場所の名前

AvailabilityDate

DateTime?

商品が再入荷される日時 (任意) です。訪問者から提供された関心の日付 (任意) との比較に使用できます。関心の日付が販売日よりも前である場合は、通知の登録が無意味になり、販売が可能になります。

Count

Double?

指定された日時にその場所に存在する商品の在庫の数 (任意)。

クラス: StockDetailsLevel

簡単な在庫ステータスの入手と、実際の在庫数の取得では、処理速度に差が出るのは当然です。情報を柔軟に入手するため、要求する情報の詳細レベルを指定することができます。

StockDetailsLevel クラスは、GetStockInformation サービス メソッドの厳密に型指定された要求パラメーターとして使用され、要求する在庫情報の詳細レベルを示します。厳密に型指定されたパラメーターを使用すると、ソリューション開発者は API を簡単に使用できます。次の例は、このクラスを列挙型のようなパラメーターとして使用する方法を示しています。

RequestResponse
StockInformation stockInformation = GetStockInformation(
     new StockInformationRequest { shopName = “MyShop”;   
                                 products = new list<string> { “Aw123x” };
                                 detailsLevel = StockDetailsLevel.Status
                               }).Result;

次の表に、デフォルトの StockDetailsLevel オプションを示し、そのオプションを拡張する方法を示す例を紹介します。

名前

タイプ

説明

Status

public const int Status = 1

最小限の情報、つまり在庫ステータスが返されることを示します。

StatusAndAvailability

public const int StatusAndAvailability = 2

ステータスと販売日の情報が返されることを示します。販売日が意味を持つのは、ステータスが次に等しい場合です。

Count

public const int Count = 3

All

public const int All = 4

このクラスは拡張可能な列挙として提供されます。StockDetailsLevel オプションを拡張およびカスタマイズするには、次のように記述します。

RequestResponse
public class MyECSStockDetailsLevel : StockDetailsLevel
{
    public const int MyCustomDetailLevel = 4;
      public MyECSStockDetailsLevel (int value)  : base(value)
      {   }
}

クラス: StockStatus

StockStatus クラスは、在庫ステータスを示す厳密に型指定された値として使用されます。厳密に型指定された値を使用すると、ソリューション開発者は API を簡単に使用することができます。次の例は、このクラスを列挙型のようなパラメーターとして使用する方法を示しています。

RequestResponse
StockInformation stockInformation = GetStockInformation(
      new StockInformationRequest { shopName = “MyShop”;   
                                  products = new list<string> { “Aw123x” };
                                  detailsLevel = StockDetailsLevel.Status
                                 }).Result.StockInformation[0];
If (stockInformation.Status == StockStatus.PreOrderable) 
{
 // Do work
}

次の表に、デフォルトの StockStatus オプションを示し、そのオプションを拡張する方法を示す例を紹介します。

名前

タイプ

説明

InStock

public const int InStock = 1

要求された商品の在庫があることを示します。

OutOfStock

public const int OutOfStock = 2

要求された商品が在庫切れであることを示します。

PreOrderable

public const int PreOrderable = 3

要求された商品はまだ在庫切れであるが、予約注文可能であることを示します。

BackOrderable

public const int BackOrderable = 4

要求された商品は在庫切れであるものの、取り寄せ注文可能であることを示します。

このクラスは拡張可能な列挙として提供されます。StockDetailsLevel オプションを拡張およびカスタマイズするには、次のように記述します。

RequestResponse
public class MyECSStockStatus : StockStatus
{
    public const int MyCustomStatus = 4;
      public MyECSStockStatus (int value)  : base(value)
      {   }
}

クラス: InventoryProduct

InventoryProduct クラスは、商品を識別する厳密に型指定された値として使用されます。厳密に型指定された値を使用すると、ソリューション開発者は API を簡単に使用することができます。

名前

タイプ

説明

ProductId

String

コマース システムの商品または商品バリアントを表す一意の識別子。

クラス: IndexStockInformation

IndexStockInformationクラスは、特定の商品の場所を取得する場合に GetProductStockLocations パイプラインで使用される厳密に型指定された複合戻り値として使用されます。

IndexStockInformation クラスは基本のエンティティとしても使用されます。

名前

タイプ

説明

InStockLocations

List&lt;string&gt;

商品の在庫がある場所のリスト。

OutOfStockLocations

List&lt;string&gt;

商品が在庫切れである場所のリスト。

OrderableLocations

List&lt;string&gt;

商品を注文できる場所のリスト。

PreOrderable

Bool

アイテムが予約注文可能かどうかを示します。

クラス: StockLocation

StockLocation クラスは、商品の在庫場所を示すために使用されます。

名前

タイプ

説明

LocationId

String

在庫場所の ID。

名前

String

在庫場所の名前。

Do you have some feedback for us?

If you have suggestions for improving this article,