本申請(qǐng)涉及貨款信息處理
技術(shù)領(lǐng)域:
,特別是涉及貨款信息處理方法及裝置。
背景技術(shù):
:在電子商務(wù)交易平臺(tái)的一些應(yīng)用場(chǎng)景下,例如“聚劃算”等團(tuán)購(gòu)性質(zhì)的活動(dòng)等,經(jīng)常需要參加活動(dòng)的商家向平臺(tái)繳納保證金。這是因?yàn)椋趫F(tuán)購(gòu)等性質(zhì)的活動(dòng)中,商品的價(jià)格往往會(huì)低于常規(guī)價(jià)格,有些商家為了追求高收益、高回報(bào),可能會(huì)將一些質(zhì)量較差商品在活動(dòng)中進(jìn)行銷(xiāo)售。為了避免這種情況的發(fā)生,平臺(tái)可以要求參加活動(dòng)的商家繳納保證金,后續(xù)一旦發(fā)生產(chǎn)品質(zhì)量問(wèn)題導(dǎo)致的買(mǎi)家用戶投訴等情況,可以利用這種保證金對(duì)買(mǎi)家用戶進(jìn)行賠付??梢?jiàn),保證金相當(dāng)于是商家對(duì)自己售賣(mài)的商品對(duì)象在品質(zhì)等方面提供的一種保證,也是對(duì)商家行為的一種約束?,F(xiàn)有技術(shù)中,商家支付保證金的方式有多種,例如,其中一種方式是商家直接支付保證金,例如,可以在商家賬戶內(nèi)一次性凍結(jié)一定的金額(例如,50萬(wàn)等),凍結(jié)期可以比較長(zhǎng)(例如,一年),這樣,凍結(jié)期內(nèi)參加活動(dòng)都可以不再繳納額外的保證金。這種方式比較適用于頻繁參加活動(dòng),并且資金壓力不大的商家。另一種繳納保證金的方式是商家可以通過(guò)保險(xiǎn)公司投保,這樣,商家只需要需要交納保費(fèi),具體的保證金將由保險(xiǎn)公司提供。這種方式下,商家只需要付出小部分的保費(fèi),即可換來(lái)資金的快速回籠,因此,比較適合于賣(mài)家資金壓力比較大,急需資金回籠的商家。但是,無(wú)論是商家直接支付保證金,還是通過(guò)保險(xiǎn)公司購(gòu)買(mǎi)“保證金險(xiǎn)”,都對(duì)商家參與活動(dòng)提出了一定的門(mén)檻要求,使得活動(dòng)的參與度受到影響。技術(shù)實(shí)現(xiàn)要素:本申請(qǐng)?zhí)峁┝素浛钚畔⑻幚矸椒把b置,能夠通過(guò)貨款凍結(jié)的方式收取第一用戶的保證金,提高活動(dòng)參與度。本申請(qǐng)?zhí)峁┝巳缦路桨福阂环N貨款信息處理方法,包括:為參加目標(biāo)活動(dòng)但未預(yù)先支付保證金的第一用戶生成保證金訂單;接收到針對(duì)目標(biāo)交易訂單執(zhí)行的付款通知后,確定該目標(biāo)交易訂單對(duì)應(yīng)的第一用戶,并確定與該第一用戶關(guān)聯(lián)的保證金訂單;所述目標(biāo)交易訂單為所述目標(biāo)活動(dòng)中生成的交易訂單;確定針對(duì)該保證金訂單的累計(jì)凍結(jié)金額總數(shù)是否已達(dá)到預(yù)置的額度,如果未達(dá)到所述預(yù)置額度,則觸發(fā)對(duì)該交易訂單關(guān)聯(lián)貨款的凍結(jié)操作。一種貨款信息處理裝置,包括:保證金訂單生成單元,用于為參加目標(biāo)活動(dòng)但未預(yù)先支付保證金的第一用戶生成保證金訂單;信息確定單元,用于接收到針對(duì)目標(biāo)交易訂單執(zhí)行的付款通知后,確定該目標(biāo)交易訂單對(duì)應(yīng)的第一用戶,并確定與該第一用戶關(guān)聯(lián)的保證金訂單;所述目標(biāo)交易訂單為所述目標(biāo)活動(dòng)中生成的交易訂單;凍結(jié)觸發(fā)單元,用于確定針對(duì)該保證金訂單的累計(jì)凍結(jié)金額總數(shù)是否已達(dá)到預(yù)置的額度,如果未達(dá)到所述預(yù)置額度,則觸發(fā)對(duì)該交易訂單關(guān)聯(lián)貨款的凍結(jié)操作。根據(jù)本申請(qǐng)?zhí)峁┑木唧w實(shí)施例,本申請(qǐng)公開(kāi)了以下技術(shù)效果:通過(guò)本申請(qǐng)實(shí)施例,可以通過(guò)貨款凍結(jié)的方式來(lái)收取第一用戶的保證金,這樣,第一用戶不需要提前支付任何形式的保證金,就可以直接參加活動(dòng),使得第一用戶參加活動(dòng)的門(mén)檻降低,有利于提高活動(dòng)的參與度,也提高系統(tǒng)的服務(wù)質(zhì)量。另外,對(duì)于需要通過(guò)多個(gè)應(yīng)用共同完成該服務(wù)的分布式環(huán)境,還可以通過(guò)基于消息通信的方式來(lái)實(shí)現(xiàn)數(shù)據(jù)的原子性、一致性,并且可以保證系統(tǒng)的吞吐量,實(shí)現(xiàn)較高的系統(tǒng)性能。當(dāng)然,實(shí)施本申請(qǐng)的任一產(chǎn)品并不一定需要同時(shí)達(dá)到以上所述的所有優(yōu)點(diǎn)。附圖說(shuō)明為了更清楚地說(shuō)明本申請(qǐng)實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對(duì)實(shí)施例中所需要使用的附圖作簡(jiǎn)單地介紹,顯而易見(jiàn)地,下面描述中的附圖僅僅是本申請(qǐng)的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來(lái)講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)這些附圖獲得其他的附圖。圖1是本申請(qǐng)實(shí)施例提供的方法的流程圖;圖2是本申請(qǐng)實(shí)施例提供的另一方法的流程圖;圖3是本申請(qǐng)實(shí)施例提供的裝置的示意圖。具體實(shí)施方式下面將結(jié)合本申請(qǐng)實(shí)施例中的附圖,對(duì)本申請(qǐng)實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本申請(qǐng)一部分實(shí)施例,而不是全部的實(shí)施例?;诒旧暾?qǐng)中的實(shí)施例,本領(lǐng)域普通技術(shù)人員所獲得的所有其他實(shí)施例,都屬于本申請(qǐng)保護(hù)的范圍。在本申請(qǐng)實(shí)施例中,考慮到第二用戶(例如買(mǎi)家用戶等)向第一用戶(例如商家、賣(mài)家用戶等)付款通常也是通過(guò)交易平臺(tái)的支付系統(tǒng)執(zhí)行,因此,本申請(qǐng)實(shí)施例提供了一種新的繳納保證金的方式,就是貨款凍結(jié),在這種方式下,商家前期不需要繳納保證金,而是在具體產(chǎn)生交易后,第二用戶支付的貨款并不是直接轉(zhuǎn)給第一用戶賬戶,而是進(jìn)行凍結(jié),直到凍結(jié)的總金額達(dá)到保證金額度為止。通過(guò)這種方式,可以使得第一用戶參加活動(dòng)的門(mén)檻進(jìn)一步降低,但由于保證金以其他形式進(jìn)行凍結(jié),因此,同樣可以起到監(jiān)督第一用戶商品質(zhì)量的作用。下面對(duì)具體的實(shí)現(xiàn)方式進(jìn)行詳細(xì)介紹。參見(jiàn)圖1,本申請(qǐng)實(shí)施例首先提供了一種貨款信息處理方法,包括:S101:為參加目標(biāo)活動(dòng)但未預(yù)先支付保證金的第一用戶生成保證金訂單;其中,所謂的目標(biāo)活動(dòng)可以是聚劃算、天貓、淘寶等電商網(wǎng)站上組織的活動(dòng)。對(duì)于已經(jīng)預(yù)先支付保證金的第一用戶,可以通過(guò)添加標(biāo)識(shí)等方式加以區(qū)分,這樣,對(duì)于其他申請(qǐng)參加活動(dòng),但是不帶有該標(biāo)識(shí)的第一用戶,就可以分別為這些第一用戶生成保證金訂單。其中,每個(gè)保證金訂單可以具有自己的主鍵ID,并且與第一用戶ID等標(biāo)識(shí)相對(duì)應(yīng)。另外,每一個(gè)保證金訂單中還可以記錄有對(duì)應(yīng)的額度信息以及累計(jì)凍結(jié)金額信息,其中,額度信息用于表明一共需要凍結(jié)的金額總數(shù),累計(jì)凍結(jié)金額信息用于表明已經(jīng)從交易訂單的貨款中凍結(jié)的金額,在初始狀態(tài)下,該累計(jì)凍結(jié)金額為零。也就是說(shuō),在具體實(shí)現(xiàn)時(shí),可以通過(guò)以下表1的形式保存各個(gè)保證金訂單的信息:表1保證金訂單ID第一用戶ID保證金額度(元)累計(jì)凍結(jié)金額(元)20000110000110萬(wàn)020000210000220萬(wàn)0……………………在生成了保證金訂單的情況下,第一用戶就可以發(fā)布其參加活動(dòng)的具體的商品對(duì)象,并且可以設(shè)置在活動(dòng)中的價(jià)格、優(yōu)惠方式等信息,相應(yīng)的,在活動(dòng)開(kāi)始后,第二用戶就可以以對(duì)應(yīng)的價(jià)格進(jìn)行商品對(duì)象的購(gòu)買(mǎi)操作,并且可以享受到相應(yīng)的優(yōu)惠。S102:接收到針對(duì)目標(biāo)交易訂單執(zhí)行的付款通知后,確定該目標(biāo)交易訂單對(duì)應(yīng)的第一用戶,并確定與該第一用戶關(guān)聯(lián)的保證金訂單;所述目標(biāo)交易訂單為所述目標(biāo)活動(dòng)中生成的交易訂單;在活動(dòng)開(kāi)始后,第二用戶就可以對(duì)第一用戶發(fā)布的商品對(duì)象執(zhí)行購(gòu)買(mǎi)操作,相應(yīng)的,服務(wù)器可以為針對(duì)該購(gòu)買(mǎi)操作生成交易訂單。之后,第二用戶還可以執(zhí)行為交易訂單付款的操作,付款成功后,就可以進(jìn)入后續(xù)的發(fā)貨流程等。需要說(shuō)明的是,在不同的交易平臺(tái)中,第二用戶付款后資金的流向可能會(huì)有所不同,例如,在淘寶體系下,第二用戶在下單并付款后,相應(yīng)的貨款會(huì)暫 時(shí)保持在支付寶的公共賬戶中,待第二用戶確認(rèn)收貨之后,再?gòu)闹Ц秾氋~戶轉(zhuǎn)賬給第一用戶。其他的交易平臺(tái)中,第二用戶下單并付款后,相應(yīng)的貨款可能會(huì)直接進(jìn)入到第一用戶賬戶,等等。其中,對(duì)于第一種情況,該步驟S102中的付款通知可以是在第二用戶執(zhí)行確認(rèn)收貨操作后,或者系統(tǒng)默認(rèn)的收貨時(shí)間到期后,需要從支付寶公共賬戶向第一用戶賬戶轉(zhuǎn)賬的時(shí)刻。而對(duì)于第二種情況,該付款通知可以就是在第二用戶下單并付款后接收到的。另外需要說(shuō)明的是,在具體應(yīng)用中,同一第一用戶可能有部分商品對(duì)象在參加某活動(dòng),其他未參加,并且,參加活動(dòng)的商品對(duì)象也可能能夠通過(guò)其他途徑進(jìn)行購(gòu)買(mǎi)等等,而通過(guò)不同途徑進(jìn)行商品對(duì)象購(gòu)買(mǎi)時(shí),在對(duì)應(yīng)的交易訂單中可以保存對(duì)應(yīng)的銷(xiāo)售途徑的標(biāo)識(shí),這樣,服務(wù)器可以通過(guò)這種標(biāo)識(shí)區(qū)分是否為某目標(biāo)活動(dòng)中產(chǎn)生的交易訂單。對(duì)于屬于某目標(biāo)活動(dòng)中產(chǎn)生的交易訂單,則在本申請(qǐng)實(shí)施例中,并不是直接將貨款轉(zhuǎn)到第一用戶賬戶中,而是在確定出對(duì)應(yīng)的第一用戶后,首先確定出該第一用戶關(guān)聯(lián)的保證金訂單。具體的,如表1所示,由于預(yù)先保存了第一用戶ID與保證金訂單ID之間的關(guān)聯(lián)關(guān)系,因此,在確定出第一用戶之后,就可以根據(jù)第一用戶ID確定出管理的保證金訂單ID。S103:確定針對(duì)該保證金訂單的累計(jì)凍結(jié)金額總數(shù)是否已達(dá)到預(yù)置的額度,如果未達(dá)到所述預(yù)置額度,則觸發(fā)對(duì)該交易訂單關(guān)聯(lián)貨款的凍結(jié)操作。在確定出關(guān)聯(lián)的保證金訂單后,可以確定針對(duì)該保證金訂單的累計(jì)凍結(jié)金額總數(shù)是否已達(dá)到預(yù)置的額度,如果還沒(méi)有達(dá)到該額度,就可以通知支付系統(tǒng)對(duì)該交易訂單關(guān)聯(lián)的貨款進(jìn)行凍結(jié)操作。也就是說(shuō),第一用戶的保證金是通過(guò)第二用戶支付的貨款累加得到的,在累計(jì)到預(yù)置的額度之后,就可以不必再進(jìn)行凍結(jié),直接將第二用戶支付的貨款轉(zhuǎn)入第一用戶賬戶即可??梢?jiàn),通過(guò)這種方式,第一用戶不需要在參加活動(dòng)之前提前支付保證金,而是在活動(dòng)開(kāi)始之后,從第二用戶支付的貨款中進(jìn)行凍結(jié),這樣,可以使得第一用戶更方便地參加到活動(dòng)中來(lái),并且,保證金仍然存在,只是以其他形式進(jìn)行凍結(jié),因此,同樣可以起到監(jiān)督第一用戶商品質(zhì)量的作用。當(dāng)然,需要說(shuō)明的是,在實(shí)際應(yīng)用中,第二用戶針對(duì)交易訂單執(zhí)行的付款操作可能會(huì)存在并發(fā)性,尤其是在一些促銷(xiāo)等活動(dòng)期間,交易訂單數(shù)量很多,這種并發(fā)的情況更是常見(jiàn)。例如,在某時(shí)刻,某第二用戶甲針對(duì)其交易訂單執(zhí)行了確認(rèn)收貨操作,服務(wù)器在收到該通知后,可以開(kāi)始執(zhí)行具體的凍結(jié)額度判斷、資金凍結(jié)等操作。但是,在該針對(duì)第二用戶甲的凍結(jié)操作執(zhí)行完成之前,可能第二用戶乙也對(duì)其交易訂單執(zhí)行了確認(rèn)收貨操作,并且這兩個(gè)交易訂單關(guān)聯(lián)了同一第一用戶,進(jìn)而也關(guān)聯(lián)了同一保證金訂單,這就可能存在以下情況:針對(duì)甲的確認(rèn)收貨操作進(jìn)行凍結(jié)金額判斷時(shí),可能累計(jì)凍結(jié)金額總數(shù)尚未達(dá)到預(yù)置的額度,但在加上該第二用戶甲支付的貨款后,累計(jì)凍結(jié)金額總數(shù)就達(dá)到了預(yù)置的額度,也就是說(shuō),第二用戶乙在后支付的貨款不必再執(zhí)行凍結(jié)操作。但是,如果針對(duì)甲的貨款凍結(jié)操作尚未執(zhí)行完成,則甲的貨款尚未累加到累計(jì)凍結(jié)金額,此時(shí),如果直接進(jìn)行判斷,則也會(huì)發(fā)現(xiàn)累計(jì)凍結(jié)金額總數(shù)尚未達(dá)到預(yù)置的額度,于是將乙支付的貨款也進(jìn)行了凍結(jié),這顯然是錯(cuò)誤的。為了避免出現(xiàn)這種由于并發(fā)導(dǎo)致的出錯(cuò)現(xiàn)象,可以通過(guò)以下方式進(jìn)行:可以為保證金訂單設(shè)置“同步鎖”,每次收到一個(gè)針對(duì)交易訂單的付款通知,并確定出與該第一用戶關(guān)聯(lián)的保證金訂單后,可以首先判斷該保證金訂單是否處于鎖定狀態(tài),如果保證金訂單處于未被鎖定的狀態(tài),則先鎖定該保證金訂單,之后再執(zhí)行后續(xù)的額度判斷、貨款鎖定等操作,并在操作完成后,再解除對(duì)所述保證金訂單的鎖定。如果發(fā)現(xiàn)保證金訂單處于鎖定狀態(tài),則可以先等待,待保證金訂單解除鎖定后再執(zhí)行具體的額度判斷、貨款鎖定等操作。另外,在具體實(shí)現(xiàn)時(shí),由于是在交易的過(guò)程中進(jìn)行資金的凍結(jié),因此,服務(wù)器需要在處理邏輯上進(jìn)行配合。其中,在進(jìn)行資金凍結(jié)的過(guò)程中,會(huì)涉及到交易流程、支付流程等方面的改進(jìn),而在實(shí)際的應(yīng)用中,交易系統(tǒng)與支付系統(tǒng)可能是相互獨(dú)立的系統(tǒng),甚至支付系統(tǒng)可能還分為代理系統(tǒng)(例如,匯金)以及支付操作執(zhí)行系統(tǒng)(例如,支付寶),等等,因此,可能會(huì)需要多個(gè)系統(tǒng)之間的相互配合才能支持該服務(wù)。這種通過(guò)多個(gè)系統(tǒng)共同完成一項(xiàng)服務(wù)的形式,就形成了一種分布式系統(tǒng)。在這種分布式系統(tǒng)中進(jìn)行數(shù)據(jù)處理時(shí),通常既要保證數(shù)據(jù)的原子性以及一致性,又要保證有較高的性能,例如,需要具有較高的吞吐能力,能及時(shí)的處理大量的交易訂單等。在交易系統(tǒng)與支付系統(tǒng)獨(dú)立的情況下,步驟S103中的觸發(fā)對(duì)該交易訂單關(guān)聯(lián)貨款的凍結(jié)操作,具體可以是通知支付系統(tǒng)對(duì)該交易訂單關(guān)聯(lián)的貨款進(jìn)行凍結(jié)操作。具體實(shí)現(xiàn)時(shí),可以使用分布式事務(wù)來(lái)保證數(shù)據(jù)原子性以及一致性,但是,分布式事務(wù)系統(tǒng)涉及多個(gè)節(jié)點(diǎn)的通信和資源鎖定,吞吐量低,性能差,這對(duì)于大數(shù)據(jù)業(yè)務(wù)處理系統(tǒng)是致命的。例如,在交易系統(tǒng)產(chǎn)生了一筆交易訂單后,為了執(zhí)行貨款凍結(jié)操作,交易系統(tǒng)需要?jiǎng)?chuàng)建一個(gè)事務(wù),然后調(diào)用相關(guān)的支付系統(tǒng)對(duì)該事務(wù)進(jìn)行處理,在支付系統(tǒng)處理事務(wù)的過(guò)程中,交易系統(tǒng)只能等待,直到返回成功通知后,才能執(zhí)行其他事務(wù)。而一旦支付系統(tǒng)返回操作失敗,則需要將與該事務(wù)相關(guān)的數(shù)據(jù)刪除,重新創(chuàng)建事務(wù),并重新調(diào)用支付系統(tǒng)進(jìn)行處理。因此,在本申請(qǐng)實(shí)施例中,可以采用notify消息通信,來(lái)避免各業(yè)務(wù)耦合,另外,還可以通過(guò)消息的重發(fā)機(jī)制保證數(shù)據(jù)的最終一致性,并利用業(yè)務(wù)唯一性id解決消息重復(fù)問(wèn)題,使用樂(lè)觀鎖解決讀寫(xiě)一致性,等等。下面對(duì)此進(jìn)行介紹。具體的,參見(jiàn)圖2,在分布式系統(tǒng)的情況下,可以通過(guò)以下步驟進(jìn)行貨款信息處理:S201:為參加目標(biāo)活動(dòng)但未預(yù)先支付保證金的第一用戶生成保證金訂單;S202:接收到針對(duì)目標(biāo)交易訂單執(zhí)行的付款通知后,確定該目標(biāo)交易訂單對(duì)應(yīng)的第一用戶,并確定與該第一用戶關(guān)聯(lián)的保證金訂單;所述目標(biāo)交易訂單為所述目標(biāo)活動(dòng)中生成的交易訂單;步驟S201-S202與圖1中的S101-S102可以是相同的,這里不再贅述。S203:判斷該保證金訂單是否處于鎖定狀態(tài),如果保證金訂單處于未被鎖定的狀態(tài),則鎖定該保證金訂單;S204:確定針對(duì)該保證金訂單的累計(jì)凍結(jié)金額總數(shù)是否已達(dá)到預(yù)置的額度,如果未達(dá)到所述預(yù)置額度,則新增凍結(jié)明細(xì)記錄,所述記錄中的內(nèi)容包括交易訂單標(biāo)識(shí)、保證金訂單標(biāo)識(shí)以及待凍結(jié)的金額;S205:通過(guò)調(diào)用支付系統(tǒng)的預(yù)置接口,向支付系統(tǒng)發(fā)送凍結(jié)處理請(qǐng)求消息, 以便所述支付系統(tǒng)將對(duì)應(yīng)金額的貨款執(zhí)行凍結(jié)操作,所述凍結(jié)處理請(qǐng)求消息中攜帶有所述凍結(jié)明細(xì)記錄中的內(nèi)容。也就是說(shuō),在本申請(qǐng)實(shí)施例中,可以直接通過(guò)調(diào)用接口發(fā)送消息的方式,向支付系統(tǒng)發(fā)送凍結(jié)處理請(qǐng)求消息,這樣,支付系統(tǒng)就可以基于該消息執(zhí)行相應(yīng)的凍結(jié)操作,在支付系統(tǒng)執(zhí)行凍結(jié)操作的過(guò)程中,交易系統(tǒng)可以不必等待,繼續(xù)執(zhí)行其他操作即可。后續(xù)在支付系統(tǒng)操作完成后,可以向交易系統(tǒng)返回響應(yīng)消息,通過(guò)該響應(yīng)消息,將處理結(jié)果返回給交易系統(tǒng)。其中,支付系統(tǒng)的響應(yīng)結(jié)果可能有兩種,一種是操作成功的響應(yīng)消息,另一種是操作失敗的響應(yīng)消息,對(duì)于前一種,可以直接更新所述凍結(jié)明細(xì)記錄的狀態(tài),如果收到操作失敗的響應(yīng)消息,則只要通過(guò)重發(fā)所述凍結(jié)處理請(qǐng)求消息,來(lái)重新發(fā)起請(qǐng)求,直到接收到操作成功的響應(yīng)消息。也就是說(shuō),在這種基于notify消息通信的方式中,交易系統(tǒng)在向支付系統(tǒng)發(fā)送了凍結(jié)處理請(qǐng)求消息后,無(wú)需等待支付系統(tǒng),在支付系統(tǒng)返回響應(yīng)后,如果發(fā)現(xiàn)響應(yīng)失敗,只重新發(fā)送該消息即可,這樣,可以提高系統(tǒng)吞吐量。其中,如果支付系統(tǒng)分為代理系統(tǒng)以及支付操作執(zhí)行系統(tǒng),則交易系統(tǒng)可以首先調(diào)用代理系統(tǒng)的接口,由代理系統(tǒng)將凍結(jié)處理請(qǐng)求消息發(fā)送到支付操作執(zhí)行系統(tǒng),支付操作執(zhí)行系統(tǒng)執(zhí)行具體的貨款凍結(jié)操作。此時(shí),代理系統(tǒng)在接口調(diào)用后,可以向交易系統(tǒng)返回響應(yīng)消息,告知調(diào)用成功或者失敗,在支付操作執(zhí)行系統(tǒng)進(jìn)行具體的凍結(jié)操作后,也可以向交易系統(tǒng)返回響應(yīng)消息,告知操作成功或者操作失敗等。相應(yīng)的,對(duì)于凍結(jié)明細(xì)記錄而言,可以有三種狀態(tài),在凍結(jié)明細(xì)記錄生成之初,也即初始狀態(tài)下,可以為第一狀態(tài)(例如,失敗);在收到接口調(diào)用成功的響應(yīng)后,可以更新到第二狀態(tài)(例如,處理中),在收到凍結(jié)操作成功的響應(yīng)后,可以更新到第三狀態(tài)(例如,處理成功)。其中,如果代理系統(tǒng)返回的響應(yīng)消息顯示接口調(diào)用失敗,則可以通過(guò)重新調(diào)用代理系統(tǒng)的接口的方式,重新發(fā)送凍結(jié)處理請(qǐng)求消息,直到接收到接口調(diào)用成功響應(yīng)。另外,在代理系統(tǒng)向支付操作執(zhí)行系統(tǒng)發(fā)送了凍結(jié)處理請(qǐng)求消息后,該支付操作執(zhí)行系統(tǒng)執(zhí)行貨款凍結(jié)操作,并在貨款凍結(jié)操作成功后,向代理系統(tǒng)返回凍結(jié)成功響應(yīng),代理系統(tǒng)再向交易系統(tǒng)返回該凍結(jié)成功響應(yīng),如果 支付操作執(zhí)行系統(tǒng)執(zhí)行貨款凍結(jié)操作不成功,則代理系統(tǒng)同樣可以通過(guò)重新調(diào)用支付操作執(zhí)行系統(tǒng)的接口的方式,重新向其發(fā)送凍結(jié)處理請(qǐng)求消息,直到接收到所述支付操作執(zhí)行系統(tǒng)返回的凍結(jié)成功響應(yīng)消息。需要說(shuō)明的是,在更新所述凍結(jié)明細(xì)記錄的狀態(tài)時(shí)可以采用樂(lè)觀鎖機(jī)制,例如,在將凍結(jié)明細(xì)記錄更新為第二狀態(tài)時(shí),前提條件必須是,其凍結(jié)明細(xì)記錄的上一狀態(tài)為第一狀態(tài),也即,只有當(dāng)凍結(jié)明細(xì)記錄的上一狀態(tài)為第一狀態(tài)時(shí),才能將其更新為第二狀態(tài),只有當(dāng)凍結(jié)明細(xì)記錄的上一狀態(tài)為第二狀態(tài)時(shí),才能更新為第三狀態(tài),而不能在上一狀態(tài)為第一狀態(tài)時(shí),直接更新為第三狀態(tài)。這樣有利于保證數(shù)據(jù)的一致性。另外,在數(shù)據(jù)一致性問(wèn)題上,還可能存在以下情況:在本申請(qǐng)實(shí)施例中,如果交易系統(tǒng)收到代理系統(tǒng)返回的接口調(diào)用失敗的響應(yīng)消息,或者代理系統(tǒng)接收到支付操作執(zhí)行系統(tǒng)返回的凍結(jié)失敗的響應(yīng)消息,都可以通過(guò)重新調(diào)用接口的方式,重新發(fā)送凍結(jié)處理請(qǐng)求消息,但是,在實(shí)際應(yīng)用中,有可能是因?yàn)榫W(wǎng)絡(luò)延遲等現(xiàn)象導(dǎo)致接收方接收到的是調(diào)用失敗的響應(yīng)消息,但實(shí)際上響應(yīng)消息的發(fā)送方實(shí)際上已經(jīng)執(zhí)行了相關(guān)的操作。例如,代理系統(tǒng)在成功響應(yīng)了交易系統(tǒng)的接口調(diào)用請(qǐng)求后,正常返回了調(diào)用成功的響應(yīng),并且已經(jīng)向支付操作執(zhí)行系統(tǒng)發(fā)送凍結(jié)處理請(qǐng)求消息。但是,由于網(wǎng)絡(luò)延遲等因素,導(dǎo)致交易系統(tǒng)實(shí)際收到的響應(yīng)是接口調(diào)用失敗的響應(yīng)消息。此時(shí),如果直接重新向代理系統(tǒng)發(fā)送凍結(jié)處理請(qǐng)求消息,可能會(huì)導(dǎo)致代理系統(tǒng)重復(fù)執(zhí)行同一條消息。針對(duì)這種情況,在本申請(qǐng)實(shí)施例中,在凍結(jié)處理請(qǐng)求消息中還可以包括凍結(jié)明細(xì)記錄的記錄標(biāo)識(shí)(例如,凍結(jié)明細(xì)記錄的主鍵ID等),這樣,代理系統(tǒng)在接收到相應(yīng)的凍結(jié)處理請(qǐng)求消息時(shí),可以利用該凍結(jié)明細(xì)記錄的記錄標(biāo)識(shí),確定該條消息是否已經(jīng)處理過(guò),并將已經(jīng)處理過(guò)的消息忽略。最后,在凍結(jié)操作執(zhí)行成功后,還可以記錄此次凍結(jié)的貨款金額,以便更新所述累計(jì)凍結(jié)金額總數(shù)。這樣,隨著一次次的貨款凍結(jié)操作,可以逐漸增加對(duì)應(yīng)第一用戶的保證金金額,直到達(dá)到預(yù)置的金額為止。當(dāng)然,在活動(dòng)結(jié)束后,還可以將凍結(jié)的保證金進(jìn)行解凍,轉(zhuǎn)入到第一用戶的賬戶中??傊?,通過(guò)本申請(qǐng)實(shí)施例,可以通過(guò)貨款凍結(jié)的方式來(lái)收取第一用戶的保證金,這樣,第一用戶不需要提前支付任何形式的保證金,就可以直接參加活動(dòng),使得第一用戶參加活動(dòng)的門(mén)檻降低,有利于提高活動(dòng)的參與度,也提高系統(tǒng)的服務(wù)質(zhì)量。另外,對(duì)于需要通過(guò)多個(gè)應(yīng)用共同完成該服務(wù)的分布式環(huán)境,還可以通過(guò)基于消息通信的方式來(lái)實(shí)現(xiàn)數(shù)據(jù)的原子性、一致性,并且可以保證系統(tǒng)的吞吐量,實(shí)現(xiàn)較高的系統(tǒng)性能。與本申請(qǐng)實(shí)施例提供的貨款信息處理方法相對(duì)應(yīng),本申請(qǐng)實(shí)施例還提供了一種貨款信息處理裝置,參見(jiàn)圖3,該裝置具體可以包括:保證金訂單生成單元301,用于為參加目標(biāo)活動(dòng)但未預(yù)先支付保證金的第一用戶生成保證金訂單;信息確定單元302,用于接收到針對(duì)目標(biāo)交易訂單執(zhí)行的付款通知后,確定該目標(biāo)交易訂單對(duì)應(yīng)的第一用戶,并確定與該第一用戶關(guān)聯(lián)的保證金訂單;所述目標(biāo)交易訂單為所述目標(biāo)活動(dòng)中生成的交易訂單;凍結(jié)觸發(fā)單元303,用于確定針對(duì)該保證金訂單的累計(jì)凍結(jié)金額總數(shù)是否已達(dá)到預(yù)置的額度,如果未達(dá)到所述預(yù)置額度,則觸發(fā)對(duì)該交易訂單關(guān)聯(lián)貨款的凍結(jié)操作。具體實(shí)現(xiàn)時(shí),為了防止并發(fā),該裝置還可以包括:鎖定單元,用于確定出與該第一用戶關(guān)聯(lián)的保證金訂單后,判斷該保證金訂單是否處于鎖定狀態(tài),如果保證金訂單處于未被鎖定的狀態(tài),則鎖定該保證金訂單;解除鎖定單元,用于凍結(jié)操作成功后,解除對(duì)所述保證金訂單的鎖定。其中,在分布式系統(tǒng)下,所述凍結(jié)觸發(fā)單元包括:通知子單元,用于通知支付系統(tǒng)對(duì)該交易訂單關(guān)聯(lián)的貨款進(jìn)行凍結(jié)操作。其中,所述通知子單元包括:記錄增加子單元,用于新增凍結(jié)明細(xì)記錄,所述記錄中的內(nèi)容包括交易訂單標(biāo)識(shí)、保證金訂單標(biāo)識(shí)以及待凍結(jié)的金額;接口調(diào)用子單元,用于通過(guò)調(diào)用支付系統(tǒng)的預(yù)置接口,向支付系統(tǒng)發(fā)送凍結(jié)處理請(qǐng)求消息,以便所述支付系統(tǒng)將對(duì)應(yīng)金額的貨款執(zhí)行凍結(jié)操作,所述凍結(jié)處理請(qǐng)求消息中攜帶有所述凍結(jié)明細(xì)記錄中的內(nèi)容。另外,所述通知子單元還可以包括:重試子單元,用于接收所述支付系統(tǒng)的響應(yīng)消息,其中,當(dāng)收到操作成功的響應(yīng)消息時(shí),更新所述凍結(jié)明細(xì)記錄的狀態(tài),如果收到操作失敗的響應(yīng)消息,則通過(guò)重發(fā)所述凍結(jié)處理請(qǐng)求消息,直到接收到操作成功的響應(yīng)消息。其中,所述凍結(jié)明細(xì)記錄在初始狀態(tài)下為第一狀態(tài),所述支付系統(tǒng)包括代理系統(tǒng)以及支付操作執(zhí)行系統(tǒng),所述接口調(diào)用子單元包括:代理系統(tǒng)調(diào)用子單元,用于通過(guò)調(diào)用所述代理系統(tǒng)的預(yù)置接口,向所述代理系統(tǒng)發(fā)送凍結(jié)處理請(qǐng)求消息;第一狀態(tài)更新子單元,用于如果接收到所述代理系統(tǒng)返回的接口調(diào)用成功響應(yīng)消息,則將所述凍結(jié)明細(xì)記錄的狀態(tài)更新為第二狀態(tài),如果接收到所述代理系統(tǒng)的接口調(diào)用失敗響應(yīng)消息,則重新向所述代理系統(tǒng)發(fā)送所述凍結(jié)處理請(qǐng)求消息,直到接收到接口調(diào)用成功響應(yīng);所述代理系統(tǒng)在成功響應(yīng)后,調(diào)用所述支付操作執(zhí)行系統(tǒng)的接口,將所述凍結(jié)處理請(qǐng)求消息發(fā)送到所述支付操作執(zhí)行系統(tǒng),由所述支付操作執(zhí)行系統(tǒng)執(zhí)行貨款凍結(jié)操作;第二狀態(tài)更新子單元,用于在接收到所述代理系統(tǒng)返回的凍結(jié)成功響應(yīng)消息后,將所述凍結(jié)明細(xì)記錄的狀態(tài)更新為第三狀態(tài)。所述代理系統(tǒng)如果接收到所述支付操作執(zhí)行系統(tǒng)返回的凍結(jié)失敗響應(yīng)消息,則所述重新調(diào)用所述支付操作執(zhí)行系統(tǒng)的接口,將所述凍結(jié)處理請(qǐng)求消息發(fā)送到所述支付操作執(zhí)行系統(tǒng),直到接收到所述支付操作執(zhí)行系統(tǒng)返回的凍結(jié)成功響應(yīng)消息。在更新所述凍結(jié)明細(xì)記錄的狀態(tài)時(shí)采用樂(lè)觀鎖機(jī)制。所述凍結(jié)處理請(qǐng)求消息中還包括所述凍結(jié)明細(xì)記錄的記錄標(biāo)識(shí),以便所述代理系統(tǒng)接收到凍結(jié)處理請(qǐng)求消息時(shí),利用所述凍結(jié)明細(xì)記錄的記錄標(biāo)識(shí),確定該條消息是否已經(jīng)處理過(guò),并將已經(jīng)處理過(guò)的消息忽略。具體實(shí)現(xiàn)時(shí),該裝置還可以包括:凍結(jié)金額記錄單元,用于凍結(jié)操作成功后,記錄此次凍結(jié)的貨款金額,以便更新所述累計(jì)凍結(jié)金額總數(shù)。通過(guò)本申請(qǐng)實(shí)施例,可以通過(guò)貨款凍結(jié)的方式來(lái)收取第一用戶的保證金,這樣,第一用戶不需要提前支付任何形式的保證金,就可以直接參加活動(dòng),使得第一用戶參加活動(dòng)的門(mén)檻降低,有利于提高活動(dòng)的參與度,也提高系統(tǒng)的服務(wù)質(zhì)量。另外,對(duì)于需要通過(guò)多個(gè)應(yīng)用共同完成該服務(wù)的分布式環(huán)境,還可以通過(guò)基于消息通信的方式來(lái)實(shí)現(xiàn)數(shù)據(jù)的原子性、一致性,并且可以保證系統(tǒng)的吞吐量,實(shí)現(xiàn)較高的系統(tǒng)性能。通過(guò)以上的實(shí)施方式的描述可知,本領(lǐng)域的技術(shù)人員可以清楚地了解到本申請(qǐng)可借助軟件加必需的通用硬件平臺(tái)的方式來(lái)實(shí)現(xiàn)。基于這樣的理解,本申請(qǐng)的技術(shù)方案本質(zhì)上或者說(shuō)對(duì)現(xiàn)有技術(shù)做出貢獻(xiàn)的部分可以以軟件產(chǎn)品的形式體現(xiàn)出來(lái),該計(jì)算機(jī)軟件產(chǎn)品可以存儲(chǔ)在存儲(chǔ)介質(zhì)中,如ROM/RAM、磁碟、光盤(pán)等,包括若干指令用以使得一臺(tái)計(jì)算機(jī)設(shè)備(可以是個(gè)人計(jì)算機(jī),服務(wù)器,或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行本申請(qǐng)各個(gè)實(shí)施例或者實(shí)施例的某些部分所述的方法。本說(shuō)明書(shū)中的各個(gè)實(shí)施例均采用遞進(jìn)的方式描述,各個(gè)實(shí)施例之間相同相似的部分互相參見(jiàn)即可,每個(gè)實(shí)施例重點(diǎn)說(shuō)明的都是與其他實(shí)施例的不同之處。尤其,對(duì)于系統(tǒng)或系統(tǒng)實(shí)施例而言,由于其基本相似于方法實(shí)施例,所以描述得比較簡(jiǎn)單,相關(guān)之處參見(jiàn)方法實(shí)施例的部分說(shuō)明即可。以上所描述的系統(tǒng)及系統(tǒng)實(shí)施例僅僅是示意性的,其中所述作為分離部件說(shuō)明的單元可以是或者也可以不是物理上分開(kāi)的,作為單元顯示的部件可以是或者也可以不是物理單元,即可以位于一個(gè)地方,或者也可以分布到多個(gè)網(wǎng)絡(luò)單元上??梢愿鶕?jù)實(shí)際的需要選擇其中的部分或者全部模塊來(lái)實(shí)現(xiàn)本實(shí)施例方案的目的。本領(lǐng)域普通技術(shù) 人員在不付出創(chuàng)造性勞動(dòng)的情況下,即可以理解并實(shí)施。以上對(duì)本申請(qǐng)所提供的貨款信息處理方法及裝置,進(jìn)行了詳細(xì)介紹,本文中應(yīng)用了具體個(gè)例對(duì)本申請(qǐng)的原理及實(shí)施方式進(jìn)行了闡述,以上實(shí)施例的說(shuō)明只是用于幫助理解本申請(qǐng)的方法及其核心思想;同時(shí),對(duì)于本領(lǐng)域的一般技術(shù)人員,依據(jù)本申請(qǐng)的思想,在具體實(shí)施方式及應(yīng)用范圍上均會(huì)有改變之處。綜上所述,本說(shuō)明書(shū)內(nèi)容不應(yīng)理解為對(duì)本申請(qǐng)的限制。當(dāng)前第1頁(yè)1 2 3