2012-10-12 84 views
0

我正在爲咖啡廳或快餐店開發預付系統。前提是零售商將登錄到管理頁面發佈自己的代碼,以便向預先安裝在櫃檯處購買的信用卡的客戶提供。預付系統建議

目前我有代碼系統排序系統會發出一個10位數的唯一代碼,這是哈希和鹽漬之前存儲在數據庫中。信貸分配給代碼。

客戶可以購買多個「代碼」以建立他們想要的信用。

我在購買時的流程是用戶嘗試購買物品。所有優惠券的餘額均在購買時計算。如果有充足的信用項目被購買,餘額將被扣除以前的優惠券有足夠的信用。如果該項目是5.60美元,則使用具有最低信用額的優惠券,該優惠券現在爲0.00。如果資金不足,剩餘部分將從下一張可用優惠券中扣除。這將防止任何人因購買而擁有幾十張價值25美元或50美元的優惠券。

在我有以下結構(省略了一些表數據)的優惠券表

+------------+----------------+----------------------+ 
    | id  |  code  | balance   | 
    +------------+----------------+----------------------+ 
    | 1  |  abcde  | 10.00    | 
    +------------+----------------+----------------------+ 
    | 2  |  fghij  | 20.00    | 
    +------------+----------------+----------------------+ 
    | 3  |  klmno  | 25.00    | 
    +------------+----------------+----------------------+ 

事務表類似於..

+------------+----------------+----------------------+ 
    | id  |  coupon | value    | 
    +------------+----------------+----------------------+ 
    | 1  |  abcde  | 2.59    | 
    +------------+----------------+----------------------+ 
    | 2  |  abcde  | 4.50    | 
    +------------+----------------+----------------------+ 
    | 3  |  klmno  | 25.00    | 
    +------------+----------------+----------------------+ 

我的理論是優惠券的價值是從未改變,但交易的價值是在購買時計算和扣除餘額。

這似乎是一個實際的方法嗎?

如果你覺得這個問題不屬於這裏,而不是倒票提供一個更好的論壇。

回答

0

理論上聽起來很不錯,但既然您必須保留所有優惠券和交易的記錄,無論購買哪種優惠券是平衡的 - 您只需支付這筆款項。 如果優惠券可以在個人之間轉移,那麼您必須首先掃描所有客戶可用的優惠券,然後再決定您想要檢查其餘額的優惠券。對我來說看起來不切實際。 如果優惠券不可轉讓,那麼它們只是客戶自己的存款收據,並且選擇其中一個進行覈對是沒有意義的。