[僅限PaaS]{class="badge informative" title="僅適用於雲端專案(Adobe管理的PaaS基礎結構)和內部部署專案的Adobe Commerce 。"}

ACSD-68499:GraphQL updateCartItems突變傳回​success,數量超過可用存量

ACSD-68499修補程式修正了在更新數量超過可用庫存量時,GraphQL updateCartItems突變傳回不正確​ success ​回應的問題,進而導致數量與總數膨脹。 安裝Quality Patches Tool (QPT) 1.1.74時,即可使用此修補程式。 修補程式ID為ACSD-68499。 請注意,此問題已排程在Adobe Commerce 2.4.9中修正。

受影響的產品和版本

已為Adobe Commerce版本建立修補程式:

  • Adobe Commerce (所有部署方法) 2.4.8-p2

與Adobe Commerce版本相容:

  • Adobe Commerce (所有部署方法) 2.4.4 - 2.4.8-p3
NOTE
此修補程式可能適用於發行版本為Quality Patches Tool的其他版本。 若要檢查修補程式是否與您的Adobe Commerce版本相容,請將magento/quality-patches套件更新至最新版本,並在Quality Patches Tool上檢查相容性:搜尋修補程式頁面。 使用修補程式ID作為搜尋關鍵字,以尋找修補程式。

問題

當更新數量超過可用庫存時,Adobe Commerce中的GraphQL updateCartItems突變傳回​ success ​回應不正確,導致購物車總計和數量膨脹。

要再現的步驟

  1. 建立空的購物車。

  2. 將庫存有限的產品(例如10件可用)新增到購物車。

  3. 查詢購物車並記下cart_item_id

  4. 使用以下變異,將購物車料號數量更新為100 (超過10的可用存量):

    code language-none
    mutation ($cart: String!, $cartItemId: Int!, $quantity: Float!) {
      updateCartItems(
        input: {
          cart_id: $cart
          cart_items: [{ cart_item_id: $cartItemId, quantity: $quantity }]
        }
      ) {
        cart {
          items {
            product {
              name
            }
            quantity
          }
          prices {
            grand_total {
              value
              currency
            }
          }
        }
      }
    }
    
  5. 再次查詢購物車以驗證實際數量。

預期結果

庫存驗證可防止無效的數量更新。

實際結果

updateCartItems突變傳回數量為100的​ success ​回應。

套用修補程式

若要套用個別修補程式,請根據您的部署方法使用下列連結:

相關閱讀

若要進一步瞭解Quality Patches Tool,請參閱:

recommendation-more-help
c2d96e17-5179-455c-ad3a-e1697bb4e8c3