日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
分庫分表實戰(zhàn)之訂單業(yè)務(wù)完整梳理

前 言

?上一期?內(nèi)容我們整體了解了分庫分表實戰(zhàn)項目當前使用的系統(tǒng)架構(gòu),也就是單庫版本訂單系統(tǒng)的系統(tǒng)架構(gòu)。同時,我們也知道了未來要做的分庫分表版本的訂單系統(tǒng)架構(gòu)?,F(xiàn)在,我們就從單庫版本的訂單系統(tǒng)開始,一步一步的來進行優(yōu)化。

創(chuàng)新互聯(lián)建站主要從事成都做網(wǎng)站、網(wǎng)站建設(shè)、網(wǎng)頁設(shè)計、企業(yè)做網(wǎng)站、公司建網(wǎng)站等業(yè)務(wù)。立足成都服務(wù)息烽,十余年網(wǎng)站建設(shè)經(jīng)驗,價格優(yōu)惠、服務(wù)專業(yè),歡迎來電咨詢建站服務(wù):18980820575

如果想要優(yōu)化單庫版本的訂單系統(tǒng),首先要了解目前的訂單系統(tǒng)有哪些核心功能,核心功能的業(yè)務(wù)流程是什么。

如果你剛?cè)肼毩诉@家初創(chuàng)型互聯(lián)網(wǎng)公司,而你所在的部門又剛好是做外賣APP的訂單系統(tǒng)的,那你認為入職之后要干的第一件事是什么呢?

必須是了解整個訂單系統(tǒng),你的leader可能會直接給你發(fā)個wiki,這個wiki中包含了單庫版本的系統(tǒng)架構(gòu)圖,如下圖:

通過這張系統(tǒng)架構(gòu)圖,可以知道整個訂單系統(tǒng)目前有哪些核心功能,都使用了哪些技術(shù)棧。

并且,在這個wiki中除了有系統(tǒng)架構(gòu)圖之外,還有很多核心接口的業(yè)務(wù)流程圖,通過這些業(yè)務(wù)流程圖,可以快速了解到訂單系統(tǒng)核心接口的業(yè)務(wù)流程。

那訂單系統(tǒng)中,有哪些核心接口的業(yè)務(wù)流程圖?現(xiàn)在,我們一起來看一下。

用戶下單流程

大家或多或少都是點過外賣的,訂單系統(tǒng)涉及用戶和商家兩個角色的功能,先來看一下C端,即用戶端的一些業(yè)務(wù)流程,首先就是用戶下單的操作。

用戶可以在外賣APP中點外賣,當用戶選中一個商品之后,會提交訂單,接著就會發(fā)起一個創(chuàng)建訂單的請求,如下圖:

可以看到,創(chuàng)建訂單的請求首先會轉(zhuǎn)發(fā)給Controller組件,Controller組件再把請求交給Service組件處理,在Service組件中會先生成一個訂單號,然后為新的訂單組裝好訂單信息以及訂單明細信息。

隨后,Service組件再將組裝好的訂單信息轉(zhuǎn)交給Repository組件處理,Repository組件通過Mapper組件,最終將訂單的信息保存到數(shù)據(jù)庫中。

當然,用戶正式下單之后,是需要支付訂單的,但是支付相關(guān)的功能,這里可以暫時不用關(guān)注。

用戶查詢訂單列表流程

當用戶完成下單之后,用戶可能要看一下自己曾經(jīng)下過哪些訂單,所以,訂單系統(tǒng)還支持訂單列表查詢,如下圖:

可以看到,用戶可以向外賣訂單系統(tǒng),發(fā)起一個查詢訂單列表的請求,請求同樣先轉(zhuǎn)發(fā)到Controller組件上,因為是查詢訂單列表的信息,所以我們只需要傳遞查詢的參數(shù)即可。

然后,Controller組件會把請求參數(shù),通過Service組件傳到Repository組件上,然后Repository組件可以調(diào)用Mapper組件的接口,再到數(shù)據(jù)庫中查詢用戶的所有訂單信息,查詢結(jié)果最后會形成一個訂單列表,最后一步步返回給用戶。

最終,用戶就可以從訂單列表中,看到自己下過的所有訂單信息了。

用戶查看訂單詳情流程

如果用戶還想要看下某個訂單里面的詳細信息,此時業(yè)務(wù)流程圖如下所示:

可以看到,查詢訂單明細請求會先轉(zhuǎn)發(fā)到Controller組件上,然后Controller組件把請求交給Service組件處理。

隨后,Service組件攜帶著訂單號,將查詢訂單明細的請求交給Repository組件來查詢,Repository組件根據(jù)訂單號調(diào)用Mapper組件的接口,接口會到數(shù)據(jù)庫中查詢訂單及訂單明細的信息,最后將查詢出來的訂單明細信息返回給用戶。

用戶取消訂單流程

另外,用戶下單之后也是支持取消訂單的,當用戶要取消一個訂單時,也會發(fā)送一個取消訂單的請求,如下圖:

如所有請求一樣,取消訂單的請求首先發(fā)送給Controller組件,Controller組件會將請求交給Service組件處理,Service組件會把需要取消訂單的訂單號發(fā)送給Repository組件,Repository組件拿著訂單號調(diào)用Mapper組件中的接口,更新訂單將訂單取消掉。

現(xiàn)在,外賣訂單系統(tǒng)中,C端也就是用戶端的一些操作我們已經(jīng)了解了,而B端也就是商家的功能,和用戶端的功能是比較類似的。

商家也會查看訂單列表以及訂單的明細信息,而且,當用戶下單之后,商家可以選擇接單或者拒接,一旦商家選擇接單,那么訂單狀態(tài)就會變?yōu)椤耙呀訂巍保@些功能在我們的外賣訂單系統(tǒng)中都是支持的。

結(jié)束語

最后,在這個wiki中不僅有一堆的流程圖,還有訂單系統(tǒng)代碼倉庫的Git地址,然后你將代碼拉到本地,接著,你一邊看著這些wiki中的業(yè)務(wù)流程圖,一邊慢慢開始熟悉起來了代碼......


網(wǎng)頁標題:分庫分表實戰(zhàn)之訂單業(yè)務(wù)完整梳理
當前URL:http://www.dlmjj.cn/article/cdjihpe.html