その他 > その他 > 決済処理中 ロールバックプラグイン と キャンセル在庫自動戻しプラグイン の同時利用について |
その他
フラット表示 | 前のトピック | 次のトピック |
投稿者 | スレッド |
---|---|
AMUAMU |
投稿日時: 2013/3/22 22:07
対応状況: −−−
|
神 登録日: 2009/5/2 居住地: 東京都 投稿: 2712 |
Re: 決済処理中 ロールバックプラグイン と キャンセル在庫自動戻しプラグイン の同時利用について 弊社の「決済処理中ロールバックプラグイン」をご利用、ご愛顧頂きありがとうございます!
ご要望されている形のオプション設定がロールバックプラグイン側で出来ないか検討したのでが、少々容易では無い事がわかりました。 まず複数の決済モジュールでの利用を想定した場合、ロールバックプラグインに機能追加しても「キャンセル在庫自動戻しプラグイン」の今回のような在庫が増える挙動を恐らく完全には抑制出来ない事が分かりました。 決済モジュール利用時に決済画面から「戻る」ボタンで戻ったときに自動的にキャンセルにしてくれる決済モジュールが大半なのですが(キャンセルにしないのはイプシロンともう1−2決済あった記憶ですが他は戻してくれます。またSMBCはロールバックプラグインの機能の一部を持ちます。) 恐らく、大多数の戻るで自動的にキャンセルにしてくれる決済モジュールの動作にもキャンセル在庫自動戻しプラグインは影響があると思います。 この決済画面から「戻る」ボタンでの戻る時に自動でキャンセルされた場合は、決済処理中ロールバックプラグインは関与していません。 ロールバックプラグインは決済モジュールがキャンセルにしなかった場合にステータスが決済処理中の受注にだけ働きます。 見た目上は差が無くなるのでわかりずらいですが、ご要望の形にしようとしても、ロールバックプラグインからは決済モジュールによるによる動作までは踏み込まない感じです。 以下は少々内部挙動の話になります。 ロールバックプラグインは、EC-CUBE標準で持つキャンセル処理またはロールバック処理の大本を呼んでいるだけなのですが、「キャンセル在庫自動戻しプラグイン」様のほうが、そこをフックしてEC-CUBE標準の処理を上書きしているような形のようで(クラスフックを利用している)、もしこの影響を外そうとするとロールバックプラグインが、まるまるEC-CUBE標準の処理と同じ内容を持つ必要がありそうです。 そうなるとEC-CUBEのバージョン間の差異が吸収出来ない感じになり、また内部的には複雑になりすぎる事から中々難しい所です。 アップされている「キャンセル在庫自動戻しプラグイン」のプログラムを見ましたところ、決済モジュールの動作は別としてプラグインの主眼が管理画面からのキャンセル処理にあるのかな?と思う次第です。 プログラム的にもスマートかつ、多くの決済モジュールに対応出来るのは、上記のような経緯から「キャンセル在庫自動戻しプラグイン」様に決済処理中の場合は処理しないような処理を足して頂く形かなと思います。
|
フラット表示 | 前のトピック | 次のトピック |