電商商品數據庫的設計和功能界面的處理

前陣子對電商商品及其相關的內容很感興趣,總有一種不弄明白不罷休的衝勁。所以整整花了幾周的時間來了解電商商品的各類概念,參考看不一樣的人數據庫設計,以及參考不一樣的思路。網上確實有不少文章對這方面進行介紹,並且基礎、通用的概念都差很少,不過數據庫設計方向卻是有所差別。本篇隨筆針對一些介紹比較好的文章或者資料進行對比,並着手進行必定的數據庫設計和基於ABP框架+Vue+Element的後臺管理進行設計,後續可能會基於商品、會員、訂單、售後的基礎上進行一個多端的系統整合,如ABP後端API、Vue+Element的後臺管理、UniApp小程序或H5公衆號進行開發。html

一、參考部分優秀的作法

關於電商商品的數據庫設計,介紹比較詳細的文章有:https://blog.csdn.net/qq_37457564/article/details/101289358,或者https://www.cnblogs.com/cnblogs-programs/articles/5651557.html http://www.javashuo.com/article/p-ptghsoyu-ep.htmlhttp://www.360doc.com/content/18/0124/11/40769523_724661250.shtmlhttp://www.javashuo.com/article/p-ahuuttpw-cb.html前端

這些設計理念都一致,另外關於概念的介紹,這篇隨筆:http://www.woshipm.com/pd/2122609.html 和https://www.sohu.com/a/341684657_114819也介紹的很詳細。vue

關於電商商品的分類,我看基本上是分爲三類,包括京東、淘寶商品類別,也都基本按照這樣分級處理。關於商品的類別分類,咱們能夠參考一篇文檔的介紹《電商商城產品三級分類》,這個文檔挺好,不過沒有辦法得到Word格式的文檔用來參考。另外咱們能夠參考《國美的電商商品分類》,國美的商品分類很好,能夠用做咱們前期商品的類別數據。git

後來,無心間看到了《商派ONex在線零售產品操做手冊》,這個文檔的概念各方面感受更精確,並且這個公司好像一直從事電子商務方面的諮詢、軟件開發等事宜,其中它對商品類型和商品分類的分開,我以爲更加貼切,畢竟商品的分類能夠更加彈性化一些或自定義組合一些特殊的類別。github

所以綜合這些考慮,把總體的概念梳理一遍,着手作一下電商商品的數據庫設計和功能界面的管理開發了。數據庫

在開始以前,咱們先來參考一下電商領域的一些概念。小程序

商品分類

商品分類,俗稱商品類別、商品目錄,指的是爲了方便顧客分門別類查找商品,同時方便商家進行商品管理的分類方式。後端

虛擬分類

在原商品分類基礎上,依據商品的品牌、屬性、價格等條件篩選而造成的新分類方式,例如200—300元的商品,女性滑蓋手機等分類。網絡

商品類型

商品類型不一樣於商品分類,指的是依據某一類商品的相同屬性概括成的屬性集合,例如手機類型都有屏幕尺寸、鈴聲、網絡制式等共同的屬性;書籍類型都有出版社、做者、ISBN號等共同的屬性。echarts

通用商品類型

系統內置的僅含有商品名、重量、銷售價格、簡介、庫存、品牌等基本屬性的一種商品類型。

商品規格

是依據顧客的購買習慣而獨立出來的一種商品的特殊屬性,例如顧客先選好了某一款襯衫,而後必須再選擇顏色和尺碼才能夠訂購,這裏的顏色和尺碼被稱爲規格。

商品關鍵詞

商品關鍵詞是商品名稱的有效補充,能夠實現更多的搜索結果匹配機會,如:索尼愛立信W910i手機中設 置商品關鍵詞「索愛W910i」,則用戶搜索「索愛W910i」也能夠找到這款手機。

版塊

商店前臺面頁的不一樣區域,例如特價商品、銷售排行榜、最新發貨清單等,商家能夠在後臺的模版編輯中進行版塊設置來修改前臺表現樣式。

市場價

顧客購買商品時的參考價格,不做爲購買支付價格。

銷售價

是普通顧客在商店中購買商品的結算價格。

會員價

顧客註冊成爲商店的會員以後,購買商品所享受的價格。商家針對同一商品能夠根據會員等級不一樣,設置不一樣的價格。

商品配件

