本發(fā)明設(shè)計(jì)了一種基于物理運(yùn)輸管理軟件的憑證對(duì)象重復(fù)性檢查流程。該流程會(huì)在憑證對(duì)象新建時(shí)被自動(dòng)觸發(fā),基于該流程的業(yè)務(wù)、財(cái)務(wù)憑證編輯界面,在設(shè)置憑證對(duì)象時(shí),即能夠從系統(tǒng)里面選擇已有的憑證對(duì)象,也能夠通過(guò)直接輸入的方式生成零時(shí)的憑證對(duì)象,而重復(fù)性檢查機(jī)制保證了憑證對(duì)象數(shù)據(jù)的一致性,避免了同一個(gè)對(duì)象重復(fù)建設(shè)。相對(duì)于現(xiàn)有管理軟件的處理方式,一方面更大程度地保障了數(shù)據(jù)的正確性,另一方面,又提供了用戶(hù)操作的便利性和憑證流程的效率。
背景技術(shù):
:
本發(fā)明基于的背景技術(shù)是:道森系列物流管理軟件,這是一種用于物流運(yùn)輸管理的綜合型管理軟件。和其他綜合型管理軟件一樣,該管理軟件具有業(yè)務(wù)憑證和財(cái)務(wù)憑證一體化的功能,即能夠生成和管理普通的業(yè)務(wù)憑證,比如托運(yùn)單、中轉(zhuǎn)單等等,也能夠生成和管理財(cái)務(wù)單據(jù)。財(cái)務(wù)憑證和業(yè)務(wù)憑證在新建時(shí),需要設(shè)置正確的憑證對(duì)象,比如托運(yùn)單中的發(fā)貨方和收貨方,再比如中轉(zhuǎn)單中的運(yùn)輸合作方。
憑證對(duì)象設(shè)置有兩種方式:
第一種方法:新建憑證的時(shí)候,直接在憑證中輸入新的憑證對(duì)象的信息:比如:姓名、電話(huà)號(hào)碼等,新的憑證在保存后,后臺(tái)會(huì)自動(dòng)生成臨時(shí)對(duì)象信息。
第二種方法:新建憑證以前,系統(tǒng)里面已經(jīng)維護(hù)好了對(duì)象的信息,比如各個(gè)客戶(hù)信息和中轉(zhuǎn)合作方的信息,在新建憑證的時(shí)候,直接從系統(tǒng)里面選取。
第一種方法在操作上比較便利,符合人們填寫(xiě)單據(jù)的習(xí)慣,但存在同一個(gè)對(duì)象重復(fù)錄入的問(wèn)題,第二種方法能夠較大程度地保證對(duì)象數(shù)據(jù)的一致性,但流程操作比較繁瑣。
道森系列物流管理軟件,為了同時(shí)實(shí)現(xiàn)操作上的便利型,又保證數(shù)據(jù)的一致性,采用了兩種設(shè)置兼容的方式。即:新建憑證時(shí),既可以臨時(shí)輸入對(duì)象信息,系統(tǒng)通過(guò)相關(guān)的重復(fù)性檢測(cè)機(jī)制,檢測(cè)重復(fù)性并且提示用戶(hù)對(duì)重復(fù)的對(duì)象數(shù)據(jù)進(jìn)行處理,同時(shí),系統(tǒng)也提供了界面,讓用戶(hù)選擇系統(tǒng)中已經(jīng)有的憑證對(duì)象。
根據(jù)前面所述:兩種對(duì)象設(shè)置的方式的兼容式使用,使得用戶(hù)的操作更加靈活簡(jiǎn)便。但是憑證中臨時(shí)輸入并產(chǎn)生對(duì)象數(shù)據(jù),會(huì)帶來(lái)重復(fù)生成對(duì)象的風(fēng)險(xiǎn)。
比如,有這樣的應(yīng)用場(chǎng)景:物流管理軟件新建托運(yùn)單時(shí),需要設(shè)置的發(fā)貨方為“百事可樂(lè)(中國(guó))有限公司”,在無(wú)法確定這個(gè)發(fā)貨方對(duì)象在系列里是否存在的情況下,正確的操作方式是:用戶(hù)首先需要使用第二種對(duì)象設(shè)置方式:在系統(tǒng)里面先選擇已有的對(duì)象:搜索有沒(méi)有這個(gè)″百事可樂(lè)(中國(guó))有限公司“存在,如果沒(méi)有,則可以直接在運(yùn)單里面輸入對(duì)象的信息,如果已經(jīng)有了,則需要用戶(hù)選擇已有的對(duì)象。
實(shí)際操作中,操作人員有可能為了快速下單、圖方便,或者對(duì)系統(tǒng)功能不熟悉,直接在運(yùn)單里面輸入零時(shí)的發(fā)貨方信息,比如輸入的名稱(chēng)為:“百事可樂(lè)中國(guó)有限公司”,在保存運(yùn)單時(shí),系統(tǒng)就會(huì)生成新的憑證對(duì)象:“百事可樂(lè)中國(guó)有限公司”。這樣系統(tǒng)里面就會(huì)存在兩個(gè)對(duì)象,“百事可樂(lè)(中國(guó))有限公司”和“百事可樂(lè)中國(guó)有限公司”,造成對(duì)象的重復(fù)錄入,形成的數(shù)據(jù)錯(cuò)誤和信息紊亂:當(dāng)季度結(jié)束或者年終統(tǒng)計(jì)各個(gè)客戶(hù)、即各個(gè)憑證對(duì)象的財(cái)務(wù)情況時(shí),本來(lái)應(yīng)該記在一個(gè)對(duì)象上的費(fèi)用等數(shù)據(jù)信息,被分散到了幾個(gè)不同的對(duì)象上。
現(xiàn)有的管理軟件的應(yīng)對(duì)方式和效果:
現(xiàn)有的中大型企業(yè)管理軟件,更加重視數(shù)據(jù)的正確和完整,為了避免客戶(hù)數(shù)據(jù)的重復(fù)輸入,采用了單 一的客戶(hù)信息維護(hù)渠道,屏蔽了憑證中零時(shí)對(duì)象輸入的功能,即:在業(yè)務(wù)數(shù)據(jù)輸入以前,在客戶(hù)信息管理界面,由特殊權(quán)限的管理人員,統(tǒng)一維護(hù)客戶(hù)信息。然后才能由其他的業(yè)務(wù)人員填寫(xiě)相關(guān)的憑證,并且在憑證新建時(shí),只允許選擇系統(tǒng)里面已經(jīng)有的客戶(hù)信息。
憑證對(duì)象的單一維護(hù)渠道,雖然一定程度上降低了對(duì)象信息重復(fù)錄入的概率,但是仍然存在著下面的弊端:
1.流程復(fù)雜,操作不簡(jiǎn)便、效率不高:所有的憑證在建立以前,必須由系統(tǒng)管理員統(tǒng)一錄入客戶(hù)信息。而由于客戶(hù)信息具有更強(qiáng)的敏感性,統(tǒng)一管理客戶(hù)信息的任務(wù),一般由更高權(quán)限的業(yè)務(wù)經(jīng)理或者系統(tǒng)管理員擔(dān)當(dāng)。業(yè)務(wù)單據(jù)的輸入、客戶(hù)信息數(shù)據(jù)的輸入,分別由不同的用戶(hù)實(shí)施,協(xié)同性容易出現(xiàn)瓶頸。特別當(dāng)企業(yè)業(yè)務(wù)量比較大,不斷有新的客戶(hù)增加時(shí),這個(gè)流程管理方式就變得很不方便,影響效率。
2.不能從根本上杜絕憑證對(duì)象重復(fù)建立的問(wèn)題:根據(jù)現(xiàn)有管理軟件的使用經(jīng)驗(yàn),即使是采取了客戶(hù)信息統(tǒng)一管理的方式,當(dāng)業(yè)務(wù)數(shù)量巨大時(shí),不少系統(tǒng)管理員在輸入客戶(hù)數(shù)據(jù)時(shí),由于疏忽,也會(huì)輸入重復(fù)的客戶(hù)數(shù)據(jù),比如前面的例子:“百事可樂(lè)(中國(guó))有限公司”,又被重復(fù)地輸入成了“百事可樂(lè)中國(guó)有限公司”,系統(tǒng)里面還是錯(cuò)誤地生成了兩個(gè)客戶(hù)數(shù)據(jù),業(yè)務(wù)員在新建憑證時(shí),依然會(huì)選擇錯(cuò)誤的對(duì)象,本來(lái)都應(yīng)該記錄在一個(gè)客戶(hù)上的憑證,被分到了兩個(gè)客戶(hù)的頭上,造成數(shù)據(jù)錯(cuò)誤。
技術(shù)實(shí)現(xiàn)要素:
:
本發(fā)明的內(nèi)容包括涉及到三個(gè)方面:一是對(duì)象新建時(shí)的流程控制,二是憑證對(duì)象后期掃描和糾錯(cuò)流程,三是系統(tǒng)框架向用戶(hù)開(kāi)放,用戶(hù)擴(kuò)展自定義重復(fù)性檢查邏輯。
圖1描述了對(duì)象新建的流程控制,包括幾個(gè)方面的內(nèi)容:憑證對(duì)象新建渠道,對(duì)象重復(fù)性檢查機(jī)制,用戶(hù)交互操作接口,后臺(tái)操作。
其中對(duì)象新建的入口渠道,是指管理軟件中通過(guò)哪些界面能夠允許客戶(hù)新建憑證對(duì)象信息。為了使得操作更加靈活便利,本發(fā)明允許多種渠道建立新的客戶(hù)信息。既可以由管理人員從客戶(hù)信息管理界面統(tǒng)一維護(hù),也可以在憑證新建時(shí)零時(shí)生成新的對(duì)象信息。
所有憑證對(duì)象的新建渠道,都會(huì)觸發(fā)統(tǒng)一的憑證對(duì)象重復(fù)性檢查,在這個(gè)階段,新的憑證對(duì)象信息會(huì)和系統(tǒng)中已有的對(duì)象信息進(jìn)行一一比對(duì),檢查可能出現(xiàn)的重復(fù)性,判斷重復(fù)性的依據(jù)是核心的“重復(fù)性檢查邏輯”,一方面,軟件框架會(huì)提供系統(tǒng)標(biāo)準(zhǔn)的對(duì)象重復(fù)性檢查邏輯,提供了重復(fù)性檢查的常用的邏輯:比如通過(guò)比較電話(huà)號(hào)碼的一致性,通過(guò)比較名字字符串的相似程度,來(lái)判斷當(dāng)前輸入的憑證對(duì)象是否和系統(tǒng)中存在的對(duì)象具有重復(fù)性。另一方面,客戶(hù)可以基于自己的流程需求,自定義檢查邏輯,并且納入系統(tǒng)框架中統(tǒng)一管理。
當(dāng)系統(tǒng)能夠找到可能有重復(fù)性沖突的對(duì)象時(shí),框架會(huì)提供一個(gè)用戶(hù)交互的接口,讓用戶(hù)選擇后續(xù)的操作,實(shí)際使用過(guò)程中,會(huì)調(diào)用憑證對(duì)象的合并提示對(duì)象框,提示是否將當(dāng)前的新輸入對(duì)象信息,合并到已有的重復(fù)性的對(duì)象中去,如果用戶(hù)選擇“合并”的選項(xiàng),則最終操作的效果和用戶(hù)選擇系統(tǒng)中已有的憑證對(duì)象效果一致,將不會(huì)生成新的對(duì)象信息。如果選擇“忽略”的選項(xiàng),表示用戶(hù)選擇強(qiáng)行建立新的憑證對(duì)象。
圖2描述了道森物流管理軟件基于憑證對(duì)象檢查流程上提供的第二個(gè)功能:即憑證對(duì)象后期掃描和糾錯(cuò)功能,圖2是該功能的流程示意圖:包括幾個(gè)方面的內(nèi)容:用戶(hù)接口,對(duì)象重復(fù)性檢查機(jī)制,用戶(hù)交互操作接口,后臺(tái)操作。
首先在憑證對(duì)象管理中心,提供了用戶(hù)界面入口,能夠觸發(fā)憑證對(duì)象重復(fù)性檢查和糾錯(cuò)的入口,用戶(hù)可以定期掃描系統(tǒng)中所有的客戶(hù)信息存在重復(fù)建設(shè)的風(fēng)險(xiǎn)。然后調(diào)用統(tǒng)一的對(duì)象重復(fù)性檢查機(jī)制進(jìn)行重復(fù)性檢查,這里的對(duì)象重復(fù)性檢查機(jī)制和前面的憑證對(duì)象新建流程控制中的重復(fù)性檢查機(jī)制是一個(gè)東西。
當(dāng)憑證對(duì)象管理中心,通過(guò)重復(fù)性檢查功能檢查到系統(tǒng)里面可能出現(xiàn)的重復(fù)性客戶(hù)信息,會(huì)在憑證對(duì)象列表信息里面顯示重復(fù)性狀態(tài),如圖4展示了“客戶(hù)信息中心”里面,在進(jìn)行了檢查后的客戶(hù)的“重復(fù)性狀態(tài)”?!凹t叉”的圖標(biāo)表示該用戶(hù)存在“重復(fù)性”危險(xiǎn)。
對(duì)有問(wèn)題的客戶(hù),點(diǎn)擊“紅叉”圖標(biāo),系統(tǒng)會(huì)彈出對(duì)話(huà)框,提示用戶(hù)選擇后續(xù)的操作,如果用戶(hù)選擇 重復(fù)的用戶(hù)信息合并,系統(tǒng)需要進(jìn)行相關(guān)的后臺(tái)操作:首先將客戶(hù)信息合并,其次,把客戶(hù)信息對(duì)應(yīng)的所有相關(guān)的憑證合并,包括業(yè)務(wù)憑證和財(cái)務(wù)憑證。
憑證對(duì)象后期掃描和糾錯(cuò)功能,為用戶(hù)提供了定期檢查憑證對(duì)象重復(fù)性和糾錯(cuò)的可能性,從根本上杜絕了對(duì)象重復(fù)性建立、對(duì)象數(shù)據(jù)錯(cuò)誤的問(wèn)題。
系統(tǒng)除了能提供標(biāo)準(zhǔn)的憑證對(duì)象重復(fù)性檢查邏輯,同時(shí)也針對(duì)不同客戶(hù)的特殊需求,提供了標(biāo)準(zhǔn)接口,供用戶(hù)自定義憑證對(duì)象重復(fù)性檢查邏輯。
用戶(hù)自定義邏輯實(shí)現(xiàn)的流程如下:
首先用戶(hù)需要新建重復(fù)性判斷邏輯類(lèi)來(lái)實(shí)現(xiàn)自己的對(duì)象重復(fù)判斷邏輯,該類(lèi)必須實(shí)現(xiàn)標(biāo)準(zhǔn)接口類(lèi)IAccountDuplicateCheckLogicCore,并放在源代碼的包下面[platform.foundation.LogicManager.Account.DuplicateCheck]。該實(shí)現(xiàn)類(lèi)必須實(shí)現(xiàn)的核心方法checkDuplicateAccount包含了用戶(hù)自己的憑證對(duì)象重復(fù)性檢查邏輯。
第二:用戶(hù)需要在系統(tǒng)設(shè)置界面里面,把前面自定義的邏輯實(shí)現(xiàn)類(lèi)注冊(cè)為重復(fù)性檢查實(shí)現(xiàn)資源,該資源包含了下面一些功能設(shè)置:
憑證對(duì)象類(lèi)型:系統(tǒng)提供了以下幾種類(lèi)型的憑證對(duì)象:企業(yè)型客戶(hù),個(gè)人型客戶(hù),物流合作方,外掛司機(jī),內(nèi)部員工。每一種對(duì)象重復(fù)性檢查邏輯只適應(yīng)于一種特定類(lèi)型的憑證對(duì)象,而一種憑證對(duì)象類(lèi)型可以對(duì)應(yīng)多種重復(fù)性檢查邏輯。
邏輯關(guān)系:一種憑證對(duì)象類(lèi)型可以對(duì)應(yīng)多種重復(fù)性檢查邏輯,而不同的邏輯之間按照一定邏輯關(guān)系結(jié)合在一起,共同實(shí)現(xiàn)最終重復(fù)性的判斷。邏輯關(guān)系分為“邏輯和”和“邏輯與”?!斑壿嫽颉钡年P(guān)系:針對(duì)同一種對(duì)象類(lèi)型,滿(mǎn)足任何一種“邏輯或”類(lèi)型判斷邏輯即可以判斷憑證對(duì)象狀態(tài)為重復(fù);“邏輯或”的關(guān)系:針對(duì)同一種對(duì)象類(lèi)型,所有“邏輯與”類(lèi)型的邏輯條件滿(mǎn)足才能判斷該憑證對(duì)象為重復(fù)。
開(kāi)關(guān):可以通過(guò)設(shè)置開(kāi)關(guān)的開(kāi)和關(guān)來(lái)啟動(dòng)和屏蔽這種判斷重復(fù)性邏輯。
執(zhí)行順序:不同判斷邏輯關(guān)系資源的前后執(zhí)行順序,數(shù)組越小,表示先執(zhí)行。對(duì)于“邏輯與”類(lèi)型的判斷邏輯資源,沒(méi)有實(shí)際作用,但是對(duì)于“邏輯或”類(lèi)型的判斷邏輯資源,越先執(zhí)行決定判斷優(yōu)先級(jí)別更高。
附圖說(shuō)明:
圖1展示了憑證對(duì)象新建時(shí)的重復(fù)性檢查流程。
圖2展示了在憑證對(duì)象中心,主動(dòng)觸發(fā)對(duì)象重復(fù)性檢查和糾錯(cuò)的實(shí)現(xiàn)流程。
圖3是物流運(yùn)輸管理軟件中,托運(yùn)單新建時(shí),觸發(fā)對(duì)象重復(fù)性檢查的操作示意圖。
圖4是在客戶(hù)信息中心里面,主動(dòng)觸發(fā)客戶(hù)對(duì)象性檢查后的界面
圖5是在客戶(hù)信息中心里面,對(duì)有重復(fù)性危險(xiǎn)的客戶(hù)進(jìn)行后續(xù)處理的界面。
圖6為系統(tǒng)設(shè)置中:《憑證對(duì)象設(shè)置》模塊中,對(duì)象重復(fù)性判斷邏輯資源的列表頁(yè)面。
圖7為系統(tǒng)設(shè)置中:《憑證對(duì)象設(shè)置》模塊中,對(duì)象重復(fù)性判斷邏輯資源的編輯界面。
圖8展示了一個(gè)簡(jiǎn)單的重復(fù)性判斷邏輯類(lèi)的代碼。
具體實(shí)施方式:
系統(tǒng)的實(shí)施過(guò)程,包含三個(gè)方面的內(nèi)容:一是憑證對(duì)象新建時(shí)如何觸發(fā)憑證對(duì)象重復(fù)性檢查流程;二是在憑證對(duì)象中心,如何主動(dòng)觸發(fā)對(duì)象的重復(fù)性檢查和糾錯(cuò);三是用戶(hù)擴(kuò)展自己的憑證對(duì)象重復(fù)性檢查邏輯的實(shí)施。
憑證新建時(shí)對(duì)象生成的重復(fù)性檢查流程:
業(yè)務(wù)和財(cái)務(wù)憑證在新建時(shí),如果會(huì)新增憑證對(duì)象,都會(huì)自動(dòng)觸發(fā)憑證對(duì)象新建重復(fù)性檢查流程。比如:新建運(yùn)單時(shí),如果發(fā)貨方或者收貨方是新客戶(hù),除了通過(guò)按鈕“選擇老客戶(hù)”,選擇已有的客戶(hù)信息,用 戶(hù)可以在運(yùn)單的編輯界面直接輸入客戶(hù)信息,比如客戶(hù)名稱(chēng),聯(lián)系電話(huà),地址信息等。如圖3所示,用戶(hù)直接在運(yùn)單中直接輸入發(fā)貨方的名稱(chēng)“百事可樂(lè)成都工廠”。當(dāng)運(yùn)單保存時(shí),系統(tǒng)會(huì)觸發(fā)憑證對(duì)象重復(fù)性檢查流程,當(dāng)發(fā)現(xiàn)和系統(tǒng)已有客戶(hù)對(duì)象信息出現(xiàn)重復(fù)性危險(xiǎn)時(shí),會(huì)彈出重復(fù)性提醒對(duì)話(huà)框,并列舉所有可能有重復(fù)風(fēng)險(xiǎn)的對(duì)象列表,以提示用戶(hù)是否需要進(jìn)行憑證對(duì)象合并操作。
用戶(hù)可以在對(duì)話(huà)框中選擇是否當(dāng)前新建的客戶(hù)信息和系統(tǒng)中已有的客戶(hù)信息進(jìn)行合并。操作方式為:選擇對(duì)話(huà)框中已有的老客戶(hù)信息,如圖3中的:“百事可樂(lè)(中國(guó))成都工廠”,并點(diǎn)擊“合并”按鈕。則新建的托運(yùn)單發(fā)貨方設(shè)置為老的客戶(hù)信息:“百事可樂(lè)(中國(guó))成都工廠”,新的客戶(hù)信息“百事可樂(lè)成都工廠”不會(huì)被生成。
用戶(hù)在對(duì)話(huà)框中也可以直接選擇“忽略”操作:則該新對(duì)象會(huì)被強(qiáng)行建立,則系統(tǒng)里面會(huì)同時(shí)出現(xiàn)“百事可樂(lè)(中國(guó))成都工廠”和“百事可樂(lè)成都工廠”兩個(gè)客戶(hù)信息,新建的托運(yùn)單發(fā)貨方設(shè)置為新的客戶(hù)“百事可樂(lè)成都工廠”。
另一方面,憑證對(duì)象管理中心,新建憑證對(duì)象時(shí),也會(huì)觸發(fā)憑證對(duì)象新增重復(fù)性檢查流程。比如:在客戶(hù)信息管理中,新建客戶(hù)信息時(shí),也會(huì)同樣地觸發(fā)憑證對(duì)象重復(fù)性檢查機(jī)制,比如,輸入客戶(hù)名稱(chēng)為:“百事可樂(lè)成都工廠”,當(dāng)客戶(hù)信息保存時(shí),系統(tǒng)會(huì)觸發(fā)憑證對(duì)象重復(fù)性檢查流程,當(dāng)發(fā)現(xiàn)和系統(tǒng)已有客戶(hù)對(duì)象信息出現(xiàn)重復(fù)性危險(xiǎn)時(shí),會(huì)同樣彈出重復(fù)性提醒對(duì)話(huà)框,并列舉所有可能有重復(fù)風(fēng)險(xiǎn)的對(duì)象列表,用戶(hù)后續(xù)可以進(jìn)行“合并”和“忽略”的操作,界面和功能和前面介紹的一樣。
用戶(hù)主動(dòng)觸發(fā)憑證對(duì)象重復(fù)性檢查和糾錯(cuò)流程:
在各個(gè)憑證對(duì)象管理中心,比如客戶(hù)信息中心、運(yùn)輸合作方信息中心,都有“重復(fù)性檢查”按鈕,如圖4所示,用戶(hù)可以主動(dòng)憑證對(duì)象重復(fù)性檢查,當(dāng)檢查完畢后,比如:在客戶(hù)信息中心,會(huì)有一列“重復(fù)性狀態(tài)”專(zhuān)門(mén)用來(lái)顯示憑證對(duì)象檢查后的重復(fù)性狀態(tài)。如果有重復(fù)性風(fēng)險(xiǎn)的客戶(hù),會(huì)出現(xiàn)“紅叉”的圖標(biāo),如果沒(méi)有重復(fù)性風(fēng)險(xiǎn),會(huì)出現(xiàn)一個(gè)綠色小勾的圖標(biāo)。如圖5所示,用戶(hù)可以點(diǎn)擊有重復(fù)性危險(xiǎn)的客戶(hù)信息的“紅叉”的圖標(biāo),系統(tǒng)會(huì)彈出重復(fù)性處理對(duì)話(huà)框,對(duì)話(huà)框列舉了系統(tǒng)里面所有可能和當(dāng)前客戶(hù)重復(fù)風(fēng)險(xiǎn)的客戶(hù)信息列表。用戶(hù)可以把這些客戶(hù)和當(dāng)前客戶(hù)信息進(jìn)行合并,操作方式是:選擇對(duì)話(huà)框里面某條客戶(hù)信息,點(diǎn)擊“合并”按鈕,該客戶(hù)信息被合并:被選擇合并的客戶(hù)信息被刪除,該客戶(hù)對(duì)應(yīng)的所有憑證,包括各種業(yè)務(wù)憑證和財(cái)務(wù)憑證,被轉(zhuǎn)移到了當(dāng)前的客戶(hù)信息下面。
用戶(hù)自定義自己的憑證對(duì)象重復(fù)性檢查邏輯的實(shí)施流程:
首先用戶(hù)需要新建重復(fù)性判斷邏輯類(lèi)來(lái)實(shí)現(xiàn)自己的對(duì)象重復(fù)判斷邏輯,該類(lèi)必須實(shí)現(xiàn)標(biāo)準(zhǔn)接口類(lèi)IAccountDuplicateCheckLogicCore,并放在源代碼的包下面[platform.foundation.LogicManager.Account.DuplicateCheck]。該實(shí)現(xiàn)類(lèi)必須實(shí)現(xiàn)的核心方法checkDuplicateAccount包含了用戶(hù)自己的憑證對(duì)象重復(fù)性檢查邏輯。該方法的輸入?yún)?shù)account,rawAccount是可以用來(lái)作對(duì)比的兩個(gè)原始憑證對(duì)象。
圖8列舉了一個(gè)很簡(jiǎn)單的用戶(hù)自定義的重復(fù)性判斷邏輯類(lèi),名字為:IndCustomerDupCheckByEmailLogic,它的目的是通過(guò)比較兩個(gè)對(duì)象的email是否相同來(lái)判斷這兩個(gè)憑證對(duì)象,這里特指?jìng)€(gè)人客戶(hù)信息,是否存在重復(fù)性,圖8中的紅框部分是方法checkDuplicateAccount方法的核心代碼,通過(guò)判斷兩個(gè)對(duì)象的email是否相同,如果相同,則返回true,即判斷這兩個(gè)對(duì)象是重復(fù)的。
其次:在用戶(hù)自定義的重復(fù)性判斷邏輯類(lèi)完成以后,用戶(hù)需要在系統(tǒng)設(shè)置界面里面,把前面自定義的邏輯實(shí)現(xiàn)類(lèi)注冊(cè)為重復(fù)性檢查實(shí)現(xiàn)資源,該界面的該判斷資源的一些基本的功能,如“執(zhí)行順序”、“邏輯關(guān)系”、“憑證對(duì)象類(lèi)型”等,的詳細(xì)介紹和如何使用,請(qǐng)參考前面章節(jié)的介紹。
重復(fù)性檢查資源注冊(cè)的過(guò)程為:登錄道森物流管理軟件,進(jìn)入一級(jí)導(dǎo)航欄“系統(tǒng)設(shè)置”和二級(jí)導(dǎo)航欄“憑證對(duì)象設(shè)置”,如圖6所示,可以看到界面里面列舉出了系統(tǒng)里面所有的重復(fù)性判斷資源,包括系統(tǒng)標(biāo)準(zhǔn)的和用戶(hù)自定義的。用戶(hù)需要注冊(cè)新的重復(fù)性檢查資源時(shí),需要點(diǎn)擊新建按鈕,進(jìn)入編輯界面,如圖 7所示,在該界面里面,除了設(shè)置“執(zhí)行順序”、“邏輯關(guān)系”、“憑證對(duì)象類(lèi)型”等待基本信息以外,注意必須在“檢查邏輯實(shí)現(xiàn)類(lèi)”里面填寫(xiě)前面描述的自定義實(shí)現(xiàn)類(lèi)的全名,即包的名字+類(lèi)的名字。圖8中列舉的例子:重復(fù)邏輯實(shí)現(xiàn)類(lèi)IndCustomerDupCheckByEmailLogic,在圖7的界面中注冊(cè)為資源時(shí),需要把該類(lèi)的全名填寫(xiě)到“檢查邏輯實(shí)現(xiàn)類(lèi)”的輸入框里面,即platform.foundation.LogicManager.Account.DuplicateCheck IndCustomerDupCheckByEmailLogic。用戶(hù)在信息填寫(xiě)完畢后,保存資源信息,并且設(shè)置開(kāi)關(guān)為“開(kāi)啟”狀態(tài),新的重復(fù)性邏輯判斷邏輯就可以發(fā)揮作用了。