管理后台项目-06-用户管理角色管理模块

news2024/11/24 14:53:55

目录

1-路由信息搭建和api文件信息创建

2-用户管理模块

2.1-列表数据获取以及动态渲染

2.2-添加 | 修改 用户

2.3-删除-批量删除用户

2.4-分配角色

3-角色管理

3.1-修改角色

3.2-分配权限


1-路由信息搭建和api文件信息创建

 

我们先进行路由菜单的配置,在系统页面展示出来。在src\router\index.js配置相关路由信息,配置信息如下:

 

  {
  name: 'Acl',
  path: '/acl',
  component: Layout,
  redirect: '/acl/user/list',
  meta: {
    title: '权限管理',
    icon: 'el-icon-lock'
  },
  children: [
    {
      name: 'User',
      path: 'user/list',
      component: () => import('@/views/acl/user/list'),
      meta: {
        title: '用户管理',
      },
    },
    {
      name: 'Role',
      path: 'role/list',
      component: () => import('@/views/acl/role/list'),
      meta: {
        title: '角色管理',
      },
    },
    {
      name: 'RoleAuth',
      path: 'role/auth/:id',
      component: () => import('@/views/acl/role/roleAuth'),
      meta: {
        activeMenu: '/acl/role/list',
        title: '角色授权',
      },
      hidden: true,
    },
    {
      name: 'Permission',
      path: 'permission/list',
      component: () => import('@/views/acl/permission/list'),
      meta: {
        title: '菜单管理',
      },
    },
  ]
}

api中的js文件配置如下:注意user和role|permission中的暴露方式不一样;引入的时候有点区别

 

2-用户管理模块

 

当用户点击 权限管理下面的用户管理模块时,需要展示用户列表信息;所以在页面挂载或者创建完成时,需要调用用户模块的相关接口。



2.1-列表数据获取以及动态渲染

我们看页面获取页面数据,页面加载过程中需要获取,搜索框输入需要获取。我们首先看页面布局,上面搜索框是一排,需要使用到el-form inline 行内组件;列表数据使用el-table来显示。

发送请求获取数据:

 

 

初始化数据的时候,我们可以将初始化的条件参数username默认值为null,这样就不会在请求中带上username字段参数。搜索条件参数作为param参数传递。我们在添加或者修改用户的时候,需要对用户名和密码进行校验。使用校验规则进行校验。

 

 

 

当我们点击查询按钮的时候,我们需要将输入的查询条件作为参数传递过去。点击清空按钮的时候,需要清空输入框内容,再次发送请求。

 

 

改变分页大小的时候需要调用列表接口


2.2-添加 | 修改 用户

 

当用户点击用户管理的添加按钮的时候,我们需要弹框el-form让用户填写信息。

 

修改用户信息

这里使用到了深度克隆,引用了lodash的深度克隆方法。

 

 

 


 点击取消或者确定按钮是,需要处理的逻辑,当我们点击取消时,注意需要将user设置为空,否则之前数据会存在。点击确定或者保存的时候,需要先校验参数,校验通过了才发送请求。

 

 this.$API.user[user.id ? 'update' : 'add'](user);这里这种写法可以学习一下

 
2.3-删除-批量删除用户

当用户点击列表的删除按钮,需要删除单个用户,当用户勾选了列表的勾选框,可以批量删除多个用户。删除单个用户的时候,需要弹框提示。

 

 

 点击选择框,删除多个用户,我们需要收集删除的用户id,进行批量删除;当没有选中任何记录时,批量删除按钮disabled;选中时才可以点击。

 

 

 

 

 

2.4-分配角色

 

当用户点击列表页面的分配角色按钮的时候,需要给当前选中的用户分配角色。注意点:如果当前用户有角色,需要在页面进行显示;

 

 

 

 

3-角色管理

 

当我们点击角色管理时,需要查询角色列表,并且可以输入角色名称进行模糊查询;整个模块主要是对角色进行增删改查操作,这里由于角色管理的新增,查询,删除和用户管理模块基本一模一样;我们不进行笔记记录;我们主要对修改和分配权限进行笔记记录。列表注意两个小点:角色名称缓存了一份,出错使用了finally。没有使用我们之前的async和await来实现。

 


