本發(fā)明涉及一種管理系統(tǒng),尤其涉及一種金融交易管理系統(tǒng)。
背景技術(shù):
在現(xiàn)有的金融交易管理系統(tǒng),在商戶端的柜面占用較大,商戶端費(fèi)用開支多,交易步驟繁瑣,不便于商戶端統(tǒng)一收銀及管理。現(xiàn)有的收銀系統(tǒng)客戶端,由于客戶量眾多(紅旗連鎖+舞東風(fēng)就有4000余家,還加上其他商戶),如果軟件有什么問題,讓維護(hù)人員跑4000個店來更換系統(tǒng),成本非常高?,F(xiàn)有類似于qq、瀏覽器等軟件,均是提示用戶手動升級,不能做到對用戶100%透明,這對于收銀員來講是額外負(fù)擔(dān)。例如出現(xiàn)了更新,要求收銀員去重啟程序甚至收銀機(jī),是較難實現(xiàn)的,一來她們可能不會操作,二來可能權(quán)限不足。
技術(shù)實現(xiàn)要素:
本發(fā)明的目的就在于提供一種解決了上述問題的金融交易管理系統(tǒng)。
為了實現(xiàn)上述目的,本發(fā)明采用的技術(shù)方案是:一種金融交易管理系統(tǒng),系統(tǒng)采用C/S結(jié)構(gòu),主要由一個服務(wù)端和若干客戶端組成,
所述客戶端從操作界面收集到必要的數(shù)據(jù)之后,在后臺通過動態(tài)庫來組包解包再由服務(wù)器端執(zhí)行實際的交易業(yè)務(wù)處理,并借由sp30硬件密鑰存儲和加解密設(shè)備,對交易過程中敏感數(shù)據(jù)加密解密,實現(xiàn)交易防篡改和破解,由sp30加密組包返回給動態(tài)庫,再由動態(tài)庫請求至服務(wù)端進(jìn)行處理,動態(tài)庫收到服務(wù)端反饋的消息后,傳送給sp30,sp30獲取交易結(jié)果信息,從交易信息中獲取必要信息進(jìn)行打印,并將最終結(jié)果反饋給動態(tài)庫,動態(tài)庫再將數(shù)據(jù)反饋至界面;
所述服務(wù)端接收到客戶端上送報文時,先取出pkg_type區(qū)分報文的協(xié)議格式,若為8583協(xié)議報文則繼續(xù)取出appType,然后根據(jù)appType查找相應(yīng)的8583域?qū)傩耘渲茫鶕?jù)此配置解析收到的報文,再組裝成交易系統(tǒng)報文,上送至交易系統(tǒng)處理并等待返回結(jié)果,服務(wù)端收到交易系統(tǒng)處理結(jié)果后,解析交易系統(tǒng)返回的報文并記錄數(shù)據(jù),然后組裝成客戶端報文反饋至SP30。
作為優(yōu)選,所述客戶端采用windows圖形設(shè)備接口編程進(jìn)行界面開發(fā)。
作為優(yōu)選,所述服務(wù)端采用java實現(xiàn),系統(tǒng)啟動時根據(jù)appType值將配置有不同8583域?qū)傩缘呐渲眉虞d至內(nèi)存。
作為優(yōu)選,所述服務(wù)端采用了JDK1.7的AIO異步非阻塞IO模型進(jìn)行數(shù)據(jù)收發(fā)提高并發(fā)效率。
作為優(yōu)選,所述pkg_type區(qū)分報文的協(xié)議格式,若為自定義報文協(xié)議,即進(jìn)行客戶端軟件自動升級。
所述客戶端軟件自動升級的方法步驟如下,
a.維護(hù)人員將配置,程序的版本號,升級程序文件等維護(hù)到服務(wù)端,
b.客戶端啟動時更新線程,線程中每間隔一段時間向服務(wù)器獲取最新版本號;
c.比較服務(wù)器版本號和本機(jī)版本號,如果有差異,則需要升級更新;
d.如果需要升級,則開始向服務(wù)器請求文件數(shù)據(jù),開始下載;
e.下載的數(shù)據(jù)存放在臨時文件中,下載完成后向服務(wù)器獲取文件校驗,驗證下載是否正確;
f.驗證下載正確之后將交易業(yè)務(wù)加鎖,然后釋放之前的交易業(yè)務(wù)動態(tài)庫;
g.將臨時文件改名為正式文件,正式文件刪除;
h.重新加載新的動態(tài)庫,并導(dǎo)出接口;
i.釋放交易業(yè)務(wù)的鎖,并通知服務(wù)器更新完成。
作為優(yōu)選,步驟b中,客戶端和服務(wù)器的通信采用自定義協(xié)議,報文頭+包體組成,報文頭采用固定的格式,包體采用TLV格式,其中數(shù)據(jù)字段采用二進(jìn)制形式傳遞。
作為優(yōu)選,客戶端采用分包的方式逐步下載。
作為優(yōu)選,維護(hù)人員將配置,程序的版本號,升級程序文件等維護(hù)到服務(wù)端,客戶端會在啟動時或定時向服務(wù)端獲取相應(yīng)版本,如果有更新則啟動更新向服務(wù)端發(fā)送報文獲取升級程序,客戶端采用分包的方式逐步下載,以臨時文件對升級包進(jìn)行下載存儲,然后在下載完成后,在后臺瞬間替換完成升級。
與現(xiàn)有技術(shù)相比,本發(fā)明的優(yōu)點在于:本發(fā)明實現(xiàn)了收銀一體化操作,減少和信通受理環(huán)境在商戶端的柜面占用,減少商戶端不必要的費(fèi)用開支(網(wǎng)絡(luò)等),減少繁瑣的交易步驟,便于商戶端統(tǒng)一收銀及管理。進(jìn)行透明化的自動升級,避免了外派維護(hù)人員去門店進(jìn)行人工維護(hù)的麻煩。
附圖說明
圖1為本發(fā)明原理框圖;
圖2為客戶端軟件自動升級的流程框圖。
具體實施方式
下面將對本發(fā)明作進(jìn)一步說明。
實施例:參見圖1,一種金融交易管理系統(tǒng),系統(tǒng)采用C/S結(jié)構(gòu),主要由一個服務(wù)端和若干客戶端組成,
所述客戶端采用windows圖形設(shè)備接口編程進(jìn)行界面開發(fā),從操作界面收集到必要的數(shù)據(jù)之后,在后臺通過動態(tài)庫來組包解包再由服務(wù)器端執(zhí)行實際的交易業(yè)務(wù)處理,動態(tài)庫將用戶的交易請求封裝成自定義協(xié)議包傳向底層,底層解析客戶端的交易,并封裝成SP30的消息包,發(fā)向SP30進(jìn)行密鑰加密,并借由sp30硬件密鑰存儲和加解密設(shè)備,對交易過程中敏感數(shù)據(jù)加密解密,實現(xiàn)交易防篡改和破解,由sp30加密組包返回給動態(tài)庫,再由動態(tài)庫請求至服務(wù)端進(jìn)行處理,動態(tài)庫收到服務(wù)端反饋的消息后,傳送給sp30,sp30獲取交易結(jié)果信息,從交易信息中獲取必要信息進(jìn)行打印,并將最終結(jié)果反饋給動態(tài)庫,動態(tài)庫再將數(shù)據(jù)反饋至界面;
電腦端以軟件的方式,來取代POS機(jī)的絕大部分功能,除了刷卡和輸入密碼本身無法被代替,將多個支付渠道的多個POS機(jī)融合成一臺SP30設(shè)備,減少了每個渠道部署的POS機(jī)在柜面的占用,也減少了每個渠道的網(wǎng)絡(luò)部署開支。
具體方法為:
電腦端軟件界面采用GDI繪圖的方式進(jìn)行創(chuàng)建,用鼠標(biāo)或者鍵盤選擇的方式,來代替POS機(jī)上面的功能選擇;用鍵盤的數(shù)字鍵輸入的方式,代替POS機(jī)上面的數(shù)據(jù)輸入(比如金額等數(shù)字型數(shù)據(jù))。對于POS機(jī)的系統(tǒng)設(shè)置,例如服務(wù)器地址等等,在電腦軟件端采取配置的方式進(jìn)行管理。需要預(yù)先配置好各項參數(shù),然后再啟動軟件。軟件啟動后會從配置文件讀取各項參數(shù),將程序初始化,然后就可以正常進(jìn)行交易功能。
交易過程中,電腦軟件端收集所有交易所需的數(shù)據(jù)(例如交易金額、二維碼號碼等等),然后后臺會把這些數(shù)據(jù)組成數(shù)據(jù)包,傳遞給sp30,SP30會根據(jù)交易,提示用戶操作(例如提示刷卡,或者提示其他信息),操作完成后,SP30會把數(shù)據(jù)進(jìn)行加密,并且按照ISO8583協(xié)議對數(shù)據(jù)進(jìn)行組包,然后返回給電腦軟件端;軟件端接收到SP30返回的數(shù)據(jù)之后,直接傳遞給服務(wù)器(服務(wù)器地址和端口等信息都在上述配置文件中),然后服務(wù)器會反饋交易結(jié)果,此時將交易結(jié)果的數(shù)據(jù)包傳遞給SP30,SP30解密之后,判斷交易結(jié)果(成功、失敗、密碼錯誤等信息),并將交易結(jié)果顯示在自己的屏幕上,然后再將交易結(jié)果按照和電腦軟件端協(xié)定好的協(xié)議,反饋到軟件端,軟件根據(jù)sp30的返回結(jié)果,在界面上提示用戶(成功、失敗、密碼錯誤等信息)。
交易完成后,會有小票的打印,此時軟件端會驅(qū)動熱敏打印機(jī),進(jìn)行打印。該過程是采用了打印機(jī)廠商提供的驅(qū)動接口進(jìn)行的。這個功能也是取代了POS機(jī)的打印小票的功能。
客戶端是在商戶收銀機(jī)中相對獨(dú)立的軟件模塊,為動態(tài)庫或獨(dú)立運(yùn)行的程序,客戶端主要負(fù)責(zé)三方面的通訊:
1、與收銀系統(tǒng)交換必要的參數(shù),如:交易金額,交易類型等。
2、與MIS-POS進(jìn)行會話式通信,采集金融交易的必要信息,如:二磁道信息等。
3、與服務(wù)端通信,傳送和接收金融交易報文等信息。
所述服務(wù)端采用java實現(xiàn),系統(tǒng)啟動時根據(jù)appType值將配置有不同8583域?qū)傩缘呐渲眉虞d至內(nèi)存,有利于提高運(yùn)行效率。系統(tǒng)啟動時加載至內(nèi)存,之后使用配置時不用從硬盤讀取,而是直接內(nèi)存讀取,提高讀取效率;配置文件被修改后也不會影響正常交易,同步至內(nèi)存后,新的交易才會使用新的配置。所述服務(wù)端采用了JDK1.7的AIO模型進(jìn)行數(shù)據(jù)并發(fā)處理,提高并發(fā)效率;
所述服務(wù)端接收到客戶端上送報文時,先取出pkg_type區(qū)分報文的協(xié)議格式:若為8583協(xié)議報文則繼續(xù)取出appType,然后根據(jù)appType查找相應(yīng)的8583域?qū)傩耘渲?,根?jù)此配置解析收到的報文,再組裝成交易系統(tǒng)報文,上送至交易系統(tǒng)處理并等待返回結(jié)果,服務(wù)端收到交易系統(tǒng)處理結(jié)果后,解析交易系統(tǒng)返回的報文并記錄數(shù)據(jù),然后組裝成客戶端報文反饋至SP30。交易系統(tǒng)處理采用POSP處理。
服務(wù)端存在于商戶收銀網(wǎng)絡(luò)中,通過電信專線與和信通支付網(wǎng)絡(luò)相連接,負(fù)責(zé)與客戶之間的通訊,服務(wù)端接收到來自客戶端的金融交易報文后,進(jìn)行相應(yīng)的存儲并將報文(或經(jīng)處理后)通過專線發(fā)送至和信通成都在線支付中心,并等待應(yīng)答。并記錄收銀一體化系統(tǒng)的所有交易,提供整個商戶的交易查詢和報表等功能。
pkg_type區(qū)分報文的協(xié)議格式,若為自定義報文協(xié)議,即進(jìn)行客戶端軟件自動升級。
客戶端軟件自動升級的方法步驟如下,如圖2
a.維護(hù)人員將配置,程序的版本號,升級程序文件等維護(hù)到服務(wù)端,
b.客戶端啟動時或定時更新線程,向服務(wù)端獲取相應(yīng)版本,如果有更新則啟動更新向服務(wù)端發(fā)送報文獲取升級程序,線程中每間隔一段時間向服務(wù)器獲取最新版本號,客戶端和服務(wù)器的通信采用自定義協(xié)議,報文頭+包體組成,報文頭采用固定的格式,包體采用TLV格式,其中數(shù)據(jù)字段采用二進(jìn)制形式傳遞;
c.比較服務(wù)器版本號和本機(jī)版本號,如果有差異,則需要升級更新;
d.如果需要升級,則開始向服務(wù)器請求文件數(shù)據(jù),開始下載;
e.下載的數(shù)據(jù)存放在臨時文件中,下載完成后向服務(wù)器獲取文件校驗,驗證下載是否正確;
f.驗證下載正確之后將交易業(yè)務(wù)加鎖,然后釋放之前的交易業(yè)務(wù)動態(tài)庫;
g.將臨時文件改名為正式文件,正式文件刪除;
h.重新加載新的動態(tài)庫,并導(dǎo)出接口;
i.釋放交易業(yè)務(wù)的鎖,并通知服務(wù)器更新完成。
客戶端采用分包的方式逐步下載,以臨時文件對升級包進(jìn)行下載存儲,然后在下載完成后,在后臺瞬間替換完成升級,升級邏輯完全對用戶透明,無需專業(yè)人員到客戶端進(jìn)行上門更新。傳統(tǒng)的升級過成,一般來說要求用戶重啟軟件,甚至手動點擊更新,然后經(jīng)過漫長的等待。我們采用的是以臨時文件對升級包進(jìn)行下載存儲,然后在下載完成后,在后臺瞬間替換完成升級,使步驟e至f的過程僅需要毫秒級別(甚至更低)的時間來進(jìn)行,因此針對收銀員和待付款的顧客而言,幾乎可以忽略這種時間消耗,從而達(dá)成對用戶幾乎透明的效果,完全不會對用戶以及收銀員而言完全沒有負(fù)擔(dān)。自動升級實現(xiàn)之后,避免了外派維護(hù)人員去幾千家門店進(jìn)行人工維護(hù)的麻煩,也極大減小了人力成本。
以上對本發(fā)明所提供的一種金融交易管理系統(tǒng)進(jìn)行了詳盡介紹,本文中應(yīng)用了具體個例對本發(fā)明的原理及實施方式進(jìn)行了闡述,以上實施例的說明只是用于幫助理解本發(fā)明的方法及其核心思想;同時,對于本領(lǐng)域的一般技術(shù)人員,依據(jù)本發(fā)明的思想,在具體實施方式及應(yīng)用范圍上均會有改變之處,對本發(fā)明的變更和改進(jìn)將是可能的,而不會超出附加權(quán)利要求所規(guī)定的構(gòu)思和范圍,綜上所述,本說明書內(nèi)容不應(yīng)理解為對本發(fā)明的限制。