ec-cube決済モジュールにて「決済処理中」の動作
クレジット決済を途中でやめた、あるいは決済がうまくいかなかったときに、受注ステータスが「決済処理中」になってしまう。
とりあえず、会員ページ(MyPage)にて決済がうまくいかなかったものまで表示されてしまうのを防ぐために
/data/class/pages/mypage/LC_Page_Mypage.php
の125行目を
$col = "order_id, create_date, payment_id, payment_total";
▼
$col = "order_id, create_date, payment_id, payment_total,note";
に変更。
例えば「ZEUS」決済モジュールは、決済がうまくいくと「dtb_order」の「note」に「ZEUS_ORDER_ID…」というデータが書き込まれるので、これがあるかないかを判断するためにSELECT文に追加しておく。
その上で
/data/Smarty/templates/default/mypage/index.tpl
の「詳細」表示部分を以下のように変更。
<td class="alignC">
<!--{if $arrOrder[cnt].payment_id == 5 and $arrOrder[cnt].note == Null}-->
未完了
<!--{else}-->
<a href="mypage/history.php?order_id=<!--{$arrOrder[cnt].order_id}-->">詳細</a>
<!--{/if}-->
</td>
赤字の部分は、dtb_paymentのpayment_methodがクレジットのレコードのpayment_idを。
とりあえず、これで会員には「この注文は完了できませんでしたよ」と伝えることができる。
とりあえず、会員ページ(MyPage)にて決済がうまくいかなかったものまで表示されてしまうのを防ぐために
/data/class/pages/mypage/LC_Page_Mypage.php
の125行目を
$col = "order_id, create_date, payment_id, payment_total";
▼
$col = "order_id, create_date, payment_id, payment_total,note";
に変更。
例えば「ZEUS」決済モジュールは、決済がうまくいくと「dtb_order」の「note」に「ZEUS_ORDER_ID…」というデータが書き込まれるので、これがあるかないかを判断するためにSELECT文に追加しておく。
その上で
/data/Smarty/templates/default/mypage/index.tpl
の「詳細」表示部分を以下のように変更。
<td class="alignC">
<!--{if $arrOrder[cnt].payment_id == 5 and $arrOrder[cnt].note == Null}-->
未完了
<!--{else}-->
<a href="mypage/history.php?order_id=<!--{$arrOrder[cnt].order_id}-->">詳細</a>
<!--{/if}-->
</td>
赤字の部分は、dtb_paymentのpayment_methodがクレジットのレコードのpayment_idを。
とりあえず、これで会員には「この注文は完了できませんでしたよ」と伝えることができる。