开发指南专题十一:JEECG微云快速开发平台--基础用户权限



   11.1. 权限设计

基本概念

权限管理模块涉及到的实体有:用户、角色和系统资源(包括系统菜单、页面按钮等)。用户可以拥有多个角色,角色可以被分配给多个用户。而权限的意思就是对某个资源的某个操作.一般通用的权限管理模块规定:所谓资源即应用系统中提供的要进行鉴权才能访问的资源(比如各类数据,系统菜单);所谓操作即增加、修改、删除、查询等操作。

权限模型

用户权限模型,指的是用来表达用户信息及用户权限信息的数据模型。即能证明“你是谁?”、“你能访问哪些受保护资源?”。

用户与角色之间构成多对多关系。表示同一个用户可以拥有多个角色,一个角色可以被多个用户所拥有。

角色与资源之间构成多对多关系。表示同一个资源可以被多个角色访问,一个角色可以访问多个资源。

权限设计模型如图81所示。

   11.2. 权限设计目标

权限设计及权限管理的目标包括:

1) 对用户授予相应的角色

2) 对角色授予不同的菜单

3) 对角色授予不同的操作按钮权限

4) 进行数据级别的权限控制(行级别、列级别)

11.3. 权限设计

11.3.1. 数据表

数据表

实体类

说明

t_s_user

jeecg.system.pojo.base.TSUsr

[用户权限]系统用户表

t_s_base_user

jeecg.system.pojo.base.TSBaseUser

[用户权限]系统用户父类表

t_s_role

jeecg.system.pojo.base.TSRole

[用户权限]角色

t_s_role_user

jeecg.system.pojo.base.TSRoleUser

[用户权限]用户角色

t_s_depart

jeecg.system.pojo.base.TSDepart

[用户权限]部门机构表

t_s_role_function

jeecg.system.pojo.base.TSRoleFunction

[用户权限]角色权限表

t_s_operation

jeecg.system.pojo.base.TSOperation

[用户权限]操作权限表

t_s_function

jeecg.system.pojo.base.TSFunction

[用户权限]菜单权限表

11.3.2. 页面菜单

权限管理的相关菜单如图82所示。

11.3.3. 按钮权限

使用说明

按钮级别的权限依赖于菜单权限,也就是说,需要先为角色分配菜单,在已分配的菜单中,可以选择可以操作的按钮。

按钮权限的添加在菜单管理页面,点击【按钮设置】,设置该菜单页面相关的操作按钮,如图83所示。

按钮权限的分配在角色管理页面,在权限设置时,先为角色分配菜单,点击相应的菜单,在右侧的“操作按钮列表”面板中显示该菜单可分配的操作按钮,如图84所示。

开发说明

在JEECG系统中,可以通过系统的全局变量配置来决定是否启用按钮权限。如下:

/resources/sysConfig.properties 中button.authority.jeecg参数值如下:

true(开启按钮权限)

false(关闭按钮权限)

当为false时默认拥有所有按钮权限,如(3)

DateGridTag中根据系统的配置进行按钮权限的控制:

(1)系统开启按钮权限并且DateGridTag里面相关的按钮操作有配置则根据配置做按钮权限的控制;

(2)系统开启按钮权限但是DateGridTag里面相关的按钮操作没有配置则不作按钮权限的控制;

(3)系统关闭按钮权限则所有的按钮不做按钮权限的控制;

(4)admin用户按钮权限不做限制。

操作步骤

①按钮设置:进入【系统管理】→【菜单管理】→【常用插件】,点击【单表模型】的【按钮设置】

②代码中对按钮加入操作代码。

③角色管理中对菜单设置按钮权限

④开启按钮权限

⑤以角色为【普通用户】的账户登录系统

