ACSD-64431: De "placeOrder"-mutatie met couponcode in de aanvraag veroorzaakt een interne serverfout
De ACSD-64431-patch verhelpt het probleem waarbij de placeOrder -mutatie die de gegevens van de couponcode in de aanvraag bevat, een interne serverfout veroorzaakt in plaats van de order succesvol te plaatsen. Deze patch is beschikbaar wanneer Quality Patches Tool (QPT) 1.1.61 wordt geïnstalleerd. De patch-id is ACSD-64431. Het probleem wordt volgens de planning opgelost in Adobe Commerce 2.4.8.
Betrokken producten en versies
het flard wordt gecreeerd voor de versie van Adobe Commerce:
- Adobe Commerce (alle implementatiemethoden) 2.4.7-p3
Compatibel met de versies van Adobe Commerce:
- Adobe Commerce (alle implementatiemethoden) 2.4.7 - 2.4.7-p4
magento/quality-patches -pakket bij naar de meest recente versie en controleert u de compatibiliteit op de Quality Patches Tool : zoek naar patches op de pagina . Gebruik de patch-id als een zoekwoord om de patch te zoeken.Probleem
De placeOrder -mutatie die de gegevens van de waardeboncode in de aanvraag bevat, veroorzaakt een interne fout in plaats van de volgorde correct te plaatsen.
Stappen om te reproduceren:
-
Creeer een eenvoudig product met SKU 2836611.
-
Creeer a Cart Price Rule, plaats Coupon aan
Specific Couponen ga TEST1234 als couponcode in. -
Een klant maken:
code language-none mutation { createCustomer( input: { firstname: "John" lastname: "Doe" email: "john.doe@example.com" password: "b1b2b3l@w+" is_subscribed: true } ) { customer { firstname lastname email is_subscribed } } } -
Een klanttoken genereren. U kunt deze token gebruiken voor volgende aanvragen.
code language-none mutation { generateCustomerToken(email: "john.doe@example.com", password: "b1b2b3l@w+") { token } } -
Maak een lege wagen. Sla de kaart-id op en gebruik deze voor de volgende aanvragen.
code language-none mutation { createEmptyCart } -
Voeg het product toe aan het winkelwagentje:
code language-none mutation { addProductsToCart( cartId: "xxxx" cartItems: [{ quantity: 1, sku: "2836611" }] ) { cart { itemsV2 { items { product { name sku } ... on ConfigurableCartItem { configurable_options { configurable_product_option_uid value_label } } quantity } total_count page_info { page_size current_page total_pages } } } user_errors { code message } } } -
De coupon toepassen:
code language-none mutation { applyCouponToCart(input: { cart_id: "xxxx", coupon_code: "TEST1234" }) { cart { itemsV2 { items { product { name } quantity } total_count page_info { page_size current_page total_pages } } applied_coupons { code } prices { grand_total { value currency } } } } } -
Stel een verzendadres in:
code language-none mutation { setShippingAddressesOnCart( input: { cart_id: "xxxxx" shipping_addresses: [ { address: { firstname: "John" lastname: "Doe" company: "Company Name" street: ["3320 N Crescent Dr", "Beverly Hills"] city: "Los Angeles" region: "CA" region_id: 12 postcode: "90210" country_code: "US" telephone: "123-456-0000" save_in_address_book: false } } ] } ) { cart { shipping_addresses { firstname lastname company street city region { code label } postcode telephone country { code label } available_shipping_methods { carrier_code carrier_title method_code method_title } } } } } -
Een verzendmethode instellen:
code language-none mutation { setShippingMethodsOnCart( input: { cart_id: "xxxx" shipping_methods: [{ carrier_code: "flatrate", method_code: "flatrate" }] } ) { cart { shipping_addresses { selected_shipping_method { carrier_code carrier_title method_code method_title amount { value currency } } } } } } -
Stel een factuuradres in:
code language-none mutation { setBillingAddressOnCart( input: { cart_id: "xxxx" billing_address: { address: { firstname: "John" lastname: "Doe" company: "Company Name" street: ["64 Strawberry Dr", "Beverly Hills"] city: "Los Angeles" region: "CA" region_id: 12 postcode: "90210" country_code: "US" telephone: "123-456-0000" save_in_address_book: true } } } ) { cart { billing_address { firstname lastname company street city region { code label } postcode telephone country { code label } } } } } -
Een betalingsmethode instellen:
code language-none mutation { setPaymentMethodOnCart( input: { cart_id: "xxxx", payment_method: { code: "checkmo" } } ) { cart { selected_payment_method { code } } } } -
Plaats de volgorde:
code language-none mutation { placeOrder( input: { cart_id: "{{cart_id}}" } ) { orderV2 { number token } errors { message code } } }
Verwachte resultaten :
De volgorde moet worden geplaatst.
Ware resultaten :
Het volgende foutbericht wordt weergegeven:"message": "Internal server error"
exception.log bevat de volgende fout:
report.ERROR: "discount_model" value should be specifiedGraphQL (1:135)
1: mutation { placeOrder(input: {cart_id: "xxxx"}) { orderV2 { total { discounts { amount { currency value } coupon { code } } } } errors { message code } } }
De patch toepassen
Om individuele flarden toe te passen, gebruik de volgende verbindingen afhankelijk van uw plaatsingsmethode:
- Op locatie Adobe Commerce of Magento Open Source: Quality Patches Tool > Gebruik in de handleiding Quality Patches Tool .
- Adobe Commerce op wolkeninfrastructuur: Verbeteringen en Patches > Pas Patches in Commerce op de gids van de Infrastructuur van de Wolk toe.
Gerelateerde lezing
Meer informatie over Quality Patches Tool vindt u in:
- Quality Patches Tool: Een zelfbedieningshulpmiddel voor kwaliteitspatches in de gids van Hulpmiddelen.