3.1-修改角色

 

修改角色这里因为只有一个字段,所以并不需要弹框修改,而是修改图标发生变化,并且table的角色名称那一列变成输入框,可以输入内容,然后点击后面那个对号标识,发送请求修改角色名称。所以需要一个标识来控制input和span的切换。


 

 

3.2-分配权限

 

当用户点击角色列表分配权限按钮的时候,需要获取当前角色的权限信息。如果是之前已经勾选了相关权限,需要展示,并且要勾选上(这里需要对选中的进行处理,如果当前角色拥有某个id,那么对应返回的对象中有一个select字段为true)。而且这里需要我们使用到elementUI中的true组件进行开发。所以服务器端返回的数据结构要按照elementUI的结构返回,或者服务器返回平行结构,前端在赋值到tree组件之前处理好。这里服务端是已经处理好了树型结构数据。

当点击保存的时候,我们需要提交数据给服务器保存数据。我们点击分配权限的时候,需要进行路由跳转,所以我们在路由配置中有一项配置需要留意。meta对象配置中activeMenu配置项。

 

 

获取角色的权限数据,这里服务端采取的是如果第四级菜单(按钮)中有个字段select,如果是true就表示当前角色选中了这个权限。如果子都选中的,那么他们的父亲的select也是返回true。

 

 

 


 当用户点击保存按钮后,需要整理向服务端发送的数据,并且请求服务器

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/460393.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【测试开发】测试人的养成记,在这测试内卷乱世中突破测试开发...

目录:导读 前言一、Python编程入门到精通二、接口自动化项目实战三、Web自动化项目实战四、App自动化项目实战五、一线大厂简历六、测试开发DevOps体系七、常用自动化测试工具八、JMeter性能测试九、总结(尾部小惊喜) 前言 这几年&#xff0…

442. 数组中重复的数据|||41. 缺失的第一个正数|||485. 最大连续 1 的个数

442. 数组中重复的数据 题目 给你一个长度为 n 的整数数组 nums ,其中 nums 的所有整数都在范围 [1, n] 内,且每个整数出现 一次 或 两次 。请你找出所有出现 两次 的整数,并以数组形式返回。 你必须设计并实现一个时间复杂度为 O(n) 且仅…

Python如何连接Mysql及基本操作

1.什么要做python连接mysql,一般是解决什么问题的 做自动化测试时候,注册了一个新用户,产生了多余的数据,下次同一个账号就无法注册了,这种情况怎么办呢?自动化测试都有数据准备和数据清理的操作&#xff…

KDJB-1200继电保护定值校验仪器

一、产品概述 KDJB-1200 微机继电保护校验仪是在参照电力部颁发的《微机型继电保护试验装置技术条件(讨论稿)》的基础上,听取用户意见,总结目前国内同类产品优缺点,充分使用现代微电子技术和器件实现的一种新型小型化微机继电保护测试仪。 采…

《C++ Primer Plus》(第6版)第18章编程练习

《C Primer Plus》(第6版)第18章编程练习 《C Primer Plus》(第6版)第18章编程练习1. 函数average_list()2.3. sum_value()4. 使用lambda重新编写程序清单16.15 《C Primer Plus》(第6版)第18章编程练习 1…

mysql进阶-查询优化-慢查询日志

文章目录 一、什么是慢查询日志二、慢查询日志能干什么2.1 性能分析和优化2.2 诊断和排查问题2.3 数据分析和探索 三、慢查询日志实战3.1 永久开启开启慢查询日志3.2 临时开启慢查询日志3.4 常用命令 四、如何分析慢查询日志五、优化慢查询语句五、总结 一、什么是慢查询日志 …

这场SIG组开放工作会议为何吸引了那么多人的关注?

【中国,上海,2023年4月20日-21日】openEuler Developer Day 2023在线上和线下同步举办。本次大会由开放原子开源基金会指导,中国软件行业协会、openEuler社区、边缘计算产业联盟共同主办,以“万涓汇流,奔涌向前”为主题…

数据仓库与数据库之间的区别与联系

