999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

鄉(xiāng)村振興助農(nóng)直銷超市平臺(tái)訂單支付的設(shè)計(jì)研究

2022-05-30 10:48:04劉佳龍王卓胡志慧
客聯(lián) 2022年7期

劉佳龍 王卓 胡志慧

摘 要:鄉(xiāng)村振興助農(nóng)直銷超市通過采集鄉(xiāng)村特色農(nóng)產(chǎn)品的相關(guān)信息,提供面向消費(fèi)者的直銷平臺(tái),為鄉(xiāng)村經(jīng)濟(jì)注入新動(dòng)力。系統(tǒng)基于Spring Boot開發(fā),采用MySQL開源數(shù)據(jù)庫進(jìn)行數(shù)據(jù)的存儲(chǔ),訂單支付通過接入微信支付實(shí)現(xiàn)。微信支付設(shè)計(jì)利用分布式鎖來進(jìn)行并發(fā)的控制,保證系統(tǒng)的付款安全。

關(guān)鍵詞:直銷平臺(tái);Spring Boot;微信支付

一、引言

伴隨互聯(lián)網(wǎng)的高速發(fā)展,越來越多的內(nèi)容以全新的方式呈現(xiàn)在人們面前。以農(nóng)業(yè)為特色的電商平臺(tái),將發(fā)揮互聯(lián)網(wǎng)科技的優(yōu)勢,讓農(nóng)民告別由中間商統(tǒng)一收購的傳統(tǒng)銷售模式,迎來了面向消費(fèi)者的直銷模式[1]。此模式既可助力鄉(xiāng)村經(jīng)濟(jì)的發(fā)展,同時(shí)又解決了以往農(nóng)民發(fā)愁的滯銷或壓價(jià)問題。鄉(xiāng)村振興助農(nóng)直銷超市平臺(tái)設(shè)計(jì)采用前后端分離的思想,后端服務(wù)架構(gòu)模塊化,不同層面做出相應(yīng)的功能,采用接口方式銜接所有模塊,前后端交互通過HTTP協(xié)議進(jìn)行交互,前端結(jié)合VUE框架快速構(gòu)建交互接口,規(guī)范統(tǒng)一,后端只需要滿足基本的數(shù)據(jù)結(jié)構(gòu)即可。既解決系統(tǒng)的穩(wěn)定性,也提高了用戶的易用性。

二、平臺(tái)目標(biāo)與內(nèi)容

主要對(duì)線上平臺(tái)的設(shè)計(jì)做出詳細(xì)說明,使用Web技術(shù)做到商品的信息展示交易。同時(shí)在技術(shù)上,將會(huì)結(jié)合網(wǎng)絡(luò),數(shù)據(jù)庫等技術(shù),同時(shí)使用Spring Boot框架構(gòu)建項(xiàng)目。項(xiàng)目采用前后端分離開發(fā)模式,前端會(huì)使用VUE框架來渲染數(shù)據(jù),同時(shí)結(jié)合第三方組件進(jìn)行通信等行為。同時(shí)采用“JSON”格式來進(jìn)行前后端的交互[2]。所以系統(tǒng)主要有這幾個(gè)目標(biāo):

結(jié)合互聯(lián)網(wǎng)流行的技術(shù)來處理相應(yīng)的問題,比如采用Redis作為分布式鎖,解決微服務(wù)集群的并發(fā)問題。同時(shí)整合這些中間件來融入系統(tǒng),更為便捷的搭建整個(gè)系統(tǒng)。

對(duì)用戶的需求分析,主要是功能性的研究設(shè)計(jì)與實(shí)現(xiàn),主要設(shè)計(jì)商品的展示、全局的搜索、分頁展示、輪播圖效果展示、訂單管理、購物車管理、用戶信息等等功能模塊。最后將所有的功能模塊整合形成一個(gè)完整的閉環(huán),實(shí)現(xiàn)整個(gè)系統(tǒng)的電商平臺(tái)。

對(duì)每個(gè)功能點(diǎn)的測試[3],功能性的業(yè)務(wù)測試,完整的流程的處理。非功能性的用戶交互邏輯行為體驗(yàn)測試,做出最佳的調(diào)整。

三、訂單支付功能設(shè)計(jì)

訂單付款是一個(gè)核心的業(yè)務(wù),涉及到微信支付,同時(shí)由于開發(fā)采用局域網(wǎng),所以還會(huì)涉及到內(nèi)網(wǎng)穿透。訂單作為用戶交易的核心,為了保證安全和可靠,也做了一些業(yè)務(wù)上的邏輯梳理,盡可能的保障交易的安全。

