[Nur PaaS]{class="badge informative" title="Gilt nur für Adobe Commerce in Cloud-Projekten (von Adobe verwaltete PaaS-Infrastruktur) und lokale Projekte."}

ACSD-68499: Die Mutation "GraphQL updateCartItems“ gibt Erfolg für Mengen zurück, die über den verfügbaren Bestand hinausgehen

Mit dem Patch ACSD-68499 wird das Problem behoben, dass die GraphQL updateCartItems-Mutation eine falsche success“ zurückgibt, wenn Mengen aktualisiert werden, die die verfügbaren Lagerbestände überschreiten, was zu überhöhten Mengen und Gesamtwerten. Dieser Patch ist verfügbar, wenn Quality Patches Tool (QPT) 1.1.74 installiert ist. Die Patch-ID ist ACSD-68499. Dieses Problem wird voraussichtlich in Adobe Commerce 2.4.9 behoben.

Betroffene Produkte und Versionen

Der Patch wird für die Adobe Commerce-Version erstellt:

  • Adobe Commerce (alle Bereitstellungsmethoden) 2.4.8-p2

Kompatibel mit Adobe Commerce-Versionen:

  • Adobe Commerce (alle Bereitstellungsmethoden) 2.4.4 - 2.4.8-p3
NOTE
Der Patch könnte mit neuen Quality Patches Tool-Versionen auch für andere Versionen gelten. Um zu überprüfen, ob der Patch mit Ihrer Adobe Commerce-Version kompatibel ist, aktualisieren Sie das magento/quality-patches auf die neueste Version und überprüfen Sie die Kompatibilität auf der Seite Quality Patches Tool: Nach Patches suchen. Verwenden Sie die Patch-ID als Suchbegriff, um den Patch zu finden.

Problem

Die GraphQL updateCartItems-Mutation in Adobe Commerce gibt fälschlicherweise eine success zurück, wenn Mengen aktualisiert werden, die über den verfügbaren Bestand hinausgehen, was zu überhöhten Warenkorbsummen und -mengen führt.

Schritte zur Reproduktion:

  1. Erstellen Sie einen leeren Warenkorb.

  2. Fügen Sie ein Produkt mit begrenztem Lagerbestand (z. B. 10 Einheiten verfügbar) zum Warenkorb hinzu.

  3. Fragen Sie den Warenkorb ab und notieren Sie sich die cart_item_id.

  4. Aktualisieren Sie die Artikelmenge des Warenkorbs mithilfe der folgenden Mutation auf 100 (überschreitet den verfügbaren Bestand von 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. Fragen Sie den Warenkorb erneut ab, um die tatsächliche Menge zu überprüfen.

Erwartete Ergebnisse:

Lagervalidierung verhindert ungültige Mengenaktualisierungen.

Tatsächliche Ergebnisse:

Die updateCartItems-Mutation gibt success-Antwort mit einer Menge von 100 zurück.

Patch anwenden

Verwenden Sie je nach Bereitstellungsmethode die folgenden Links, um einzelne Patches anzuwenden:

Verwandtes Lesen

Weitere Informationen zu Quality Patches Tool finden Sie unter:

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