文章目录 一、数据库与数据仓库的区别 1.1、区别 1.2、ACID内容 二、原子性(Atomicity) 三、持久性(Durability) 四、隔离性(Isolation) 1、锁机制 2、脏读、不可重复读和幻读 2、事务隔离级别 五…

权限提升:溢出漏洞.(普通权限 提升 管理员权限.)

权限提升:溢出漏洞 权限提升简称提权,由于操作系统都是多用户操作系统,用户之间都有权限控制,比如通过 Web 漏洞拿到的是 Web 进程的权限,往往 Web 服务都是以一个权限很低的账号启动的,因此通过 Webshell …

日增百亿数据,查询结果秒出, Apache Doris 在 360商业化的统一 OLAP 应用实践

导读: 360商业化为助力业务团队更好推进商业化增长,实时数仓共经历了三种模式的演进,分别是 Storm Druid MySQL 模式、Flink Druid TIDB 的模式 以及 Flink Doris 的模式,基于 Apache Doris 的新一代架构的成功落地使得 360商…

“不幸的是,你知道的太多了”

《平凡的世界》里有一段话是这么说的:“谁让你读了这么多书,又知道了双水村以外还有个大世界。 如果从小你就在这个天地里日出而作,日落而息,那你现在就会和众乡亲抱同一理想,经过几年的辛劳,像大哥一样娶…

PHP 实现会话Session信息共享

目录 解决方案也有很多种: 会话保持 会话复制 会话共享 环境准备 架构设计 SessionHandlerInterface接口 代码编写 总结 优化 前言: 小流量的网站中,我们往往只需要一台服务器就可以维持用户正常的访问以及相关的操作。 随着网站的…

Superset整合keycloak系统

本篇主要介绍superset如何整合单点登陆系统keycloak,现在网上的博客大部分都是失效了,这里我相当于更新一下,避免大家再走弯路 一、环境配置 Macos keycloak:18.0.0 superset:2.1.0 keycloak规定:每一…

原理这就是索引下推呀

前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到网站。 索引下推是之前面试的时候遇到的一个面试题,当时没有答上来,今天来学习一下。 介绍索引下推之前先看一下MySQL基…

2022年NOC大赛创客智慧编程赛道图形化scratch复赛题,包含答案解析

目录 2022 年 NOC 大赛创客智慧编程图形化复赛用题 下载文档打印做题:

ArcGIS Pro、Python、USLE、INVEST模型等多技术融合的生态系统服务构建生态安全格局

第一章、生态安全评价理论及方法介绍 一、生态安全评价简介 ​ 二、生态服务能力简介 ​ 三、生态安全格局构建研究方法简介 ​ 第二章、平台基础一、ArcGIS Pro介绍1. ArcGIS Pro简介2. ArcGIS Pro基础3. ArcGIS Pro数据编辑4. ArcGIS Pro空间分析5. 模型构建器6. ArcGIS Pro…

命令执行的判断根据:;、、

文章目录 命令执行的判断根据:;、&&、||cmd ; cmd(不考虑命令相关性的连续命令执行)$?(命令返回值)与&&或||使用案例例题 命令执行的判断根据:;、&&、|| 在某些情况下,我想要一次执行很多命令,而不想分…

【jvm系列-10】深入理解jvm垃圾回收器的种类以及内部的执行原理

JVM系列整体栏目 内容链接地址【一】初识虚拟机与java虚拟机https://blog.csdn.net/zhenghuishengq/article/details/129544460【二】jvm的类加载子系统以及jclasslib的基本使用https://blog.csdn.net/zhenghuishengq/article/details/129610963【三】运行时私有区域之虚拟机栈…

JavaScript字符串操作

ASCII(as key) 字符集(了解) 我们都知道,计算机只能存储 0101010 这样的二进制数字,那么我们的 a ~ z / A ~ Z / $ / /… 之类的内容也有由二进制数字组成的 我们可以简单的理解为, a ~ z / …

浅谈文心一言

作者简介: 辭七七,目前大一,正在学习C/C,Java,Python等 作者主页: 七七的个人主页 文章收录专栏: 七七的闲谈 欢迎大家点赞 👍 收藏 ⭐ 加关注哦!💖&#x1f…