ผู้สังเกตการณ์คนไหนที่จะใช้หลังจากประสบความสำเร็จในการสั่งซื้อ Magento 2?
ฉันกำลังทำงานกับส่วนขยายของ Magento 2 และส่วนหนึ่งของฟีเจอร์นี้คือการส่งข้อมูลเกี่ยวกับคำสั่งซื้อไปยังแอปพลิเคชันภายนอกโดยใช้บริการเว็บ ฉันต้องการที่จะผลักดันข้อมูลนี้หลังจากที่สั่งซื้อสินค้าในการชำระเงิน ในขณะนี้ฉันใช้งานเหตุการณ์checkout_onepage_controller_success_actionซึ่งทำให้วิธีการสร้างคำสั่งซื้อในแอปภายนอก /etc/frontend/events.xmlฉันวางเหตุการณ์นี้ได้ใน ถึงตอนนี้มันใช้งานได้ แต่ฉันพบปัญหาเกี่ยวกับสถานะคำสั่งซื้อ บางครั้งคำสั่งซื้อที่ยังคงอยู่ในpendingสถานะและบางครั้งอื่น ๆ processingการสั่งซื้ออยู่ใน เหตุผลนี้เป็นเพราะวิธีการชำระเงินครั้งแรกเริ่มต้นคำสั่งซื้อเป็นรอดำเนินการและหลังจากการชำระเงินได้รับการอนุมัติคำสั่งซื้อเปลี่ยนไปประมวลผล ฉันต้องการผลักดันprocessingคำสั่งซื้อเท่านั้น ดูเหมือนว่าบางครั้งเหตุการณ์checkout_onepage_controller_success_actionจะทำงานก่อนที่การชำระเงินจะได้รับอนุญาตและนี่เป็นสาเหตุของปัญหา ความคิดวิธีการแก้ปัญหานี้? วิธีการที่ฉันสามารถตรวจสอบการชำระเงินการประมวลผลการทำงานก่อนที่ผมจะเรียกใช้รหัสของฉันในcheckout_onepage_controller_success_action? ตามรหัสของฉัน: events.xml <?xml version="1.0"?> <!-- /** * Copyright © 2017 companyname.com */ --> <config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:Event/etc/events.xsd"> <event name="checkout_onepage_controller_success_action"> <observer name="companyname_order_success" instance="Companyname\Shipping\Observer\CreateCompanynameOrderObserver" /> </event> </config> CreateCompanynameOrderObserver.php /** * Create an order in Companyname when …