1.一種票據(jù)的多人議價(jià)方法,其特征在于,包括以下步驟:
步驟1,交易發(fā)起者對(duì)應(yīng)的第一客戶端生成交易事件,并獲取與所述交易事件對(duì)應(yīng)的交易對(duì)象列表;
步驟2,所述第一客戶端根據(jù)交易事件和交易對(duì)象列表生成第一報(bào)價(jià)請(qǐng)求事件,并將所述第一報(bào)價(jià)請(qǐng)求事件發(fā)送到服務(wù)器;所述第一報(bào)價(jià)請(qǐng)求事件包括交易發(fā)起者對(duì)應(yīng)的第一報(bào)價(jià)價(jià)格和交易對(duì)象列表中至少一個(gè)交易對(duì)象;
步驟3,服務(wù)器將所述第一報(bào)價(jià)請(qǐng)求事件發(fā)送到交易對(duì)象列表中每個(gè)交易對(duì)象對(duì)應(yīng)的第二客戶端,并獲取所述第二客戶端返回的第二報(bào)價(jià)請(qǐng)求事件;所述第二報(bào)價(jià)請(qǐng)求事件包括交易對(duì)象對(duì)應(yīng)的第二報(bào)價(jià)價(jià)格;
步驟4,服務(wù)器將所述第二報(bào)價(jià)請(qǐng)求事件返回給第一客戶端,并接收第一客戶端發(fā)送的包括修改后的第一報(bào)價(jià)價(jià)格的新的第一報(bào)價(jià)請(qǐng)求事件,并將所述新的第一報(bào)價(jià)請(qǐng)求事件發(fā)送給對(duì)應(yīng)的第二客戶端;
步驟5,重復(fù)步驟3~4,直到達(dá)成預(yù)設(shè)的議價(jià)結(jié)束條件。
2.根據(jù)權(quán)利要求1所述的票據(jù)的多人議價(jià)方法,其特征在于,所述議價(jià)結(jié)束條件包括:達(dá)到預(yù)設(shè)的交易限定時(shí)間、交易發(fā)起者對(duì)應(yīng)的第一報(bào)價(jià)價(jià)格和任一交易對(duì)象對(duì)應(yīng)的第二報(bào)價(jià)價(jià)格達(dá)成一致、交易發(fā)起者主動(dòng)結(jié)束議價(jià)過(guò)程和交易對(duì)象主動(dòng)結(jié)束議價(jià)過(guò)程。
3.根據(jù)權(quán)利要求1或2所述的票據(jù)的多人議價(jià)方法,其特征在于,步驟1中,第一客戶端獲取交易對(duì)象列表具體包括以下步驟:
S101,生成用于獲取交易對(duì)象列表的ActionEvent事件;
S102,通過(guò)ActionListener接口監(jiān)聽所述ActionEvent事件,并把監(jiān)聽到的ActionEvent事件傳播給對(duì)應(yīng)的監(jiān)聽器;
S103,所述監(jiān)聽器接收ActionEvent事件,然后執(zhí)行ActionListener接口預(yù)先定義的與所述ActionEvent事件對(duì)應(yīng)的處理函數(shù),并啟動(dòng)一個(gè)獨(dú)立處理線程,所述獨(dú)立處理線程調(diào)用Thread worker接口,所述Thread worker接口采用表單的數(shù)據(jù)處理方法與存儲(chǔ)有交易對(duì)象信息的連接服務(wù)器進(jìn)行通信,獲取所述連接服務(wù)器返回的交易對(duì)象列表;
S104,采用表單的界面處理方法將所述交易對(duì)象列表以彈框的方式返回給第一客戶端的界面。
4.根據(jù)權(quán)利要求3所述的票據(jù)的多人議價(jià)方法,其特征在于,所述步驟2具體為:
S201,所述第一客戶端通過(guò)調(diào)用函數(shù)submiPricetInquiry將所述第一報(bào)價(jià)價(jià)格和交易對(duì)象列表中的至少一個(gè)交易對(duì)象封裝在所述交易事件中生成第一報(bào)價(jià)請(qǐng)求事件;
S202,將所述第一報(bào)價(jià)請(qǐng)求事件轉(zhuǎn)換為對(duì)應(yīng)的MAP格式的數(shù)據(jù),并通過(guò)socket通信函數(shù)將所述MAP格式的數(shù)據(jù)發(fā)送給第一連接服務(wù)器。
5.根據(jù)權(quán)利要求4所述的票據(jù)的多人議價(jià)方法,其特征在于,所述步驟3具體為:
步驟A1,第一連接服務(wù)器接收所述第一報(bào)價(jià)請(qǐng)求事件后,對(duì)所述第一報(bào)價(jià)請(qǐng)求事件的交易發(fā)起者進(jìn)行匹配,若匹配到交易對(duì)象,則通過(guò)socket通信函數(shù)將所述第一報(bào)價(jià)請(qǐng)求事件發(fā)送給每個(gè)交易對(duì)象對(duì)應(yīng)的第二客戶端;
步驟A2,所述交易對(duì)象對(duì)應(yīng)的第二客戶端監(jiān)聽到所述第一報(bào)價(jià)請(qǐng)求事件后,調(diào)用函數(shù)ReceivePriceInquiry以彈窗的方式顯示所述第一報(bào)價(jià)請(qǐng)求事件,并將交易對(duì)象的第二報(bào)價(jià)價(jià)格與所述第一報(bào)價(jià)請(qǐng)求事件封裝為第二報(bào)價(jià)請(qǐng)求事件后,將所述第二報(bào)價(jià)請(qǐng)求事件返回給所述第一連接服務(wù)器。
6.根據(jù)權(quán)利要求4所述的票據(jù)的多人議價(jià)方法,其特征在于,所述步驟3具體為:
步驟B1,第一連接服務(wù)器接收所述第一報(bào)價(jià)請(qǐng)求事件后,對(duì)所述第一報(bào)價(jià)請(qǐng)求事件的交易發(fā)起者進(jìn)行匹配,若沒(méi)有匹配到交易對(duì)象,則將所述第一報(bào)價(jià)請(qǐng)求事件存儲(chǔ)在消息服務(wù)器中;
步驟B2,應(yīng)用服務(wù)器通過(guò)消息監(jiān)聽線程持續(xù)監(jiān)聽所述第一報(bào)價(jià)請(qǐng)求事件,并通過(guò)ServerEventListener接口讀取與本應(yīng)用服務(wù)器相關(guān)聯(lián)的第一報(bào)價(jià)請(qǐng)求事件,然后根據(jù)所述第一報(bào)價(jià)請(qǐng)求事件生成對(duì)應(yīng)的服務(wù)器事件,并將所述服務(wù)器事件發(fā)送到消息服務(wù)器,等待相關(guān)聯(lián)的其他連接服務(wù)器進(jìn)行讀取,所述服務(wù)器事件包括所述第一報(bào)價(jià)請(qǐng)求事件的全部?jī)?nèi)容;
步驟B3,相關(guān)聯(lián)的第二連接服務(wù)器監(jiān)聽到所述服務(wù)器事件后,對(duì)所述服務(wù)器事件的交易發(fā)起者進(jìn)行匹配,并通過(guò)socket通信函數(shù)將所述服務(wù)器事件發(fā)送給每個(gè)交易對(duì)象對(duì)應(yīng)的第二客戶端;
步驟B4,所述交易對(duì)象對(duì)應(yīng)的第二客戶端監(jiān)聽到所述服務(wù)器事件后,調(diào)用函數(shù)ReceivePriceInquiry以彈窗的方式顯示所述服務(wù)器事件,并將交易對(duì)象的第二報(bào)價(jià)價(jià)格與所述服務(wù)器事件封裝為第二報(bào)價(jià)請(qǐng)求事件后,將所述第二報(bào)價(jià)請(qǐng)求事件返回給對(duì)應(yīng)的第二連接服務(wù)器。
7.一種票據(jù)的多人議價(jià)系統(tǒng),其特征在于,包括交易發(fā)起者對(duì)應(yīng)的第一客戶端、交易對(duì)象對(duì)應(yīng)的第二客戶端和用于連接所述第一客戶端和第二客戶端的服務(wù)器,
所述第一客戶端用于生成交易事件,獲取與所述交易事件對(duì)應(yīng)的交易對(duì)象列表,并根據(jù)交易事件和交易對(duì)象列表生成第一報(bào)價(jià)請(qǐng)求事件,然后將所述第一報(bào)價(jià)請(qǐng)求事件發(fā)送到服務(wù)器;以及用于根據(jù)服務(wù)器發(fā)回的第二報(bào)價(jià)請(qǐng)求事件對(duì)所述第一報(bào)價(jià)價(jià)格進(jìn)行修改后生成新的第一報(bào)價(jià)請(qǐng)求事件發(fā)送到服務(wù)器;所述第一報(bào)價(jià)請(qǐng)求事件包括交易發(fā)起者對(duì)應(yīng)的第一報(bào)價(jià)價(jià)格和交易對(duì)象列表中至少一個(gè)交易對(duì)象;
所述服務(wù)器用于將所述第一報(bào)價(jià)請(qǐng)求事件發(fā)送到所述第二客戶端,并獲取第二客戶端返回的第二報(bào)價(jià)請(qǐng)求事件,然后將所述第二報(bào)價(jià)請(qǐng)求事件返回給第一客戶端;以及用于接收第一客戶端發(fā)送的包括修改后的第一報(bào)價(jià)價(jià)格的新的第一報(bào)價(jià)請(qǐng)求事件,并將所述新的第一報(bào)價(jià)請(qǐng)求事件發(fā)送給對(duì)應(yīng)的第二客戶端;
所述第二客戶端用于接收服務(wù)器發(fā)送的第一報(bào)價(jià)請(qǐng)求事件,并根據(jù)每個(gè)交易對(duì)象的第二報(bào)價(jià)價(jià)格生成第二報(bào)價(jià)請(qǐng)求事件后,將所述第二報(bào)價(jià)請(qǐng)求事件發(fā)送給服務(wù)器。
8.根據(jù)權(quán)利要求7所述的票據(jù)的多人議價(jià)系統(tǒng),其特征在于,所述第一客戶端包括:
事件觸發(fā)模塊,用于生成獲取交易對(duì)象列表的ActionEvent事件;
事件監(jiān)聽模塊,用于通過(guò)ActionListener接口監(jiān)聽所述ActionEvent事件,并把監(jiān)聽到的ActionEvent事件傳播給對(duì)應(yīng)的監(jiān)聽器;
事件處理模塊,用于通過(guò)監(jiān)聽器接收ActionEvent事件,然后執(zhí)行ActionListener接口預(yù)先定義的與所述ActionEvent事件對(duì)應(yīng)的處理函數(shù),并啟動(dòng)一個(gè)獨(dú)立處理線程,所述獨(dú)立處理線程調(diào)用Thread worker接口,所述Thread worker接口采用表單的數(shù)據(jù)處理方法與對(duì)應(yīng)的連接服務(wù)器進(jìn)行通信,獲取所述連接服務(wù)器返回的交易對(duì)象列表;
顯示模塊,用于采用表單的界面處理方法將所述交易對(duì)象列表以彈框的方式返回給第一客戶端的界面;
事件生成模塊,用于調(diào)用函數(shù)submiPricetInquiry將所述第一報(bào)價(jià)價(jià)格和交易對(duì)象列表中至少一個(gè)交易對(duì)象封裝在所述交易事件中生成第一報(bào)價(jià)請(qǐng)求事件;
事件發(fā)送模塊,用于將所述第一報(bào)價(jià)請(qǐng)求事件轉(zhuǎn)換為對(duì)應(yīng)的MAP格式的數(shù)據(jù),并通過(guò)socket通信函數(shù)將所述MAP格式的數(shù)據(jù)發(fā)送給第一連接服務(wù)器。
9.根據(jù)權(quán)利要求8所述的票據(jù)的多人議價(jià)系統(tǒng),其特征在于,所述服務(wù)器包括:
第一連接服務(wù)器,用于接收所述第一報(bào)價(jià)請(qǐng)求事件,對(duì)所述第一報(bào)價(jià)請(qǐng)求事件的交易發(fā)起者進(jìn)行匹配,若匹配到交易對(duì)象,則通過(guò)socket通信函數(shù)將所述第一報(bào)價(jià)請(qǐng)求事件發(fā)送給交易對(duì)象對(duì)應(yīng)的第二客戶端,并接收交易對(duì)象通過(guò)第二客戶端發(fā)送的第二報(bào)價(jià)請(qǐng)求事件;以及用于當(dāng)沒(méi)有匹配到交易對(duì)象時(shí),則將所述第一報(bào)價(jià)請(qǐng)求事件存儲(chǔ)在消息服務(wù)器中;
消息服務(wù)器,用于存儲(chǔ)所述第一報(bào)價(jià)請(qǐng)求事件和所述服務(wù)器事件;
應(yīng)用服務(wù)器,通過(guò)消息監(jiān)聽線程持續(xù)監(jiān)聽所述第一報(bào)價(jià)請(qǐng)求事件,并通過(guò)ServerEventListener接口讀取與本應(yīng)用服務(wù)器相關(guān)聯(lián)的第一報(bào)價(jià)請(qǐng)求事件,然后根據(jù)所述第一報(bào)價(jià)請(qǐng)求事件生成對(duì)應(yīng)的服務(wù)器事件,并將所述服務(wù)器事件發(fā)送到消息服務(wù)器,等待相關(guān)聯(lián)的第二連接服務(wù)器進(jìn)行讀取,所述服務(wù)器事件包括所述第一報(bào)價(jià)請(qǐng)求事件的全部?jī)?nèi)容;
第二連接服務(wù)器,用于監(jiān)聽并接受所述服務(wù)器事件后,對(duì)所述服務(wù)器事件的交易發(fā)起者進(jìn)行匹配,并通過(guò)socket通信函數(shù)將所述服務(wù)器事件發(fā)送給每個(gè)交易對(duì)象對(duì)應(yīng)的第二客戶端,以及接收每個(gè)交易對(duì)象通過(guò)第二客戶端發(fā)送的第二報(bào)價(jià)請(qǐng)求事件。
10.一種裝置,其特征在于,包括權(quán)利要求7~9任一所述的票據(jù)的多人議價(jià)系統(tǒng)。