POST TIME:2018-12-03 21:34
之前和不少剛結業的產品同學交流過,用戶端是他們十分偏向選擇的產品線。可在實際的工作過程中,由于不太了解中后臺的情況加之邏輯上沒有那么成熟的經驗,很容易出現界面設計完成后無法和中后臺的相關同學交流實現。所以用戶端產品也需要了解基礎的業務邏輯規則和關聯。今天我們就分享下電商、020用戶端“背后”的邏輯。
用戶端的內部構造用戶端一直有著迷之尷尬的地位,既充當門面卻深受各個系統的“牽連”。所有系統的最終表示都依賴于用戶端的展現,所以說用戶端是產品價值的最終表現。我們來看下用戶端內部都有什么。
電商的用戶端主要功能是提供購買和商品展示,并能夠協助用戶進行個人辦事辦理。從用戶的階段來劃分,主要分成售前、售中、售后三個階段。其中個人信息的辦理屬于貫穿整個使用過程。
售前環節:實現用戶購買前的瀏覽和檢索。首頁(對接CMS、商品、類目、保舉、促銷、廣告、搜索)頻道頁(對接CMS、商品、類目、保舉、廣告)專題頁(對接促銷、商品、CMS、廣告)搜索結果頁(對接搜索、商品、保舉、廣告)搜索分類頁(對接類目、商品、搜索、保舉、廣告)發現頁(對接商品、搜索、保舉、促銷)售前環節主要功能是完成商品的展示,頁面的信息布局和UI是此類模塊的首要功能。由于電商平臺商品、類目眾多,所以數據多是由負責規則整合的系統完成數據處理,然后通過頁面、內容生成系統完成前臺的展示工作。
售中環節:實現用戶的購買售中環節也叫購買流程,是實現用戶從下單到完成支付的整個過程。這個流程是整個電商體系中最重要的環節。其中交易、訂單和支付系統負責這個環節的核心邏輯。
商品詳情頁(對接商品、促銷、保舉、廣告、CMS、會員)購物車(對接商品、促銷、交易、保舉、廣告),其中庫存部分可放入商品或交易中合并計算,也可單獨由庫存系統提供處理。結算頁,也叫訂單確認頁(對接商品、促銷、交易、訂單、會員)收銀臺,也叫支付頁(對接支付、訂單)支付完成頁,也叫訂單完成頁(對接訂單、保舉、廣告)(1)購物車
購物車環節要考慮庫存是否需要做占用。購物車做預占庫存可以第一時間通知用戶庫存狀態,但有可能出現較多占用后但未生成訂單的情況。而生成訂單后占庫存則能保證訂單和庫存匹配率最大,但用戶不才單后才被告知無庫存,用戶體驗相對較差。
常規做法會在購物車環節設置數量閾值,庫存小于閾值顯示用戶庫存緊張。然后不才單環節完成扣減庫存的情況。如果是秒殺或者是類似唯品會的搶購模式,則可以在購物車扣減庫存,增加倒計時(如15分鐘)提示提高用戶搶購感。
促銷金額的計算也是購物車需要考慮的主要邏輯之一,由于商品詳情頁都是單品信息,所以組合促銷的金額計算是在購物車表現的。
別的,作為電商的“近親”020領域的購物車比擬傳統電商處理方法有所差異。020的購物車原則上很多是不跨店鋪銷售的,所以購物車是存在于單個店鋪中且以浮層的方式展示。一般來說為制止對于辦事器造成壓力過大的問題,不是所有的添加商品的操作都是請求后端辦事,在邏輯處理上為了保證一致需要前后端都考慮邏輯統一的問題。
(2)結算頁
結算頁可以說是電商用戶端比較復雜的頁面之一。這里面涉及到配送邏輯判斷,送達時間計算,運費計算,訂單計算及分攤等。
配送邏輯判斷:按照提供的配送方式結合倉配情況和移倉的邏輯來判斷來預計送到的時間。此部分的物流配送的路程情況也會影響運費的計算邏輯。當無法單倉滿足或者移倉滿足時,有可能需要拆多個包裹從差別的倉發送。
運費計算:按照后臺設置的運費模板來計算實際應該收取的運費。運費模板是指設定好的一套運費規則,好比滿XX收多少等。
訂單計算:訂單計算主要涉及到交易單各個子單之間促銷優惠的計算和金額分攤。
優惠計算主要包孕優惠券和促銷活動的金額計算。一般情況后臺會有必然的計算優先級,好比計算促銷活動的金額,完成后再看是否滿足優惠券的滿減金額。計算時需要考慮促銷范圍,如商家還是全場。金額分攤,電商的支付類型發展到如今是越來越豐富。信用卡、匯款、支付寶、微信、白條、積分、禮品卡等等各種各樣。考慮到訂單逆向(整單退,部分退)的情況,需要將所有支付的金額包孕優惠券都分攤到每一個商品上,以便退款時可以保證金額不錯。分攤計算有兩個要注意的事情,一個是各項支付方式退款的優先級,先退什么在退什么。原則上先退成本低的,在退成本高的。二是當分攤時金額除不盡的時候多余的部分如何分攤,小數后三位的時候四舍五入還是直接舍掉。這個規則要和后端、報表連結一致,制止出現一分錢誤差的烏龍。(3)收銀臺