接上一篇,整個一元奪寶中主要分為商品(后台、前台)、奪寶訂單、奪寶期、開獎4大模塊,如下圖:
一、商品模塊
對於商品這塊區分前台與后台的理由是:
A、后台主要是管理商品的基本屬性參數,例如ID、名稱、所屬名牌品類,顏色尺碼SKU等,當然這里是分主子表。
B、 前台在后台的數據基礎上記錄一些擴展行為參數,例如設定該商品進行到多少期就停止奪寶、總共需要多少人次參與、基本奪寶人次單位等。
這樣做的好處就是嚴格區分本身基本屬性與后續擴展的行為熟悉,互不干擾但存在關聯關系。
二、奪寶期模塊
在這個里面細分為奪寶期主要信息,當前期奪寶參與明細記錄,以及奪寶號碼配置。
A、奪寶期里面會記錄什么商品參與奪寶、進行到多少期、總共需要多少人參與、當前參與了多少人次、當期中獎用戶,開獎號碼等。
B、 當前期奪寶明細記錄主要是這一期什么產品被什么人奪寶,且奪寶號碼、奪寶的時間是多少。其有一個顯著特征就是記錄條數會與該商品總參與人次數相等。
C、 存在奪寶號碼配置這樣的信息主要是為了在開獎之后初始化下一期奪寶用到。比喻說某商品總需要參與人次數是100,那么就會從號碼配置記錄中取出從1到100共100個號碼寫入到奪寶明細記錄中去。
三、奪寶訂單模塊
這里的訂單處理其實與我們腦海中的訂單概念一樣,也是分為訂單主信息,訂單所包含明細商品信息。
A、訂單主信息中主要記錄參與人、付款多少錢、什么方式付款、訂單狀態等關鍵信息。
B、 訂單明細表中唯一不同之處就是會記錄到某人對該商品奪寶之后,系統分配給他的奪寶號碼集合。
四、開獎模塊
因為是無人值守的,所以開獎必須用定時任務來完成。開獎之后需要給用戶微信發消息告知此處奪寶是否中獎,中獎用戶需要填寫獎品郵寄出去的地址信息,用戶收到獎品之后還可能會曬單等。
根據上面對圖的分析,其實就可以馬上將數據庫表結構給建出來。大致列一下有如下表:
A、后台商品主表
B、 后台商品明細表
C、 前台商品主表
D、前台商品圖片表
E、 奪寶期主表
F、 奪寶期明細表(永遠只記錄當前期)
G、奪寶號碼配置表
H、奪寶訂單主表
I、 奪寶訂單明細表
J、 奪寶購物車表
K、開獎任務記錄表
L、 開獎計算結果詳細表
M、 開獎收貨地址表
N、開獎微信通知記錄表