程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> 編程解疑 >> app-討論下關於APP錢包充值提現功能

app-討論下關於APP錢包充值提現功能

編輯:編程解疑
討論下關於APP錢包充值提現功能

公司APP近期希望內置一個錢包功能、相當於微信零錢一樣、
可以充值,提現,軟件內部支付

另外會涉及充值送錢的功能,但是充值送的錢在提現和消費方面都有限制;
比如充值1000送200,賬戶裡面有1200;提現的時候只能提現(提現額-200),
當(提現額-200)小於0的時候不能提現。比如還剩150就不能提現,但是150還能
繼續支付使用;此時又有充值500送100的活動,如果提現的話,就只能提現500元;
但是你再次消費的時候,會先消費上次剩余的150元;

主要是想請教下各位這個在設計的時候應該注意啥?
初步是想設計成 主賬戶(充值的錢)和副賬戶(送的錢)
優先使用主賬戶的錢;但還是會有一些其他的矛盾,希望各位
大拿們能說說自己的看法、謝謝....

最佳回答:


給你一個簡單的 實現 例子吧,命名上我用中文說明,這樣好說明點
數據庫:
moneytb:金錢的表名稱 costtb:消費記錄表
mid:錢表的id uid:用戶賬號id cid:消費記錄id
mtm:時間 ctm:消費時間
mnum:金錢數量
mtype:金錢的類型(這個你可以自己定義,可以定義一個二進制的規則也可以是簡單是數字,來標示是否能體現和消費等)
mclevel:這個就是花費的等級,這個值一直往上加。
表 moneytb(mid,uid,mnum,mrule,mclevel,mtm)
costtb(cid,uid,mid,cnum,ctm)
mclevel這個值的更新需要注意一點,例如第一次充值的設置為1,第一次送的設置為2,第二次充值的設置為3,第二次送的設置為4
新添加的錢的mid也是增加的,這個會和uid綁定,所以不會亂。
接下來就是上層 怎麼處理這個問題了,在消費的時候 你根據uid可以查詢moneytb 裡面的 mnum>0 的數量出來,並且按照mclevel排序。
這樣你拿到的數據就是你需要消費的 錢的優先級了。 數據的更新也不難,因為有mid你可以直接更新,記住在costtb裡面添加消費記錄,以便以後查詢交易記錄使用,

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved