权限控制实现方法、装置、设备及存储介质制造方法及图纸

技术编号:38640869 阅读:11 留言:0更新日期:2023-08-31 18:34
本发明专利技术涉及物流管理技术领域,尤其涉及权限控制实现方法、装置、设备及存储介质,所述方法包括:当接收到登陆请求时,获取用户信息,根据用户信息匹配用户权限;根据用户权限查询数据库,生成第一菜单树数据;获取并存储后端反馈的第一菜单树数据,对第一菜单树数据进行再加工,生成第二菜单树数据和路由表树数据;调用展开组件对第二菜单树数据进行自动递归渲染,生成菜单展示界面;判断菜单展示界面是否反馈跳转请求,若反馈跳转请求,采用路由表根据路由表树数据生成跳转界面;本申请公开的权限控制实现方法,可根据实时登陆请求查询数据库并生成菜单展示界面和跳转界面,提高了系统权限授权的灵活性,并提高了系统权限的授权信息的安全性。息的安全性。息的安全性。

【技术实现步骤摘要】
权限控制实现方法、装置、设备及存储介质


[0001]本专利技术涉及物流管理
,尤其涉及一种权限控制实现方法、装置、设备及存储介质。

技术介绍

[0002]系统权限管理,一般指根据系统设置的安全规则或者安全策略,用户可以访问而且仅能访问自己被授权的资源;权限管理几乎出现在任何有用户和密码的系统里面,系统权限管理是任何一个应用系统不可缺少重要组成部分,所谓的权限,其实指的就是:用户是否能看到,以及是否允许其对数据进行增删改查的操作,因为现在开发项目的主流方式是前后端分离,所以整个项目的权限是后端权限控制搭配前端权限控制共同实现的;任何一个中大型商业系统都必须加入权限控制功能,做到控制不同的角色用户,能看到隶属于自己权限范围内的数据内容,不可越权查看不属于自己权限内的内容。
[0003]目前,数据访问权限控制一般采用如下方法:采用代码固化的方式进行权限控制,这种方式比较简单但不利于后期的维护。
[0004]可见,现有技术还有待改进和提高。

技术实现思路

[0005]为了克服现有技术的不足,本专利技术的目的在于提供一种权限控制实现方法、装置、设备及存储介质,可提供授权信息的安全性,并提高系统权限授权的灵活性。
[0006]本专利技术第一方面提供了一种权限控制实现方法,包括:当接收到登陆请求时,获取用户信息,根据用户信息匹配用户权限;根据用户权限查询数据库,生成第一菜单树数据;获取并存储后端反馈的第一菜单树数据,对第一菜单树数据进行再加工,生成第二菜单树数据和路由表树数据;调用展开组件对第二菜单树数据进行自动递归渲染,生成菜单展示界面;判断菜单展示界面是否反馈跳转请求,若反馈跳转请求,采用路由表根据路由表树数据生成跳转界面。
[0007]可选的,在本专利技术第一方面的第一种实施方式中,所述当接收到登陆请求时,获取用户信息,根据用户信息匹配用户权限,具体包括:当接收到登陆请求时,获取用户信息,所述用户信息包括账户信息和密码信息;根据账户信息匹配预设的角色表,确认用户角色信息,所述用户角色信息包括角色名、角色ID以及角色备注;根据用户角色信息匹配预设的角色菜单表,所述角色菜单表包括用户ID和菜单ID的对应关系,确认用户权限。
[0008]可选的,在本专利技术第一方面的第二种实施方式中,所述根据用户权限查询数据库,生成第一菜单树数据,具体包括:根据用户权限拼接sql语句,生成查询指令;根据查询指令查询与数据库池建立连接关系的数据库,返回扁平化数据组;取任一节点字段,判断该节点字段是否为顶级的父级节点字段,若否,则继续递归,若是,则停止递归,以将扁平化数据组转化成树结构;为树结构添加预存的层级字段,生成第一菜单树数据。
[0009]可选的,在本专利技术第一方面的第三种实施方式中,所述获取并存储后端反馈的第
一菜单树数据,对第一菜单树数据进行再加工,生成第二菜单树数据和路由表树数据,具体包括:获取后端反馈的第一菜单树数据,将第一菜单树数据存储于vuex中;判断第一菜单树数据中是否存在子集内容,若存在子集内容,则调用递归组件对第一菜单树数据进行递归,生成第二菜单树数据;根据路由类型,采用setRouterTree加工函数对第一菜单树数据进行再加工,再采用component函数引用指向解析组件,生成路由表树数据。
[0010]可选的,在本专利技术第一方面的第四种实施方式中,所述调用展开组件对第二菜单树数据进行自动递归渲染,生成菜单展示界面,具体包括:获取第二菜单树数据,使用v

for指令渲染第二菜单树数据;通过v

bind的方式传递数据,并使用v

