本發明涉及自助設備技術領域,特別涉及一種處理業務請求方法及系統。
背景技術:
近年來,在各家商業銀行都增加對自助設備開發的同時,很多自助設備廠商也和各大銀行進行自助設備的運營,在這種商業模式中,自助設備不再是一筆全額賣給銀行,而是屬于自助設備廠商的資產,與各大銀行聯合進行自助業務的提供。但是,現有自助設備的ATMC僅能處理一個銀行的業務,使得一臺自助設備只能用于一家銀行,ATMC無法實現銀行業務的共享,需要針對不通銀行開發不同的ATMC,限制了自助設備的通用性。
因而現有技術還有待改進和提高。
技術實現要素:
本發明要解決的技術問題在于,針對現有技術的不足,提供一種處理業務請求方法及系統,以解決現有自助設備僅能處理一個銀行的業務,不能實現銀行業務共享的問題。
為了解決上述技術問題,本發明所采用的技術方案如下:
一種處理業務請求的方法,其包括:
當接收到用戶發送的業務請求時,獲取所述業務請求對應的服務名稱,并根據所述服務名稱查找所述業務請求對應的服務;
若查找到所述服務,則在預設服務池內查找所述服務對應的服務狀態機,其中,所述服務池由若干服務狀態機構成;
當查找到所述服務對應的服務狀態機時,調用所述服務狀態機內相應的服務來執行所述業務請求。
所述處理業務請求的方法,其中,所述若查找到所述服務,則在預設服務池內查找所述服務對應的服務狀態機,其中,所述服務池由若干服務狀態機構成具體包括:
若查找到所述服務,則向服務池發送調用所述服務的請求信息,其中,所述請求信息攜帶所述服務的服務名稱;
服務池接收并解析所述請求信息,根據解析得到的服務名稱在預設服務池內查找所述服務對應的服務狀態機,其中,所述服務池由若干服務狀態機構成。
所述處理業務請求的方法,其中,所述當查找到所述服務對應的服務狀態機時,調用所述服務狀態機內相應的服務來執行所述業務請求具體包括:
當查找到所述服務對應的服務狀態機時,根據服務名稱確定所述服務狀態機內對應的服務;
調用所述服務來執行所述業務請求,并將調用結果反饋給ATMC。
所述處理業務請求的方法,其中,所述若查找到所述服務,則在預設服務池內查找所述服務對應的服務狀態機,其中,所述服務池由若干服務狀態機構成具體包括:
若查找到所述服務,確定所述服務對應的輸入參數;
根據所述服務名稱以及輸入參數在預設服務池內查找所述服務對應的服務狀態機,其中,所述服務池由若干服務狀態機構成。
所述處理業務請求的方法,其中,所述當查找到所述服務對應的服務狀態機時,調用所述服務狀態機內相應的服務來執行所述業務請求具體包括:
當查找到其對應的服務狀態機時,獲取所述服務狀態機內相應服務的服務參數,并采用所述服務參數驗證所述輸入參數的合法性;
當所述驗證成功時,調用所述服務狀態機內相應的服務來執行所述業務請求。
一種處理業務請求的系統,其包括:
獲取模塊,用于當接收到用戶發送的業務請求時,獲取所述業務請求對應的服務名稱,并根據所述服務名稱查找所述業務請求對應的服務;
查找模塊,用于若查找到所述服務,則在預設服務池內查找所述服務對應的服務狀態機,其中,所述服務池由若干服務狀態機構成;
調用模塊,用于當查找到所述服務對應的服務狀態機時,調用所述服務狀態機內相應的服務來執行所述業務請求。
所述處理業務請求的系統,其中,所述查找模塊具體包括:
發送單元,用于當查找到所述服務時,控制ATMC向服務池發送調用所述服務的請求信息,其中,所述請求信息攜帶所述服務的服務名稱;
第一查找單元,用于控制服務池接收并解析所述請求信息,根據解析得到的服務名稱在預設服務池內查找所述服務對應的服務狀態機,其中,所述服務池由若干服務狀態機構成。
所述處理業務請求的系統,其中,所述調用模塊具體包括:
確定單元,用于當查找到所述服務對應的服務狀態機時,根據服務名稱確定所述服務狀態機內對應的服務;
第一調用單元,用于調用所述服務來執行所述業務請求,并將調用結果反饋給ATMC。
所述處理業務請求的系統,其中,所述查找模塊具體包括:
參數確定單元,用于當查找到所述服務時,確定所述服務對應的輸入參數;
第二確定單元,用于根據所述服務名稱以及輸入參數在預設服務池內查找所述服務對應的服務狀態機,其中,所述服務池由若干服務狀態機構成。
所述處理業務請求的系統,其中,所述調用模塊具體包括:
獲取單元,用于當查找到其對應的服務狀態機時,獲取所述服務狀態機內相應服務的服務參數,并采用所述服務參數驗證所述輸入參數的合法性;
第二調用單元,用于當所述驗證成功時,調用所述服務狀態機內相應的服務來執行所述業務請求。
有益效果:與現有技術相比,本發明提供了一種處理業務請求方法及系統,所述方法包括:當接收到用戶發送的業務請求時,獲取所述業務請求對應的服務名稱,并根據所述服務名稱查找所述業務請求對應的服務;若查找到所述服務,則在預設服務池內查找所述服務對應的服務狀態機,其中,所述服務池由若干服務狀態機構成;當查找到所述服務對應的服務狀態機時,調用所述服務狀態機內相應的服務來執行所述業務請求。本發明通過預先封裝包含多個服務狀態機的服務池,通過調用服務池內的服務執行業務請求,提高ATMC設備并發處理能力,并將ATMC處理業務請求的服務與具體銀行業務解除綁定,解決了現有ATMC僅能處理一個銀行的業務的問題。
附圖說明
圖1為本發明提供的處理業務請求方法較佳實施的流程圖。
圖2為本發明提供的服務池查找對應的服務的流程圖。
圖3為本發明提供的一種處理業務請求方法實施例一的流程圖。
圖4為本發明提供的處理業務請求系統的結構原理圖。
具體實施方式
本發明提供一種處理業務請求方法及系統,為使本發明的目的、技術方案及效果更加清楚、明確,以下參照附圖并舉實施例對本發明進一步詳細說明。應當理解,此處所描述的具體實施例僅用以解釋本發明,并不用于限定本發明。
本發明中,使用用于表示元件的諸如“模塊”、“部件”或“單元”的后綴僅為了有利于本發明的說明,其本身并沒有特定的意義。因此,模塊”、“部件”或“單元”可以混合地使用。
下面結合附圖,通過對實施例的描述,對發明內容作進一步說明。
請參照圖1,圖1為本發明提供的處理業務請求方法的較佳實施例的流程圖。所述方法包括:
S100、當接收到用戶發送的業務請求時,獲取所述業務請求對應的服務名稱,并根據所述服務名稱查找所述業務請求對應的服務。
具體地,所述自助設備為用于進入銀行業務的終端設備,例如,ATM設備、VTM設備等。所述接收到用戶發送的業務請求信息指的是ATM設備配置的控制系統ATMC接收到用戶發送的業務請求信息。在本實施例中,將所述ATMC劃分為三個獨立并行的有限狀態機,分別為客戶交易狀態機、管理員狀態機、監控服務狀態機。所述有限狀態機將ATMC軟件的運行過程人為地劃分為有限個“狀態”,通過對每個“狀態”建立遷移表,形成一個“有限狀態”圖,并通過所述“狀態”圖控制ATMC的運行流程。
所述當接收到用戶發送的業務請求時,獲取所述業務請求對應的服務名稱,并根據所述服務名稱查找所述業務請求對應的服務具體可以包括:
S101、當接收到用戶發送的業務請求信息時,獲取所述業務請求信息對應的服務名稱;
S102、根據所述服務名稱在預設服務列表中查找其對應的服務信息。
具體的來說,在所述步驟S101中,所述業務請求信息指的是自助設備的ATMC接收的業務請求,所述業務請求可以為取款、轉賬等。當ATMC接收到業務請求時,獲取所述業務請求對應服務名稱。
在所述步驟S102中,所述服務列表為預先設置的用于存儲服務信息的列表。在獲取到服務名稱后,根據所述服務名稱在所述服務列表內查找是否具有所述服務名稱對應的服務信息。如果有,則說明所述自助設備可以執行所述業務請求;如果沒有,則說明所述自助設備不可以執行所述業務請求。
S200、若查找到所述服務,則在預設服務池內查找所述服務對應的服務狀態機,其中,所述服務池由若干服務狀態機構成。
具體地,所述服務池由多個服務狀態機構成,所述服務狀態機為一個狀態機線程,其存儲有多個對外提供調用服務。也就是說,所述服務狀態機內存儲有多個服務,所述服務可以被ATMC調用。所述服務是由狀態機子流程組成,每個子流程可以包括腳本及服務流程。每個服務可以獨立完成ATMC接收到的一業務請求。在實際應用中,可以根據服務名稱查找到相應的服務。所有服務狀態機內的服務的名稱是唯一確定的,并將服務與服務名稱綁定存儲與服務映射表內。在獲取到服務名稱時,可以在所述服務列表內查找并調用其對應的服務。
所述服務池設置有用于ATMC調用服務接口,可以記為服務池對象。所述服務池對象可以作為一個獨立的控件對象,所述ATMC通過服務池對象調用服務池中的服務。所述服務池可以為一個配置于自助設備內的獨立封裝模塊,其也可以是設置為服務器中的遠程服務系統,所述ATMC通過遠程請求調用服務池內的服務。
在本實施例中,所述服務池的建立過程可以為:
H10、根據預先設置的系統配置啟動若干服務狀態機;
H20、獲取每個服務狀態機的所有服務的服務名稱,根據所述服務池服務名稱列表以形成服務池對象;
H30、將所述若干服務狀態機封裝為服務池,并將所述服務池對象封裝為服務池的服務接口。
在本實施例中,所述若查找到所述服務,則根據所述服務在預設服務池內查找其對應的服務狀態機,其中,所述服務池由若干服務狀態機構成具體可以包括:
S201、若查找到所述服務,則向服務池發送調用所述服務的請求信息,其中,所述請求信息攜帶所述服務的服務名稱;
S202、服務池接收并解析所述請求信息,根據解析得到的服務名稱在預設服務池內查找所述服務對應的服務狀態機,其中,所述服務池由若干服務狀態機構成。
具體的來說,在所述步驟S201中,所述向服務池發送調用所述服務的請求信息指的ATMC應用向服務池模塊調用所述服務的請求信息。所述請求信息攜帶所述服務的服務名稱。也就是說,ATMC應用向服務池對象發送調用請求。
在所述步驟S202中,所述服務池接收并解析所述請求信息,根據解析得到所述服務名稱查找其對應的服務狀態機,其中,所述服務池由若干服務狀態機構成具體可以包括:
S2021、所述服務池接收并解析所述請求信息,其中,所述請求信息攜帶所述服務的服務名稱;
S2022、服務池對象根據解析得到的服務名稱在預設服務名稱列表內查找其對應的服務狀態機。
具體地,所述服務名稱列表為預先設置與服務池對象內,并且所述服務名稱列表內可以包含服務名稱與服務的對應關系,以及所述服務與服務狀態機的對應關系。
在本發明的另外一個實施例中,如圖2所示,所述步驟S202、服務池對象根據解析得到的服務名稱在預設服務名稱列表內查找其對應的服務狀態機還可以具體包括:
M10、當服務池接收所述調用請求時,獲取所述調用請求攜帶的服務名稱;
M20、遍歷服務池內所有服務狀態機列隊的服務名稱列表;
M30、判斷是否查找到所述服務,若查找到,則執行步驟M40,若未查找到,則執行步驟M50;
M40、判斷是否查找到多個包含所述服務的服務狀態機隊列,如果是,則執行步驟M60;如果否,則執行步驟M70;
M50、返回調用錯誤信息,并結束調用;
M60、查詢多個服務狀態機內是否存在空閑服務狀態機,如果是,則執行步驟M80,如果否,則將所述服務加入任一服務狀態機的服務命令列隊;
M70、判斷所述服務狀態機是否為空閑狀態機狀態機,如果是,則執行步驟M80,如果否,則將所述服務加入所述服務狀態機的服務命令列隊;
M80、指定空閑狀態機執行所述服務;
M90、獲取空閑狀態機的服務列隊命令;
M100、判斷所述服務列隊是否為空,如果是,則結束操作,如果否,在執行步驟M110;
M110、取出服務列隊首命令,完成服務調用,繼續監聽調用服務請求。
在本發明的再一個實施例中,所述步驟S200、若查找到所述服務,則在預設服務池內查找所述服務對應的服務狀態機,其中,所述服務池由若干服務狀態機構成還可以具體包括:
S201a、若查找到所述服務,確定所述服務對應的輸入參數;
S201b、根據所述服務名稱以及輸入參數在預設服務池內查找所述服務對應的服務狀態機,其中,所述服務池由若干服務狀態機構成。
具體地,所述輸入參數為預先設置的服務池對象的接口文檔,在服務池對象中可以根據所述輸入參數調用相應的服務。值得說明的,所述輸入參數可以為服務狀態機的開發人員自行定義,在這里就不對其具體內容做進一步說明。
S300、當查找到所述服務對應的服務狀態機時,調用所述服務狀態機內相應的服務來執行所述業務請求。
具體地,所述查找服務對應的服務狀態機指的是查找包含所述服務的服務狀態機,其可以根據請求信息攜帶的服務名稱查找其對應的服務狀態機。在實際應用中,所述當查找到其對應的服務狀態機時,調用所述服務狀態機內相應的服務具體可以包括:
S301、當查找到所述服務對應的服務狀態機時,根據服務名稱確定所述服務狀態機內對應的服務;
S302、調用所述服務來執行所述業務請求,并將調用結果反饋給ATMC。
具體地,服務池根據所述服務名稱遍歷服務池內所有服務狀態機以確定所述服務對應的服務狀態機,當確定服務狀態機時,在遍歷服務狀態機內所有的服務確定服務狀態內相應的服務,并調用所述服務執行業務請求,同時將所述調用結構反饋給ATMC應用,以使得ATMC可以輸出服務調用結構,即業務請求執行結果。
在發明的一個實施例中,所述當查找到其對應的服務狀態機時,調用所述服務狀態機內相應的服務還可以具體包括:
S301a、當查找到其對應的服務狀態機時,服務池對象獲取輸入參數;
S301b、服務池對象根據預設服務映射表驗證所述輸入參數的。
具體地,所述輸入參數為請求信息中攜帶的,當服務池對象接收并解析請求信息時,即得到所述輸入參數。這里的服務池對象獲取輸入參數指的是服務池對象獲取解析所述請求信息得到的輸入參數。
所述服務映射表為服務池對象預先建立的,所述服務映射表是由所有服務狀態機包含的服務的輸入參數行程的映射表,并且所述服務映射表保存服務與輸入參數的對應關系。
為了進一步理解本發明提供的處理業務請求方法,下面結合一個具體實施例加以說明。
實施例一
本實施例提供了一種處理業務請求方法,如圖3所示,其具體包括:
S1、當接收到業務處理請求時,獲取所述業務處理對應的服務名稱;
S2、根據所述名稱查找其對應的服務;
S3、獲取所述服務對應的輸入參數;
S4、ATMC應用向服務池對象發送調用所述服務的請求信息,其中,所述請求信息攜帶服務名稱以及輸入參數;
S5、服務池對象接收并解析所述請求信息;
S6、服務池對象獲取解析得到的服務名稱以及輸入參數;
S7、服務池對象根據所述服務名稱遍歷服務池內所有服務狀態機以查找所述服務,若未查找到,則執行步驟S8,若查找到,則執行步驟S9;
S8、服務池對象向ATMC應用反饋調用失敗,執行步驟S12、;
S90、服務池對象獲取其預存服務映射表內所述服務對應的服務參數,并采用所述服務參數驗證獲取的輸入參數;
S10、當驗證成功時,調用查找到的所述服務;
S11、服務池對象向ATMC應用反饋服務調用結果;
S12、AMTC應用根據服務池對象反饋的調用結果形成所述服務的調用結構,結束服務調用操作。
本發明還提供了一種處理業務請求系統,如圖4所示,其包括:
獲取模塊100,用于當接收到用戶發送的業務請求時,獲取所述業務請求對應的服務名稱,并根據所述服務名稱查找所述業務請求對應的服務;
查找模塊200,用于若查找到所述服務,則在預設服務池內查找所述服務對應的服務狀態機,其中,所述服務池由若干服務狀態機構成;
調用模塊300,用于當查找到所述服務對應的服務狀態機時,調用所述服務狀態機內相應的服務來執行所述業務請求。
所述處理業務請求的系統,其中,所述查找模塊具體包括:
發送單元,用于當查找到所述服務時,控制ATMC向服務池發送調用所述服務的請求信息,其中,所述請求信息攜帶所述服務的服務名稱;
第一查找單元,用于控制服務池接收并解析所述請求信息,根據解析得到的服務名稱在預設服務池內查找所述服務對應的服務狀態機,其中,所述服務池由若干服務狀態機構成。
所述處理業務請求的系統,其中,所述調用模塊具體包括:
確定單元,用于當查找到所述服務對應的服務狀態機時,根據服務名稱確定所述服務狀態機內對應的服務;
第一調用單元,用于調用所述服務來執行所述業務請求,并將調用結果反饋給ATMC。
所述處理業務請求的系統,其中,所述查找模塊具體包括:
參數確定單元,用于當查找到所述服務時,確定所述服務對應的輸入參數;
第二確定單元,用于根據所述服務名稱以及輸入參數在預設服務池內查找所述服務對應的服務狀態機,其中,所述服務池由若干服務狀態機構成。
所述處理業務請求的系統,其中,所述調用模塊具體包括:
獲取單元,用于當查找到其對應的服務狀態機時,獲取所述服務狀態機內相應服務的服務參數,并采用所述服務參數驗證所述輸入參數的合法性;
第二調用單元,用于當所述驗證成功時,調用所述服務狀態機內相應的服務來執行所述業務請求。
上述處理業務請求系統的各個模塊在上述方法中已經詳細說明,在這里就不再一一陳述。
在本發明所提供的實施例中,應該理解到,所揭露的系統和方法,可以通過其它的方式實現。例如,以上所描述的裝置實施例僅僅是示意性的,例如,所述模塊的劃分,僅僅為一種邏輯功能劃分,實際實現時可以有另外的劃分方式,例如多個單元或組件可以結合或者可以集成到另一個系統,或一些特征可以忽略,或不執行。另一點,所顯示或討論的相互之間的耦合或直接耦合或通信連接可以是通過一些接口,裝置或單元的間接耦合或通信連接,可以是電性,機械或其它的形式。
所述作為分離部件說明的單元可以是或者也可以不是物理上分開的,作為單元顯示的部件可以是或者也可以不是物理單元,即可以位于一個地方,或者也可以分布到多個網絡單元上。可以根據實際的需要選擇其中的部分或者全部單元來實現本實施例方案的目的。
另外,在本發明各個實施例中的各功能單元可以集成在一個處理單元中,也可以是各個單元單獨物理存在,也可以兩個或兩個以上單元集成在一個單元中。上述集成的單元既可以采用硬件的形式實現,也可以采用硬件加軟件功能單元的形式實現。
上述以軟件功能單元的形式實現的集成的單元,可以存儲在一個計算機可讀取存儲介質中。上述軟件功能單元存儲在一個存儲介質中,包括若干指令用以使得一臺計算機設備(可以是個人計算機,服務器,或者網絡設備等)或處理器(processor)執行本發明各個實施例所述方法的部分步驟。而前述的存儲介質包括:U盤、移動硬盤、只讀存儲器(Read-Only Memory,ROM)、隨機存取存儲器(Random Access Memory,RAM)、磁碟或者光盤等各種可以存儲程序代碼的介質。
最后應說明的是:以上實施例僅用以說明本發明的技術方案,而非對其限制;盡管參照前述實施例對本發明進行了詳細的說明,本領域的普通技術人員應當理解:其依然可以對前述各實施例所記載的技術方案進行修改,或者對其中部分技術特征進行等同替換;而這些修改或者替換,并不使相應技術方案的本質脫離本發明各實施例技術方案的精神和范圍。