文章目录

  • 1 数据权限控制
    • 1.1数据库的修改
    • 1.2 后端代码的修改
    • 1.3 前端代码的修改
    • 1.4 Aside组件的修改

1 数据权限控制

通过不同的身份进行实现不同的功能。

1.1数据库的修改

在原先 user表 进行修改,添加一个新的字段,叫做role,用来区分不同身份的用户

1.2 后端代码的修改

在entity文件夹下的User类进行添加

@TableName("user")
// 自动进行生成getter setter 方法
@Datapublic class User {@TableId(type = IdType.AUTO)private Integer id;private String username;private String password;private String nickName;private Integer age;private String sex;private String address;private Integer role;
}

1.3 前端代码的修改

在views文件夹下的User.vue组件中进行添加一行显示,添加的代码如下:

  <el-table :data="tableData" border style="width: 100%" stripe><!-- 在进行数据显示的时候,给日期加上排序 --><el-table-column prop="id" label="ID" sortable /><el-table-column prop="username" label="用户名" /><el-table-column prop="nickName" label="昵称" /><el-table-column prop="age" label="年龄" /><el-table-column prop="sex" label="性别" /><el-table-column prop="address" label="地址" /><el-table-column label="角色"><template #default="scope"><span v-if="scope.row.role === 1">管理员</span><span v-if="scope.row.role === 2">普通用户</span></template></el-table-column><el-table-column fixed="right" label="操作" width="150"><template #default="scope"><el-button size="small" @click="handleEdit(scope.row)">编辑</el-button><el-popconfirmtitle="确认删除吗?"@confirm="handleDelete(scope.row.id)"><template #reference><el-button type="danger" size="small">删除</el-button></template></el-popconfirm></template></el-table-column></el-table>

1.4 Aside组件的修改

由于在登陆的时候,已经登录的信息储存到sessionStorage中,所以可以用过判断**user.role **来进行显示侧边栏的内容。
HTML

<template><div><!-- el-menu 存在一个属性 router ,功能是,当进行点击里面的内容时,会自动进行跳转会根据index中的路由内容进行跳转--><!-- default-active="user" 进行控制高亮 --><el-menu:default-active="path"class="el-menu-vertical-demo"routerstyle="width: 200px; min-height: calc(100vh - 50px)"><el-sub-menu index="1" v-if="user.role === 1"><template #title><span>系统管理</span></template><el-menu-item index="/user">用户管理</el-menu-item></el-sub-menu><!-- index 中的值与路由名称相对应 --><el-menu-item index="/book">图书管理</el-menu-item><el-menu-item index="/news" v-if="user.role === 2">新闻管理</el-menu-item><!-- <el-menu-item index="date" :route="{ path: '/' }">数据管理</el-menu-item> --></el-menu></div>
</template>

