任何一個電商系統,都離不開運營,所以任何一個電商系統也都少不了卡券營銷。
現將做火票務時關於優惠券的數據庫設計梳理如下。
設計概要
優惠券系統設計分兩個層次,業務架構層和系統架構層。
業務架構層指在一定時間內可預見到的業務發展范圍內,有可能出現的營銷方式及所對應的限制條件。
系統架構層指在可預見的業務發展的范圍內,應該有整體,系統,靈活的設計。
產品經理的職責是業務架構,架構師的職責是系統架構。
業務架構
優惠券的種類:
- 優惠券
- 折扣券
- 抵扣券
優惠券的使用范圍:
1、針對影片
2、針對影院
3、針對影廳
4、針對地區
5、針對節假日
6、針對普通用戶
用戶使用優惠券滿足的條件:
1、訂單金額
2、影院/影片/影廳限制
3、節假日限制
4、用戶個人條件限制,如生日,性別(女生節)等
系統對接范圍:
1、內部的電影票務系統
2、對接合作方
3、作為集團公司,為未來集團子公司的其他業務接入留有余地
優惠券互斥:
某一部分優惠券與其他優惠券互斥,即不可與其他優惠券共同使用
系統架構
從整個業務場景考慮,每一個優惠券的生成都有對應的使用范圍,優惠券的使用必須有相應的使用者,即訂單。
因此整個業務場景包括優惠券,優惠券的使用范圍(規則),優惠券的使用者(訂單)
優惠券的使用規則包括:影院,影片,影廳,地區,時間等,從邏輯層面看所有的規則可概括為三種邏輯:
1、個體邏輯(是非)
2、有限個體邏輯(枚舉)
3、有限范圍無限個體邏輯(邊界)
這樣只需要做一次,就可以由運營人員自己在后台自由的進行規則組合,
表結構UML圖如下(非詳細):
因此表結構設計如下:
優惠券組表
groupid
優惠券表
id
groupid
code
uid
passwd
優惠券規則表
groupid
rule_type
start
end
enum
condition
value
優惠券使用表
id
code
order_code
uid
value
film_id
cinema_id
screen_id