CN104077506A - 按钮功能权限管理方法和装置 - Google Patents
按钮功能权限管理方法和装置 Download PDFInfo
- Publication number
- CN104077506A CN104077506A CN201410289728.0A CN201410289728A CN104077506A CN 104077506 A CN104077506 A CN 104077506A CN 201410289728 A CN201410289728 A CN 201410289728A CN 104077506 A CN104077506 A CN 104077506A
- Authority
- CN
- China
- Prior art keywords
- button
- function
- function privilege
- privilege
- action
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/45—Structures or tools for the administration of authentication
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Input From Keyboards Or The Like (AREA)
Abstract
本发明提出了一种按钮功能权限管理方法和按钮功能权限管理装置,其中,按钮功能权限管理方法,包括:在多个按钮中的任一按钮接收到终端的操作动作时,其中,操作动作包括按下动作和弹起动作,获取所述任一按钮在按下动作下对应的第一功能权限号,和任一按钮在所述弹起动作下对应的第二功能权限号;在任一按钮执行所述按下动作时,申请第一功能权限号对应的功能权限,以及在所述任一按钮执行所述弹起动作时,释放所述第二功能权限号对应的功能权限。通过本发明的技术方案,可以将散落在各个位置的代码进行集中管理,对按钮权限的管理进行对象化,并可以实现业务逻辑和代码的分离,使代码更具有通用性,进而方便增加、修改和扩展按钮功能权限。
Description
技术领域
本发明涉及按钮功能权限领域,具体而言,涉及一种按钮功能权限管理方法和一种按钮功能权限管理装置。
背景技术
目前在按钮功能权限管理方面,主要利用代码对按钮的权限进行管理,例如,单据按钮的权限写在与单据的相关模块中,单据列表中按钮的权限写在与单据列表相关模块中。这样,按钮按下时,如果要申请某功能权限,就要在代码中写死这个类型的单据对应的这个按钮按下时要申请的功能权限。因此,按钮按下时,不同类型的单据要写不同的代码,不同的按钮包含很多不同的分支代码,且代码往往很长;同样地,按钮弹起时,要释放哪个功能权限也要分不同类型的单据,不同的按钮要写在不同的代码里。同时,在保存、新增、取消新增或修改按钮按下时申请的功能权限时,代码还需记住上一次按下的按钮及对应的功能权限,而且同样是修改按钮权限,单据是否进入工作流也需申请不同的功能权限。因此,代码的处理很复杂,如果不是有经验的程序员,或对产品不是很了解,修改代码时很容易修改的不全面,以至于影响其它功能。
但是,ERP(Enterprise Resource Planning,企业资源计划)产品用户量很大,而且用户情况也非常复杂,因此,经常会增加按钮及增加或修改按钮的权限。例如,单据列表的打印,预览和输出原来没有按钮权限控制的,删除按钮原来是公用单据编辑权限的,但随着ERP对管理的细化,单据列表的打印,预览和输出都要增加按钮权限的控制,删除按钮的权限也要和编辑权限分开并增加单独的删除权限,但是,按原有的方式无论在新版本中直接修改还是给老版本发补丁,都要修改代码,工作量都比较大,而且可能会影响其它单据的功能点。
因此,如何将散落在各个位置的代码进行集中管理,将按钮权限的管 理进行对象化管理,如何将业务逻辑和代码进行分离,使代码更具有通用性,如何方便地增加、修改和扩展按钮权限,成为亟待解决的问题。
发明内容
本发明正是基于上述问题,提出了一种新的技术方案,可以将散落在各个位置的代码进行集中管理,对按钮权限的管理进行对象化,并可以实现业务逻辑和代码的分离,使代码更具有通用性,进而方便增加、修改和扩展按钮功能权限。
有鉴于此,本发明的一方面提出了按钮功能权限管理方法,包括:获取步骤,在多个按钮中的任一按钮接收到终端的操作动作时,获取所述任一按钮在所述操作动作下对应的功能权限号;处理步骤,在所述任一按钮执行所述操作动作时,申请或释放所述功能权限号对应的功能权限。
在该技术方案中,按钮的功能权限号并没有直接写在按钮对应代码中,按钮的功能权限号与对应的按钮标识是预置在数据库中的,这样就实现了按钮权限管理的业务逻辑(按钮与按钮在该操作动作下对应的功能权限号之间的对应关系)与代码的分离,即按钮在接收到操作动作时,会先向按钮对应代码中寻找对应的按钮,并通过数据库搜寻该按钮对应的功能权限号,同时,按钮功能权限管理装置根据搜索到的功能权限号向权限判断装置申请使用该功能权限号对应的功能,权限判断装置将根据该功能权限号判断用户是否拥有该按键的功能权限,如果有,则按钮将根据当前动作执行或释放功能权限号对应的功能。
同时,由于按钮业务逻辑与对应代码是分离的,因此,在增加、修改或扩展按钮功能权限时,不需要改写代码,直接在数据库中更改按钮在该操作动作下的功能权限号即可实现对按钮功能权限的增加、修改或扩展,这样也有利于大大地增强产品的稳定性,避免了修改代码可能会带来的相关影响,也减少编译和发布环节,提高开发效率,并降低维护成本。
在上述技术方案中,优选地,所述操作动作包括弹起动作和按下动作,所述获取步骤具体包括:获取所述任一按钮在所述按下动作下对应的第一功能权限号,和所述任一按钮在所述弹起动作下对应的第二功能权限号; 以及所述处理步骤具体包括:在所述任一按钮执行所述按下动作时,申请所述第一功能权限号对应的功能权限,以及在所述任一按钮执行所述弹起动作时,释放所述第二功能权限号对应的功能权限。
在该技术方案中,通过将操作动作分为按下动作和弹起动作,可以实现对按钮权限的对象化管理,例如,可以在代码中增加一个类clsToolbar,在类中实现两个方法,分别负责按钮按下动作(ButtonKeyDown)和按钮弹起动作(ButtonKeyUp),其中,ButtonKeyDown负责执行按钮的功能,ButtonKeyUp负责释放按钮的功能;同时,通过将按钮的动作分解为按下和弹起两个动作并对这两个动作分别配制功能权限号,可以使数据库的结构设计更加科学、合理,并使预置数据更加简单明了,代码也更加清楚,且用户在扩展和修改功能权限时,无需修改代码,只要预置对应按钮的两个动作的功能权限即可。其中,按下动作对应的第一功能权限号和弹起动作对应的第二功能权限号可以相同,也可以不同。
在上述技术方案中,优选地,还包括:存储所述多个按钮名称,以及每个按钮名称在所述操作动作下对应的功能权限号。
在该技术方案中,按钮与按钮在该操作动作下对应的功能权限号是预存在数据库中的,与按钮对应代码是分离的,这样在对按钮的功能权限进行增加、修改或扩展时,只需要在数据库中更改业务逻辑关系,不会影响到对应的按钮代码,有利于提高代码的独立性和通用性。
在上述技术方案中,优选地,还包括:以堆栈的形式记录所述任一按钮在所述操作动作下对应的所述功能权限号,在所述任一按钮申请所述第一功能权限号对应的功能权限时,将所述第一功能权限号压入堆栈,在所述任一按钮释放所述第二功能权限号对应的功能权限时,将所述第二功能权限号弹出所述堆栈。
在该技术方案中,在按钮接收到按下动作时,将按钮在该动作下对应的功能权限号压入堆栈,在按钮接收到弹起动作时,将按钮在该动作下对应的功能权限号弹出堆栈,因此,通过以堆栈的形式记录按钮在该操作动作下对应的所述功能权限号,相比于用参数变量记录按钮在该操作动作下对应的所述功能权限号而言,可以很方便地实现对按钮编号的记录以及对 按钮功能的释放,也可以减少参数变量的数量、避免过多的参数变量带来的不便及效率的降低。
在上述技术方案中,优选地,还包括:显示所述任一按钮当前正在申请的所述第一功能权限号对应的功能权限或当前正在释放的第二功能权限号对应的功能权限。
在该技术方案中,可以看到每台登陆到服务器的客户端正在执行或释放的按钮功能,这样有利于实现对按钮功能监控,进一步便于对按钮功能进行修改、扩展或增加。
本发明的另一方面提出了按钮功能权限管理装置,包括:获取单元,在多个按钮中的任一按钮接收到终端的操作动作时,获取所述任一按钮在所述操作动作下对应的功能权限号;处理单元,连接至所述接收单元,在所述任一按钮执行所述操作动作时,申请或释放所述功能权限号对应的功能权限。
在该技术方案中,按钮的功能权限号并没有直接写在按钮对应代码中,按钮的功能权限号与对应的按钮标识是预置在数据库中的,这样就实现了按钮权限管理的业务逻辑(按钮与按钮在该操作动作下对应的功能权限号之间的对应关系)与代码的分离,即按钮在接收到操作动作时,会先向按钮对应代码中寻找对应的按钮,并通过数据库搜寻该按钮对应的功能权限号,同时,按钮功能权限管理装置根据搜索到的功能权限号向权限判断装置申请使用该功能权限号对应的功能,权限判断装置将根据该功能权限号判断用户是否拥有该按键的功能权限,如果有,则按钮将根据当前动作执行或释放功能权限号对应的功能。
同时,由于按钮业务逻辑与对应代码是分离的,因此,在增加、修改或扩展按钮功能权限时,不需要改写代码,直接在数据库中更改按钮在该操作动作下的功能权限号即可实现对按钮功能权限的增加、修改或扩展,这样也有利于大大地增强产品的稳定性,避免了修改代码可能会带来的相关影响,也减少编译和发布环节,提高开发效率,并降低维护成本。
在上述技术方案中,优选地,所述操作动作包括弹起动作和按下动作,所述获取单元还用于:获取所述任一按钮在所述按下动作下对应的第一功 能权限号,和所述任一按钮在所述弹起动作下对应的第二功能权限号;以及所述处理单元还用于:在所述任一按钮执行所述按下动作时,申请所述第一功能权限号对应的功能权限,以及在所述任一按钮执行所述弹起动作时,释放所述第二功能权限号对应的功能权限。
在该技术方案中,通过将操作动作分为按下动作和弹起动作,可以实现对按钮权限的对象化管理,例如,可以在代码中增加一个类clsToolbar,在类中实现两个方法,分别负责按钮按下动作(ButtonKeyDown)和按钮弹起动作(ButtonKeyUp),其中,ButtonKeyDown负责执行按钮的功能,ButtonKeyUp负责释放按钮的功能;同时,通过将按钮的动作分解为按下和弹起两个动作并对这两个动作分别配制功能权限号,可以使数据库的结构设计更加科学、合理,并使预置数据更加简单明了,代码也更加清楚,且用户在扩展和修改功能权限时,无需修改代码,只要预置对应按钮的两个动作的功能权限即可。其中,按下动作对应的第一功能权限号和弹起动作对应的第二功能权限号可以相同,也可以不同。
在上述技术方案中,优选地,还包括:存储单元,存储所述多个按钮名称,以及每个按钮名称在所述操作动作下对应的功能权限号。
在该技术方案中,按钮与按钮在该操作动作下对应的功能权限号是预存在数据库中的,与按钮对应代码是分离的,这样在对按钮的功能权限进行增加、修改或扩展时,只需要在数据库中更改业务逻辑关系,不会影响到对应的按钮代码,有利于提高代码的独立性和通用性。
在上述技术方案中,优选地,还包括:记录单元,以堆栈的形式记录所述任一按钮在所述操作动作下对应的所述功能权限号,在所述任一按钮申请所述第一功能权限号对应的功能权限时,将所述第一功能权限号压入堆栈,在所述任一按钮释放所述第二功能权限号对应的功能权限时,将所述第二功能权限号弹出所述堆栈。
在该技术方案中,在按钮按下时,将按钮在该动作下对应的功能权限号压入堆栈,在按钮弹起时,将按钮在该动作下对应的功能权限号弹出堆栈,因此,通过以堆栈的形式记录按钮在该操作动作下对应的所述功能权限号,相比于用参数变量记录按钮在该操作动作下对应的所述功能权限号 而言,可以很方便地实现对按钮编号的记录以及对按钮功能的释放,也可以减少参数变量的数量、避免过多的参数变量带来的不便及效率的降低。
在上述技术方案中,优选地,还包括:显示单元,显示所述任一按钮当前正在申请的所述第一功能权限号对应的功能权限或当前正在释放的第二功能权限号对应的功能权限。
在该技术方案中,可以看到每台登陆到服务器的客户端正在执行或释放的按钮功能,这样有利于实现对按钮功能监控,进一步便于对按钮功能进行修改、扩展或增加。
通过以上技术方案,可以将散落在各个位置的代码进行集中管理,对按钮权限的管理进行对象化,并可以实现业务逻辑和代码的分离,使代码更具有通用性,进而方便增加、修改和扩展按钮功能权限。
附图说明
图1示出了根据本发明的实施例的按钮功能权限管理方法的流程图;
图2示出了根据本发明的实施例的按钮功能权限管理装置的结构示意图;
图3示出了根据本发明的另一个实施例的按钮功能权限管理装置的结构示意图;
图4示出了根据本发明的另一个实施例的按钮功能权限管理方法中按下按钮时的工作流程图;
图5示出了根据本发明的另一个实施例的按钮功能权限管理方法中弹起按钮时的工作流程图;
图6示出了图4中按下按钮和图5中弹起按钮时堆栈的动态变化示意图。
具体实施方式
为了能够更清楚地理解本发明的上述目的、特征和优点,下面结合附图和具体实施方式对本发明进行进一步的详细描述。需要说明的是,在不冲突的情况下,本申请的实施例及实施例中的特征可以相互组合。
在下面的描述中阐述了很多具体细节以便于充分理解本发明,但是,本发明还可以采用其他不同于在此描述的其他方式来实施,因此,本发明的保护范围并不受下面公开的具体实施例的限制。
图1示出了根据本发明的实施例的按钮功能权限管理方法的流程图。
如图1所示,根据本发明的实施例的按钮功能权限管理方法,包括:步骤102,在多个按钮中的任一按钮接收到终端的操作动作时,获取所述任一按钮在所述操作动作下对应的功能权限号;步骤104,在所述任一按钮执行所述操作动作时,申请或释放所述功能权限号对应的功能权限。
在该技术方案中,按钮的功能权限号并没有直接写在按钮对应代码中,按钮的功能权限号与对应的按钮标识是预置在数据库中的,这样就实现了按钮权限管理的业务逻辑(按钮与按钮在该操作动作下对应的功能权限号之间的对应关系)与代码的分离,即按钮在接收到操作动作时,会先向按钮对应代码中寻找对应的按钮,并通过数据库搜寻该按钮对应的功能权限号,同时,按钮功能权限管理装置根据搜索到的功能权限号向权限判断装置申请使用该功能权限号对应的功能,权限判断装置将根据该功能权限号判断用户是否拥有该按键的功能权限,如果有,则按钮将根据当前动作执行或释放功能权限号对应的功能。
同时,由于按钮业务逻辑与对应代码是分离的,因此,在增加、修改或扩展按钮功能权限时,不需要改写代码,直接在数据库中更改按钮在该操作动作下的功能权限号即可实现对按钮功能权限的增加、修改或扩展,这样也有利于大大地增强产品的稳定性,避免了修改代码可能会带来的相关影响,也减少编译和发布环节,提高开发效率,并降低维护成本。
在上述技术方案中,优选地,所述操作动作包括弹起动作和按下动作,所述步骤102具体包括:获取所述任一按钮在所述按下动作下对应的第一功能权限号,和所述任一按钮在所述弹起动作下对应的第二功能权限号;以及所述步骤104具体包括:在所述任一按钮执行所述按下动作时,申请所述第一功能权限号对应的功能权限,以及在所述任一按钮执行所述弹起动作时,释放所述第二功能权限号对应的功能权限。
在该技术方案中,通过将操作动作分为按下动作和弹起动作,可以实 现对按钮权限的对象化管理,例如,可以在代码中增加一个类clsToolbar,在类中实现两个方法,分别负责按钮按下动作(ButtonKeyDown)和按钮弹起动作(ButtonKeyUp),其中,ButtonKeyDown负责执行按钮的功能,ButtonKeyUp负责释放按钮的功能;同时,通过将按钮的动作分解为按下和弹起两个动作并对这两个动作分别配制功能权限号,可以使数据库的结构设计更加科学、合理,并使预置数据更加简单明了,代码也更加清楚,且用户在扩展和修改功能权限时,无需修改代码,只要预置对应按钮的两个动作的功能权限即可。其中,按下动作对应的第一功能权限号和弹起动作对应的第二功能权限号可以相同,也可以不同。
在上述技术方案中,优选地,还包括:存储所述多个按钮名称,以及每个按钮名称在所述操作动作下对应的功能权限号。
在该技术方案中,按钮与按钮在该操作动作下对应的功能权限号是预存在数据库中的,与按钮对应代码是分离的,这样在对按钮的功能权限进行增加、修改或扩展时,只需要在数据库中更改业务逻辑关系,不会影响到对应的按钮代码,有利于提高代码的独立性和通用性。
在上述技术方案中,优选地,还包括:以堆栈的形式记录所述任一按钮在所述操作动作下对应的所述功能权限号,在所述任一按钮申请所述第一功能权限号对应的功能权限时,将所述第一功能权限号压入堆栈,在所述任一按钮释放所述第二功能权限号对应的功能权限时,将所述第二功能权限号弹出所述堆栈。
在该技术方案中,在按钮接收到按下动作时,将按钮在该动作下对应的功能权限号压入堆栈,在按钮接收到弹起动作时,将按钮在该动作下对应的功能权限号弹出堆栈,因此,通过以堆栈的形式记录按钮在该操作动作下对应的所述功能权限号,相比于用参数变量记录按钮在该操作动作下对应的所述功能权限号而言,可以很方便地实现对按钮编号的记录以及对按钮功能的释放,也可以减少参数变量的数量、避免过多的参数变量带来的不便及效率的降低。
在上述技术方案中,优选地,还包括:显示所述任一按钮当前正在申请的所述第一功能权限号对应的功能权限或当前正在释放的第二功能权限 号对应的功能权限。
在该技术方案中,可以看到每台登陆到服务器的客户端正在执行或释放的按钮功能,这样有利于实现对按钮功能监控,进一步便于对按钮功能进行修改、扩展或增加。
图2示出了根据本发明的实施例的按钮功能权限管理装置的结构示意图。
如图2所示,根据本发明的实施例的按钮功能权限管理装置200,包括:获取单元202,在多个按钮中的任一按钮接收到终端的操作动作时,获取所述任一按钮在所述操作动作下对应的功能权限号;处理单元204,连接至所述接收单元,在所述任一按钮执行所述操作动作时,申请或释放所述功能权限号对应的功能权限。
在该技术方案中,按钮的功能权限号并没有直接写在按钮对应代码中,按钮的功能权限号与对应的按钮标识是预置在数据库中的,这样就实现了按钮权限管理的业务逻辑(按钮与按钮在该操作动作下对应的功能权限号之间的对应关系)与代码的分离,即按钮在接收到操作动作时,会先向按钮对应代码中寻找对应的按钮,并通过数据库搜寻该按钮对应的功能权限号,同时,按钮功能权限管理装置根据搜索到的功能权限号向权限判断装置申请使用该功能权限号对应的功能,权限判断装置将根据该功能权限号判断用户是否拥有该按键的功能权限,如果有,则按钮将根据当前动作执行或释放功能权限号对应的功能。
同时,由于按钮业务逻辑与对应代码是分离的,因此,在增加、修改或扩展按钮功能权限时,不需要改写代码,直接在数据库中更改按钮在该操作动作下的功能权限号即可实现对按钮功能权限的增加、修改或扩展,这样也有利于大大地增强产品的稳定性,避免了修改代码可能会带来的相关影响,也减少编译和发布环节,提高开发效率,并降低维护成本。
在上述技术方案中,优选地,所述操作动作包括弹起动作和按下动作,所述获取单元202还用于:获取所述任一按钮在所述按下动作下对应的第一功能权限号,和所述任一按钮在所述弹起动作下对应的第二功能权限号;以及所述处理单元204还用于:在所述任一按钮执行所述按下动作时,申 请所述第一功能权限号对应的功能权限,以及在所述任一按钮执行所述弹起动作时,释放所述第二功能权限号对应的功能权限。
在该技术方案中,通过将操作动作分为按下动作和弹起动作,可以实现对按钮权限的对象化管理,例如,可以在代码中增加一个类clsToolbar,在类中实现两个方法,分别负责按钮按下动作(ButtonKeyDown)和按钮弹起动作(ButtonKeyUp),其中,ButtonKeyDown负责执行按钮的功能,ButtonKeyUp负责释放按钮的功能;同时,通过将按钮的动作分解为按下和弹起两个动作并对这两个动作分别配制功能权限号,可以使数据库的结构设计更加科学、合理,并使预置数据更加简单明了,代码也更加清楚,且用户在扩展和修改功能权限时,无需修改代码,只要预置对应按钮的两个动作的功能权限即可。其中,按下动作对应的第一功能权限号和弹起动作对应的第二功能权限号可以相同,也可以不同。
在上述技术方案中,优选地,还包括:存储单元206,存储所述多个按钮名称,以及每个按钮名称在所述操作动作下对应的功能权限号。
在该技术方案中,按钮与按钮在该操作动作下对应的功能权限号是预存在数据库中的,与按钮对应代码是分离的,这样在对按钮的功能权限进行增加、修改或扩展时,只需要在数据库中更改业务逻辑关系,不会影响到对应的按钮代码,有利于提高代码的独立性和通用性。
在上述技术方案中,优选地,还包括:记录单元208,以堆栈的形式记录所述任一按钮在所述操作动作下对应的所述功能权限号,在所述任一按钮申请所述第一功能权限号对应的功能权限时,将所述第一功能权限号压入堆栈,在所述任一按钮释放所述第二功能权限号对应的功能权限时,将所述第二功能权限号弹出所述堆栈。
在该技术方案中,在按钮按下时,将按钮在该动作下对应的功能权限号压入堆栈,在按钮弹起时,将按钮在该动作下对应的功能权限号弹出堆栈,因此,通过以堆栈的形式记录按钮在该操作动作下对应的所述功能权限号,相比于用参数变量记录按钮在该操作动作下对应的所述功能权限号而言,可以很方便地实现对按钮编号的记录以及对按钮功能的释放,也可以减少参数变量的数量、避免过多的参数变量带来的不便及效率的降低。
在上述技术方案中,优选地,还包括:显示单元210,显示所述任一按钮当前正在申请的所述第一功能权限号对应的功能权限或当前正在释放的第二功能权限号对应的功能权限。
在该技术方案中,可以看到每台登陆到服务器的客户端正在执行或释放的按钮功能,这样有利于实现对按钮功能监控,进一步便于对按钮功能进行修改、扩展或增加。
图3示出了根据本发明的另一个实施例的按钮功能权限管理装置的结构示意图。
如图3所示,根据本发明的另一个实施例的按钮功能权限管理装置300,包括:按钮数据预置单元302,按钮权限管理单元304,按钮权限组织单元306,按钮显示单元308。
1)按钮数据预置单元302中包含数据库表,按钮功能权限与按钮绑定后,按钮功能权限与按钮的关系被预置在数据库表中,其中,数据库表的结构设计如表1所示,数据预置实例如表2所示。本实施例中的按钮功能管理装置将按钮的权限分为[按下时要执行的功能权限]和[弹起时要释放的功能权限],这样按钮既可以支持按下时需要执行功能权限,弹起时需要释放功能权限的情况(例如:审核按钮,按下时要执行(申请)功能权限,审核完毕按钮弹起时要释放功能权限)又能支持如新增按钮按下时要申请编辑功能权限,保存按钮弹起时要释放新增按钮申请的编辑功能权限的情况。
表1
字段 | 说明 |
Tblkey | 工具栏键值 |
Buttonkey | 按钮的名称 |
Keydownapplytask | 按下时申请的功能权限 |
Keyupfreetask | 弹起时释放的功能权限 |
表2
按钮名称 | 按下时申请的功能权限 | 弹起时释放的功能权限 |
按钮1 | 权限1 | |
按钮2 | 权限2 | 权限2 |
按钮3 | 权限1 |
2)按钮权限管理单元304是本装置的核心单元,按钮权限管理单元304将按钮的动作时点分为按钮按下和按钮弹起两个动作时点,其工作流程如图4和图5所示。按钮权限管理单元304负责分析按钮数据预置单元302的业务逻辑,并通过对按钮权限组织单元306和按钮显示单元308的管理以实现对按钮权限的申请和释放并实现对按钮功能权限的管理。
3)按钮权限组织单元306对按钮实行堆栈式管理,按顺序记录按钮的名称和按钮动作或弹起时对应的功能权限。
4)按钮显示单元308按站点显示当前正在执行或释放的功能,即通过按钮显示单元308可以看到每台登陆到服务器的客户端当前正在执行或释放的功能。
图4示出了根据本发明的另一个实施例的按钮功能权限管理方法中按下按钮时的工作流程图。
如图4所示,根据本发明的另一个实施例的按钮功能权限管理方法中按下按钮时的工作流程图,包括如下步骤:
步骤402,按钮接收到被按下的动作;
步骤404,根据所述动作,到按钮数据预置单元302中获取按钮按下时要申请(执行)的功能权限号;
步骤406,执行按钮功能权限号对应的功能权限;
步骤408,在按钮执行按钮功能权限号对应的功能时,将按钮及按钮要执行的功能权限号压入按键权限组织单元306的堆栈中;
步骤410,在按钮执行按钮功能权限号对应的功能时,将按钮及按钮要执行的功能权限号提交到按键权限显示单元308中。
图5示出了根据本发明的另一个实施例的按钮功能权限管理方法中弹起按钮时的工作流程图。
如图5所示,根据本发明的另一个实施例的按钮功能管理方法中弹起按钮时的工作流程图,包括如下步骤:
步骤502,按钮接收到弹起的动作;
步骤504,根据所述动作,到按钮数据预置单元302中获取按钮弹起时要释放的功能权限号;
步骤506,释放按钮功能权限号对应的功能权限;
步骤508,在按钮释放按钮功能权限号对应的功能时,将按钮及按钮要释放的功能权限号从按键权限组织单元306的堆栈中弹出;
步骤510,在按钮释放按钮功能权限号对应的功能时,将按钮及按钮要执行的功能权限号从按键权限显示单元308中撤出。
通过如图4和如图5所示的步骤,可以实现对按钮功能权限的对象化管理,即在代码中增加一个类clsToolbar,在类clsToolbar中实现两个方法,分别负责按钮按下动作(ButtonKeyDown)和按钮弹起动作(ButtonKeyUp),且类中还有对堆栈的管理方法,其中,ButtonKeyDown负责执行按钮功能权限并将按钮权限号压入堆栈,ButtonKeyUp负责释放按钮功能权限并将按钮权限号弹出堆栈。
图6示出了如图4中按下按钮和如图5中弹起按钮时堆栈的动态变化示意图。
如图6所示,示出了如图4中按下按钮和如图5中弹起按钮时堆栈的动态变化:
在按下按钮1时,将按钮1在该动作下对应要申请(执行)的功能权限1被压入到按钮权限组织单元306的堆栈中;
按钮1弹起时,由于按钮1的弹起动作不对应任何功能权限号,所以按钮权限组织单元306的堆栈中仍然存储着权限1;
在按下按钮2时,将按钮2在该动作下要申请(执行)的功能权限2压入到按钮权限组织单元306的堆栈中,这时按钮权限组织单元306的堆栈中就同时包含权限1和权限2;
按钮2弹起时,由于按钮2的弹起动作对应功能权限2,所以权限2就从按钮权限组织单元306的堆栈中弹出,此时按钮权限组织单元306的堆栈中就只保留权限1;
在按下按钮3时,由于按钮3的按下动作不对应任何功能权限,所以 按钮权限组织单元306的堆栈中仍然只有权限1;
按钮3弹起时,由于按钮3的弹起动作对应功能权限1,所以权限1就从按钮权限组织单元306的堆栈中弹出,此时按钮权限组织单元306的堆栈中不再包含任何权限号。
由图6所示步骤可见,通过上述堆栈方式可以很方便地实现对按钮功能权限号的记录以及对按钮功能的释放。
以上结合附图详细说明了本发明的技术方案,通过本发明的技术方案,可以将散落在各个位置的代码进行集中管理,对按钮权限的管理进行对象化,并可以实现业务逻辑和代码的分离,使代码更具有通用性,进而方便增加、修改和扩展按钮功能权限。
术语“连接”、“相连”等均应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是直接相连,也可以通过中间媒介间接相连。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本发明中的具体含义。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种按钮功能权限管理方法,其特征在于,包括:
获取步骤,在多个按钮中的任一按钮接收到终端的操作动作时,获取所述任一按钮在所述操作动作下对应的功能权限号;
处理步骤,在所述任一按钮执行所述操作动作时,申请或释放所述功能权限号对应的功能权限。
2.根据权利要求1所述的按钮功能权限管理方法,其特征在于,所述操作动作包括弹起动作和按下动作,
所述获取步骤具体包括:
获取所述任一按钮在所述按下动作下对应的第一功能权限号,和所述任一按钮在所述弹起动作下对应的第二功能权限号;以及
所述处理步骤具体包括:
在所述任一按钮执行所述按下动作时,申请所述第一功能权限号对应的功能权限,以及在所述任一按钮执行所述弹起动作时,释放所述第二功能权限号对应的功能权限。
3.根据权利要求1所述的按钮功能权限管理方法,其特征在于,还包括:
存储所述多个按钮名称,以及每个按钮名称在所述操作动作下对应的功能权限号。
4.根据权利要求2所述的按钮功能权限管理方法,其特征在于,还包括:
以堆栈的形式记录所述任一按钮在所述操作动作下对应的所述功能权限号,在所述任一按钮申请所述第一功能权限号对应的功能权限时,将所述第一功能权限号压入堆栈,在所述任一按钮释放所述第二功能权限号对应的功能权限时,将所述第二功能权限号弹出所述堆栈。
5.根据权利要求1至4中任一项所述的按钮功能权限管理方法,其特征在于,还包括:
显示所述任一按钮当前正在申请的所述第一功能权限号对应的功能权限或当前正在释放的第二功能权限号对应的功能权限。
6.一种按钮功能权限管理装置,其特征在于,包括:
获取单元,在多个按钮中的任一按钮接收到终端的操作动作时,获取所述任一按钮在所述操作动作下对应的功能权限号;
处理单元,连接至所述接收单元,在所述任一按钮执行所述操作动作时,申请或释放所述功能权限号对应的功能权限。
7.根据权利要求6所述的按钮功能权限管理装置,其特征在于,所述操作动作包括弹起动作和按下动作,
所述获取单元还用于:
获取所述任一按钮在所述按下动作下对应的第一功能权限号,和所述任一按钮在所述弹起动作下对应的第二功能权限号;以及
所述处理单元还用于:
在所述任一按钮执行所述按下动作时,申请所述第一功能权限号对应的功能权限,以及在所述任一按钮执行所述弹起动作时,释放所述第二功能权限号对应的功能权限。
8.根据权利要求6所述的按钮功能权限管理装置,其特征在于,还包括:
存储单元,存储所述多个按钮名称,以及每个按钮名称在所述操作动作下对应的功能权限号。
9.根据权利要求7所述的按钮功能权限管理装置,其特征在于,还包括:
记录单元,以堆栈的形式记录所述任一按钮在所述操作动作下对应的所述功能权限号,在所述任一按钮申请所述第一功能权限号对应的功能权限时,将所述第一功能权限号压入堆栈,在所述任一按钮释放所述第二功能权限号对应的功能权限时,将所述第二功能权限号弹出所述堆栈。
10.根据权利要求6至9中任一项所述的按钮功能权限管理装置,其特征在于,还包括:
显示单元,显示所述任一按钮当前正在申请的所述第一功能权限号对应的功能权限或当前正在释放的第二功能权限号对应的功能权限。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410289728.0A CN104077506A (zh) | 2014-06-24 | 2014-06-24 | 按钮功能权限管理方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410289728.0A CN104077506A (zh) | 2014-06-24 | 2014-06-24 | 按钮功能权限管理方法和装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN104077506A true CN104077506A (zh) | 2014-10-01 |
Family
ID=51598757
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410289728.0A Pending CN104077506A (zh) | 2014-06-24 | 2014-06-24 | 按钮功能权限管理方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104077506A (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1325063A (zh) * | 2000-05-24 | 2001-12-05 | 英业达股份有限公司 | 用鼠标器操作掌上型电脑按钮的功能的装置与方法 |
CN103034406A (zh) * | 2011-10-10 | 2013-04-10 | 三星电子株式会社 | 用于在触摸装置中操作功能的方法和设备 |
CN103164050A (zh) * | 2011-12-15 | 2013-06-19 | 三星电子株式会社 | 用于执行便携式终端的功能的装置和方法 |
-
2014
- 2014-06-24 CN CN201410289728.0A patent/CN104077506A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1325063A (zh) * | 2000-05-24 | 2001-12-05 | 英业达股份有限公司 | 用鼠标器操作掌上型电脑按钮的功能的装置与方法 |
CN103034406A (zh) * | 2011-10-10 | 2013-04-10 | 三星电子株式会社 | 用于在触摸装置中操作功能的方法和设备 |
US20130088455A1 (en) * | 2011-10-10 | 2013-04-11 | Samsung Electronics Co., Ltd. | Method and apparatus for operating function in touch device |
CN103164050A (zh) * | 2011-12-15 | 2013-06-19 | 三星电子株式会社 | 用于执行便携式终端的功能的装置和方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2008121862A1 (en) | Data merging in distributed computing | |
CN102726002B (zh) | 数据配置及其回退方法和设备 | |
CN110737594B (zh) | 自动生成测试用例的数据库标准符合性测试方法及装置 | |
CN101673374A (zh) | 一种单据处理方法和装置 | |
CN101847227A (zh) | 产品测试管理系统及测试管理方法 | |
CN105389184A (zh) | 产品界面信息的配置方法及装置 | |
CN109669975B (zh) | 一种工业大数据处理系统及方法 | |
CN107798120B (zh) | 一种数据转换方法及装置 | |
CN115114359B (zh) | 用户数据处理方法及装置 | |
CN110688361A (zh) | 数据迁移方法、电子装置及计算机设备 | |
CN109902027B (zh) | 一种便于实施的tpc-ds测试方法以及系统 | |
CN102508839B (zh) | 数据处理装置和方法 | |
CN102314514B (zh) | 一种表格数据结构化的作用域方法 | |
CN105100372A (zh) | 会议记录方法及移动终端 | |
CN109377184B (zh) | 工单开立方法、装置、存储介质及终端 | |
CN103092955B (zh) | 检查点操作方法、装置及系统 | |
CN101373464B (zh) | 自动调用表格设置的方法、装置及系统 | |
CN105260266A (zh) | 一种快照卷写方法及依赖快照系统 | |
CN104077506A (zh) | 按钮功能权限管理方法和装置 | |
CN103809947A (zh) | 一种开发需求的自动发布方法和系统 | |
CN110058995B (zh) | 一种可避免数据库类型的干扰的数据库测试方法以及系统 | |
CN102117324B (zh) | 应用模糊矩阵的文件管理方法及管理系统 | |
CN101504640A (zh) | 一种数据表的编辑方法和装置 | |
CN105095225A (zh) | 文件数据的获取方法和装置 | |
CN110019296B (zh) | 数据库查询脚本的生成方法、装置、存储介质及处理器 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20141001 |
|
RJ01 | Rejection of invention patent application after publication |