for指令递归渲染tree.vue组件;当满足递归停止条件时,完成tree.vue组件的递归渲染,生成菜单展示界面。
[0011]可选的,在本专利技术第一方面的第五种实施方式中,所述判断菜单展示界面是否反馈跳转请求,若反馈跳转请求,采用路由表根据路由表树数据生成跳转界面,具体包括:判断菜单展示界面是否反馈跳转请求,若反馈跳转请求,获取跳转信息,所述跳转信息包括跳转路径;采用路由表通过addRoutes的方法调用路由表树数据,匹配与跳转路径对应的.vue组件的路径;获取.vue组件并调用递归组件渲染.vue组件,当满足递归停止条件时,生成跳转界面。
[0012]可选的,在本专利技术第一方面的第六种实施方式中,所述调用展开组件对第二菜单树数据进行自动递归渲染,生成菜单展示界面,之前还包括:获取第一菜单树数据中的按钮数据,将按钮数据再加工成布尔值按钮树数据;调用按钮树递归函数,根据用户信息以及布尔值按钮树数据确认用户的按钮权限;根据按钮权限生成第二菜单树数据,并将第二菜单树数据存储至vuex中。
[0013]本专利技术第二方面提供了一种权限控制实现装置,包括:获取模块,用于当接收到登陆请求时,获取用户信息,根据用户信息匹配用户权限;第一生成模块,用于根据用户权限查询数据库,生成第一菜单树数据;加工模块,用于获取并存储后端反馈的第一菜单树数据,对第一菜单树数据进行再加工,生成第二菜单树数据和路由表树数据;第二生成模块,调用展开组件对第二菜单树数据进行自动递归渲染,生成菜单展示界面;判断模块,用于判断菜单展示界面是否反馈跳转请求,若反馈跳转请求,采用路由表根据路由表树数据生成跳转界面。
[0014]可选的,在本专利技术第二方面的第一种实现方式中,所述获取模块包括:第一获取单元,用于当接收到登陆请求时,获取用户信息,所述用户信息包括账户信息和密码信息;第一确认单元,用于根据账户信息匹配预设的角色表,确认用户角色信息,所述用户角色信息包括角色名、角色ID以及角色备注;第二确认单元,用于根据用户角色信息匹配预设的角色菜单表,所述角色菜单表包括用户ID和菜单ID的对应关系,确认用户权限。
[0015]可选的,在本专利技术第二方面的第二种实现方式中,所述第一生成模块包括:第一生成单元,用于根据用户权限拼接sql语句,生成查询指令;查询单元,用于根据查询指令查询与数据库池建立连接关系的数据库,返回扁平化数据组;第一判断单元,用于取任一节点字段,判断该节点字段是否为顶级的父级节点字段,若否,则继续递归,若是,则停止递归,以将扁平化数据组转化成树结构;第二生成单元,用于为树结构添加预存的层级字段,生成第一菜单树数据。
[0016]可选的,在本专利技术第二方面的第三种实现方式中,所述加工模块包括:第二获取单元,用于获取后端反馈的第一菜单树数据,将第一菜单树数据存储于vuex中;第二判断单元,用于判断第一菜单树数据中是否存在子集内容,若存在子集内容,则调用递归组件对第一菜单树数据进行递归,生成第二菜单树数据;加工单元,用于根据路由类型,采用setRouterTree加工函数对第一菜单树数据进行再加工,再采用component函数引用指向解析组件,生成路由表树数据。
[0017]可选的,在本专利技术第二方面的第四种实现方式中,所述第二生成模块包括:第三获取单元,用于获取第二菜单树数据,使用v

fo本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种权限控制实现方法,其特征在于,包括:当接收到登陆请求时,获取用户信息,根据用户信息匹配用户权限;根据用户权限查询数据库,生成第一菜单树数据;获取并存储后端反馈的第一菜单树数据,对第一菜单树数据进行再加工,生成第二菜单树数据和路由表树数据;调用展开组件对第二菜单树数据进行自动递归渲染,生成菜单展示界面;判断菜单展示界面是否反馈跳转请求,若反馈跳转请求,采用路由表根据路由表树数据生成跳转界面。2.根据权利要求1所述的一种权限控制实现方法,其特征在于,所述当接收到登陆请求时,获取用户信息,根据用户信息匹配用户权限,具体包括:当接收到登陆请求时,获取用户信息,所述用户信息包括账户信息和密码信息;根据账户信息匹配预设的角色表,确认用户角色信息,所述用户角色信息包括角色名、角色ID以及角色备注;根据用户角色信息匹配预设的角色菜单表,所述角色菜单表包括用户ID和菜单ID的对应关系,确认用户权限。3.根据权利要求1所述的一种权限控制实现方法,其特征在于,所述根据用户权限查询数据库,生成第一菜单树数据,具体包括:根据用户权限拼接sql语句,生成查询指令;根据查询指令查询与数据库池建立连接关系的数据库,返回扁平化数据组;取任一节点字段,判断该节点字段是否为顶级的父级节点字段,若否,则继续递归,若是,则停止递归,以将扁平化数据组转化成树结构;为树结构添加预存的层级字段,生成第一菜单树数据。4.根据权利要求1所述的一种权限控制实现方法,其特征在于,所述获取并存储后端反馈的第一菜单树数据,对第一菜单树数据进行再加工,生成第二菜单树数据和路由表树数据,具体包括:获取后端反馈的第一菜单树数据,将第一菜单树数据存储于vuex中;判断第一菜单树数据中是否存在子集内容,若存在子集内容,则调用递归组件对第一菜单树数据进行递归,生成第二菜单树数据;根据路由类型,采用setRouterTree加工函数对第一菜单树数据进行再加工,再采用component函数引用指向解析组件,生成路由表树数据。5.根据权利要求1所述的一种权限控制实现方法,其特征在于,所述调用展开组件对第二菜单树数据进行自动递归渲染,生成菜单展示界面,具体包括:获取第二菜单树数据,使用v

for指令渲染第二菜单树数据;通过v
‑<...

【专利技术属性】
技术研发人员:李杰杨周龙
申请(专利权)人:上海东普信息科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1