今天是劉小愛自學Java的第154天。
感謝你的觀看,謝謝你。
學習計劃安排如下:
繼續接著昨天的學習,因為該業務實現較為複雜,還要花一天的時間才能搞定。
一、新增商品資料
關於新增資料一共是劃分成了4塊內容:
①基本資訊
這個也就是昨天實現了的內容。
當然,上述資料都是我自己瞎填的,正式專案的話就填和產品相關的資料就好。
其中商品分類和該分類下所屬的品牌都是從資料庫中查詢到的。
而商品標題、商品賣點和包裝清單是我們自己要填的資料,也就是要新增到資料庫中的。
基本資訊這塊的資料算是填寫完成了,後面還有三塊資料內容。
②商品描述
這裡是一個富文字編輯器,填寫的也就是商品的賣點,這個在電商網站中就太常見了。
基本就是誇商品很厲害很好,還有影片可以播放,以及各種圖片接受什麼的。
這個商品比如說手機,無論是買低配置的還是買高配的,關於描述一般都是配置最高的那個,也就是這裡面需要填的內容。
此處使用的富文字編輯器是Vue-Quill-Editor,其在GitHub上就可以完成下載。
至於具體如何使用?
因為其牽扯到前端程式碼的編寫,就不展開講述了,我們主要以後臺數據為主。
③規格引數
如果我們直接點進去是沒有顯示資料的,具體原因看網頁請求:
昨天講解和實現了上述4個請求,確定了商品分類和品牌,其中還有一個請求報錯,就是和規格引數相關的請求。
我們看請求路徑初步就能判斷是根據cid查詢商品規格引數。
而規格引數是我們前幾天就實現了增刪改查的,不過沒有根據cid查詢的業務。
二、根據cid查詢規格引數
規格引數是屬於SpercController處理器的:
1Controller層程式碼
我們以前就實現了查詢業務,不過當時是根據gid查詢,也就是規格引數組id。
現在又新增了一個查詢,是根據cid查詢。
並且它們的請求路徑是一致的,只是引數不一樣,如果像上圖中這樣寫是不行的。
所以要將這兩個方法合併成一個方法:
使用required=false設定引數,表示該引數不強制要求一定要有,可有可無。
都是查詢規格引數,只不過引數不一樣,所以將這多個引數集合在一起了,統一查詢。
其中這裡有一個引數是searching,根據搜尋條件查詢,這是以後需要學到的一個知識點。
總之凡是查詢規格引數的,都可以使用該方法來實現,無外乎就是增加一個引數而已。
因為這個引數可以有也可以沒有,所以要記得用required來說明。
2Service層程式碼
因為gid和cid以及searching這三個引數都是SpecParam這個實體類裡的屬性。
所以使用通用mapper查詢資料,查詢條件是包含這些屬性的物件即可。
3頁面測試
再次測試時,會發現商品對應的規格引數名都出現了,只需要填寫對應的值即可。
當然上述都是我自己瞎寫的,也就是商品規格引數中的一些資料。
但是呢還有三個規格引數是和商品息息相關的,其中就牽扯到了第④點SKU屬性。
三、SKU屬性
關於規格引數還有手機顏色、記憶體以及儲存空間這三個資料,上述中並未填寫。
而是劃分到了SKU屬性中,如下圖:
SKU就是指具體的某個確定的商品。
比如說手機顏色有2種,記憶體有1種,手機儲存大小也有2種,透過這三個屬性可以組合出2*1*2一共4個SKU。
當然我這邊因為頁面受限作為測試只填寫了這幾種,實際上一般都可以組合成3*3*3一共27個SKU。
而這些在前端頁面都幫我們自動組合好了,如下圖:
其中在對應的SKU中添加價格和庫存,以及該商品是否啟用。
不同的配置價格肯定不一樣,這也好理解。
點選對應的商品也能新增該SKU對應的圖片。
以上就是對商品新增業務中的資料說明。
點選儲存商品資訊,會向後臺傳送新增請求,將我們填寫的資料傳送給伺服器,從而新增到資料庫中,具體實現後續再學習。
最後
行有不得反求諸己,我是@劉小愛
一個白天上班晚上學習的95後滬漂,不為其它,只為學會自律做好自己,也願我的每日打卡能給你帶來勇氣,歡迎點贊關注和評論。