(一)業(yè)務(wù)流程

用戶首先是通過購物車選中相應(yīng)的商品,所以依然涉及到身份的校驗(yàn)。對(duì)于選中的商品點(diǎn)擊結(jié)算即可進(jìn)入訂單頁面,這個(gè)時(shí)候的訂單頁面是需要調(diào)整信息的,當(dāng)然也可以不進(jìn)行調(diào)整,直接采用默認(rèn)的數(shù)據(jù)即可。準(zhǔn)備數(shù)據(jù)進(jìn)行完成之后才進(jìn)行付款,這里付款可能涉及到的操作很多。第一,付款成功且收到微信的通知,這是正常的付款流程,直接改變訂單的狀態(tài)。第二,付款成功但沒有收到微信通知,這可能是由于網(wǎng)絡(luò)的擁塞造成,這個(gè)時(shí)候由于后端設(shè)置了自檢,會(huì)不斷的查詢數(shù)據(jù)庫超過30分鐘的訂單,所以當(dāng)超時(shí)時(shí)候不能直接取消訂單,而是需要再次向微信發(fā)送確認(rèn)訂單是否支付,如果沒有支付則取消,支付了就改變訂單狀態(tài)為已支付。第三,未支付,對(duì)于直接沒有付款的訂單,依然會(huì)向微信確認(rèn),再取消相應(yīng)的訂單。流程圖如1所示。

(二)類結(jié)構(gòu)設(shè)計(jì)

這里提供了兩個(gè)接口,一個(gè)是OrderController,這個(gè)對(duì)外提供的接口是交給前端調(diào)用的,后端接收到相應(yīng)的訂單數(shù)據(jù)進(jìn)行業(yè)務(wù)上的處理,而PayController是被微信調(diào)用的,微信成功收到付款就會(huì)回調(diào)這個(gè)接口,同時(shí)由于需要接入微信支付,所以這里依賴了微信的一些接口,同時(shí)需要自己去實(shí)現(xiàn)配置這個(gè)接口,體現(xiàn)在類圖中的WXPayConfig,同時(shí)相關(guān)的配置交給實(shí)現(xiàn)類WxPayConfig。這個(gè)類只簡單的返回了一些微信需要的認(rèn)證數(shù)據(jù)。最后在業(yè)務(wù)處理方面都交給了OrderService這個(gè)接口規(guī)范并由OrderServiceImpl實(shí)現(xiàn)具體業(yè)務(wù)流程。由于該業(yè)務(wù)涉及的表結(jié)構(gòu)較多,所以這里聚合了四個(gè)數(shù)據(jù)庫操作的Mapper接口。

最后,需要指出一點(diǎn),這里的業(yè)務(wù)中會(huì)有微信回調(diào)的接口,涉及到公網(wǎng)的交互,我們知道,我們自己的電腦接入的都是局域網(wǎng),雖然可以訪問公網(wǎng),但是公網(wǎng)是無法訪問我們的IP的,所以這里需要做一個(gè)內(nèi)網(wǎng)穿透,穿透的方式有很多,這里就不再介紹。如果將該服務(wù)部署在公有云服務(wù)器,則直接配置云服務(wù)器的IP即可。相關(guān)偽碼如下:

(1)分布式鎖偽代碼如下:

HashMap map = null;

/**

* 進(jìn)行加鎖,對(duì)每一件商品進(jìn)行校驗(yàn).

* 使用雙重校驗(yàn),如果庫存不足不需要加鎖直接返回,加鎖之后同樣需要再次* 校驗(yàn)。

*/

0 校驗(yàn)庫存

1 加鎖

try{

if(是否上鎖){

2 校驗(yàn)庫存

if(庫存充){

3 保存訂單

4 保存快照

5 修改庫存

6 刪除購物

...

}

}

}catch(Exception e){

}finally{

7 釋放鎖

}

return map;

(2)超時(shí)取消偽代碼:

//定時(shí)任務(wù),每隔5秒執(zhí)行一次

