訂單號怎么生成才好用疗琉?有人問我相關的問題冈欢。之前做過電商項目的我也只是二次開發(fā),訂單這塊的業(yè)務邏輯也是電商系統(tǒng)中較復雜的一環(huán)盈简,單說訂單號的設計生成也有很多講究凑耻。
正常來說太示,訂單號的生成規(guī)則一般正常會想到以下:訂單號由數(shù)字或字母組成,數(shù)字可能是年月日時分秒香浩,也可能是隨機數(shù)字类缤,也可能是商品標識品類,比如食品是1邻吭,書籍是2餐弱,還有可能是用戶手機號,用戶ID等等
那么問題來了囱晴,這些數(shù)字都組合在一起膏蚓,長度和復雜度太高,那么一個好用又好看的訂單號應具備哪些規(guī)則和依據(jù)呢畸写?
回到問題本質(zhì)驮瞧,先說說訂單號的作用,誰用訂單號枯芬?訂單號用來查詢訂單用的论笔,一般是在支付或售后過程中有問題時用到的,也就是客服/運營/開發(fā)部門用的千所。另外狂魔,訂單號盡量短,且不能重復真慢,盡量能結合當前業(yè)務情況有特定的標識毅臊,如渠道編號,支付方式黑界,業(yè)務類型等管嬉。比如:平臺- 移動還是PC平臺的,下單渠道和支付渠道- 支付寶還是現(xiàn)付朗鸠,業(yè)務類型 和時間信息蚯撩。
以下是訂單規(guī)則的例子:
下單渠道1位+支付渠道1位+業(yè)務類型1位+時間信息8位+用戶userid4位
最后我們也看看業(yè)界電商平臺都是什么樣的訂單號。
1.淘寶單號烛占,前幾年還是12位胎挎、現(xiàn)在16位了,淘寶訂單的后4位是user id忆家,至少前12位可能是時間加隨機數(shù)犹菇。
2.京東,之前是9位芽卿,現(xiàn)在11位了揭芍,但沒看出規(guī)則。猜想應該是 有一個全局數(shù)據(jù)庫卸例,這個數(shù)據(jù)庫中只有一張訂單表(Order),表中只有一個自增的字段Id称杨,這個自增的字段Id就是訂單號肌毅。所有生成訂單的API會首先訪問全局數(shù)據(jù)庫的Order表獲得訂單號,然后再生成訂單姑原。這樣就可以保證子庫訂單號不重復悬而。
3.ecshop,原來的訂單號形式為:年月日 + 5位隨機數(shù)字锭汛,例如:2016101718830
其實訂單號沒有對與錯笨奠,只是簡潔方便查詢就可以,其實與產(chǎn)品的使用場景有關唤殴,比如滴滴打車艰躺,遇到問題,直接反饋時間+起點+車型車牌號眨八,更方便,餓了么也同理左电,直接報時間和商家名更方便廉侧。