基于動(dòng)態(tài)規(guī)劃的業(yè)務(wù)狀態(tài)轉(zhuǎn)移方法和系統(tǒng)的制作方法
【專利摘要】本發(fā)明公開了一種基于動(dòng)態(tài)規(guī)劃的業(yè)務(wù)狀態(tài)轉(zhuǎn)移方法和系統(tǒng),其中,所述方法包括:從數(shù)據(jù)庫(kù)中獲得用戶登錄業(yè)務(wù)流程時(shí)所在的當(dāng)前狀態(tài)節(jié)點(diǎn)的狀態(tài)值,并向用戶展示當(dāng)前狀態(tài)頁(yè)面;接收用戶輸入的當(dāng)前用戶操作,獲得相應(yīng)的操作標(biāo)識(shí)符;將所述當(dāng)前狀態(tài)的狀態(tài)值和所述操作標(biāo)識(shí)符作為輸入變量輸入到當(dāng)前狀態(tài)節(jié)點(diǎn)的狀態(tài)轉(zhuǎn)移方程,得到業(yè)務(wù)流程中對(duì)應(yīng)于所述用戶操作后的目標(biāo)狀態(tài)節(jié)點(diǎn)的狀態(tài)值;根據(jù)所述目標(biāo)狀態(tài)節(jié)點(diǎn)的狀態(tài)值更新數(shù)據(jù)庫(kù)中存儲(chǔ)的狀態(tài)值,并記錄所述用戶操作;和向所述用戶展示用戶操作后對(duì)應(yīng)的目標(biāo)狀態(tài)頁(yè)面。本發(fā)明通過(guò)狀態(tài)轉(zhuǎn)移方程自動(dòng)計(jì)算得到與用戶操作對(duì)應(yīng)的狀態(tài)節(jié)點(diǎn)的狀態(tài)值,向用戶提供了更好的操作體驗(yàn);并能夠更快地變更業(yè)務(wù)流程。
【專利說(shuō)明】
基于動(dòng)態(tài)規(guī)劃的業(yè)務(wù)狀態(tài)轉(zhuǎn)移方法和系統(tǒng)
技術(shù)領(lǐng)域
[0001]本發(fā)明涉及數(shù)據(jù)處理技術(shù)領(lǐng)域,具體地說(shuō),涉及一種基于動(dòng)態(tài)規(guī)劃的業(yè)務(wù)狀態(tài)轉(zhuǎn)移方法和系統(tǒng)。
【背景技術(shù)】
[0002]隨著互聯(lián)網(wǎng)技術(shù)的發(fā)展,出現(xiàn)了越來(lái)越多的基于互聯(lián)網(wǎng)的業(yè)務(wù),例如一些電子商業(yè)平臺(tái)推出的各種服務(wù),如客戶下單業(yè)務(wù)、物流業(yè)務(wù)、售后業(yè)務(wù)、外賣業(yè)務(wù)及團(tuán)購(gòu)業(yè)務(wù)等等。這些互聯(lián)網(wǎng)業(yè)務(wù)在逐個(gè)階段推進(jìn)的時(shí)候,為了方便用戶及業(yè)務(wù)人員了解當(dāng)前階段處于業(yè)務(wù)流程中的哪個(gè)環(huán)節(jié),設(shè)計(jì)人員對(duì)每個(gè)階段都會(huì)設(shè)置相應(yīng)的狀態(tài)及狀態(tài)值。
[0003]所述的狀態(tài)值用于使用戶得知自己當(dāng)前處于什么狀態(tài),這是一種常用的狀態(tài)表達(dá)方式,例如,最常見的在瀏覽網(wǎng)頁(yè)時(shí)候出現(xiàn)的404狀態(tài)、500狀態(tài)等等。另外,以電子商業(yè)平臺(tái)推出的服務(wù)中的客戶下單為例,客戶訂單這一業(yè)務(wù)的各個(gè)狀態(tài)依次為:待確認(rèn)-待付款-已付款-待出庫(kù)-已出庫(kù)-待接收-已完成,這些狀態(tài)構(gòu)成了一個(gè)完整的業(yè)務(wù)狀態(tài)鏈。同樣的,物流、售后、外賣和團(tuán)購(gòu)等業(yè)務(wù)也有自己的各個(gè)狀態(tài)及狀態(tài)鏈。
[0004]通過(guò)這些狀態(tài)可以讓用戶知道自己處于服務(wù)的哪個(gè)環(huán)節(jié),并可以根據(jù)相應(yīng)的狀態(tài)值知道當(dāng)前的狀態(tài)。通過(guò)設(shè)定的狀態(tài)值,可以使得設(shè)計(jì)人員和業(yè)務(wù)人員,服務(wù)商和用戶之間更好的理解和互動(dòng)。
[0005]而且,狀態(tài)值也可以記錄用戶的操作情況和狀態(tài)轉(zhuǎn)移情況,為后期的bug排除和業(yè)務(wù)改進(jìn)提供參考和記錄。
[0006]在現(xiàn)有技術(shù)中,互聯(lián)網(wǎng)業(yè)務(wù)提供方在進(jìn)行業(yè)務(wù)設(shè)計(jì)的時(shí)候提供好每個(gè)狀態(tài),為方便說(shuō)明,以下將每個(gè)狀態(tài)稱為一個(gè)狀態(tài)節(jié)點(diǎn)。設(shè)計(jì)人員和業(yè)務(wù)方溝通設(shè)定好每個(gè)狀態(tài)節(jié)點(diǎn)的狀態(tài)值。狀態(tài)值的設(shè)定為靜態(tài)設(shè)定,狀態(tài)變更的時(shí)候(即從一個(gè)狀態(tài)節(jié)點(diǎn)轉(zhuǎn)移到另一個(gè)狀態(tài)節(jié)點(diǎn)時(shí)),查表取得相應(yīng)的狀態(tài)值。表的結(jié)構(gòu)通常使用枚舉、map、list等結(jié)構(gòu),或者直接使用數(shù)據(jù)庫(kù)。例如圖1所示的狀態(tài)轉(zhuǎn)移示意圖和圖2所示的狀態(tài)表。在該業(yè)務(wù)中共有4個(gè)狀態(tài)節(jié)點(diǎn),狀態(tài)值分別為10、20、30和40。在狀態(tài)表中,不同的狀態(tài)節(jié)點(diǎn)分別對(duì)應(yīng)各自的狀態(tài)值。在狀態(tài)變更時(shí),通過(guò)狀態(tài)控制算法,在狀態(tài)表中根據(jù)具體的狀態(tài)節(jié)點(diǎn)獲得與其對(duì)應(yīng)的狀態(tài)值。
[0007]通過(guò)上述分析可知,現(xiàn)有技術(shù)中的狀態(tài)值是靜態(tài)的、離散的。每個(gè)業(yè)務(wù)的狀態(tài)節(jié)點(diǎn)一定要對(duì)應(yīng)相應(yīng)的狀態(tài)值,如果狀態(tài)值缺失或遺漏,業(yè)務(wù)進(jìn)行就會(huì)出現(xiàn)問(wèn)題。由于業(yè)務(wù)狀態(tài)值是靜態(tài)的,當(dāng)互聯(lián)網(wǎng)業(yè)務(wù)變更或業(yè)務(wù)流程調(diào)整的時(shí)候,需要重新捋順整個(gè)流程同時(shí)需要變更狀態(tài)值。由于用戶的操作與業(yè)務(wù)狀態(tài)沒有關(guān)聯(lián),每個(gè)業(yè)務(wù)的狀態(tài)節(jié)點(diǎn)孤立存在,當(dāng)用戶處于當(dāng)前的狀態(tài)節(jié)點(diǎn)時(shí),無(wú)法知道上一個(gè)狀態(tài)節(jié)點(diǎn)和下一個(gè)狀態(tài)節(jié)點(diǎn)的狀態(tài)值,業(yè)務(wù)人員和設(shè)計(jì)人員也需要根據(jù)業(yè)務(wù)流程才能知道上一個(gè)和下一個(gè)狀態(tài)值。
【發(fā)明內(nèi)容】
[0008]本發(fā)明要解決的技術(shù)問(wèn)題在于,根據(jù)現(xiàn)有技術(shù)的不足,提供一種基于動(dòng)態(tài)規(guī)劃的業(yè)務(wù)狀態(tài)轉(zhuǎn)移方法和系統(tǒng),通過(guò)狀態(tài)轉(zhuǎn)移方程,將互聯(lián)網(wǎng)業(yè)務(wù)流程中的各個(gè)狀態(tài)節(jié)點(diǎn)建立起關(guān)聯(lián),使得在互聯(lián)網(wǎng)業(yè)務(wù)推進(jìn)的過(guò)程中,根據(jù)當(dāng)前狀態(tài)節(jié)點(diǎn)的狀態(tài)值和用戶操作可以動(dòng)態(tài)取得業(yè)務(wù)流程中的當(dāng)前狀態(tài)節(jié)點(diǎn)之前或之后的狀態(tài)節(jié)點(diǎn)的狀態(tài)值。
[0009]為了解決上述的技術(shù)問(wèn)題,根據(jù)本發(fā)明的一個(gè)方面,本發(fā)明提供了一種基于動(dòng)態(tài)規(guī)劃的業(yè)務(wù)狀態(tài)轉(zhuǎn)移方法,其中,包括以下步驟:
[0010]從數(shù)據(jù)庫(kù)中獲得用戶登錄業(yè)務(wù)流程時(shí)所在的當(dāng)前狀態(tài)節(jié)點(diǎn)的狀態(tài)值,并向用戶展示當(dāng)前狀態(tài)頁(yè)面;
[0011]接收用戶輸入的當(dāng)前用戶操作,獲得相應(yīng)的操作標(biāo)識(shí)符;
[0012]將所述當(dāng)前狀態(tài)的狀態(tài)值和所述操作標(biāo)識(shí)符作為輸入變量輸入到當(dāng)前狀態(tài)節(jié)點(diǎn)的狀態(tài)轉(zhuǎn)移方程,得到業(yè)務(wù)流程中對(duì)應(yīng)于所述用戶操作后的目標(biāo)狀態(tài)節(jié)點(diǎn)的狀態(tài)值;
[0013]根據(jù)所述目標(biāo)狀態(tài)節(jié)點(diǎn)的狀態(tài)值更新數(shù)據(jù)庫(kù)中存儲(chǔ)的狀態(tài)值,并記錄所述用戶操作;和
[0014]向所述用戶展示用戶操作后對(duì)應(yīng)的目標(biāo)狀態(tài)頁(yè)面。
[0015]優(yōu)選地,在將所述當(dāng)前狀態(tài)的狀態(tài)值和所述操作標(biāo)識(shí)符作為輸入變量輸入到所述業(yè)務(wù)的狀態(tài)轉(zhuǎn)移方程之前,根據(jù)預(yù)設(shè)的業(yè)務(wù)流程判斷當(dāng)前狀態(tài)節(jié)點(diǎn)是否為業(yè)務(wù)流程中的最后一個(gè)狀態(tài)節(jié)點(diǎn);
[0016]如果當(dāng)前狀態(tài)節(jié)點(diǎn)不是最后一個(gè)狀態(tài)節(jié)點(diǎn),將所述當(dāng)前狀態(tài)節(jié)點(diǎn)的狀態(tài)值和所述操作標(biāo)識(shí)符作為輸入變量輸入到當(dāng)前狀態(tài)節(jié)點(diǎn)的狀態(tài)轉(zhuǎn)移方程;
[0017]如果當(dāng)前狀態(tài)節(jié)點(diǎn)是業(yè)務(wù)流程中的最后一個(gè)狀態(tài)節(jié)點(diǎn),結(jié)束狀態(tài)轉(zhuǎn)移。
[0018]優(yōu)選地,根據(jù)狀態(tài)節(jié)點(diǎn)的屬性,將所述當(dāng)前狀態(tài)的狀態(tài)值和所述操作標(biāo)識(shí)符作為輸入變量輸入到與其屬性相匹配的狀態(tài)轉(zhuǎn)移方程,用于得到目標(biāo)狀態(tài)節(jié)點(diǎn)的狀態(tài)值;所述狀態(tài)轉(zhuǎn)移方程在一種業(yè)務(wù)流程中為一種或多種。
[0019]優(yōu)選地,在業(yè)務(wù)流程中,所述目標(biāo)狀態(tài)節(jié)點(diǎn)為所述當(dāng)前狀態(tài)節(jié)點(diǎn)的之后或之前的狀態(tài)節(jié)點(diǎn)。
[0020]優(yōu)選地,當(dāng)所述目標(biāo)狀態(tài)節(jié)點(diǎn)為所述當(dāng)前狀態(tài)節(jié)點(diǎn)之前的狀態(tài)節(jié)點(diǎn)時(shí),通過(guò)從所述數(shù)據(jù)庫(kù)中的用戶操作日志中查詢與所述目標(biāo)狀態(tài)和/或當(dāng)前狀態(tài)對(duì)應(yīng)的在先用戶操作。
[0021]為了解決上述的技術(shù)問(wèn)題,根據(jù)本發(fā)明的另一個(gè)方面,本發(fā)明還提供了一種基于動(dòng)態(tài)規(guī)劃的業(yè)務(wù)狀態(tài)轉(zhuǎn)移系統(tǒng),其中,包括:
[0022]數(shù)據(jù)庫(kù),用于存儲(chǔ)業(yè)務(wù)流程中最新的狀態(tài)值及記錄有用戶操作的操作日志;
[0023]用戶操作獲取模塊,用于接收用戶輸入的用戶操作,并得到用戶操作標(biāo)識(shí)符;
[0024]當(dāng)前狀態(tài)值獲取模塊,用于從所述數(shù)據(jù)庫(kù)中獲取所述用戶當(dāng)前操作的業(yè)務(wù)流程中、上一次操作后的、當(dāng)前狀態(tài)節(jié)點(diǎn)的狀態(tài)值;和
[0025]狀態(tài)轉(zhuǎn)移處理模塊,用于將所述用戶操作標(biāo)識(shí)符和當(dāng)前狀態(tài)節(jié)點(diǎn)的狀態(tài)值作為輸入變量輸入到當(dāng)前狀態(tài)節(jié)點(diǎn)的狀態(tài)轉(zhuǎn)移方程,得到業(yè)務(wù)流程中對(duì)應(yīng)于所述用戶操作后的目標(biāo)狀態(tài)節(jié)點(diǎn)的狀態(tài)值,并用所述目標(biāo)狀態(tài)節(jié)點(diǎn)的狀態(tài)值更新數(shù)據(jù)庫(kù)中的狀態(tài)值,同時(shí)將所述用戶操作記錄在數(shù)據(jù)庫(kù)中的用戶操作日志中。
[0026]優(yōu)選地,所述系統(tǒng)還包括:
[0027]結(jié)束狀態(tài)判斷模塊,與所述當(dāng)前狀態(tài)值獲取模塊相連接,用于判斷當(dāng)前狀態(tài)節(jié)點(diǎn)是否為當(dāng)前業(yè)務(wù)流程中的最后狀態(tài)節(jié)點(diǎn)。
[0028]優(yōu)選地,所述狀態(tài)轉(zhuǎn)移處理模塊包括:
[0029]狀態(tài)轉(zhuǎn)移方程單元,用于根據(jù)當(dāng)前狀態(tài)節(jié)點(diǎn)的狀態(tài)轉(zhuǎn)移方程,以用戶操作標(biāo)識(shí)符和當(dāng)前狀態(tài)節(jié)點(diǎn)的狀態(tài)值作為輸入變量得到對(duì)應(yīng)于所述用戶操作后的目標(biāo)狀態(tài)節(jié)點(diǎn)的狀態(tài)值;
[0030]狀態(tài)值更新單元,與所述狀態(tài)轉(zhuǎn)移方程單元相連接,用于根據(jù)目標(biāo)狀態(tài)節(jié)點(diǎn)的狀態(tài)值更新數(shù)據(jù)庫(kù)中的狀態(tài)值;和
[0031 ]用戶操作記錄單元,與所述狀態(tài)轉(zhuǎn)移方程單元相連接,用于在數(shù)據(jù)庫(kù)中的用戶操作日志中記錄得到所述目標(biāo)狀態(tài)節(jié)點(diǎn)狀態(tài)值的用戶操作。
[0032]優(yōu)選地,所述系統(tǒng)還包括在先用戶操作獲取模塊,用于從所述數(shù)據(jù)庫(kù)中的用戶操作日志中查詢與所述目標(biāo)狀態(tài)節(jié)點(diǎn)的狀態(tài)值和/或當(dāng)前狀態(tài)節(jié)點(diǎn)的狀態(tài)值對(duì)應(yīng)的在先用戶操作。
[0033]優(yōu)選地,所述系統(tǒng)還包括狀態(tài)頁(yè)面推送模塊,與所述狀態(tài)轉(zhuǎn)移處理模塊相連接,用于根據(jù)所述目標(biāo)狀態(tài)節(jié)點(diǎn)的狀態(tài)值,向用戶推送相應(yīng)的狀態(tài)頁(yè)面。
[0034]本發(fā)明利用動(dòng)態(tài)規(guī)劃的思想,通過(guò)狀態(tài)轉(zhuǎn)移方程與互聯(lián)網(wǎng)業(yè)務(wù)流程相結(jié)合的方式,使整個(gè)業(yè)務(wù)流程清晰明了。通過(guò)狀態(tài)轉(zhuǎn)移方程,根據(jù)業(yè)務(wù)流程獲得的當(dāng)前狀態(tài)節(jié)點(diǎn)的狀態(tài)值及用戶的操作,可以自動(dòng)計(jì)算得到與用戶操作對(duì)應(yīng)的狀態(tài)節(jié)點(diǎn)的狀態(tài)值,并將相應(yīng)的狀態(tài)頁(yè)面呈現(xiàn)給用戶,給用戶更好的操作體驗(yàn)。其中,所述的與用戶操作對(duì)應(yīng)的狀態(tài)節(jié)點(diǎn)可以是當(dāng)前狀態(tài)的下一個(gè)狀態(tài)節(jié)點(diǎn),也可以是上一個(gè)狀態(tài)節(jié)點(diǎn)。對(duì)于業(yè)務(wù)人員來(lái)說(shuō),可以根據(jù)用戶的當(dāng)前狀態(tài)查詢得到下一個(gè)狀態(tài)和上一個(gè)狀態(tài)及對(duì)應(yīng)的用戶操作。而對(duì)于設(shè)計(jì)人員來(lái)說(shuō),由于業(yè)務(wù)人員和用戶的操作和狀態(tài)都是可以預(yù)知的,并且也有完整的用戶操作記錄,可以更好、更快的進(jìn)行業(yè)務(wù)流程的變更。
【附圖說(shuō)明】
[0035]通過(guò)參照以下附圖對(duì)本發(fā)明實(shí)施例的描述,本發(fā)明的上述以及其它目的、特征和優(yōu)點(diǎn)將更為清楚,在附圖中:
[0036]圖1為現(xiàn)有技術(shù)中的狀態(tài)轉(zhuǎn)移原理不意圖;
[0037]圖2為現(xiàn)有技術(shù)中的狀態(tài)與狀態(tài)值的結(jié)構(gòu)表示意圖;
[0038]圖3為本發(fā)明所述狀態(tài)轉(zhuǎn)移方法流程圖;
[0039]圖4為應(yīng)用本發(fā)明所述狀態(tài)轉(zhuǎn)移方法時(shí)的狀態(tài)轉(zhuǎn)移原理示意圖;
[0040]圖5為本發(fā)明所述狀態(tài)轉(zhuǎn)移系統(tǒng)的結(jié)構(gòu)原理圖;
[0041 ]圖6為本發(fā)明所述狀態(tài)轉(zhuǎn)移系統(tǒng)的實(shí)施例一的結(jié)構(gòu)原理圖;
[0042]圖7為本發(fā)明所述狀態(tài)轉(zhuǎn)移系統(tǒng)的實(shí)施例二的結(jié)構(gòu)原理圖;
[0043]圖8為本發(fā)明所述狀態(tài)轉(zhuǎn)移系統(tǒng)的實(shí)施例三的結(jié)構(gòu)原理圖;
[0044]圖9為本發(fā)明狀態(tài)轉(zhuǎn)移處理模塊的結(jié)構(gòu)原理圖。
[0045]圖10為本發(fā)明通過(guò)狀態(tài)轉(zhuǎn)移方程得到目標(biāo)狀態(tài)值的實(shí)施例一的流程圖;
[0046]圖11為本發(fā)明通過(guò)狀態(tài)轉(zhuǎn)移方程得到目標(biāo)狀態(tài)值的實(shí)施例二的狀態(tài)轉(zhuǎn)移原理圖示意圖;
[0047]圖12為本發(fā)明通過(guò)狀態(tài)轉(zhuǎn)移方程得到目標(biāo)狀態(tài)值的實(shí)施例二中的節(jié)點(diǎn)結(jié)構(gòu)原理示意圖;
[0048]圖13為本發(fā)明通過(guò)狀態(tài)轉(zhuǎn)移方程得到目標(biāo)狀態(tài)值的實(shí)施例二中的流程圖;
[0049]圖14為本發(fā)明通過(guò)狀態(tài)轉(zhuǎn)移方程得到目標(biāo)狀態(tài)值的實(shí)施例三的狀態(tài)轉(zhuǎn)移原理圖不意圖;和
[0050]圖15為本發(fā)明通過(guò)狀態(tài)轉(zhuǎn)移方程得到目標(biāo)狀態(tài)值的實(shí)施例二中的流程圖。
【具體實(shí)施方式】
[0051]以下基于實(shí)施例對(duì)本發(fā)明進(jìn)行描述,但是本發(fā)明并不僅僅限于這些實(shí)施例。在下文對(duì)本發(fā)明的細(xì)節(jié)描述中,詳盡描述了一些特定的細(xì)節(jié)部分。對(duì)本領(lǐng)域技術(shù)人員來(lái)說(shuō)沒有這些細(xì)節(jié)部分的描述也可以完全理解本發(fā)明。為了避免混淆本發(fā)明的實(shí)質(zhì),公知的方法、過(guò)程、流程沒有詳細(xì)敘述。另外附圖不一定是按比例繪制的。
[0052]附圖中的流程圖、框圖圖示了本發(fā)明實(shí)施例的系統(tǒng)、方法、裝置的可能的體系框架、功能和操作,流程圖和框圖上的方框可以代表一個(gè)模塊、程序段或僅僅是一段代碼,所述模塊、程序段和代碼都是用來(lái)實(shí)現(xiàn)規(guī)定邏輯功能的可執(zhí)行指令。也應(yīng)當(dāng)注意,所述實(shí)現(xiàn)規(guī)定邏輯功能的可執(zhí)行指令可以重新組合,從而生成新的模塊和程序段。因此附圖的方框以及方框順序只是用來(lái)更好的圖示實(shí)施例的過(guò)程和步驟,而不應(yīng)以此作為對(duì)發(fā)明本身的限制。
[0053]如圖3所示,為本發(fā)明提供的一種基于動(dòng)態(tài)規(guī)劃的業(yè)務(wù)狀態(tài)轉(zhuǎn)移方法,其中,包括以下步驟:
[0054]步驟SAl,登錄業(yè)務(wù)流程,得到當(dāng)前狀態(tài)節(jié)點(diǎn)的狀態(tài)值。所述的當(dāng)前狀態(tài)值通過(guò)用戶登錄業(yè)務(wù)流程時(shí),從數(shù)庫(kù)中得到。例如,對(duì)于客戶訂單這一業(yè)務(wù),一共由待確認(rèn)-待付款-已付款-待出庫(kù)-已出庫(kù)-待接受-已完成等狀態(tài)節(jié)點(diǎn)組成業(yè)務(wù)狀態(tài)鏈。如果用戶在上一次登錄時(shí)已確認(rèn)完訂單,但是未付款,則在當(dāng)前登錄時(shí),將“待付款”作為用戶的當(dāng)前狀態(tài)節(jié)點(diǎn)。登錄時(shí)的當(dāng)前狀態(tài)節(jié)點(diǎn)的狀態(tài)值,由上一次用戶操作確定并存儲(chǔ)在數(shù)據(jù)庫(kù)中。如果沒有上一次操作,則認(rèn)為上一次用戶操作標(biāo)識(shí)符為O。對(duì)應(yīng)上一次的用戶操作標(biāo)識(shí)符,與其對(duì)應(yīng)的狀態(tài)節(jié)點(diǎn)就是本次業(yè)務(wù)流程的初始狀態(tài)節(jié)點(diǎn)。
[0055]步驟SA2,根據(jù)所述狀態(tài)值,取得與所述狀態(tài)值對(duì)應(yīng)的狀態(tài)頁(yè)面。
[0056]步驟SA3,將與所述狀態(tài)值對(duì)應(yīng)的狀態(tài)頁(yè)面推送到前臺(tái)展示給用戶。
[0057]如果此時(shí)用戶輸入操作,則在步驟SA4,接收用戶當(dāng)前輸入的用戶操作,并取得對(duì)應(yīng)的用戶操作標(biāo)識(shí)符。所述用戶操作標(biāo)識(shí)符可以為數(shù)值、字母、字符或由數(shù)值、字母、字符等組成的字符串。通常情況下,將所述的用戶操作標(biāo)識(shí)符設(shè)置為數(shù)值,方便在狀態(tài)轉(zhuǎn)移方程中的運(yùn)用。
[0058]步驟SA5,將所述當(dāng)前狀態(tài)節(jié)點(diǎn)的狀態(tài)值和所述用戶操作標(biāo)識(shí)符作為輸入變量輸入到當(dāng)前節(jié)點(diǎn)對(duì)應(yīng)的狀態(tài)轉(zhuǎn)移方程,得到業(yè)務(wù)流程中對(duì)應(yīng)于所述用戶操作后的目標(biāo)狀態(tài)節(jié)點(diǎn)的狀態(tài)值。其中,狀態(tài)轉(zhuǎn)移方程可根據(jù)業(yè)務(wù)流程的不同而各不相同,即使在同一個(gè)業(yè)務(wù)流程中,根據(jù)不同的節(jié)點(diǎn)間的轉(zhuǎn)移條件,狀態(tài)節(jié)點(diǎn)對(duì)應(yīng)的狀態(tài)轉(zhuǎn)移方程也可能會(huì)不同。狀態(tài)轉(zhuǎn)移方程有兩個(gè)變量入口,一個(gè)狀態(tài)值,一個(gè)是用戶操作標(biāo)識(shí)符。根據(jù)這兩個(gè)已知量,經(jīng)過(guò)狀態(tài)轉(zhuǎn)移方程的計(jì)算,最終得到對(duì)應(yīng)于用戶操作的目標(biāo)狀態(tài)的狀態(tài)值。
[0059]步驟SA6,用所述目標(biāo)狀態(tài)的狀態(tài)值更新數(shù)據(jù)庫(kù)中存儲(chǔ)的狀態(tài)值,并在用戶操作日志中記錄所述用戶操作。數(shù)據(jù)庫(kù)中存儲(chǔ)的狀態(tài)值對(duì)應(yīng)于用戶最新的用戶操作,在用戶下次登錄該業(yè)務(wù)流程時(shí),將本次用戶操作的結(jié)果展示給用戶,并為下一次業(yè)務(wù)流程的推進(jìn)做好了準(zhǔn)備。
[0060]步驟SA7,將所述目標(biāo)狀態(tài)值對(duì)應(yīng)的狀態(tài)頁(yè)面展示給用戶。
[0061]其中,在步驟SA5計(jì)算與用戶操作對(duì)應(yīng)的目標(biāo)狀態(tài)節(jié)點(diǎn)的狀態(tài)值之前,判斷是否需要進(jìn)行狀態(tài)轉(zhuǎn)移,即判斷此時(shí)的狀態(tài)值是否可用,判斷方法是:根據(jù)預(yù)設(shè)的業(yè)務(wù)流程判斷當(dāng)前狀態(tài)節(jié)點(diǎn)是否為業(yè)務(wù)流程中的最后一個(gè)狀態(tài)節(jié)點(diǎn);如果當(dāng)前狀態(tài)節(jié)點(diǎn)不是最后一個(gè)狀態(tài)節(jié)點(diǎn),將所述當(dāng)前狀態(tài)節(jié)點(diǎn)的狀態(tài)值可用,可以進(jìn)行狀態(tài)轉(zhuǎn)移;如果當(dāng)前狀態(tài)節(jié)點(diǎn)是業(yè)務(wù)流程中的最后一個(gè)狀態(tài)節(jié)點(diǎn),則狀態(tài)值不可用,不能進(jìn)行狀態(tài)轉(zhuǎn)移,則結(jié)束狀態(tài)轉(zhuǎn)移。
[0062]在前述方法中可以看出,本發(fā)明將業(yè)務(wù)的狀態(tài)與用戶操作關(guān)聯(lián)起來(lái),在用戶輸入其操作后,便可以自動(dòng)得到用戶期望的狀態(tài)節(jié)點(diǎn)的狀態(tài)值。其中,根據(jù)用戶操作,目標(biāo)狀態(tài)可以是當(dāng)前狀態(tài)之后的狀態(tài),也可以是之前的狀態(tài)。例如,在當(dāng)前狀態(tài)為“待付款”時(shí),用戶進(jìn)行付款操作,則目標(biāo)狀態(tài)為“已付款” ο如果用戶進(jìn)行重新確認(rèn)訂單,則目標(biāo)狀態(tài)為“待確認(rèn)”,此時(shí)用戶可以調(diào)整選擇的商品并重新確認(rèn)。因而,本發(fā)明所述狀態(tài)轉(zhuǎn)移原理示意圖如圖4所示。例如,在狀態(tài)值為20的狀態(tài)節(jié)點(diǎn)時(shí),可以得到狀態(tài)值為30的狀態(tài)節(jié)點(diǎn),也可以反過(guò)來(lái)得到狀態(tài)值為10的狀態(tài)節(jié)點(diǎn)。不但可以從當(dāng)前的狀態(tài)節(jié)點(diǎn)轉(zhuǎn)移到相鄰的前一個(gè)或后一個(gè)狀態(tài)節(jié)點(diǎn),也可以轉(zhuǎn)移到業(yè)務(wù)流程中任何一個(gè)與用戶的操作相匹配的狀態(tài)節(jié)點(diǎn)。例如,可以從狀態(tài)值為10的狀態(tài)節(jié)點(diǎn)跳躍到狀態(tài)值為30或40的狀態(tài)。本發(fā)明中的狀態(tài)值不需要如現(xiàn)有技術(shù)一樣通過(guò)查表得到,而是通過(guò)狀態(tài)轉(zhuǎn)移方程計(jì)算得到,即本發(fā)明可以動(dòng)態(tài)取得某一業(yè)務(wù)中用戶的狀態(tài)節(jié)點(diǎn)的狀態(tài)值。
[0063]因而,在業(yè)務(wù)流程變更或調(diào)整的時(shí)候,只需要改變狀態(tài)轉(zhuǎn)移方程及轉(zhuǎn)移條件,不需要重新理順整個(gè)流程和變更狀態(tài)值,簡(jiǎn)便了設(shè)計(jì)過(guò)程,使得業(yè)務(wù)流程和設(shè)計(jì)流程更加健壯,改善用戶的體驗(yàn)。
[0064]本發(fā)明還提供了對(duì)應(yīng)的基于動(dòng)態(tài)規(guī)劃的業(yè)務(wù)狀態(tài)轉(zhuǎn)移系統(tǒng),如圖5所示。所述系統(tǒng)包括:
[0065]數(shù)據(jù)庫(kù)I,用于存儲(chǔ)業(yè)務(wù)流程中最新的狀態(tài)值及記錄有用戶操作的操作日志;
[0066]用戶操作獲取模塊2,用于接收用戶輸入的用戶操作,并得到操作標(biāo)識(shí)符;
[0067]當(dāng)前狀態(tài)值獲取模塊3,用于從所述數(shù)據(jù)庫(kù)I中獲取所述用戶當(dāng)前操作的業(yè)務(wù)流程中、上一次操作后的、當(dāng)前狀態(tài)節(jié)點(diǎn)的狀態(tài)值;和
[0068]狀態(tài)轉(zhuǎn)移處理模塊4,用于將所述用戶操作標(biāo)識(shí)符和當(dāng)前狀態(tài)節(jié)點(diǎn)的狀態(tài)值作為輸入變量輸入到當(dāng)前狀態(tài)節(jié)點(diǎn)的狀態(tài)轉(zhuǎn)移方程,得到業(yè)務(wù)流程中對(duì)應(yīng)于所述用戶操作后的目標(biāo)狀態(tài)節(jié)點(diǎn)的狀態(tài)值,并用所述目標(biāo)狀態(tài)節(jié)點(diǎn)的狀態(tài)值更新數(shù)據(jù)庫(kù)I中的狀態(tài)值,同時(shí)將所述用戶操作記錄在數(shù)據(jù)庫(kù)I中的用戶操作日志中。
[0069]另外,本發(fā)明所述的系統(tǒng)還包括狀態(tài)頁(yè)面推送模塊5,如圖6所示。與所述狀態(tài)轉(zhuǎn)移處理模塊3相連接,用于根據(jù)所述目標(biāo)狀態(tài)節(jié)點(diǎn)的狀態(tài)值,向用戶推送相應(yīng)的狀態(tài)頁(yè)面。
[0070]本發(fā)明所述的系統(tǒng)還包括結(jié)束狀態(tài)判斷模塊6,如圖7所示和/或在先操作獲取模塊7,如圖8所示。結(jié)束狀態(tài)判斷模塊6與所述當(dāng)前狀態(tài)值獲取模塊4和數(shù)據(jù)庫(kù)I相連接,用于判斷當(dāng)前狀態(tài)節(jié)點(diǎn)是否為當(dāng)前業(yè)務(wù)流程中的最后狀態(tài)節(jié)點(diǎn)。先操作獲取模塊7用于從所述數(shù)據(jù)庫(kù)中的用戶操作日志中查詢與所述目標(biāo)狀態(tài)節(jié)點(diǎn)的狀態(tài)值和/或當(dāng)前狀態(tài)節(jié)點(diǎn)的狀態(tài)值對(duì)應(yīng)的在先用戶操作。
[0071]其中,所述狀態(tài)轉(zhuǎn)移處理模塊4如圖9所示,包括:
[0072]狀態(tài)轉(zhuǎn)移方程單元41,用于根據(jù)當(dāng)前狀態(tài)節(jié)點(diǎn)的狀態(tài)轉(zhuǎn)移方程,以用戶操作標(biāo)識(shí)符和當(dāng)前狀態(tài)節(jié)點(diǎn)的狀態(tài)值作為輸入變量得到對(duì)應(yīng)于所述用戶操作后的目標(biāo)狀態(tài)節(jié)點(diǎn)的狀態(tài)值;
[0073]狀態(tài)值更新單元42,與所述狀態(tài)轉(zhuǎn)移方程單元41相連接,用于根據(jù)目標(biāo)狀態(tài)節(jié)點(diǎn)的狀態(tài)值更新數(shù)據(jù)庫(kù)中的狀態(tài)值;和
[0074]用戶操作記錄單元43,與所述狀態(tài)轉(zhuǎn)移方程單元41或用戶操作獲取模塊2相連接,用于在數(shù)據(jù)庫(kù)中的用戶操作日志中記錄得到所述目標(biāo)狀態(tài)節(jié)點(diǎn)狀態(tài)值的用戶操作,便于業(yè)務(wù)人員的查詢。
[0075]如圖10所示,為本發(fā)明通過(guò)狀態(tài)轉(zhuǎn)移方程得到目標(biāo)狀態(tài)值的實(shí)施例一的流程圖。在本發(fā)明中,對(duì)應(yīng)于用戶操作的目標(biāo)狀態(tài)節(jié)點(diǎn)的狀態(tài)值是根據(jù)狀態(tài)轉(zhuǎn)移方程動(dòng)態(tài)計(jì)算得至IJ。對(duì)應(yīng)于不同的業(yè)務(wù)流程和每個(gè)狀態(tài)節(jié)點(diǎn)的轉(zhuǎn)移條件不同,狀態(tài)轉(zhuǎn)移方程各不相當(dāng)。圖10所示流程圖為大部分業(yè)務(wù)流程的大部分狀態(tài)節(jié)點(diǎn)的轉(zhuǎn)移方法。將狀態(tài)轉(zhuǎn)移方程簡(jiǎn)化為F(n+l)=F(n)+0(m),其中,F(xiàn)(n)為狀態(tài)值函數(shù),0(m)為用戶操作函數(shù),前述的函數(shù)可以是一個(gè)方程或多個(gè)方程。因而狀態(tài)轉(zhuǎn)移方程具有兩個(gè)輸入入口,一個(gè)是狀態(tài)變量入口,一個(gè)是用戶操作變量入口,其中,F(xiàn)(n+1)為對(duì)應(yīng)于用戶操作0(m)的目標(biāo)狀態(tài)節(jié)點(diǎn)狀態(tài)值。具體流程圖下:
[0076]步驟SA51,將當(dāng)前狀態(tài)的狀態(tài)值和用戶操作標(biāo)識(shí)符分別賦予狀態(tài)轉(zhuǎn)移方程的F(n+l)=F(n)+0(m)。其中,當(dāng)前狀態(tài)的狀態(tài)值為數(shù)據(jù)中存儲(chǔ)的狀態(tài)值,具體為一數(shù)值,例如數(shù)值“20”。用戶操作標(biāo)識(shí)符為當(dāng)用戶選取設(shè)計(jì)人員設(shè)計(jì)好的某一操作(如某一個(gè)按鍵)時(shí),則會(huì)得到相應(yīng)的值或字符串,在本實(shí)施例中,用戶操作標(biāo)識(shí)符為數(shù)值,例如“10”。
[0077]步驟3六52,執(zhí)行狀態(tài)轉(zhuǎn)移方程,則?(11+1)=?(11)+0(111)=20+10= 30。
[0078]步驟SA53,將執(zhí)行狀態(tài)轉(zhuǎn)移方程的結(jié)果30作為目標(biāo)狀態(tài)節(jié)點(diǎn)的狀態(tài)值。
[0079]為了能夠進(jìn)行狀態(tài)轉(zhuǎn)移,除了前述的方法外,本發(fā)明中有的狀態(tài)轉(zhuǎn)移方程采用雙向鏈表的結(jié)構(gòu),如圖11所示,為本發(fā)明通過(guò)狀態(tài)轉(zhuǎn)移方程得到目標(biāo)狀態(tài)值的實(shí)施例二的狀態(tài)轉(zhuǎn)移原理圖示意圖。雙向鏈表可以用于對(duì)單一直線流程進(jìn)行狀態(tài)轉(zhuǎn)移,即每個(gè)節(jié)點(diǎn)有且只能有一個(gè)前節(jié)點(diǎn)和一個(gè)后節(jié)點(diǎn)。如圖12所示,為本發(fā)明通過(guò)狀態(tài)轉(zhuǎn)移方程得到目標(biāo)狀態(tài)值的實(shí)施例二中的節(jié)點(diǎn)結(jié)構(gòu)原理示意圖,每一個(gè)節(jié)點(diǎn)有一個(gè)信息數(shù)據(jù)域a和兩個(gè)指針域(或者稱為標(biāo)識(shí)位,每個(gè)狀態(tài)節(jié)點(diǎn)的標(biāo)識(shí)位各不同),指針ml為前向指針,m2為后向指針,指針提供了節(jié)點(diǎn)轉(zhuǎn)移的方向,如果一個(gè)節(jié)點(diǎn)的轉(zhuǎn)移條件符合指針ml,則從該節(jié)點(diǎn)向前轉(zhuǎn)移,如果一個(gè)節(jié)點(diǎn)的轉(zhuǎn)移條件符合指針m2,則從該節(jié)點(diǎn)向后轉(zhuǎn)移。
[0080]本發(fā)明利用雙向鏈表進(jìn)行狀態(tài)轉(zhuǎn)移的過(guò)程如圖13所示。
[0081]步驟SB51,將所述當(dāng)前狀態(tài)節(jié)點(diǎn)的狀態(tài)值賦予為雙向鏈表中當(dāng)前狀態(tài)節(jié)點(diǎn)信息域的初始數(shù)據(jù),所述從用戶操作標(biāo)識(shí)符得到的操作標(biāo)識(shí)符賦予為目標(biāo)狀態(tài)節(jié)點(diǎn)的指針值,在本實(shí)施例中,所述的用戶操作標(biāo)識(shí)符為數(shù)值。由于采用雙向鏈表時(shí),如果目標(biāo)狀態(tài)節(jié)點(diǎn)不是當(dāng)前狀態(tài)節(jié)點(diǎn)的相鄰節(jié)點(diǎn),需要進(jìn)行多次迭代,而迭代的終止條件則是用戶操作標(biāo)識(shí)符。
[0082]步驟SB52,比較用戶操作標(biāo)識(shí)符與當(dāng)前狀態(tài)節(jié)點(diǎn)的指針ml和m2,如果當(dāng)前狀態(tài)節(jié)點(diǎn)的指針ml大于用戶操作標(biāo)識(shí)符,則在步驟SB53,以前向指針ml作為轉(zhuǎn)移的狀態(tài)轉(zhuǎn)移方向,獲取當(dāng)前狀態(tài)節(jié)點(diǎn)的前一個(gè)狀態(tài)節(jié)點(diǎn)作為當(dāng)前計(jì)算節(jié)點(diǎn);如果當(dāng)前狀態(tài)節(jié)點(diǎn)的指針ml小于用戶操作標(biāo)識(shí)符,則在步驟SB56,以后向指針m2作為轉(zhuǎn)移的狀態(tài)轉(zhuǎn)移方向,獲取當(dāng)前狀態(tài)節(jié)點(diǎn)的后一個(gè)狀態(tài)節(jié)點(diǎn)作為當(dāng)前計(jì)算節(jié)點(diǎn)。
[0083]在步驟SB54和步驟SB57,根據(jù)狀態(tài)轉(zhuǎn)移方程計(jì)算得到當(dāng)前計(jì)算節(jié)點(diǎn)的信息域數(shù)據(jù)。例如以表達(dá)式F(n+l)=F(n)+0(m)為例,如果當(dāng)前狀態(tài)值F(2) = l,用戶操作帶過(guò)來(lái)的操作標(biāo)識(shí)符為5,而當(dāng)前節(jié)點(diǎn)的指針為2,則該流程需向后轉(zhuǎn)移,下一個(gè)相鄰節(jié)點(diǎn)的狀態(tài)值為F
(3)=F(2)+0(2) = l+5 = 6o
[0084]在步驟SB55和步驟SB58,比較當(dāng)前計(jì)算節(jié)點(diǎn)的指針值(標(biāo)識(shí)位的值)與所述用戶操作標(biāo)識(shí)符,如果二者相等,在步驟SB59,停止轉(zhuǎn)移,當(dāng)前計(jì)算狀態(tài)節(jié)點(diǎn)為目標(biāo)狀態(tài)節(jié)點(diǎn),前述當(dāng)前計(jì)算節(jié)點(diǎn)的信息域數(shù)據(jù)即為目標(biāo)狀態(tài)節(jié)點(diǎn)的狀態(tài)值。
[0085]如果二者不相等,返加步驟SB53或SB56,則繼續(xù)進(jìn)行迭代,直到當(dāng)前計(jì)算節(jié)點(diǎn)的指針值與所述用戶操作標(biāo)識(shí)符。如前述的例子,如果F(3)=6的狀態(tài)節(jié)點(diǎn)的指針(標(biāo)識(shí)位的值)為3,3〈5,所以,仍然需要進(jìn)行迭代、計(jì)算,直到得到指針等于用戶操作標(biāo)識(shí)符的狀態(tài)節(jié)點(diǎn)為值。
[0086]本發(fā)明還采用了另一種具體實(shí)現(xiàn)狀態(tài)轉(zhuǎn)移的方式,即有限狀態(tài)機(jī)。圖14為本發(fā)明通過(guò)狀態(tài)轉(zhuǎn)移方程得到目標(biāo)狀態(tài)值的實(shí)施例三的狀態(tài)轉(zhuǎn)移原理圖示意圖,采用有限狀態(tài)機(jī)的可以進(jìn)行多流程的狀態(tài)轉(zhuǎn)移。
[0087]圖15為本發(fā)明通過(guò)狀態(tài)轉(zhuǎn)移方程得到目標(biāo)狀態(tài)值的實(shí)施例二中的流程圖。具體如下:
[0088]步驟SC51,將所述當(dāng)前狀態(tài)節(jié)點(diǎn)的狀態(tài)值賦予為節(jié)點(diǎn)狀態(tài)值Sum的初始值。
[0089]步驟SC52,根據(jù)公式Sum(n+1) = Sum(n)+R(m),進(jìn)行計(jì)算,R(m)為用戶操作標(biāo)識(shí)符,在本實(shí)施例中,用戶操作標(biāo)識(shí)符為一數(shù)值;
[0090]步驟SC 5 3,判斷當(dāng)前計(jì)算的狀態(tài)節(jié)點(diǎn)的標(biāo)識(shí)位的值是否與用戶操作標(biāo)識(shí)符一致,如果一致,則在步驟SC54,該狀態(tài)節(jié)點(diǎn)就是目標(biāo)狀態(tài)節(jié)點(diǎn),則將所述狀態(tài)值Sum(n+1)作為目標(biāo)狀態(tài)節(jié)點(diǎn)的狀態(tài)值,如果不是,則返回步驟SC51繼續(xù)進(jìn)行計(jì)算,直到得到當(dāng)前計(jì)算的狀態(tài)節(jié)點(diǎn)的標(biāo)識(shí)位的值與用戶操作標(biāo)識(shí)符是否一致為止。
[0091]在前述兩個(gè)具體實(shí)施例中,采用雙向鏈表進(jìn)行狀態(tài)轉(zhuǎn)移時(shí)可以進(jìn)行直線轉(zhuǎn)移,而采用有限狀態(tài)機(jī)進(jìn)行狀態(tài)轉(zhuǎn)移時(shí)可以對(duì)具有分支的狀態(tài)節(jié)點(diǎn)進(jìn)行轉(zhuǎn)移。因而,當(dāng)結(jié)合這兩種方法進(jìn)行狀態(tài)轉(zhuǎn)移時(shí),便可以完成如圖14所示的狀態(tài)轉(zhuǎn)移圖。
[0092]在前述方法中,本發(fā)明給出了幾個(gè)具體的通過(guò)狀態(tài)轉(zhuǎn)移方程得到目標(biāo)狀態(tài)值的具體實(shí)現(xiàn)方式,本領(lǐng)域的技術(shù)人員應(yīng)該清楚,前述例子中的狀態(tài)轉(zhuǎn)移方程的數(shù)據(jù)表達(dá)式僅僅是一個(gè)例子,對(duì)于業(yè)務(wù)流程中的節(jié)點(diǎn),根據(jù)其類型、操作的條件等的不同設(shè)定不同的屬性,不同的屬性應(yīng)用不同的狀態(tài)轉(zhuǎn)移方程,因而,在進(jìn)行狀態(tài)轉(zhuǎn)移時(shí),需要根據(jù)狀態(tài)節(jié)點(diǎn)的屬性,該屬性可以設(shè)定的某些條件,如在該節(jié)點(diǎn),用戶不可以進(jìn)行取消操作,當(dāng)?shù)竭@個(gè)節(jié)點(diǎn)時(shí),繼續(xù)向下轉(zhuǎn)移。在所述狀態(tài)節(jié)點(diǎn)通過(guò)與其屬性相匹配的狀態(tài)轉(zhuǎn)移方程得到下一狀態(tài)節(jié)點(diǎn)的狀態(tài)值,如在一種業(yè)務(wù)流程中可以采用前述的實(shí)施例一中的方法,在某些節(jié)點(diǎn)采用實(shí)施例二或三中的方法,通過(guò)混合搭配使用這幾種方式來(lái)完成整個(gè)業(yè)務(wù)流程。在實(shí)施例二或三中進(jìn)行迭代時(shí),當(dāng)將從當(dāng)前狀態(tài)轉(zhuǎn)移到下一個(gè)狀態(tài)后,如果需要再進(jìn)行下一步轉(zhuǎn)移,則需要根據(jù)下一個(gè)狀態(tài)節(jié)點(diǎn)的狀態(tài)轉(zhuǎn)移方程進(jìn)行計(jì)算。
[0093]仍以前客戶訂單業(yè)務(wù)流程為例,該業(yè)務(wù)流程一共由:待確認(rèn)-待付款-已付款-待出庫(kù)-已出庫(kù)-待接受-已完成共7個(gè)狀態(tài)節(jié)點(diǎn)組成。在“待付款”狀態(tài)節(jié)點(diǎn),如果客戶選擇付款操作,假設(shè)此時(shí)的初始狀態(tài)值F(n) = 10,用戶付款操作0(n) = 10,當(dāng)客戶付款后,在一個(gè)狀態(tài)節(jié)點(diǎn)“已付款”的狀態(tài)值為(n+l)=20,該客戶的該訂單流程的到達(dá)“已付款”狀態(tài)節(jié)點(diǎn)。但是由于在財(cái)務(wù)審計(jì)時(shí)出現(xiàn)問(wèn)題,用戶款項(xiàng)實(shí)際未到賬,則此時(shí)該客戶的該訂單流程由狀態(tài)值為20的“已付款”狀態(tài)節(jié)點(diǎn)返回到F(n) = 10的“待付款”狀態(tài)節(jié)點(diǎn)。
[0094]本發(fā)明中的業(yè)務(wù)流程可以根據(jù)用戶的具體操作,如前述的用戶付款操作,或?qū)嶋H發(fā)生的轉(zhuǎn)移條件,如前述用戶款項(xiàng)實(shí)際未到賬,進(jìn)行狀態(tài)轉(zhuǎn)移并動(dòng)態(tài)地得到轉(zhuǎn)移后的狀態(tài)值。由于轉(zhuǎn)移后的狀態(tài)值自動(dòng)記錄在數(shù)據(jù)庫(kù)中,因而當(dāng)該業(yè)務(wù)流程根據(jù)轉(zhuǎn)移條件需要進(jìn)行轉(zhuǎn)移時(shí),便可以取得該狀態(tài)值,動(dòng)態(tài)地得到轉(zhuǎn)移后的狀態(tài)值,不再需要如現(xiàn)有技術(shù)一樣去設(shè)定狀態(tài)節(jié)點(diǎn)的狀態(tài)值。當(dāng)該業(yè)務(wù)流程需要更新時(shí),只需設(shè)定好增加的節(jié)點(diǎn)及其轉(zhuǎn)移條件,不再需要如現(xiàn)有技術(shù)一樣再去重新捋順整個(gè)業(yè)務(wù)流程。
[0095]本發(fā)明在用戶操作記錄日志中記錄了用戶的具體操作,因而,本發(fā)明可以從當(dāng)前狀態(tài)節(jié)點(diǎn)查詢得到前一狀態(tài)節(jié)點(diǎn)及其用戶操作,為業(yè)務(wù)人員提供了準(zhǔn)確、完整地用戶操作記錄。
[0096]以上所述僅為本發(fā)明的優(yōu)選實(shí)施例,并不用于限制本發(fā)明,對(duì)于本領(lǐng)域技術(shù)人員而言,本發(fā)明可以有各種改動(dòng)和變化。凡在本發(fā)明的精神和原理之內(nèi)所作的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。
【主權(quán)項(xiàng)】
1.一種基于動(dòng)態(tài)規(guī)劃的業(yè)務(wù)狀態(tài)轉(zhuǎn)移方法,其中,包括以下步驟: 從數(shù)據(jù)庫(kù)中獲得用戶登錄業(yè)務(wù)流程時(shí)所在的當(dāng)前狀態(tài)節(jié)點(diǎn)的狀態(tài)值,并向用戶展示當(dāng)前狀態(tài)頁(yè)面; 接收用戶輸入的當(dāng)前用戶操作,獲得相應(yīng)的操作標(biāo)識(shí)符; 將所述當(dāng)前狀態(tài)的狀態(tài)值和所述操作標(biāo)識(shí)符作為輸入變量輸入到當(dāng)前狀態(tài)節(jié)點(diǎn)的狀態(tài)轉(zhuǎn)移方程,得到業(yè)務(wù)流程中對(duì)應(yīng)于所述用戶操作后的目標(biāo)狀態(tài)節(jié)點(diǎn)的狀態(tài)值; 根據(jù)所述目標(biāo)狀態(tài)節(jié)點(diǎn)的狀態(tài)值更新數(shù)據(jù)庫(kù)中存儲(chǔ)的狀態(tài)值,并記錄所述用戶操作;和 向所述用戶展示用戶操作后對(duì)應(yīng)的目標(biāo)狀態(tài)頁(yè)面。2.如權(quán)利要求1所述的基于動(dòng)態(tài)規(guī)劃的業(yè)務(wù)狀態(tài)轉(zhuǎn)移方法,其中,在將所述當(dāng)前狀態(tài)的狀態(tài)值和所述操作標(biāo)識(shí)符作為輸入變量輸入到所述業(yè)務(wù)的狀態(tài)轉(zhuǎn)移方程之前,根據(jù)預(yù)設(shè)的業(yè)務(wù)流程判斷當(dāng)前狀態(tài)節(jié)點(diǎn)是否為業(yè)務(wù)流程中的最后一個(gè)狀態(tài)節(jié)點(diǎn); 如果當(dāng)前狀態(tài)節(jié)點(diǎn)不是最后一個(gè)狀態(tài)節(jié)點(diǎn),將所述當(dāng)前狀態(tài)節(jié)點(diǎn)的狀態(tài)值和所述操作標(biāo)識(shí)符作為輸入變量輸入到當(dāng)前狀態(tài)節(jié)點(diǎn)的狀態(tài)轉(zhuǎn)移方程;和 如果當(dāng)前狀態(tài)節(jié)點(diǎn)是業(yè)務(wù)流程中的最后一個(gè)狀態(tài)節(jié)點(diǎn),結(jié)束狀態(tài)轉(zhuǎn)移。3.如權(quán)利要求1或2所述的基于動(dòng)態(tài)規(guī)劃的業(yè)務(wù)狀態(tài)轉(zhuǎn)移方法,其中,根據(jù)狀態(tài)節(jié)點(diǎn)的屬性,將所述當(dāng)前狀態(tài)的狀態(tài)值和所述操作標(biāo)識(shí)符作為輸入變量輸入到與其屬性相匹配的狀態(tài)轉(zhuǎn)移方程,用于得到目標(biāo)狀態(tài)節(jié)點(diǎn)的狀態(tài)值;所述狀態(tài)轉(zhuǎn)移方程在一種業(yè)務(wù)流程中為一種或多種。4.如權(quán)利要求1所述的基于動(dòng)態(tài)規(guī)劃的業(yè)務(wù)狀態(tài)轉(zhuǎn)移方法,其中,在業(yè)務(wù)流程中,所述目標(biāo)狀態(tài)節(jié)點(diǎn)為所述當(dāng)前狀態(tài)節(jié)點(diǎn)的之后或之前的狀態(tài)節(jié)點(diǎn)。5.如權(quán)利要求4所述的基于動(dòng)態(tài)規(guī)劃的業(yè)務(wù)狀態(tài)轉(zhuǎn)移方法,其中,當(dāng)所述目標(biāo)狀態(tài)節(jié)點(diǎn)為所述當(dāng)前狀態(tài)節(jié)點(diǎn)之前的狀態(tài)節(jié)點(diǎn)時(shí),通過(guò)從所述數(shù)據(jù)庫(kù)中的用戶操作日志中查詢與所述目標(biāo)狀態(tài)和/或當(dāng)前狀態(tài)對(duì)應(yīng)的在先用戶操作。6.一種基于動(dòng)態(tài)規(guī)劃的業(yè)務(wù)狀態(tài)轉(zhuǎn)移系統(tǒng),其中,包括: 數(shù)據(jù)庫(kù),用于存儲(chǔ)業(yè)務(wù)流程中最新的狀態(tài)值及記錄有用戶操作的操作日志; 用戶操作獲取模塊,用于接收用戶輸入的用戶操作,并得到用戶操作標(biāo)識(shí)符; 當(dāng)前狀態(tài)值獲取模塊,用于從所述數(shù)據(jù)庫(kù)中獲取所述用戶當(dāng)前操作的業(yè)務(wù)流程中、上一次操作后的、當(dāng)前狀態(tài)節(jié)點(diǎn)的狀態(tài)值;和 狀態(tài)轉(zhuǎn)移處理模塊,用于將所述用戶操作標(biāo)識(shí)符和當(dāng)前狀態(tài)節(jié)點(diǎn)的狀態(tài)值作為輸入變量輸入到當(dāng)前狀態(tài)節(jié)點(diǎn)的狀態(tài)轉(zhuǎn)移方程,得到業(yè)務(wù)流程中對(duì)應(yīng)于所述用戶操作后的目標(biāo)狀態(tài)節(jié)點(diǎn)的狀態(tài)值,并用所述目標(biāo)狀態(tài)節(jié)點(diǎn)的狀態(tài)值更新數(shù)據(jù)庫(kù)中的狀態(tài)值,同時(shí)將所述用戶操作記錄在數(shù)據(jù)庫(kù)中的用戶操作日志中。7.如權(quán)利要求6所述的基于動(dòng)態(tài)規(guī)劃的業(yè)務(wù)狀態(tài)轉(zhuǎn)移系統(tǒng),其中,還包括: 結(jié)束狀態(tài)判斷模塊,與所述當(dāng)前狀態(tài)值獲取模塊相連接,用于判斷當(dāng)前狀態(tài)節(jié)點(diǎn)是否為當(dāng)前業(yè)務(wù)流程中的最后狀態(tài)節(jié)點(diǎn)。8.如權(quán)利要求6或7所述的基于動(dòng)態(tài)規(guī)劃的業(yè)務(wù)狀態(tài)轉(zhuǎn)移系統(tǒng),其中,所述狀態(tài)轉(zhuǎn)移處理模塊包括: 狀態(tài)轉(zhuǎn)移方程單元,用于根據(jù)當(dāng)前狀態(tài)節(jié)點(diǎn)的狀態(tài)轉(zhuǎn)移方程,以用戶操作標(biāo)識(shí)符和當(dāng)前狀態(tài)節(jié)點(diǎn)的狀態(tài)值作為輸入變量得到對(duì)應(yīng)于所述用戶操作后的目標(biāo)狀態(tài)節(jié)點(diǎn)的狀態(tài)值;狀態(tài)值更新單元,與所述狀態(tài)轉(zhuǎn)移方程單元相連接,用于根據(jù)目標(biāo)狀態(tài)節(jié)點(diǎn)的狀態(tài)值更新數(shù)據(jù)庫(kù)中的狀態(tài)值;和 用戶操作記錄單元,與所述狀態(tài)轉(zhuǎn)移方程單元相連接,用于在數(shù)據(jù)庫(kù)中的用戶操作日志中記錄得到所述目標(biāo)狀態(tài)節(jié)點(diǎn)狀態(tài)值的用戶操作。9.如權(quán)利要求6所述的基于動(dòng)態(tài)規(guī)劃的業(yè)務(wù)狀態(tài)轉(zhuǎn)移系統(tǒng),其中,還包括在先用戶操作獲取模塊,用于從所述數(shù)據(jù)庫(kù)中的用戶操作日志中查詢與所述目標(biāo)狀態(tài)節(jié)點(diǎn)的狀態(tài)值和/或當(dāng)前狀態(tài)節(jié)點(diǎn)的狀態(tài)值對(duì)應(yīng)的在先用戶操作。10.如權(quán)利要求6所述的基于動(dòng)態(tài)規(guī)劃的業(yè)務(wù)狀態(tài)轉(zhuǎn)移系統(tǒng),其中,還包括狀態(tài)頁(yè)面推送模塊,與所述狀態(tài)轉(zhuǎn)移處理模塊相連接,用于根據(jù)所述目標(biāo)狀態(tài)節(jié)點(diǎn)的狀態(tài)值,向用戶推送相應(yīng)的狀態(tài)頁(yè)面。
【文檔編號(hào)】G06Q10/10GK105894179SQ201610187595
【公開日】2016年8月24日
【申請(qǐng)日】2016年3月29日
【發(fā)明人】戰(zhàn)勇, 林祝慶
【申請(qǐng)人】北京京東尚科信息技術(shù)有限公司, 北京京東世紀(jì)貿(mào)易有限公司