<script>
import request from "../utils/request";export default {name: "Aside",data() {return {path: this.$route.path, //设置默认高亮的菜单user: {}, //用来接收转换之后的数据};},created() {// 获取到sessionStorage中的userlet userStr = sessionStorage.getItem("user") || "{}";// 转换为 JSON类型this.user = JSON.parse(userStr);// 请求服务器,确认当前登录用户的合法信息,也不能保证绝对的安全request.get("/user/" + this.user.id).then((res) => {console.log(res);if (this.code === "0") {this.user = res.data;}});},
};
</script>

后台管理系统2——数据权限控制相关推荐

  1. 虎跃后台管理系统,数据分发+授权管理+权限管理

    虎跃后台管理系统,是一款集数据分发+授权管理+权限管理的系统.支持高并发,搞扩展.支持分布式读写分离. 模式: 应用=>登陆=>设备授权=>合法=>获取数据=>区分账套= ...

  2. 中后台学习笔记 – 数据权限

    编辑导语:我们常常在数据权限中找不到合适的门路,中后台的数据权限该怎么设计才能够满足我们所需业务的数据权限架构体系?作者给我们从三个方面讲解了有关数据权限的知识,我们一起来看下吧. 曾经看到过这样一个 ...

  3. Yii2搭建后台并实现rbac权限控制完整实例教程

    分享到 一键分享 QQ空间 新浪微博 百度云收藏 人人网 腾讯微博 百度相册 开心网 腾讯朋友 百度贴吧 豆瓣网 搜狐微博 百度新首页 QQ好友 和讯微博 更多... 百度分享 photoshop教程 ...

  4. 实现数据权限控制的一种方法

    在企业管理系统中,常常有这样的要求:  1. 用户一般只能查看自己部门的数据  2. 可以设置用户可以查看哪些部门的数据  这种权限的控制,一般称为数据权限,与之对应的功能权限,则是系统中哪些功能可以 ...

  5. java 数据 权限_Java如何利用Mybatis进行数据权限控制详解

    前言 权限控制主要分为两块,认证(Authentication)与授权(Authorization).认证之后确认了身份正确,业务系统就会进行授权,现在业界比较流行的模型就是RBAC(Role-Bas ...

  6. 实现权限控制_SpringCloud 微服务实现数据权限控制

    前章讲了如何进行用户权限验证<SpringCloud下的用户鉴权方案>,它是微服务下统一资源访问权限的控制,就像一道墙保护着SpringCloud集群下的各个业务应用服务.而本章要讲的是权 ...

  7. 基于SpringAOP实现数据权限控制

    基于SpringAOP实现数据权限控制 在此主要是实现对用户查询数据返回字段的控制.比如一个表格有A,B,C,D,E五列,用户U1只能查看A,B,C三列. 此文章讲述的内容并不能实现在查询时仅查询A, ...

  8. Java利用Mybatis进行数据权限控制

    权限控制主要分为两块,认证(Authentication)与授权(Authorization).认证之后确认了身份正确,业务系统就会进行授权,现在业界比较流行的模型就是RBAC(Role-Based ...

  9. 天鸟技术中台-建设过程-日常经验2:通用参数和数据权限控制

    技术中台,服务于 无数个 独立的项目. 每个项目,单独对应1个App和appId. 查询和创建等接口,必须提供appId,区分是哪个app的数据. 而技术中台的平台管理端,是管理所有的数据,appId ...

最新文章

  1. lego training
  2. 用c语言递归函数做扫雷,【C语言基础学习---扫雷游戏】(包含普通版+递归炼狱版)...
  3. php做异地登录验证,PHP实现用户异地登录提醒功能的方法【基于thinkPHP框架】
  4. python 计算协方差_Python3Numpy——相关性协方差应用
  5. mysql 中的bool值
  6. java重置radiobutton的选项_动态添加试题选项按钮 radioButton(一)
  7. js定位div坐标存入mysql_用JS将页面定位到某个位置(DIV)
  8. 一个元素的偏移的方法
  9. 常见开源Java论坛(附JForum论坛安装以及部署)
  10. 基于jQuery发射弹幕的一个小案例
  11. 解析mac苹果电脑与Windows电脑的区别
  12. 使用Python批量实现某一Excel文件中每3行数据存一个Excel文件
  13. Python随机生成出生日期
  14. 引起C运行时错误R6034的原因和解决方法
  15. kiwix Android 地址,Kiwix 将Wikipedia下载到您的计算机或Android上以进行离线访问
  16. 起先于心血来潮的linux学习...
  17. Minotaur为Mesos,Kafka和Hadoop开发开源云
  18. 脑电EEG常用的特征
  19. Minitab 21 功能列表
  20. 用python的turtle画炫酷的图

热门文章

  1. JS基础-特效篇(事件对象)03-放大镜
  2. 计算机应用基础操作题视频网络统考,(全套)知识点练习-计算机应用基础-(网络统考-操作题-共152题).docx...
  3. 纯css 下滑线导航条特效
  4. C#——invoke和begininvoke 区别
  5. linux中module工具的使用介绍
  6. VRML浏览器: Cortona简介
  7. 烂片休想糊弄我,Python代理爬虫豆瓣电影数据手到擒来
  8. 我用Python纪念了那些被烂片收割的智商税!
  9. netty入门demo;心跳检测后自动关闭通道
  10. java1.832官网下载_jdk1.8 32位官方下载-JDK 1.832位 u66 官方版 - 河东下载站