次世代プラットフォーム

一括在庫移動の実装

ストア担当者は、ロケーション内のすべての商品をスキャンすることなく、ソース・ロケーションから宛先ロケーションに一度にすべての商品を迅速かつ効果的に移動できます。

解決方法

一括在庫移動フローを実装するために使用される API、サービス、およびその他のコンポーネントについて説明します。

ロケーション・スキャン

あるロケーションから別のロケーションに在庫を一括で移動するには、 「在庫の移動」 ポートレットで、 「一括で移動」をクリックします。 locationId = "PICK-VIRTUAL"を使用するロケーションを除き、仮想ロケーションをサポートする GET on SIM API {tenantId}/stores/{storeId}/locations API が呼び出されます。 「次へ」 ボタンをクリックすると、 Head on SIM API {tenantId}/stores/{storeId}/inventory?locationId=<srcLocation> API が呼び出されます。これにより、ソース・ロケーションの在庫数がチェックされ、カウントが返されます。 在庫数が isf.ui.bulkmove.maxNumberOfProductSelectionAllowed プロパティーに構成された値以上の場合、 「ロケーションの選択」 ページに確認ポップアップ・ウィンドウが表示されます。 すべての製品を宛先ロケーションに移動することを確認できます。 確認すると、 POST on SIM API - {tenantId}/stores/{storeId}/move-requests:initiate API が呼び出されます。 一括移動要求が作成され、 「一括移動の要約」 ページが表示されます。

商品スキャン

在庫数が isf.ui.bulkmove.maxNumberOfProductSelectionAllowed プロパティーに構成されている値より少ない場合は、 「製品の選択」 ページが表示されます。 GET on SIM API {tenantId}/stores/{storeId}/inventory?locationId=<srcLocation> API を呼び出すと、ソース・ロケーションに存在するインベントリーがリストされます。 商品詳細情報は MashupId: isf.move-inventory.bulk-move.getProductsDetailsforSrcLocから取り込まれ、デフォルトでは、ソース・ロケーション内のすべての商品が事前選択されています。

10 を超える製品がある場合、それらの製品は複数のページに分散されます。 さらに商品を表示するには、スクロールダウンすると、次の商品セットがロードされます。

移動する商品をリストから検索して選択することができます。 「完了」をクリックすると、確認ウィンドウが表示されます。 すべての製品または選択した製品を宛先ロケーションに移動することを確認できます。 確認すると、 POST on SIM API - {tenantId}/stores/{storeId}/move-requests:initiate API が呼び出されます。 一括移動要求が作成され、 「一括移動の要約」 ページが表示されます。

一括移動サマリー・ページ

一括移動要求を送信した後、 Bulk move summary ページに移動して、一括移動要求のステータス (「完了」、「進行中」、または「キャンセル」) を表示できます。 最初は、一括移動要求のステータスは「進行中」ステータスになります。 このステータスで商品リストを表示するには、 「最新表示」 ボタンをクリックします。 以下の API が呼び出されます。
  • GET on SIM API {tenantId}/stores/{storeId}/move-requests/{requestId}?fields=totalRequestedQuantity
  • GET on SIM API {tenantId}/stores/{storeId}/move-requests/{requestId}/move-tasks
商品を移動し、ステータスが「完了」に変更されると、移動した商品のリストが自動的に表示されます。 10 を超える製品がある場合、それらの製品は複数のページに分散されます。 さらに商品を表示するには、スクロールダウンすると、次の商品セットがロードされます。