Java生鲜电商平台-订单配送模块的架构与设计
Java生鮮電商平臺-訂單配送模塊的架構(gòu)與設計
?
生鮮電商系統(tǒng)最終的目的還是用戶下單支付購買,
所以訂單管理系統(tǒng)是電商系統(tǒng)中最為復雜的系統(tǒng),其作為中樞決定著整個商城的運轉(zhuǎn),
本文將對于生鮮類電商平臺的訂單設計做一個完整的分析,也對前階段工作做一個復盤總結(jié)
訂單系統(tǒng)設計的好壞,決定了平臺的可用性、后期的功能拓展和商城價值;訂單系統(tǒng)貫穿于整個商城系統(tǒng),其他各個系統(tǒng)的設計也是為訂單系統(tǒng)提供數(shù)據(jù)支撐。從用戶提交訂單的那一刻到訂單完成,到售后,都需要訂單管理系統(tǒng)來管理。
訂單管理系統(tǒng)從流程生成過程,大致分為三部分:
1.階段一、訂單生成過程:用戶通過平臺選擇商品,選擇添加至購物車(某些平臺下單過程無加入購物車流程),生成訂單價格,提交訂單,后臺根據(jù)優(yōu)惠信息、活動信息、會員價等生成訂單金額,一般具體到每個商品訂單實付金額。
2.階段二、訂單配送過程:用戶支付完成,從倉儲發(fā)貨、配送、用戶收貨后訂單完成,如無提起售后流程,一般訂單到此就算完成,正常的訂單到階段二流程即結(jié)束了。
3.階段三、訂單異常、售后流程:用戶在前兩個階段過程中發(fā)起支付取消、提起商品售后流程,一般在訂單商品配送過程中是不允許用戶發(fā)起退款,等用戶收到貨物后才可發(fā)起售后,對于生鮮類平臺,可能不會做退貨的功能。
一、訂單生成過程
首先,是用戶在商城內(nèi)選購商品,這個階段可以叫做用戶購物行為。
然后,是系統(tǒng)調(diào)取各個系統(tǒng)的數(shù)據(jù),計算訂單的最終價格,這個階段可以叫做數(shù)據(jù)處理過程。
最后,是將訂單價格在用戶端顯示,這個階段叫做表現(xiàn)層顯示。
訂單數(shù)據(jù)流程1、訂單提交生成過程
用戶下單后系統(tǒng)需要生成訂單,生成訂單過程需獲取商品信息,商品是否涉及相關(guān)優(yōu)惠活動;獲取用戶會員信息(由于小程序做了付費會員,付費會員與普通會員購物部分商品有不同優(yōu)惠力度和商品價格差異)。
用戶提交商品訂單時需要考慮商品庫存問題:1.用戶提交訂單時鎖定商品庫存,即下單減庫存。2.用戶付款后鎖定商品庫存。何時鎖定商品庫存得看具體情況,個人感覺下單鎖庫存在商品庫存不多,商品暢銷情況下用戶體驗更好,避免在用戶支付完成后商家無庫存發(fā)貨。由于社區(qū)生鮮類商品,貨損較嚴重,所以設計為用戶付款后鎖定庫存。
2、支付訂單后是否需要拆單/合單
訂單拆單:客戶同時在多家店鋪下單,不同的店鋪的商品在正常情況下是要拆開的;自營平臺商品的訂單是否需要拆單根據(jù)發(fā)貨倉是否相同,發(fā)貨倉不同,也是需要根據(jù)商品發(fā)貨單進行拆單。總之同一個訂單,會有多個包裹多個運單發(fā)貨,就需要將訂單查看。
訂單合單:同一個用戶不同訂單需要考慮是否合單發(fā)貨,需根據(jù)實際情況而定,訂單合單后,多個訂單生成一個發(fā)貨單發(fā)貨。
3、訂單商品優(yōu)惠分攤
1. 為什么要對訂單金額進行分攤?
首要因素是退款,在訂單付款成功之后,如果不針對單個商品進行金額分攤,那么如果用戶需要退訂單中的部分商品,沒法計算需要退的金額。同樣如果只是單一商品品類券,則根據(jù)符合優(yōu)惠券使用條件的商品進行分攤,其他商品按照商品售賣價格。
財務對賬:將優(yōu)惠金額分攤到每個商品上,能核算統(tǒng)一訂單下的每個商品分別分攤的優(yōu)惠金額,比如:平臺券,一個使用平臺券的訂單最終需要計算每個商品分攤的優(yōu)惠金額,以確定每個商品的實際付款金額和享受平臺優(yōu)惠的金額。
核算成本:通過把優(yōu)惠金額分攤到每個商品上去,運營,財務或采購人員可以評估營銷活動的成本。
2. 優(yōu)惠金額分攤邏輯
按照最小維度進行分攤:即優(yōu)惠金額需要分攤到每個商品,且同一個商品采購數(shù)量大于1時,該商品最終只能有一個分攤后的價格
優(yōu)惠分攤比例:按照商品金額分攤對應比例的優(yōu)惠,保證不同商品享受優(yōu)惠的公平性,否則會出現(xiàn)商品應分攤的優(yōu)惠大于商品的銷售價或影響用戶體驗。
誤差處理:減小誤差主要途徑是在算法層面上進行優(yōu)化,同時也無法避免誤差,多余的誤差需要按照不同的優(yōu)惠活動分別存儲起來,在財務對賬和退款的時候需要用到。
這里必須提一下,這里訂單商品優(yōu)惠分攤的前提是訂單中商品符合優(yōu)惠條件,訂單中不符合優(yōu)惠條件的商品不參與優(yōu)惠分攤。
二、訂單配送過程
用戶在下單完成后,限制了用戶退款訂單狀態(tài),只允許用戶在訂單狀態(tài)為:待發(fā)貨和配送完成狀態(tài)下才可以申請退款。支付完成后訂單發(fā)貨狀態(tài)共分為:待發(fā)貨、分揀中、配送中、商品到達代收點、配送完成、用戶已取貨這幾個狀態(tài)。
訂單生成配送過程1、針對有缺貨/無貨情況
避免生鮮水果類商品的貨損過大問題,倉儲一般備貨較少,有時需及時從生產(chǎn)商拿貨,就可能會出現(xiàn)商品不足、無貨的情況,如發(fā)生缺貨、無貨的情況,是否補單發(fā)貨,還是直接退款給用戶
生成補貨單發(fā)貨或者退款:在倉儲發(fā)貨分揀發(fā)現(xiàn)缺貨、無貨情況時可發(fā)起異常配送流程,針對缺貨、無貨的商品按照訂單生成時間判斷影響了具體哪些用戶訂單,在缺貨、無貨商品訂單中操作想應的補貨或者退款操作
這里需要說明一點,我們強調(diào)的是客服主動跟受影響的用戶進行溝通,而非系統(tǒng)自動發(fā)起補貨或退款。
2、用戶同一天下單多次的訂單是否需要合單發(fā)貨
針對同一用戶同一天內(nèi)的訂單是否需要合成一個發(fā)貨單發(fā)貨,需要根據(jù)具體場景具體考慮,如果做了合成一個發(fā)貨單,幾單包裹在一起是否一個包裹能裝下,如果是需要兩三個包裹裝的話,只有一個發(fā)貨單如何處理,都是需要考慮解決方案。
三、訂單異常、售后流程
訂單售后一般包括未支付訂單取消、下單完成后未配送前發(fā)起退款申請,配送完成后的訂單申請售后過程,未支付訂單的取消和下單完成后未配送前發(fā)起的退款申請,系統(tǒng)在接收到退款申請時會自動給用戶訂單退款;配送完成后的訂單由于商品性質(zhì)的原因,限定了不支持無理由退貨退款,并且沒有做退貨流程的處理,主要考慮到商品退回至倉庫已無價值。
訂單系統(tǒng)逆流程的分支很多,需要兼顧業(yè)務場景,一般在從0到1的過程中,售后流程會先通過線下的方式解決,以便能把資源集中在更核心的部分。
轉(zhuǎn)載于:https://www.cnblogs.com/jurendage/p/11227425.html
總結(jié)
以上是生活随笔為你收集整理的Java生鲜电商平台-订单配送模块的架构与设计的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 微信亲属卡暂不可用?主要原因有这几点!
- 下一篇: 爱奇艺办信用卡靠谱吗?收费吗?