是與此商品出如今同一個頁面而且可同時購買的其餘商品,如:購買諾基亞N95,可同時購買手機電池、內存卡、藍牙耳機等配件。

相關商品

商家爲了促進其它商品的銷售而將其顯示在當前商品的頁面上,這些商品就叫作相關商品。

商品

在系統中,商品是一個銷售單位,在前臺表現爲一個商品詳細頁。

貨品

在系統中,貨品與商品不相同,貨品是一個庫存單位,例如「索愛W910i」是一個商品,但紅色的「索愛W910i」是一個貨品,黑色的是另外一個貨品。

貨號

是貨品的惟一編號,可用於倉庫管理。

商品編號

商品的惟一編號,可用於商店前臺的商品檢索,通常使用數字編號,方便電話訂購。

標籤

是一種分組標識,可用於商品、訂單,店主能夠利用標籤篩選分組,如:爲某幾個商品增長「熱賣商品」的標籤,能夠經過板塊設置,讓這幾個商品顯示在前臺首頁的熱賣商品區。

 

SPU:即標準化產品單位,是最接近用戶認知的產品單元。好比iphone六、iphone四、小米4都是SPU。

SKU:即庫存量單位,例若有iphone6這個SPU,當用戶購買時要肯定買什麼顏色的、內存多大的、支持什麼網絡等等。就用庫存單元SKU去規範它。庫存裏存在的東西是具體某種規格的,不一樣的顏色、版本、容量確定有不一樣的價格和不一樣的SKU。

 

二、數據庫設計

電商商品有品牌、商品分類、商品類型、規格分組、規格參數、規格參數選項值、商品SPU、貨品SKU等等概念對象,我依照上面的一些設計思路,整合了這些概念,大概有以下的設計關係圖。

 其中的關係看起來不少,不過整體就那麼些概念。這裏我吸納了一位仁兄說把規格和參數做爲一個表設計,用標誌字段分開的思路。

商品參數(有些人叫商品規格參數)信息以下所示,通常能夠分爲分組、屬性及屬性值。這些信息不影響SKU,只是做爲商品的一些參數展現。

 另一些參數影響SKU的信息,能夠認爲是特殊的規格參數,以下所示。

 咱們選擇不一樣的顏色、版本等規格,可能影響咱們SKU的記錄,也就是對應的銷售價格和庫存量。

其中商品品牌、商品列表比較獨立,可是商品規格及規格值等信息設計和商品類型關聯,從而影響商品信息。

商品其實設計的概念很多,不過都是爲了使得數據更加有規律,實現更好的彈性設計。從商品管理擴展出去,還會設計到會員和積分管理相關信息,也是一個不小的設計領域,另外還有設計到訂單管理,也是一個大的體系,可是商品是其中的關鍵,也是不少管理的開始。

 

三、軟件界面的設計

針對商品的管理,主要就是後臺數據的管理,前端界面的展現,通常就是電商領域的商品銷售了,如能夠結合小程序、公衆號、官網等方式展現商品進行銷售。

咱們這裏先對商品管理的界面進行設計,其中包括了商品品牌、商品分類、商品規格分組、規格定義、規格選項及它們之間的關係等功能的處理。

按照咱們的功能規劃,咱們定義好如下的菜單

  

1)品牌管理

其中品牌管理界面以下所示。

  品牌編輯或者新增界面以下

  

 品牌信息相對獨立,沒有和其餘模塊表之間有直接關係,那麼只須要維護他的基礎數據和相關的圖片信息便可。

2)分類管理

分類設計是一個無窮級的樹列表,通常電商商品類別分爲三類,咱們能夠經過左側樹列表快速定位,分類列表界面以下所示。

 電商的類別比較多,一個個錄入確定有點麻煩,我就弄了一個快速的批量新增處理。

分類直接從國美商品分類中複製過來便可,很是方便。 

 其中,咱們能夠根據商品類別的分級層次,來自動構建分級編碼,方便之後根據編碼直接定位商品分類的一級、二級、三級信息。

 

 3)商品類型

前面介紹過了,商品類型不一樣於商品分類,指的是依據某一類商品的相同屬性概括成的屬性集合,例如手機類型都有屏幕尺寸、鈴聲、網絡制式等共同的屬性;書籍類型都有出版社、做者、ISBN號等共同的屬性。

 

 其實這裏商品類型和品牌有多對多的關係。

 也和規格分組和規格參數和規格選項有相關的關係。