public void checkAndCloseOrder() throws Exception {

//1. 向數(shù)據(jù)庫查詢超時(shí)訂單

//2. 向微信平臺(tái)發(fā)送訂單信息,查看是否已支付

if(是否已經(jīng)支付){

//2.1支付成功,說明是網(wǎng)絡(luò)原因,則正常修改訂單狀態(tài)

}else if (是否沒有支付){

//2.2. 如果確實(shí)是沒有支付,就發(fā)送給微信關(guān)閉這個(gè)支付鏈接

//2.3 修改orders表中該訂單信息(超時(shí)未支付)

}

(三)效果界面

該效果由兩個(gè)部分組成,一個(gè)是訂單頁面,如圖2所示。另一個(gè)是支付頁面,如圖3所示。至于支付成功的頁面只是在支付頁面上多了支付成功文本提示,所以這里不再重復(fù)給出。

四、總結(jié)

隨著互聯(lián)網(wǎng)技術(shù)發(fā)展,人們越來越關(guān)注消費(fèi)體驗(yàn),整個(gè)系統(tǒng)依然還有很大的調(diào)整空間。例如系統(tǒng)目前只是基于Maven進(jìn)行了簡單的劃分,沒有使用微服務(wù)的架構(gòu)。同時(shí)訂單支付還只設(shè)計(jì)接入了微信支付,后面還可以考慮接入支付寶等平臺(tái)。未來還有很多可以進(jìn)一步優(yōu)化的地方,同時(shí)技術(shù)在飛速的發(fā)展,這也促使我們需要不斷地學(xué)習(xí)來跟上發(fā)展的腳步。

參考文獻(xiàn):

[1]王敏杰,馬云飛,蔡淑敏,于淼.2022新零售風(fēng)口[N].國際金融報(bào),2022-01-24(005).

[2]溫立輝.AJAX異步交互技術(shù)淺析[J].山東工業(yè)技術(shù),2017(04):213.

[3]張輝.Web系統(tǒng)的性能測試技術(shù)研究[J].計(jì)算機(jī)時(shí)代,2021(10):28-31.

主站蜘蛛池模板: 日本人又色又爽的视频| 色婷婷综合在线| 青青草原国产免费av观看| 无遮挡国产高潮视频免费观看| 国产欧美精品专区一区二区| 亚洲国产成人精品一二区| 国产午夜福利亚洲第一| 爆乳熟妇一区二区三区| 国产精品福利导航| 亚洲综合片| 国产真实乱子伦精品视手机观看| 亚洲av日韩综合一区尤物| 婷婷丁香在线观看| 精品久久国产综合精麻豆| 全色黄大色大片免费久久老太| 国产精品嫩草影院av| 亚洲成年网站在线观看| 亚洲一欧洲中文字幕在线| 九九热精品视频在线| 亚洲成A人V欧美综合| 99久久精品美女高潮喷水| 亚洲欧美日韩另类在线一| 国产成人久视频免费| 精品视频一区二区三区在线播| 亚洲精品无码高潮喷水A| 爱做久久久久久| 97久久免费视频| 久久免费视频播放| 久久综合五月| 久久免费视频6| 国产农村妇女精品一二区| 国产91久久久久久| 国内精品九九久久久精品| 天天操天天噜| 成人精品区| 一区二区三区国产| 国产91av在线| a级毛片免费在线观看| 久996视频精品免费观看| 男人天堂亚洲天堂| 国产成人高精品免费视频| 亚洲熟妇AV日韩熟妇在线| 亚洲第一视频网| 亚洲成a人片77777在线播放| 国产精品 欧美激情 在线播放| 白浆免费视频国产精品视频| 成人免费视频一区二区三区 | 网友自拍视频精品区| 亚洲国产亚综合在线区| 五月婷婷欧美| 乱码国产乱码精品精在线播放 | 熟妇无码人妻| 精品无码专区亚洲| 在线观看国产精品一区| 一区二区自拍| 亚洲最大情网站在线观看| 日韩无码视频播放| 精品国产污污免费网站| 99这里只有精品免费视频| 国产69精品久久久久妇女| 青草精品视频| 免费视频在线2021入口| 狼友视频一区二区三区| 日韩在线第三页| 国产美女主播一级成人毛片| 92精品国产自产在线观看| 91在线播放国产| 国产一级小视频| 99久久精品免费看国产电影| 久久这里只有精品66| 亚洲午夜综合网| 性视频久久| 无码久看视频| 欧美成人一级| 国产精品欧美日本韩免费一区二区三区不卡 | 无码'专区第一页| 国产欧美日韩综合一区在线播放| 欧美日韩一区二区三区四区在线观看 | 青青草国产精品久久久久| 美女无遮挡被啪啪到高潮免费| 亚洲天堂自拍| 日韩国产黄色网站|