按鈕功能權(quán)限管理方法和裝置制造方法
【專利摘要】本發(fā)明提出了一種按鈕功能權(quán)限管理方法和按鈕功能權(quán)限管理裝置,其中,按鈕功能權(quán)限管理方法,包括:在多個按鈕中的任一按鈕接收到終端的操作動作時,其中,操作動作包括按下動作和彈起動作,獲取所述任一按鈕在按下動作下對應(yīng)的第一功能權(quán)限號,和任一按鈕在所述彈起動作下對應(yīng)的第二功能權(quán)限號;在任一按鈕執(zhí)行所述按下動作時,申請第一功能權(quán)限號對應(yīng)的功能權(quán)限,以及在所述任一按鈕執(zhí)行所述彈起動作時,釋放所述第二功能權(quán)限號對應(yīng)的功能權(quán)限。通過本發(fā)明的技術(shù)方案,可以將散落在各個位置的代碼進(jìn)行集中管理,對按鈕權(quán)限的管理進(jìn)行對象化,并可以實(shí)現(xiàn)業(yè)務(wù)邏輯和代碼的分離,使代碼更具有通用性,進(jìn)而方便增加、修改和擴(kuò)展按鈕功能權(quán)限。
【專利說明】按鈕功能權(quán)限管理方法和裝置
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及按鈕功能權(quán)限領(lǐng)域,具體而言,涉及一種按鈕功能權(quán)限管理方法和一種按鈕功能權(quán)限管理裝置。
【背景技術(shù)】
[0002]目前在按鈕功能權(quán)限管理方面,主要利用代碼對按鈕的權(quán)限進(jìn)行管理,例如,單據(jù)按鈕的權(quán)限寫在與單據(jù)的相關(guān)模塊中,單據(jù)列表中按鈕的權(quán)限寫在與單據(jù)列表相關(guān)模塊中。這樣,按鈕按下時,如果要申請某功能權(quán)限,就要在代碼中寫死這個類型的單據(jù)對應(yīng)的這個按鈕按下時要申請的功能權(quán)限。因此,按鈕按下時,不同類型的單據(jù)要寫不同的代碼,不同的按鈕包含很多不同的分支代碼,且代碼往往很長;同樣地,按鈕彈起時,要釋放哪個功能權(quán)限也要分不同類型的單據(jù),不同的按鈕要寫在不同的代碼里。同時,在保存、新增、取消新增或修改按鈕按下時申請的功能權(quán)限時,代碼還需記住上一次按下的按鈕及對應(yīng)的功能權(quán)限,而且同樣是修改按鈕權(quán)限,單據(jù)是否進(jìn)入工作流也需申請不同的功能權(quán)限。因此,代碼的處理很復(fù)雜,如果不是有經(jīng)驗(yàn)的程序員,或?qū)Ξa(chǎn)品不是很了解,修改代碼時很容易修改的不全面,以至于影響其它功能。
[0003]但是,ERP (Enterprise Resource Planning,企業(yè)資源計(jì)劃)產(chǎn)品用戶量很大,而且用戶情況也非常復(fù)雜,因此,經(jīng)常會增加按鈕及增加或修改按鈕的權(quán)限。例如,單據(jù)列表的打印,預(yù)覽和輸出原來沒有按鈕權(quán)限控制的,刪除按鈕原來是公用單據(jù)編輯權(quán)限的,但隨著ERP對管理的細(xì)化,單據(jù)列表的打印,預(yù)覽和輸出都要增加按鈕權(quán)限的控制,刪除按鈕的權(quán)限也要和編輯權(quán)限分開并增加單獨(dú)的刪除權(quán)限,但是,按原有的方式無論在新版本中直接修改還是給老版本發(fā)補(bǔ)丁,都要修改代碼,工作量都比較大,而且可能會影響其它單據(jù)的功能點(diǎn)。
[0004]因此,如何將散落在各個位置的代碼進(jìn)行集中管理,將按鈕權(quán)限的管理進(jìn)行對象化管理,如何將業(yè)務(wù)邏輯和代碼進(jìn)行分離,使代碼更具有通用性,如何方便地增加、修改和擴(kuò)展按鈕權(quán)限,成為亟待解決的問題。
【發(fā)明內(nèi)容】
[0005]本發(fā)明正是基于上述問題,提出了一種新的技術(shù)方案,可以將散落在各個位置的代碼進(jìn)行集中管理,對按鈕權(quán)限的管理進(jìn)行對象化,并可以實(shí)現(xiàn)業(yè)務(wù)邏輯和代碼的分離,使代碼更具有通用性,進(jìn)而方便增加、修改和擴(kuò)展按鈕功能權(quán)限。
[0006]有鑒于此,本發(fā)明的一方面提出了按鈕功能權(quán)限管理方法,包括:獲取步驟,在多個按鈕中的任一按鈕接收到終端的操作動作時,獲取所述任一按鈕在所述操作動作下對應(yīng)的功能權(quán)限號;處理步驟,在所述任一按鈕執(zhí)行所述操作動作時,申請或釋放所述功能權(quán)限號對應(yīng)的功能權(quán)限。
[0007]在該技術(shù)方案中,按鈕的功能權(quán)限號并沒有直接寫在按鈕對應(yīng)代碼中,按鈕的功能權(quán)限號與對應(yīng)的按鈕標(biāo)識是預(yù)置在數(shù)據(jù)庫中的,這樣就實(shí)現(xiàn)了按鈕權(quán)限管理的業(yè)務(wù)邏輯(按鈕與按鈕在該操作動作下對應(yīng)的功能權(quán)限號之間的對應(yīng)關(guān)系)與代碼的分離,即按鈕在接收到操作動作時,會先向按鈕對應(yīng)代碼中尋找對應(yīng)的按鈕,并通過數(shù)據(jù)庫搜尋該按鈕對應(yīng)的功能權(quán)限號,同時,按鈕功能權(quán)限管理裝置根據(jù)搜索到的功能權(quán)限號向權(quán)限判斷裝置申請使用該功能權(quán)限號對應(yīng)的功能,權(quán)限判斷裝置將根據(jù)該功能權(quán)限號判斷用戶是否擁有該按鍵的功能權(quán)限,如果有,則按鈕將根據(jù)當(dāng)前動作執(zhí)行或釋放功能權(quán)限號對應(yīng)的功能。
[0008]同時,由于按鈕業(yè)務(wù)邏輯與對應(yīng)代碼是分離的,因此,在增加、修改或擴(kuò)展按鈕功能權(quán)限時,不需要改寫代碼,直接在數(shù)據(jù)庫中更改按鈕在該操作動作下的功能權(quán)限號即可實(shí)現(xiàn)對按鈕功能權(quán)限的增加、修改或擴(kuò)展,這樣也有利于大大地增強(qiáng)產(chǎn)品的穩(wěn)定性,避免了修改代碼可能會帶來的相關(guān)影響,也減少編譯和發(fā)布環(huán)節(jié),提高開發(fā)效率,并降低維護(hù)成本。
[0009]在上述技術(shù)方案中,優(yōu)選地,所述操作動作包括彈起動作和按下動作,所述獲取步驟具體包括:獲取所述任一按鈕在所述按下動作下對應(yīng)的第一功能權(quán)限號,和所述任一按鈕在所述彈起動作下對應(yīng)的第二功能權(quán)限號;以及所述處理步驟具體包括:在所述任一按鈕執(zhí)行所述按下動作時,申請所述第一功能權(quán)限號對應(yīng)的功能權(quán)限,以及在所述任一按鈕執(zhí)行所述彈起動作時,釋放所述第二功能權(quán)限號對應(yīng)的功能權(quán)限。
[0010]在該技術(shù)方案中,通過將操作動作分為按下動作和彈起動作,可以實(shí)現(xiàn)對按鈕權(quán)限的對象化管理,例如,可以在代碼中增加一個類clsToolbar,在類中實(shí)現(xiàn)兩個方法,分別負(fù)責(zé)按鈕按下動作(ButtonKeyDown)和按鈕彈起動作(ButtonKeyUp),其中,ButtonKeyDown負(fù)責(zé)執(zhí)行按鈕的功能,ButtonKeyUp負(fù)責(zé)釋放按鈕的功能;同時,通過將按鈕的動作分解為按下和彈起兩個動作并對這兩個動作分別配制功能權(quán)限號,可以使數(shù)據(jù)庫的結(jié)構(gòu)設(shè)計(jì)更加科學(xué)、合理,并使預(yù)置數(shù)據(jù)更加簡單明了,代碼也更加清楚,且用戶在擴(kuò)展和修改功能權(quán)限時,無需修改代碼,只要預(yù)置對應(yīng)按鈕的兩個動作的功能權(quán)限即可。其中,按下動作對應(yīng)的第一功能權(quán)限號和彈起動作對應(yīng)的第二功能權(quán)限號可以相同,也可以不同。
[0011]在上述技術(shù)方案中,優(yōu)選地,還包括:存儲所述多個按鈕名稱,以及每個按鈕名稱在所述操作動作下對應(yīng)的功能權(quán)限號。
[0012]在該技術(shù)方案中,按鈕與按鈕在該操作動作下對應(yīng)的功能權(quán)限號是預(yù)存在數(shù)據(jù)庫中的,與按鈕對應(yīng)代碼是分離的,這樣在對按鈕的功能權(quán)限進(jìn)行增加、修改或擴(kuò)展時,只需要在數(shù)據(jù)庫中更改業(yè)務(wù)邏輯關(guān)系,不會影響到對應(yīng)的按鈕代碼,有利于提高代碼的獨(dú)立性和通用性。
[0013]在上述技術(shù)方案中,優(yōu)選地,還包括:以堆棧的形式記錄所述任一按鈕在所述操作動作下對應(yīng)的所述功能權(quán)限號,在所述任一按鈕申請所述第一功能權(quán)限號對應(yīng)的功能權(quán)限時,將所述第一功能權(quán)限號壓入堆棧,在所述任一按鈕釋放所述第二功能權(quán)限號對應(yīng)的功能權(quán)限時,將所述第二功能權(quán)限號彈出所述堆棧。
[0014]在該技術(shù)方案中,在按鈕接收到按下動作時,將按鈕在該動作下對應(yīng)的功能權(quán)限號壓入堆棧,在按鈕接收到彈起動作時,將按鈕在該動作下對應(yīng)的功能權(quán)限號彈出堆棧,因此,通過以堆棧的形式記錄按鈕在該操作動作下對應(yīng)的所述功能權(quán)限號,相比于用參數(shù)變量記錄按鈕在該操作動作下對應(yīng)的所述功能權(quán)限號而言,可以很方便地實(shí)現(xiàn)對按鈕編號的記錄以及對按鈕功能的釋放,也可以減少參數(shù)變量的數(shù)量、避免過多的參數(shù)變量帶來的不便及效率的降低。
[0015]在上述技術(shù)方案中,優(yōu)選地,還包括:顯示所述任一按鈕當(dāng)前正在申請的所述第一功能權(quán)限號對應(yīng)的功能權(quán)限或當(dāng)前正在釋放的第二功能權(quán)限號對應(yīng)的功能權(quán)限。
[0016]在該技術(shù)方案中,可以看到每臺登陸到服務(wù)器的客戶端正在執(zhí)行或釋放的按鈕功能,這樣有利于實(shí)現(xiàn)對按鈕功能監(jiān)控,進(jìn)一步便于對按鈕功能進(jìn)行修改、擴(kuò)展或增加。
[0017]本發(fā)明的另一方面提出了按鈕功能權(quán)限管理裝置,包括:獲取單元,在多個按鈕中的任一按鈕接收到終端的操作動作時,獲取所述任一按鈕在所述操作動作下對應(yīng)的功能權(quán)限號;處理單元,連接至所述接收單元,在所述任一按鈕執(zhí)行所述操作動作時,申請或釋放所述功能權(quán)限號對應(yīng)的功能權(quán)限。
[0018]在該技術(shù)方案中,按鈕的功能權(quán)限號并沒有直接寫在按鈕對應(yīng)代碼中,按鈕的功能權(quán)限號與對應(yīng)的按鈕標(biāo)識是預(yù)置在數(shù)據(jù)庫中的,這樣就實(shí)現(xiàn)了按鈕權(quán)限管理的業(yè)務(wù)邏輯(按鈕與按鈕在該操作動作下對應(yīng)的功能權(quán)限號之間的對應(yīng)關(guān)系)與代碼的分離,即按鈕在接收到操作動作時,會先向按鈕對應(yīng)代碼中尋找對應(yīng)的按鈕,并通過數(shù)據(jù)庫搜尋該按鈕對應(yīng)的功能權(quán)限號,同時,按鈕功能權(quán)限管理裝置根據(jù)搜索到的功能權(quán)限號向權(quán)限判斷裝置申請使用該功能權(quán)限號對應(yīng)的功能,權(quán)限判斷裝置將根據(jù)該功能權(quán)限號判斷用戶是否擁有該按鍵的功能權(quán)限,如果有,則按鈕將根據(jù)當(dāng)前動作執(zhí)行或釋放功能權(quán)限號對應(yīng)的功能。
[0019]同時,由于按鈕業(yè)務(wù)邏輯與對應(yīng)代碼是分離的,因此,在增加、修改或擴(kuò)展按鈕功能權(quán)限時,不需要改寫代碼,直接在數(shù)據(jù)庫中更改按鈕在該操作動作下的功能權(quán)限號即可實(shí)現(xiàn)對按鈕功能權(quán)限的增加、修改或擴(kuò)展,這樣也有利于大大地增強(qiáng)產(chǎn)品的穩(wěn)定性,避免了修改代碼可能會帶來的相關(guān)影響,也減少編譯和發(fā)布環(huán)節(jié),提高開發(fā)效率,并降低維護(hù)成本。
[0020]在上述技術(shù)方案中,優(yōu)選地,所述操作動作包括彈起動作和按下動作,所述獲取單元還用于:獲取所述任一按鈕在所述按下動作下對應(yīng)的第一功能權(quán)限號,和所述任一按鈕在所述彈起動作下對應(yīng)的第二功能權(quán)限號;以及所述處理單元還用于:在所述任一按鈕執(zhí)行所述按下動作時,申請所述第一功能權(quán)限號對應(yīng)的功能權(quán)限,以及在所述任一按鈕執(zhí)行所述彈起動作時,釋放所述第二功能權(quán)限號對應(yīng)的功能權(quán)限。
[0021]在該技術(shù)方案中,通過將操作動作分為按下動作和彈起動作,可以實(shí)現(xiàn)對按鈕權(quán)限的對象化管理,例如,可以在代碼中增加一個類clsToolbar,在類中實(shí)現(xiàn)兩個方法,分別負(fù)責(zé)按鈕按下動作(ButtonKeyDown)和按鈕彈起動作(ButtonKeyUp),其中,ButtonKeyDown負(fù)責(zé)執(zhí)行按鈕的功能,ButtonKeyUp負(fù)責(zé)釋放按鈕的功能;同時,通過將按鈕的動作分解為按下和彈起兩個動作并對這兩個動作分別配制功能權(quán)限號,可以使數(shù)據(jù)庫的結(jié)構(gòu)設(shè)計(jì)更加科學(xué)、合理,并使預(yù)置數(shù)據(jù)更加簡單明了,代碼也更加清楚,且用戶在擴(kuò)展和修改功能權(quán)限時,無需修改代碼,只要預(yù)置對應(yīng)按鈕的兩個動作的功能權(quán)限即可。其中,按下動作對應(yīng)的第一功能權(quán)限號和彈起動作對應(yīng)的第二功能權(quán)限號可以相同,也可以不同。
[0022]在上述技術(shù)方案中,優(yōu)選地,還包括:存儲單元,存儲所述多個按鈕名稱,以及每個按鈕名稱在所述操作動作下對應(yīng)的功能權(quán)限號。
[0023]在該技術(shù)方案中,按鈕與按鈕在該操作動作下對應(yīng)的功能權(quán)限號是預(yù)存在數(shù)據(jù)庫中的,與按鈕對應(yīng)代碼是分離的,這樣在對按鈕的功能權(quán)限進(jìn)行增加、修改或擴(kuò)展時,只需要在數(shù)據(jù)庫中更改業(yè)務(wù)邏輯關(guān)系,不會影響到對應(yīng)的按鈕代碼,有利于提高代碼的獨(dú)立性和通用性。
[0024]在上述技術(shù)方案中,優(yōu)選地,還包括:記錄單元,以堆棧的形式記錄所述任一按鈕在所述操作動作下對應(yīng)的所述功能權(quán)限號,在所述任一按鈕申請所述第一功能權(quán)限號對應(yīng)的功能權(quán)限時,將所述第一功能權(quán)限號壓入堆棧,在所述任一按鈕釋放所述第二功能權(quán)限號對應(yīng)的功能權(quán)限時,將所述第二功能權(quán)限號彈出所述堆棧。
[0025]在該技術(shù)方案中,在按鈕按下時,將按鈕在該動作下對應(yīng)的功能權(quán)限號壓入堆棧,在按鈕彈起時,將按鈕在該動作下對應(yīng)的功能權(quán)限號彈出堆棧,因此,通過以堆棧的形式記錄按鈕在該操作動作下對應(yīng)的所述功能權(quán)限號,相比于用參數(shù)變量記錄按鈕在該操作動作下對應(yīng)的所述功能權(quán)限號而言,可以很方便地實(shí)現(xiàn)對按鈕編號的記錄以及對按鈕功能的釋放,也可以減少參數(shù)變量的數(shù)量、避免過多的參數(shù)變量帶來的不便及效率的降低。
[0026]在上述技術(shù)方案中,優(yōu)選地,還包括:顯示單元,顯示所述任一按鈕當(dāng)前正在申請的所述第一功能權(quán)限號對應(yīng)的功能權(quán)限或當(dāng)前正在釋放的第二功能權(quán)限號對應(yīng)的功能權(quán)限。
[0027]在該技術(shù)方案中,可以看到每臺登陸到服務(wù)器的客戶端正在執(zhí)行或釋放的按鈕功能,這樣有利于實(shí)現(xiàn)對按鈕功能監(jiān)控,進(jìn)一步便于對按鈕功能進(jìn)行修改、擴(kuò)展或增加。
[0028]通過以上技術(shù)方案,可以將散落在各個位置的代碼進(jìn)行集中管理,對按鈕權(quán)限的管理進(jìn)行對象化,并可以實(shí)現(xiàn)業(yè)務(wù)邏輯和代碼的分離,使代碼更具有通用性,進(jìn)而方便增加、修改和擴(kuò)展按鈕功能權(quán)限。
【專利附圖】
【附圖說明】
[0029]圖1示出了根據(jù)本發(fā)明的實(shí)施例的按鈕功能權(quán)限管理方法的流程圖;
[0030]圖2示出了根據(jù)本發(fā)明的實(shí)施例的按鈕功能權(quán)限管理裝置的結(jié)構(gòu)示意圖;
[0031]圖3示出了根據(jù)本發(fā)明的另一個實(shí)施例的按鈕功能權(quán)限管理裝置的結(jié)構(gòu)示意圖;
[0032]圖4示出了根據(jù)本發(fā)明的另一個實(shí)施例的按鈕功能權(quán)限管理方法中按下按鈕時的工作流程圖;
[0033]圖5示出了根據(jù)本發(fā)明的另一個實(shí)施例的按鈕功能權(quán)限管理方法中彈起按鈕時的工作流程圖;
[0034]圖6示出了圖4中按下按鈕和圖5中彈起按鈕時堆棧的動態(tài)變化示意圖。
【具體實(shí)施方式】
[0035]為了能夠更清楚地理解本發(fā)明的上述目的、特征和優(yōu)點(diǎn),下面結(jié)合附圖和【具體實(shí)施方式】對本發(fā)明進(jìn)行進(jìn)一步的詳細(xì)描述。需要說明的是,在不沖突的情況下,本申請的實(shí)施例及實(shí)施例中的特征可以相互組合。
[0036]在下面的描述中闡述了很多具體細(xì)節(jié)以便于充分理解本發(fā)明,但是,本發(fā)明還可以采用其他不同于在此描述的其他方式來實(shí)施,因此,本發(fā)明的保護(hù)范圍并不受下面公開的具體實(shí)施例的限制。
[0037]圖1示出了根據(jù)本發(fā)明的實(shí)施例的按鈕功能權(quán)限管理方法的流程圖。
[0038]如圖1所示,根據(jù)本發(fā)明的實(shí)施例的按鈕功能權(quán)限管理方法,包括:步驟102,在多個按鈕中的任一按鈕接收到終端的操作動作時,獲取所述任一按鈕在所述操作動作下對應(yīng)的功能權(quán)限號;步驟104,在所述任一按鈕執(zhí)行所述操作動作時,申請或釋放所述功能權(quán)限號對應(yīng)的功能權(quán)限。
[0039]在該技術(shù)方案中,按鈕的功能權(quán)限號并沒有直接寫在按鈕對應(yīng)代碼中,按鈕的功能權(quán)限號與對應(yīng)的按鈕標(biāo)識是預(yù)置在數(shù)據(jù)庫中的,這樣就實(shí)現(xiàn)了按鈕權(quán)限管理的業(yè)務(wù)邏輯(按鈕與按鈕在該操作動作下對應(yīng)的功能權(quán)限號之間的對應(yīng)關(guān)系)與代碼的分離,即按鈕在接收到操作動作時,會先向按鈕對應(yīng)代碼中尋找對應(yīng)的按鈕,并通過數(shù)據(jù)庫搜尋該按鈕對應(yīng)的功能權(quán)限號,同時,按鈕功能權(quán)限管理裝置根據(jù)搜索到的功能權(quán)限號向權(quán)限判斷裝置申請使用該功能權(quán)限號對應(yīng)的功能,權(quán)限判斷裝置將根據(jù)該功能權(quán)限號判斷用戶是否擁有該按鍵的功能權(quán)限,如果有,則按鈕將根據(jù)當(dāng)前動作執(zhí)行或釋放功能權(quán)限號對應(yīng)的功能。
[0040]同時,由于按鈕業(yè)務(wù)邏輯與對應(yīng)代碼是分離的,因此,在增加、修改或擴(kuò)展按鈕功能權(quán)限時,不需要改寫代碼,直接在數(shù)據(jù)庫中更改按鈕在該操作動作下的功能權(quán)限號即可實(shí)現(xiàn)對按鈕功能權(quán)限的增加、修改或擴(kuò)展,這樣也有利于大大地增強(qiáng)產(chǎn)品的穩(wěn)定性,避免了修改代碼可能會帶來的相關(guān)影響,也減少編譯和發(fā)布環(huán)節(jié),提高開發(fā)效率,并降低維護(hù)成本。
[0041]在上述技術(shù)方案中,優(yōu)選地,所述操作動作包括彈起動作和按下動作,所述步驟102具體包括:獲取所述任一按鈕在所述按下動作下對應(yīng)的第一功能權(quán)限號,和所述任一按鈕在所述彈起動作下對應(yīng)的第二功能權(quán)限號;以及所述步驟104具體包括:在所述任一按鈕執(zhí)行所述按下動作時,申請所述第一功能權(quán)限號對應(yīng)的功能權(quán)限,以及在所述任一按鈕執(zhí)行所述彈起動作時,釋放所述第二功能權(quán)限號對應(yīng)的功能權(quán)限。
[0042]在該技術(shù)方案中,通過將操作動作分為按下動作和彈起動作,可以實(shí)現(xiàn)對按鈕權(quán)限的對象化管理,例如,可以在代碼中增加一個類clsToolbar,在類中實(shí)現(xiàn)兩個方法,分別負(fù)責(zé)按鈕按下動作(ButtonKeyDown)和按鈕彈起動作(ButtonKeyUp),其中,ButtonKeyDown負(fù)責(zé)執(zhí)行按鈕的功能,ButtonKeyUp負(fù)責(zé)釋放按鈕的功能;同時,通過將按鈕的動作分解為按下和彈起兩個動作并對這兩個動作分別配制功能權(quán)限號,可以使數(shù)據(jù)庫的結(jié)構(gòu)設(shè)計(jì)更加科學(xué)、合理,并使預(yù)置數(shù)據(jù)更加簡單明了,代碼也更加清楚,且用戶在擴(kuò)展和修改功能權(quán)限時,無需修改代碼,只要預(yù)置對應(yīng)按鈕的兩個動作的功能權(quán)限即可。其中,按下動作對應(yīng)的第一功能權(quán)限號和彈起動作對應(yīng)的第二功能權(quán)限號可以相同,也可以不同。
[0043]在上述技術(shù)方案中,優(yōu)選地,還包括:存儲所述多個按鈕名稱,以及每個按鈕名稱在所述操作動作下對應(yīng)的功能權(quán)限號。
[0044]在該技術(shù)方案中,按鈕與按鈕在該操作動作下對應(yīng)的功能權(quán)限號是預(yù)存在數(shù)據(jù)庫中的,與按鈕對應(yīng)代碼是分離的,這樣在對按鈕的功能權(quán)限進(jìn)行增加、修改或擴(kuò)展時,只需要在數(shù)據(jù)庫中更改業(yè)務(wù)邏輯關(guān)系,不會影響到對應(yīng)的按鈕代碼,有利于提高代碼的獨(dú)立性和通用性。
[0045]在上述技術(shù)方案中,優(yōu)選地,還包括:以堆棧的形式記錄所述任一按鈕在所述操作動作下對應(yīng)的所述功能權(quán)限號,在所述任一按鈕申請所述第一功能權(quán)限號對應(yīng)的功能權(quán)限時,將所述第一功能權(quán)限號壓入堆棧,在所述任一按鈕釋放所述第二功能權(quán)限號對應(yīng)的功能權(quán)限時,將所述第二功能權(quán)限號彈出所述堆棧。
[0046]在該技術(shù)方案中,在按鈕接收到按下動作時,將按鈕在該動作下對應(yīng)的功能權(quán)限號壓入堆棧,在按鈕接收到彈起動作時,將按鈕在該動作下對應(yīng)的功能權(quán)限號彈出堆棧,因此,通過以堆棧的形式記錄按鈕在該操作動作下對應(yīng)的所述功能權(quán)限號,相比于用參數(shù)變量記錄按鈕在該操作動作下對應(yīng)的所述功能權(quán)限號而言,可以很方便地實(shí)現(xiàn)對按鈕編號的記錄以及對按鈕功能的釋放,也可以減少參數(shù)變量的數(shù)量、避免過多的參數(shù)變量帶來的不便及效率的降低。
[0047]在上述技術(shù)方案中,優(yōu)選地,還包括:顯示所述任一按鈕當(dāng)前正在申請的所述第一功能權(quán)限號對應(yīng)的功能權(quán)限或當(dāng)前正在釋放的第二功能權(quán)限號對應(yīng)的功能權(quán)限。
[0048]在該技術(shù)方案中,可以看到每臺登陸到服務(wù)器的客戶端正在執(zhí)行或釋放的按鈕功能,這樣有利于實(shí)現(xiàn)對按鈕功能監(jiān)控,進(jìn)一步便于對按鈕功能進(jìn)行修改、擴(kuò)展或增加。
[0049]圖2示出了根據(jù)本發(fā)明的實(shí)施例的按鈕功能權(quán)限管理裝置的結(jié)構(gòu)示意圖。
[0050]如圖2所示,根據(jù)本發(fā)明的實(shí)施例的按鈕功能權(quán)限管理裝置200,包括:獲取單元202,在多個按鈕中的任一按鈕接收到終端的操作動作時,獲取所述任一按鈕在所述操作動作下對應(yīng)的功能權(quán)限號;處理單元204,連接至所述接收單元,在所述任一按鈕執(zhí)行所述操作動作時,申請或釋放所述功能權(quán)限號對應(yīng)的功能權(quán)限。
[0051]在該技術(shù)方案中,按鈕的功能權(quán)限號并沒有直接寫在按鈕對應(yīng)代碼中,按鈕的功能權(quán)限號與對應(yīng)的按鈕標(biāo)識是預(yù)置在數(shù)據(jù)庫中的,這樣就實(shí)現(xiàn)了按鈕權(quán)限管理的業(yè)務(wù)邏輯(按鈕與按鈕在該操作動作下對應(yīng)的功能權(quán)限號之間的對應(yīng)關(guān)系)與代碼的分離,即按鈕在接收到操作動作時,會先向按鈕對應(yīng)代碼中尋找對應(yīng)的按鈕,并通過數(shù)據(jù)庫搜尋該按鈕對應(yīng)的功能權(quán)限號,同時,按鈕功能權(quán)限管理裝置根據(jù)搜索到的功能權(quán)限號向權(quán)限判斷裝置申請使用該功能權(quán)限號對應(yīng)的功能,權(quán)限判斷裝置將根據(jù)該功能權(quán)限號判斷用戶是否擁有該按鍵的功能權(quán)限,如果有,則按鈕將根據(jù)當(dāng)前動作執(zhí)行或釋放功能權(quán)限號對應(yīng)的功能。
[0052]同時,由于按鈕業(yè)務(wù)邏輯與對應(yīng)代碼是分離的,因此,在增加、修改或擴(kuò)展按鈕功能權(quán)限時,不需要改寫代碼,直接在數(shù)據(jù)庫中更改按鈕在該操作動作下的功能權(quán)限號即可實(shí)現(xiàn)對按鈕功能權(quán)限的增加、修改或擴(kuò)展,這樣也有利于大大地增強(qiáng)產(chǎn)品的穩(wěn)定性,避免了修改代碼可能會帶來的相關(guān)影響,也減少編譯和發(fā)布環(huán)節(jié),提高開發(fā)效率,并降低維護(hù)成本。
[0053]在上述技術(shù)方案中,優(yōu)選地,所述操作動作包括彈起動作和按下動作,所述獲取單元202還用于:獲取所述任一按鈕在所述按下動作下對應(yīng)的第一功能權(quán)限號,和所述任一按鈕在所述彈起動作下對應(yīng)的第二功能權(quán)限號;以及所述處理單元204還用于:在所述任一按鈕執(zhí)行所述按下動作時,申請所述第一功能權(quán)限號對應(yīng)的功能權(quán)限,以及在所述任一按鈕執(zhí)行所述彈起動作時,釋放所述第二功能權(quán)限號對應(yīng)的功能權(quán)限。
[0054]在該技術(shù)方案中,通過將操作動作分為按下動作和彈起動作,可以實(shí)現(xiàn)對按鈕權(quán)限的對象化管理,例如,可以在代碼中增加一個類clsToolbar,在類中實(shí)現(xiàn)兩個方法,分別負(fù)責(zé)按鈕按下動作(ButtonKeyDown)和按鈕彈起動作(ButtonKeyUp),其中,ButtonKeyDown負(fù)責(zé)執(zhí)行按鈕的功能,ButtonKeyUp負(fù)責(zé)釋放按鈕的功能;同時,通過將按鈕的動作分解為按下和彈起兩個動作并對這兩個動作分別配制功能權(quán)限號,可以使數(shù)據(jù)庫的結(jié)構(gòu)設(shè)計(jì)更加科學(xué)、合理,并使預(yù)置數(shù)據(jù)更加簡單明了,代碼也更加清楚,且用戶在擴(kuò)展和修改功能權(quán)限時,無需修改代碼,只要預(yù)置對應(yīng)按鈕的兩個動作的功能權(quán)限即可。其中,按下動作對應(yīng)的第一功能權(quán)限號和彈起動作對應(yīng)的第二功能權(quán)限號可以相同,也可以不同。
[0055]在上述技術(shù)方案中,優(yōu)選地,還包括:存儲單元206,存儲所述多個按鈕名稱,以及每個按鈕名稱在所述操作動作下對應(yīng)的功能權(quán)限號。
[0056]在該技術(shù)方案中,按鈕與按鈕在該操作動作下對應(yīng)的功能權(quán)限號是預(yù)存在數(shù)據(jù)庫中的,與按鈕對應(yīng)代碼是分離的,這樣在對按鈕的功能權(quán)限進(jìn)行增加、修改或擴(kuò)展時,只需要在數(shù)據(jù)庫中更改業(yè)務(wù)邏輯關(guān)系,不會影響到對應(yīng)的按鈕代碼,有利于提高代碼的獨(dú)立性和通用性。
[0057]在上述技術(shù)方案中,優(yōu)選地,還包括:記錄單元208,以堆棧的形式記錄所述任一按鈕在所述操作動作下對應(yīng)的所述功能權(quán)限號,在所述任一按鈕申請所述第一功能權(quán)限號對應(yīng)的功能權(quán)限時,將所述第一功能權(quán)限號壓入堆棧,在所述任一按鈕釋放所述第二功能權(quán)限號對應(yīng)的功能權(quán)限時,將所述第二功能權(quán)限號彈出所述堆棧。
[0058]在該技術(shù)方案中,在按鈕按下時,將按鈕在該動作下對應(yīng)的功能權(quán)限號壓入堆棧,在按鈕彈起時,將按鈕在該動作下對應(yīng)的功能權(quán)限號彈出堆棧,因此,通過以堆棧的形式記錄按鈕在該操作動作下對應(yīng)的所述功能權(quán)限號,相比于用參數(shù)變量記錄按鈕在該操作動作下對應(yīng)的所述功能權(quán)限號而言,可以很方便地實(shí)現(xiàn)對按鈕編號的記錄以及對按鈕功能的釋放,也可以減少參數(shù)變量的數(shù)量、避免過多的參數(shù)變量帶來的不便及效率的降低。
[0059]在上述技術(shù)方案中,優(yōu)選地,還包括:顯示單元210,顯示所述任一按鈕當(dāng)前正在申請的所述第一功能限號對應(yīng)的功能權(quán)限或當(dāng)前正在釋放的第二功能權(quán)限號對應(yīng)的功能權(quán)限。
[0060]在該技術(shù)方案中,可以看到每臺登陸到服務(wù)器的客戶端正在執(zhí)行或釋放的按鈕功能,這樣有利于實(shí)現(xiàn)對按鈕功能監(jiān)控,進(jìn)一步便于對按鈕功能進(jìn)行修改、擴(kuò)展或增加。
[0061]圖3示出了根據(jù)本發(fā)明的另一個實(shí)施例的按鈕功能權(quán)限管理裝置的結(jié)構(gòu)示意圖。
[0062]如圖3所示,根據(jù)本發(fā)明的另一個實(shí)施例的按鈕功能權(quán)限管理裝置300,包括:按鈕數(shù)據(jù)預(yù)置單元302,按鈕權(quán)限管理單元304,按鈕權(quán)限組織單元306,按鈕顯示單元308。
[0063]I)按鈕數(shù)據(jù)預(yù)置單元302中包含數(shù)據(jù)庫表,按鈕功能權(quán)限與按鈕綁定后,按鈕功能權(quán)限與按鈕的關(guān)系被預(yù)置在數(shù)據(jù)庫表中,其中,數(shù)據(jù)庫表的結(jié)構(gòu)設(shè)計(jì)如表1所示,數(shù)據(jù)預(yù)置實(shí)例如表2所示。本實(shí)施例中的按鈕功能管理裝置將按鈕的權(quán)限分為[按下時要執(zhí)行的功能權(quán)限]和[彈起時要釋放的功能權(quán)限],這樣按鈕既可以支持按下時需要執(zhí)行功能權(quán)限,彈起時需要釋放功能權(quán)限的情況(例如:審核按鈕,按下時要執(zhí)行(申請)功能權(quán)限,審核完畢按鈕彈起時要釋放功能權(quán)限)又能支持如新增按鈕按下時要申請編輯功能權(quán)限,保存按鈕彈起時要釋放新增按鈕申請的編輯功能權(quán)限的情況。
[0064]表1
[0065]
【權(quán)利要求】
1.一種按鈕功能權(quán)限管理方法,其特征在于,包括: 獲取步驟,在多個按鈕中的任一按鈕接收到終端的操作動作時,獲取所述任一按鈕在所述操作動作下對應(yīng)的功能權(quán)限號; 處理步驟,在所述任一按鈕執(zhí)行所述操作動作時,申請或釋放所述功能權(quán)限號對應(yīng)的功能權(quán)限。
2.根據(jù)權(quán)利要求1所述的按鈕功能權(quán)限管理方法,其特征在于,所述操作動作包括彈起動作和按下動作, 所述獲取步驟具體包括: 獲取所述任一按鈕在所述按下動作下對應(yīng)的第一功能權(quán)限號,和所述任一按鈕在所述彈起動作下對應(yīng)的第二功能權(quán)限號;以及 所述處理步驟具體包括: 在所述任一按鈕執(zhí)行所述按下動作時,申請所述第一功能權(quán)限號對應(yīng)的功能權(quán)限,以及在所述任一按鈕執(zhí)行所述彈起動作時,釋放所述第二功能權(quán)限號對應(yīng)的功能權(quán)限。
3.根據(jù)權(quán)利要求1所述的按鈕功能權(quán)限管理方法,其特征在于,還包括: 存儲所述多個按鈕名稱,以及每個按鈕名稱在所述操作動作下對應(yīng)的功能權(quán)限號。
4.根據(jù)權(quán)利要求2所述的按鈕功能權(quán)限管理方法,其特征在于,還包括: 以堆棧的形式記錄所述任一按鈕在所述操作動作下對應(yīng)的所述功能權(quán)限號,在所述任一按鈕申請所述第一功能權(quán)限號對應(yīng)的功能權(quán)限時,將所述第一功能權(quán)限號壓入堆棧,在所述任一按鈕釋放所述第二功能權(quán)限號對應(yīng)的功能權(quán)限時,將所述第二功能權(quán)限號彈出所述堆棧。
5.根據(jù)權(quán)利要求1至4中任一項(xiàng)所述的按鈕功能權(quán)限管理方法,其特征在于,還包括: 顯示所述任一按鈕當(dāng)前正在申請的所述第一功能權(quán)限號對應(yīng)的功能權(quán)限或當(dāng)前正在釋放的第二功能權(quán)限號對應(yīng)的功能權(quán)限。
6.一種按鈕功能權(quán)限管理裝置,其特征在于,包括: 獲取單元,在多個按鈕中的任一按鈕接收到終端的操作動作時,獲取所述任一按鈕在所述操作動作下對應(yīng)的功能權(quán)限號; 處理單元,連接至所述接收單元,在所述任一按鈕執(zhí)行所述操作動作時,申請或釋放所述功能權(quán)限號對應(yīng)的功能權(quán)限。
7.根據(jù)權(quán)利要求6所述的按鈕功能權(quán)限管理裝置,其特征在于,所述操作動作包括彈起動作和按下動作, 所述獲取單元還用于: 獲取所述任一按鈕在所述按下動作下對應(yīng)的第一功能權(quán)限號,和所述任一按鈕在所述彈起動作下對應(yīng)的第二功能權(quán)限號;以及 所述處理單元還用于: 在所述任一按鈕執(zhí)行所述按下動作時,申請所述第一功能權(quán)限號對應(yīng)的功能權(quán)限,以及在所述任一按鈕執(zhí)行所述彈起動作時,釋放所述第二功能權(quán)限號對應(yīng)的功能權(quán)限。
8.根據(jù)權(quán)利要求6所述的按鈕功能權(quán)限管理裝置,其特征在于,還包括: 存儲單元,存儲所述多個按鈕名稱,以及每個按鈕名稱在所述操作動作下對應(yīng)的功能權(quán)限號。
9.根據(jù)權(quán)利要求7所述的按鈕功能權(quán)限管理裝置,其特征在于,還包括: 記錄單元,以堆棧的形式記錄所述任一按鈕在所述操作動作下對應(yīng)的所述功能權(quán)限號,在所述任一按鈕申請所述第一功能權(quán)限號對應(yīng)的功能權(quán)限時,將所述第一功能權(quán)限號壓入堆棧,在所述任一按鈕釋放所述第二功能權(quán)限號對應(yīng)的功能權(quán)限時,將所述第二功能權(quán)限號彈出所述堆棧。
10.根據(jù)權(quán)利要求6至9中任一項(xiàng)所述的按鈕功能權(quán)限管理裝置,其特征在于,還包括: 顯示單元,顯示所述任一按鈕當(dāng)前正在申請的所述第一功能權(quán)限號對應(yīng)的功能權(quán)限或當(dāng)前正在釋放 的第二功能權(quán)限號對應(yīng)的功能權(quán)限。
【文檔編號】G06F21/30GK104077506SQ201410289728
【公開日】2014年10月1日 申請日期:2014年6月24日 優(yōu)先權(quán)日:2014年6月24日
【發(fā)明者】李艷 申請人:用友優(yōu)普信息技術(shù)有限公司