ストーリー(悲しい) :私は長い間抱えていたこのバグを修正するように割り当てられました。残念ながら、モジュールは 2 年前に会社を去った開発者によって書かれました :(
FUNCTION : モジュールは、Magento から注文/顧客の詳細を取得し、それらを他のいくつかのカスタム テーブルに書き込むように開発されています。
方法: モジュールには、Model extends fromと
オーバーライドMage_Sales_Model_Order
するメソッドがあります。このメソッドには、これらの追加テーブルに書き込むすべてのコードが含まれます。_afterSave()
Mage_Sales_Model_Order::_afterSave()
BUG : まれに、一部の注文に追加の注文品目がある場合があります。たとえば、実際の注文には 1 つの注文品目しかないのに、3 つの注文品目を持つ注文がありました。深く掘り下げた結果、注文明細の 1 つが同じ顧客による古い注文からのものであり、もう 1 つの追加明細は実際の注文明細の複製であることがわかりました。
手がかり: 非常に多くのことを試しましたが、見つけることができた手がかりはほとんどありません_afterSave
。xDebug を使用してデバッグしているときに、2 回呼び出されていることがわかります。しかし、2回呼び出される場所が見つかりませんでした。
私の金庫で何度も問題を再現しようとしましたが、開発環境ではいつものようにすべてが正常に機能します。
$this->getAllItems()
注文商品データを取得するために使用します。
ヘルプ: これは本当にランダムな方法で発生します。自分自身を別の道に見えるようにするための助けを探しているだけです。誰も私に完全な解決策を提供できないことを知っています. 私はすでにいくつかのウサギの全体に出くわしたので、いくつかのガイダンスをお願いします.
ありがとうございます!詳細が必要な場合は、お知らせください。