开发指南专题十一:JEECG微云快速开发平台--基础用户权限相关推荐

  1. 开发指南专题七:JEECG微云快速开发平台查询HQL过滤器

    开发指南专题七:JEECG微云快速开发平台 HQL过滤器 1. 查询HQL过滤器 1.1. 数据过滤现状分析 项目开发的查询页面都会有很多查询条件,开发追加查询条件的工作繁琐又很浪费时间. 这块工作量 ...

  2. 开发指南专题四 JEECG微云快速开发平台--JEECG开发环境搭建

    分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow 也欢迎大家转载本篇文章.分享知识,造福人民,实现我们中华民族伟大复兴! 开发指南 ...

  3. 开发指南专题一: JEECG微云快速开发平台前言

    JEECG微云快速开发平台-前言 1. 前言 1.1. 技术背景 随着WEB UI 框架(EasyUI/Jquery UI/Ext/DWZ)等的逐渐成熟,系统界面逐渐实现统一化,代码生成器也可以生成统 ...

  4. 专题开发十二:JEECG微云快速开发平台-基础用户权限

      专题开发十二:JEECG微云快速开发平台-基础用户权限 11.3.4自定义按钮权限 Jeecg中,目前按钮权限设置,是通过对平台自己封装的按钮标签(<t:dgFunOpt等)进行设置.而在开 ...

  5. 开发指南专题十六:JEECG微云快速开发平台Excel导出

    开发指南专题十六:JEECG微云快速开发平台Excel导出 14.3.  Excel导出 导出工具类ExcelExportUtil 提供两个函数 //创建多个Sheet public static H ...

  6. 开发指南专题十四:JEECG微云快速开发平台MiniDao 介绍

    开发指南专题十四:JEECG微云快速开发平台MiniDao 介绍 13.MiniDao 介绍 13.1.  MiniDao简介及特征 MiniDao是Jeecg自己的持久化解决方案,具备了Hibern ...

  7. 开发指南专题十:JEECG微云快速开发平台--表单校验组件ValidForm

    开发指南专题十:JEECG微云快速开发平台--表单校验组件ValidForm 10.4Validform对象[方法支持链式调用] 如示例 var demo=$(".formsub" ...

  8. 开发指南专题九:JEECG微云快速开发平台-表单校验组件ValidForm

    开发指南专题九:JEECG微云快速开发平台表单校验组件ValidForm 10.表单校验组件ValidForm 10.1使用入门 1.引入css 请查看下载文件中的style.css,把里面Valid ...

  9. 开发指南专题八:JEECG微云快速开发平台数据字典

       开发指南专题八:JEECG微云快速开发平台数据字典的使用 1.标签中使用数据字典 数据字典为系统中可能用到的字典类型数据提供了使用的便利性和可维护性.以下拉框标签<t:dictSele ...

最新文章

  1. 顶尖创新型人才:10种与众不同的行为方式
  2. 矩阵分析与多元统计II 二次型与二次曲面2 双线性函数
  3. python字典添加主键_python 字典相关操作
  4. wxWidgets:使用文本模板
  5. 在log4j中使用自定义的Appender
  6. C#中JSON的理解
  7. php把1拆分成三份,【php】位运算如何拆分
  8. pro git 阅读笔记1 基本操作
  9. python视频处理加速的库_VPF:适用于 Python 的开源视频处理框架,加速视频任务、提高 GPU 利用率...
  10. 心理与行为科学统计_华东师范大学心理学考研备考经验分享
  11. 学习C++就这么简单
  12. SECS/GEM协议开发系列(四)SECS/GEM基础知识
  13. 怎么让放大的图片变清晰?
  14. 为什么网站总显示服务器不能创建对象,automation服务器不能创建对象”的问题的解决方案总结大全...
  15. 搭建私人博客踩过的坑(心酸)
  16. 伊斯坦布尔之旅第一天:蓝色清真寺和圣索菲亚博物馆
  17. AV1代码学习:解码端aomdec.c的main函数
  18. 问题:控制台报错style-helper.mjs?d002:125 Uncaught (in promise) TypeError: Cannot read properties
  19. android 高德地图GPS点校正
  20. 基于DNN-ML的3D全息交互

热门文章

  1. matlab语言转化为python语言_matlab语言转译成python
  2. JS学习笔记3-JavaScript 语句
  3. Centos7升级最新git
  4. Nmap源码分析(整体架构)
  5. git submodule 子模块的管理和使用
  6. android 瀑布流效果 保存地址
  7. to_string作用
  8. Problem F: 时间类的构造和输出
  9. 围绕央行系统升级所产生的常见问题
  10. 设计模式之笔记--简单工厂模式(Simple Factory)