2012-09-20 40 views
1

我面臨的問題是,當用戶重定向到支付網關,他/她點擊後退按鈕並返回到站點或退出瀏覽器時,該訂單仍然創建,理想情況下應該取消。我想在創建訂單時觸發觀察員,並且如果訂單在大約15分鐘後(例如暫停)沒有處於處理狀態,我想取消訂單。但不知道當用戶在支付網關頁面點擊後退按鈕或退出瀏覽器時如何處理場景。更新瀏覽器上的數據庫關閉,當用戶在付款網關頁面

+0

付款頁面是否會將用戶帶回參考訂單號的成功頁面? – Gustonez

回答

1

您已經在數據庫中放置了一個標誌(即iscompleted)。當開始一個新事務時,將該標誌置於false。如果成功的交易將標誌值更改爲true。對於不成功的交易,請等待至超時並刪除其已完成標記爲false的訂單。

+0

+1只有在完成交易時才保存交易,這簡直太可怕了。我在這裏寫了一篇有關付款代碼常見陷阱的綜合帖子:http://programmers.stackexchange.com/questions/164909/integrating-with-a-payment-provider-proper-and-robust-oop-approach/165153# 165153 –

+0

謝謝kTekkie和nerdklers ... – guri