商城項目中,之前我們介紹了購物車功能模塊的實現,商品加入到購物車之后,就是到購物車結算,然后顯示購物車的商品列表,點擊去結算,然后到了未提交前的訂單列表,點擊提交訂單后,生成此訂單,返回訂單的訂單號,付款金額,訂單預計到達時間。
訂單系統是一個非常重要的系統,我們的移動端、PC端都需要訂單系統,所以這里我們將訂單系統單獨作為一個服務來,留出接口供客戶單來調用 (推薦學習:PHP視頻教程)
今天我們來看下這個訂單系統到底是如何實現的:
訂單系統功能
訂單系統主要包含哪些功能模塊呢?
創建訂單功能、查看訂單列表、根據訂單id查詢訂單的詳細信息、訂單修改、訂單取消、訂單狀態、訂單評價等功能的實現。
今天我們來看下創建訂單的流程:
訂單系統的數據庫表的設計
創建訂單說到底就是向訂單表中添加數據,即insert這些信息。
下單功能一定要使用關系型數據庫表,保證數據的一致性,因為創建訂單要保證在一個事務(一個事務就是指向數據庫中進行的一種操作:比如插入,刪除等等)里面,nosql數據庫不支持事務,可能會丟失數據。
我們在網上購物的時候通常這個訂單包含的信息比較多,所以對于訂單系統如何創建它的數據庫也是非常重要的。創建數據庫遵循數據庫設計的三大范式原則來設計。