功能界面設計的時候,就須要考慮和這些表之間的關係維護,如基本信息裏面和品牌關係進行綁定。

以及商品規格里面的規格及規格列表的維護。

 

 規格選項能夠輸入圖片,也能夠上傳圖片,到時候終端根據選擇顯示方式進行展現便可。

另外除了影響SKU的特殊規格參數外,還有一個常規的規格參數,這裏稱爲商品參數。商品參數按分組的方式進行管理,以下界面所示。

而其中的參數,除了設置一些選項外(如是否可查詢、數值、單位等),和上面的規格相似,也是能夠填寫列表選項的,以下所示。 

 

 

4) 商品信息

商品信息,除了維護SPU信息外,還須要管理SKU和庫存信息,所以須要綜合上面不少信息進行分類,商品列表界面主要是提供快速商品的檢索和建立SKU記錄信息的入口,商品列表以下所示。

其中商品分類,咱們能夠根據數據庫記錄進行展現並選擇過濾數據。

 商品建立及SKU記錄信息處理,咱們能夠引入 hooray / vue-sku-form 組件進行信息的建立,以下界面所示。

 

經過不一樣的商品規格,如顏色、內存等生成多個不一樣規格的SKU記錄,並設置對應的價格和庫存信息。

以上就是關於電商商品的一些數據庫設計和功能界面的截圖,主要就是用來理清各個電商商品的概念,以及模塊之間的關係,爲後面的會員管理、訂單管理等大領域進行基礎的處理。

爲了方便讀者理解,我列出一下前面幾篇隨筆的鏈接,供參考:

按部就班VUE+Element 前端應用開發(1)--- 開發環境的準備工做

按部就班VUE+Element 前端應用開發(2)--- Vuex中的API、Store和View的使用

按部就班VUE+Element 前端應用開發(3)--- 動態菜單和路由的關聯處理

按部就班VUE+Element 前端應用開發(4)--- 獲取後端數據及產品信息頁面的處理

按部就班VUE+Element 前端應用開發(5)--- 表格列表頁面的查詢,列表展現和字段轉義處理

按部就班VUE+Element 前端應用開發(6)--- 常規Element 界面組件的使用

按部就班VUE+Element 前端應用開發(7)--- 介紹一些常規的JS處理函數

按部就班VUE+Element 前端應用開發(8)--- 樹列表組件的使用

按部就班VUE+Element 前端應用開發(9)--- 界面語言國際化的處理

按部就班VUE+Element 前端應用開發(10)--- 基於vue-echarts處理各類圖表展現 

按部就班VUE+Element 前端應用開發(11)--- 圖標的維護和使用

按部就班VUE+Element 前端應用開發(12)--- 整合ABP框架的前端登陸處理

按部就班VUE+Element 前端應用開發(13)--- 前端API接口的封裝處理

按部就班VUE+Element 前端應用開發(14)--- 根據ABP後端接口實現前端界面展現

按部就班VUE+Element 前端應用開發(15)--- 用戶管理模塊的處理

按部就班VUE+Element 前端應用開發(16)--- 組織機構和角色管理模塊的處理 

按部就班VUE+Element 前端應用開發(17)--- 菜單管理

按部就班VUE+Element 前端應用開發(18)--- 功能點管理及權限控制  

按部就班VUE+Element 前端應用開發(19)--- 後端查詢接口和Vue前端的整合

按部就班VUE+Element 前端應用開發(20)--- 使用組件封裝簡化界面代碼  

按部就班VUE+Element 前端應用開發(21)--- 省市區縣聯動處理的組件使用

按部就班VUE+Element 前端應用開發(22)--- 簡化main.js處理代碼,抽取過濾器、全局界面函數、組件註冊等處理邏輯到不一樣的文件中 

按部就班VUE+Element 前端應用開發(23)--- 基於ABP實現先後端的附件上傳,圖片或者附件展現管理

按部就班VUE+Element 前端應用開發(24)--- 修改密碼的前端界面和ABP後端設置處理 

按部就班VUE+Element 前端應用開發(25)--- 各類界面組件的使用(1)

按部就班VUE+Element 前端應用開發(26)--- 各類界面組件的使用(2) 

ABP框架中一對多,多對多關係的處理以及功能界面的處理(1) 

電商商品數據庫的設計和功能界面的處理  

相關文章
相關標籤/搜索