一种角色展示方法、装置及计算机可读存储介质与流程
未命名
08-29
阅读:101
评论:0

1.本发明涉及图像处理技术领域,尤其涉及一种角色展示方法、装置及计算机可读存储介质。
背景技术:
2.目前,在软件系统中对权限管理常采用基于角色的访问控制模型,其组成包括用户、角色、权限三类主体,以及这三类主体间的绑定关系。为了便于给用户进行赋权,常常将一组权限实例赋权给一个角色实例,这样只要给用户赋权这一个角色就等效于赋权这一组权限,如图1所示,rbac(role-based access control,基于角色的访问控制)关系图的实现方式是在平面图上用椭圆形、矩形分别代表权限、角色的一个实例,用图形间的连线代表赋权关系。
3.但随着一个软件系统推广使用,其用户、权限、角色实例都在不断增加,现有的大型软件系统中角色、权限实例多达数千个,而实例间的关系更是多达数万个,系统运维团队将面临权限治理困扰,例如:系统中有多少权限实例、角色实例以及它们被使用的情况如何;怎样快速了解某个用户的权限结构;某些权限实例的组合是否有必要新建一个角色赋权等等,这些问题导致在平面图上绘制连线表达很多个角色、权限之间关系时不具备可读性以及不能直观显示出权限与角色的关联热度。
技术实现要素:
4.本发明所要解决的技术问题是针对现有技术的上述不足,提供一种角色展示方法、装置及计算机可读存储介质,用以解决现有技术中在平面图上绘制连线表达很多个角色、权限之间关系时不具备可读性以及不能直观显示出权限与角色的关联热度的问题。
5.第一方面,本发明提供一种角色展示方法,包括:
6.获取目标系统的多个权限;
7.根据所述目标系统的多个权限,绘制权限图层,所述权限图层包括每个所述权限对应的图形;
8.针对所述目标系统中的每个角色,分别执行以下步骤:
9.获取角色图层,并根据所述权限图层,将所述角色拥有的权限对应的图形绘制在所述角色图层上,其中,所述角色图层的每个图形中心点与所述权限图层中对应图形的中心点相同。
10.进一步地,所述权限包括菜单权限、业务类型权限,所述根据所述目标系统的多个权限,绘制权限图层,具体包括:
11.获取所述权限图层,并根据所述多个权限的包含关系,将多个所述菜单权限、业务类型权限对应的图形通过树状结构绘制在所述权限图层上,并将多个所述图形添加权限编码,其中,所述权限编码与所述图形一一对应;
12.将所有所述权限编码以及对应图形的中心点储存在全局变量中。
13.进一步地,所述根据所述权限图层,将所述角色拥有的权限对应的图形绘制在所述角色图层上,具体包括:
14.根据所述角色拥有的权限编码,通过全局变量查找所述权限图层中相同的权限编码对应图形的中心点;
15.针对所述权限图层中每个相同的权限编码对应图形的中心点,分别执行以下步骤:
16.将所述角色在所述权限图层中对应图形的中心点作为所述角色对应图形的中心点,并通过所述角色对应图形的中心点绘制所述图形在所述角色图层,并将所述角色添加角色编码和图层id;
17.将所述角色编码和所述图层id储存在全局变量中。
18.进一步地,所述方法还包括:
19.根据预设的排序列表对多个所述角色图层进行排序。
20.进一步地,所述根据预设的排序列表对多个所述角色图层进行排序,具体包括:
21.获取所述排序列表;
22.根据所述排序列表中各角色图层的顺序依次修改每个所述角色图层对应的z-index属性值。
23.进一步地,所述方法还包括:
24.当需要查找目标权限对应的角色时,修改相应图层的透明度属性值,以使仅显示所述具有目标权限的角色图层。
25.进一步地,所述当需要查找目标权限对应的角色时,修改相应图层的透明度属性值,以使仅显示所述具有目标权限的角色图层,具体包括:
26.获取用户在所述权限图层中点击的所述目标权限;
27.根据所述目标权限,通过所述全局变量查找所述目标权限的权限编码,并获取拥有所述权限编码的角色编码;
28.根据所述角色编码,通过所述全局变量查找具有目标权限的角色图层id;
29.将不具有目标权限的角色图层id对应的角色图层的透明度属性值修改成不可见,以区别显示所述具有目标权限的角色图层。
30.进一步地,所述方法还包括:
31.当需要查找目标用户对应的角色时,修改相应图层的透明度属性值,以使仅显示所述目标用户具有的角色图层。
32.进一步地,所述当需要查找目标用户对应的角色时,修改相应图层的透明度属性值,以使仅显示所述目标用户具有的角色图层,具体包括:
33.获取所述目标用户的角色编码;
34.根据所述角色编码,通过所述全局变量查找所述目标用户具有的角色图层id;
35.将所述目标用户不具有的角色图层id对应的角色图层的透明度属性值修改成不可见,以区别显示所述目标用户具有的角色图层。
36.第二方面,本发明提供一种角色展示装置,包括:
37.获取模块,用于获取目标系统的多个权限;
38.第一绘制模块,与所述获取模块连接,用于根据所述目标系统的多个权限,绘制权
限图层;
39.第二绘制模块,与所述第一绘制模块连接,用于获取角色图层,并根据所述权限图层,将所述角色拥有的权限对应的图形绘制在所述角色图层上。
40.第三方面,本发明提供一种角色展示装置,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以实现上述第一方面所述的角色展示方法。
41.第四方面,本发明提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述第一方面所述的角色展示方法。
42.本发明提供的角色展示方法、装置及计算机可读存储介质,首先获取目标系统的多个权限;然后根据所述目标系统的多个权限,绘制权限图层,所述权限图层包括每个所述权限对应的图形;再针对所述目标系统中的每个角色,分别执行以下步骤:获取角色图层,并根据所述权限图层,将所述角色拥有的权限对应的图形绘制在所述角色图层上,其中,所述角色图层的每个图形中心点与所述权限图层中对应图形的中心点相同。本发明提出利用图层化手段,通过权限绘制权限图层,根据权限图层中权限对应的图形绘制出角色图层中角色拥有的权限的图形,将rbac模型的数据转化成立体的图层结构,能够规避掉rbac模型数据可视化里的连线问题,解决了现有技术中在平面图上绘制连线表达很多个角色、权限之间关系时不具备可读性以及不能直观显示出权限与角色的关联热度的问题。
附图说明
43.图1为本发明实施例的rbac的关系示意图;
44.图2为本发明实施例1的一种角色展示方法的流程图;
45.图3为本发明实施例的权限图层的结构示意图;
46.图4为本发明实施例的角色图层的排序示意图;
47.图5为本发明实施例2的一种角色展示装置的结构示意图;
48.图6为本发明实施例3的一种角色展示装置的结构示意图。
具体实施方式
49.为使本领域技术人员更好地理解本发明的技术方案,下面将结合附图对本发明实施方式作进一步地详细描述。
50.可以理解的是,此处描述的具体实施例和附图仅仅用于解释本发明,而非对本发明的限定。
51.可以理解的是,在不冲突的情况下,本发明中的各实施例及实施例中的各特征可相互组合。
52.可以理解的是,为便于描述,本发明的附图中仅示出了与本发明相关的部分,而与本发明无关的部分未在附图中示出。
53.可以理解的是,本发明的实施例中所涉及的每个单元、模块可仅对应一个实体结构,也可由多个实体结构组成,或者,多个单元、模块也可集成为一个实体结构。
54.可以理解的是,在不冲突的情况下,本发明的流程图和框图中所标注的功能、步骤
可按照不同于附图中所标注的顺序发生。
55.可以理解的是,本发明的流程图和框图中,示出了按照本发明各实施例的系统、装置、设备、方法的可能实现的体系架构、功能和操作。其中,流程图或框图中的每个方框可代表一个单元、模块、程序段、代码,其包含用于实现规定的功能的可执行指令。而且,框图和流程图中的每个方框或方框的组合,可用实现规定的功能的基于硬件的系统实现,也可用硬件与计算机指令的组合来实现。
56.可以理解的是,本发明实施例中所涉及的单元、模块可通过软件的方式实现,也可通过硬件的方式来实现,例如单元、模块可位于处理器中。
57.实施例1:
58.本实施例提供一种角色展示方法,如图2所示,该方法包括:
59.步骤s101:获取目标系统的多个权限。
60.需要说明的是,本实施例提供的一种角色展示方法应用于本实施例提供的软件系统,该软件系统中的权限包括一个或多个菜单权限,每个菜单权限又包括一个或多个业务类型权限,这2类权限存在结构关系,其中,该软件系统中所有权限的集合构成一个树状结构,第一层级是软件系统中的根节点,对应一级菜单权限,第二层级是软件系统中根节点下的菜单目录,对应二级菜单权限,第三层级是软件系统中菜单目录下的功能页面,对应三级菜单权限,第四层级是软件系统中功能页面下的业务类型,对应业务类型权限,菜单界面的查询条件里包含业务类型权限选项栏。需要说明的是,根据软件系统中菜单级数的不同,菜单权限具体又可以细分为一级菜单权限、二级菜单权限、三级菜单权限等。
61.具体地,通过在软件系统数据库中查询并获取所有权限。
62.步骤s102:根据所述目标系统的多个权限,绘制权限图层,所述权限图层包括每个所述权限对应的图形。
63.具体地,根据上述菜单权限、业务类型权限存在的结构关系,将在软件系统数据库中获取到的所有权限通过图形的形式绘制在该软件系统的图层0(也即为权限图层)上,该图层0在立体空间里位于最底层。
64.在一种可选的实施例中,所述权限包括菜单权限、业务类型权限,所述根据所述目标系统的多个权限,绘制权限图层,具体包括:
65.获取所述权限图层,并根据所述多个权限的包含关系,将多个所述菜单权限、业务类型权限对应的图形通过树状结构绘制在所述权限图层上,并将多个所述图形添加权限编码,其中,所述权限编码与所述图形一一对应;
66.将所有所述权限编码以及对应图形的中心点储存在全局变量中。
67.具体地,如图3所示,使用javascript语言,在网页中实例化一个画布元素,此画布的css(cascading style sheets,层叠样式表)样式z-index属性值是0,画笔颜色为黑色,在画布元素坐标0点绘制一个半径是20像素的圆点,代表一级菜单,在圆点上方添加文本,文本内容是一级菜单的名称和编码,在画布元素上的代表一级菜单的圆点右下方,竖直向下依次绘制半径是16像素的圆点,每个圆点代表一个二级菜单,在圆点上方添加文本,文本内容是二级菜单的名称和编码,在画布元素上的每个代表二级菜单的圆点右下方,竖直向下依次绘制半径是12像素的圆点,每个圆点代表一个三级菜单,在圆点上方添加文本,文本内容是三级菜单的名称和编码,在画布元素上的每个代表三级菜单的圆点右下方,水平向
右依次绘制半径是8像素的矩形,每个矩形代表一个业务类型,在矩形上方添加文本,文本内容是业务类型名称和编码,将以上步骤中绘制的圆点坐标存储在全局变量elementpositionmap中,此变量是map类型,map中的键名是圆点上的编码,键值是坐标值和半径。
68.步骤s103:针对所述目标系统中的每个角色,分别执行以下步骤:
69.获取角色图层,并根据所述权限图层,将所述角色拥有的权限对应的图形绘制在所述角色图层上,其中,所述角色图层的每个图形中心点与所述权限图层中对应图形的中心点相同。
70.具体地,在软件系统数据库中获取该角色的所有权限,并将该角色的所有权限通过图形的形式,按照图层0上对应权限的图形位置绘制在该软件系统的图层1(也即为角色图层)上。
71.需要说明的是,每一个角色对应一个角色图层,角色图层的序号顺序与绘制该角色的角色图层的顺序相同。
72.在一种可选的实施例中,所述根据所述权限图层,将所述角色拥有的权限对应的图形绘制在所述角色图层上,具体包括:
73.根据所述角色拥有的权限编码,通过全局变量查找所述权限图层中相同的权限编码对应图形的中心点;
74.针对所述权限图层中每个相同的权限编码对应图形的中心点,分别执行以下步骤:
75.将所述角色在所述权限图层中对应图形的中心点作为所述角色对应图形的中心点,并通过所述角色对应图形的中心点绘制所述图形在所述角色图层,并将所述角色添加角色编码和图层id;
76.将所述角色编码和所述图层id储存在全局变量中。
77.具体地,在该软件系统中,支持将一组权限赋权给指定角色,而后赋权此角色的用户将获得这一组权限。以“订单交付员”这一角色为例,将其权限范围在图层1上绘制,图层1在立体空间上位于图层0上一层;
78.步骤1:在软件系统数据库中查询出“订单交付员”这一角色的全部权限,如表1所示:
79.表1:软件系统数据库中“订单交付员”的全部权限
80.角色编码权限编码role_order_deliverymenu000role_order_deliverymenu004role_order_deliverymenu005role_order_deliveryorderyw
81.步骤2:使用javascript语言,在网页中实例化一个画布元素,此画布的css样式z-index属性值是1,画笔颜色为蓝色,透明度50%;
82.步骤3:根据步骤1中查询出的“订单交付员”这一角色的全部权限编码,在全局变量elementpositionmap中提取出每个权限编码在图层0上对应的坐标值和半径;
83.步骤4:按照步骤3提取的坐标值为圆心和半径,在图层1上绘制出代表“订单交付
员”全部权限的圆;
84.步骤5:将“订单交付员”的角色编码“role_order_delivery”存储在全局变量layermap中,此变量是map类型,map中的键名是角色编码,键值是图层id;
85.步骤6:重复步骤1至5将全部角色的权限都绘制在新的图层上,并储存到全局变量layermap中。
86.在一种可选的实施例中,所述方法还包括:
87.根据预设的排序列表对多个所述角色图层进行排序。
88.在一种可选的实施例中,所述根据预设的排序列表对多个所述角色图层进行排序,具体包括:
89.获取所述排序列表;
90.根据所述排序列表中各角色图层的顺序依次修改每个所述角色图层对应的z-index属性值。
91.具体地,如图4所示,在该软件系统中,支持根据角色属性进行排序,将角色对应的图层z-index属性值按照排序顺序递增,从而实现角色排序可视化,以角色的创建时间为例进行排序,具体步骤如下:
92.步骤1:在软件系统数据库中根据角色的创建时间进行排序查询,如表2所示:
93.表2:软件系统数据库中角色按照创建时间排序
94.角色编码创建时间role_order_delivery000000role_order_audit000001role_order_read000002
95.步骤2:在全局变量layermap中根据步骤1的角色编码集合按照顺序获取出角色图层id集合;
96.步骤3:在步骤2的有序id集合中逐个修改对应图层的z-index属性,第一个id对应的图层z-index是属性值是1,第二个id对应的图层z-index是属性值是2,以此类推。
97.在一种可选的实施例中,所述方法还包括:
98.当需要查找目标权限对应的角色时,修改相应图层的透明度属性值,以使仅显示所述具有目标权限的角色图层。
99.在一种可选的实施例中,所述当需要查找目标权限对应的角色时,修改相应图层的透明度属性值,以使仅显示所述具有目标权限的角色图层,具体包括:
100.获取用户在所述权限图层中点击的所述目标权限;
101.根据所述目标权限,通过所述全局变量查找所述目标权限的权限编码,并获取拥有所述权限编码的角色编码;
102.根据所述角色编码,通过所述全局变量查找具有目标权限的角色图层id;
103.将不具有目标权限的角色图层id对应的角色图层的透明度属性值修改成不可见,以区别显示所述具有目标权限的角色图层。
104.具体地,在该软件系统中,支持根据用户选择的权限实例筛选角色,没有指定权限的角色会被剔除,并将筛选结果图形化展示,具体步骤如下:
105.步骤1:如图3所示,当用户在点击图层0上代表权限实例“订单领取”的圆时,根据
点击坐标在全局变量elementpositionmap提取被点击圆所对应的权限实例编码menu005;
106.步骤2:在系统数据库中根据权限编码查询出拥有此权限的角色编码集合;
107.步骤3:在全局变量layermap中根据步骤2的角色编码集合获取出角色图层id集合;
108.步骤4:在web页面上对角色图层修改可见属性,如果图形id不在步骤3集合里,将图层的display属性设置为none;
109.步骤5:当用户再次点击图层0上的其他权限实例所对应的圆时,按照步骤1至4再筛选一遍角色图层。
110.在一种可选的实施例中,所述方法还包括:
111.当需要查找目标用户对应的角色时,修改相应图层的透明度属性值,以使仅显示所述目标用户具有的角色图层。
112.在一种可选的实施例中,所述当需要查找目标用户对应的角色时,修改相应图层的透明度属性值,以使仅显示所述目标用户具有的角色图层,具体包括:
113.获取所述目标用户的角色编码;
114.根据所述角色编码,通过所述全局变量查找所述目标用户具有的角色图层id;
115.将所述目标用户不具有的角色图层id对应的角色图层的透明度属性值修改成不可见,以区别显示所述目标用户具有的角色图层。
116.具体地,该软件系统支持图层化展示指定工号的权限关系,包括此工号所拥有的角色以及角色所拥有的权限实例,具体实现步骤如下:
117.步骤1:在软件系统数据库中查询出“张三”这一工号的全部角色编码,如表3所示:
118.表3:软件系统数据库中“张三”的全部角色编码
119.工号编码角色编码zhangsanrole_order_deliveryzhangsanrole_order_audit
120.步骤2:在全局变量layermap中根据步骤1的角色编码集合获取出角色图层id集合;
121.步骤3:在web页面上对角色图层修改可见属性,如果图形id在不步骤2集合里,将图层的display属性设置为none。
122.本发明实施例提供的角色展示方法,首先获取目标系统的多个权限;然后根据所述目标系统的多个权限,绘制权限图层,所述权限图层包括每个所述权限对应的图形;再针对所述目标系统中的每个角色,分别执行以下步骤:获取角色图层,并根据所述权限图层,将所述角色拥有的权限对应的图形绘制在所述角色图层上,其中,所述角色图层的每个图形中心点与所述权限图层中对应图形的中心点相同。本发明提出利用图层化手段,通过权限绘制权限图层,根据权限图层中权限对应的图形绘制出角色图层中角色拥有的权限的图形,将rbac模型的数据转化成立体的图层结构,能够规避掉rbac模型数据可视化里的连线问题,解决了现有技术中在平面图上绘制连线表达很多个角色、权限之间关系时不具备可读性以及不能直观显示出权限与角色的关联热度的问题。
123.实施例2:
124.如图5所示,本实施例提供一种角色展示装置,用于执行上述的角色展示方法,包
括:
125.获取模块11,用于获取目标系统的多个权限;
126.第一绘制模块12,与所述获取模块11连接,用于根据所述目标系统的多个权限,绘制权限图层;
127.第二绘制模块13,与所述第一绘制模块12连接,用于获取角色图层,并根据所述权限图层,将所述角色拥有的权限对应的图形绘制在所述角色图层上。
128.进一步地,所述权限包括菜单权限、业务类型权限,所述第一绘制模块12具体包括:
129.获取绘制单元,用于获取所述权限图层,并根据所述多个权限的包含关系,将多个所述菜单权限、业务类型权限对应的图形通过树状结构绘制在所述权限图层上,并将多个所述图形添加权限编码,其中,所述权限编码与所述图形一一对应;
130.第一储存单元,用于将所有所述权限编码以及对应图形的中心点储存在全局变量中。
131.进一步地,所述第二绘制模块13具体包括:
132.第一查找单元,用于根据所述角色拥有的权限编码,通过全局变量查找所述权限图层中相同的权限编码对应图形的中心点;
133.绘制添加单元,用于将所述角色在所述权限图层中对应图形的中心点作为所述角色对应图形的中心点,并通过所述角色对应图形的中心点绘制所述图形在所述角色图层,并将所述角色添加角色编码和图层id;
134.第二储存单元,用于将所述角色编码和所述图层id储存在全局变量中。
135.进一步地,所述装置还包括:
136.排序模块:与所述第二绘制模块13连接,用于根据预设的排序列表对多个所述角色图层进行排序。
137.进一步地,所述排序模块具体包括:
138.第一获取单元,用于获取所述排序列表;
139.第一修改单元,用于根据所述排序列表中各角色图层的顺序依次修改每个所述角色图层对应的z-index属性值。
140.进一步地,所述装置还包括:
141.第一查找模块,与所述第二绘制模块13连接,用于当需要查找目标权限对应的角色时,修改相应图层的透明度属性值,以使仅显示所述具有目标权限的角色图层。
142.进一步地,所述第一查找模块具体包括:
143.第二获取单元,用于获取用户在所述权限图层中点击的所述目标权限;
144.查找获取单元,用于根据所述目标权限,通过所述全局变量查找所述目标权限的权限编码,并获取拥有所述权限编码的角色编码;
145.第二查找单元,用于根据所述角色编码,通过所述全局变量查找具有目标权限的角色图层id;
146.第二修改单元,用于将不具有目标权限的角色图层id对应的角色图层的透明度属性值修改成不可见,以区别显示所述具有目标权限的角色图层。
147.进一步地,所述装置还包括:
148.第二查找模块,与所述第二绘制模块13连接,用于当需要查找目标用户对应的角色时,修改相应图层的透明度属性值,以使仅显示所述目标用户具有的角色图层。
149.进一步地,所述第二查找模块具体包括:
150.第三获取单元,用于获取所述目标用户的角色编码;
151.第三查找单元,用于根据所述角色编码,通过所述全局变量查找所述目标用户具有的角色图层id;
152.第三修改单元,用于将所述目标用户不具有的角色图层id对应的角色图层的透明度属性值修改成不可见,以区别显示所述目标用户具有的角色图层。
153.实施例3:
154.参考图6,本实施例提供一种角色展示装置,包括存储器21和处理器22,存储器21中存储有计算机程序,处理器22被设置为运行所述计算机程序以执行实施例1中的角色展示方法。
155.其中,存储器21与处理器22连接,存储器21可采用闪存或只读存储器或其他存储器,处理器22可采用中央处理器或单片机。
156.实施例4:
157.本实施例提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述实施例1中的角色展示方法。
158.该计算机可读存储介质包括在用于存储信息(诸如计算机可读指令、数据结构、计算机程序模块或其他数据)的任何方法或技术中实施的易失性或非易失性、可移除或不可移除的介质。计算机可读存储介质包括但不限于ram(random access memory,随机存取存储器),rom(read-only memory,只读存储器),eeprom(electrically erasable programmable read only memory,带电可擦可编程只读存储器)、闪存或其他存储器技术、cd-rom(compact disc read-only memory,光盘只读存储器),数字多功能盘(dvd)或其他光盘存储、磁盒、磁带、磁盘存储或其他磁存储装置、或者可以用于存储期望的信息并且可以被计算机访问的任何其他的介质。
159.实施例2至实施例4提供的角色展示方法、装置及计算机可读存储介质,首先获取目标系统的多个权限;然后根据所述目标系统的多个权限,绘制权限图层,所述权限图层包括每个所述权限对应的图形;再针对所述目标系统中的每个角色,分别执行以下步骤:获取角色图层,并根据所述权限图层,将所述角色拥有的权限对应的图形绘制在所述角色图层上,其中,所述角色图层的每个图形中心点与所述权限图层中对应图形的中心点相同。本发明提出利用图层化手段,通过权限绘制权限图层,根据权限图层中权限对应的图形绘制出角色图层中角色拥有的权限的图形,将rbac模型的数据转化成立体的图层结构,能够规避掉rbac模型数据可视化里的连线问题,解决了现有技术中在平面图上绘制连线表达很多个角色、权限之间关系时不具备可读性以及不能直观显示出权限与角色的关联热度的问题。
160.可以理解的是,以上实施方式仅仅是为了说明本发明的原理而采用的示例性实施方式,然而本发明并不局限于此。对于本领域内的普通技术人员而言,在不脱离本发明的精神和实质的情况下,可以做出各种变型和改进,这些变型和改进也视为本发明的保护范围。
技术特征:
1.一种角色展示方法,其特征在于,所述方法包括:获取目标系统的多个权限;根据所述目标系统的多个权限,绘制权限图层,所述权限图层包括每个所述权限对应的图形;针对所述目标系统中的每个角色,分别执行以下步骤:获取角色图层,并根据所述权限图层,将所述角色拥有的权限对应的图形绘制在所述角色图层上,其中,所述角色图层的每个图形中心点与所述权限图层中对应图形的中心点相同。2.根据权利要求1所述的方法,其特征在于,所述权限包括菜单权限、业务类型权限,所述根据所述目标系统的多个权限,绘制权限图层,具体包括:获取所述权限图层,并根据所述多个权限的包含关系,将多个所述菜单权限、业务类型权限对应的图形通过树状结构绘制在所述权限图层上,并将多个所述图形添加权限编码,其中,所述权限编码与所述图形一一对应;将所有所述权限编码以及对应图形的中心点储存在全局变量中。3.根据权利要求2所述的方法,其特征在于,所述根据所述权限图层,将所述角色拥有的权限对应的图形绘制在所述角色图层上,具体包括:根据所述角色拥有的权限编码,通过全局变量查找所述权限图层中相同的权限编码对应图形的中心点;针对所述权限图层中每个相同的权限编码对应图形的中心点,分别执行以下步骤:将所述角色在所述权限图层中对应图形的中心点作为所述角色对应图形的中心点,并通过所述角色对应图形的中心点绘制所述图形在所述角色图层,并将所述角色添加角色编码和图层id;将所述角色编码和所述图层id储存在全局变量中。4.根据权利要求3所述的方法,其特征在于,所述方法还包括:根据预设的排序列表对多个所述角色图层进行排序。5.根据权利要求4所述的方法,其特征在于,所述根据预设的排序列表对多个所述角色图层进行排序,具体包括:获取所述排序列表;根据所述排序列表中各角色图层的顺序依次修改每个所述角色图层对应的z-index属性值。6.根据权利要求3所述的方法,其特征在于,所述方法还包括:当需要查找目标权限对应的角色时,修改相应图层的透明度属性值,以使仅显示所述具有目标权限的角色图层。7.根据权利要求6所述的方法,其特征在于,所述当需要查找目标权限对应的角色时,修改相应图层的透明度属性值,以使仅显示所述具有目标权限的角色图层,具体包括:获取用户在所述权限图层中点击的所述目标权限;根据所述目标权限,通过所述全局变量查找所述目标权限的权限编码,并获取拥有所述权限编码的角色编码;根据所述角色编码,通过所述全局变量查找具有目标权限的角色图层id;
将不具有目标权限的角色图层id对应的角色图层的透明度属性值修改成不可见,以区别显示所述具有目标权限的角色图层。8.根据权利要求3所述的方法,其特征在于,所述方法还包括:当需要查找目标用户对应的角色时,修改相应图层的透明度属性值,以使仅显示所述目标用户具有的角色图层。9.根据权利要求8所述的方法,其特征在于,所述当需要查找目标用户对应的角色时,修改相应图层的透明度属性值,以使仅显示所述目标用户具有的角色图层,具体包括:获取所述目标用户的角色编码;根据所述角色编码,通过所述全局变量查找所述目标用户具有的角色图层id;将所述目标用户不具有的角色图层id对应的角色图层的透明度属性值修改成不可见,以区别显示所述目标用户具有的角色图层。10.一种角色展示装置,其特征在于,包括:获取模块,用于获取目标系统的多个权限;第一绘制模块,与所述获取模块连接,用于根据所述目标系统的多个权限,绘制权限图层;第二绘制模块,与所述第一绘制模块连接,用于获取角色图层,并根据所述权限图层,将所述角色拥有的权限对应的图形绘制在所述角色图层上。11.一种角色展示装置,其特征在于,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以实现如权利要求1-9中任一项所述的角色展示方法。12.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1-9中任一项所述的角色展示方法。
技术总结
本发明提供一种角色展示方法、装置及计算机可读存储介质,所述方法包括:获取目标系统的多个权限;根据所述目标系统的多个权限,绘制权限图层,所述权限图层包括每个所述权限对应的图形;针对所述目标系统中的每个角色,分别执行以下步骤:获取角色图层,并根据所述权限图层,将所述角色拥有的权限对应的图形绘制在所述角色图层上,其中,所述角色图层的每个图形中心点与所述权限图层中对应图形的中心点相同。该方法、装置及计算机可读存储介质能够解决现有技术中在平面图上绘制连线表达很多个角色、权限之间关系时不具备可读性以及不能直观显示出权限与角色的关联热度的问题。能直观显示出权限与角色的关联热度的问题。能直观显示出权限与角色的关联热度的问题。
技术研发人员:张洺棋
受保护的技术使用者:中国联合网络通信集团有限公司
技术研发日:2023.06.06
技术公布日:2023/8/28
版权声明
本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
航空之家 https://www.aerohome.com.cn/
飞机超市 https://mall.aerohome.com.cn/
航空资讯 https://news.aerohome.com.cn/