若依框架学习(前后端分离)——(用户管理学习篇(1))

IDEA若依框架入门(前后端分离版本) 0基础详细步骤代码导入运行 (2)在User settings file 先点击“override”,然后点击“文件夹的图标”,路径选中“本地maven路径”下的“conf”——>“settings.xml”文件。选择刚才解压后存储的目录选择RuoYi-Vue-master文件(根据紫的的文件名目录进行选择),我下载的放在D:\ruoyi。(1)在“Maven home path”中找到你们安装在本地的maven的路径,我的是安装在D盘下面。(1)我上面配置的数据库名为ry-vue,在数据新建了一个ry-vue的数据库。 阅读详情

系列文章目录

若依框架学习(前后端分离)——(win11部署docker redis)
若依框架学习(前后端分离)——(redis 浅学)
若依框架学习(前后端分离)——(启动)
若依框架学习(前后端分离)——(登录代码学习篇)



前言

前面已经学习了关于登录的几个方法,具体有验证码的实现,登录验证,用户权限角色信息,用户路由建立等等。下面来学习具体用户管理涉及到的代码部分。


一、流程

加载vue页面——>请求后台数据处理

在这里插入图片描述
在这里插入图片描述

created() {
    this.getList();//获取上图中用户信息表
    this.getDeptTree();//获取上图中公司架构组织
    this.getConfigKey("sys.user.initPassword").then(response => {
      this.initPassword = response.msg;
    });
  },

二、getlist方法获取用户信息

1.用户分页

methods: {
    /** 查询用户列表 */
    getList() {
      this.loading = true;//加载效果
      listUser(this.addDateRange(this.queryParams, this.dateRange)).then(response => {
          this.userList = response.rows;
          this.total = response.total;
          this.loading = false;
        }
      );
    },

// 查询用户列表
export function listUser(query) {
  return request({
    url: '/system/user/list',
    method: 'get',
    params: query
  })
}
/**
     * 获取用户列表
     */
    @PreAuthorize("@ss.hasPermi('system:user:list')")//这里注解是用来做权限判断的
    @GetMapping("/list")
    public TableDataInfo list(SysUser user)
    {
        startPage();//设置分页
        List<SysUser> list = userService.selectUserList(user);
        return getDataTable(list);
    }

使用继承于PageHelper的PageUtils实现分页
在这里插入图片描述
PageHelper 中的 reasonable 对参数进行逻辑处理,保证参数的正确性,
pageNum = 0/-1,会自动pageNum = 1

2.用户数据查询

  /**
     * 根据条件分页查询用户列表
     * 
     * @param user 用户信息
     * @return 用户信息集合信息
     */
    @Override
    @DataScope(deptAlias = "d", userAlias = "u")//给表设置别名的
    public List<SysUser> selectUserList(SysUser user)
    {
        return userMapper.selectUserList(user);
    }

三、selectDeptTreeList方法获取部门树

(1)查出所有的部门数据
(2)组装成树状结构

/**
     * 获取部门树列表
     */
    @PreAuthorize("@ss.hasPermi('system:user:list')")
    @GetMapping("/deptTree")
    public AjaxResult deptTree(SysDept dept)
    {
        return success(deptService.selectDeptTreeList(dept));
    }

 /**
     * 查询部门树结构信息
     * 
     * @param dept 部门信息
     * @return 部门树信息集合
     */
    @Override
    public List<TreeSelect> selectDeptTreeList(SysDept dept)
    {
        List<SysDept> depts = SpringUtils.getAopProxy(this).selectDeptList(dept);
        return buildDeptTreeSelect(depts);
    }
 /**
     * 构建前端所需要树结构
     * 
     * @param depts 部门列表
     * @return 树结构列表
     */
    @Override
    public List<SysDept> buildDeptTree(List<SysDept> depts)
    {
        List<SysDept> returnList = new ArrayList<SysDept>();
        List<Long> tempList = depts.stream().map(SysDept::getDeptId).collect(Collectors.toList());
        for (SysDept dept : depts)
        {
            // 如果是顶级节点, 遍历该父节点的所有子节点
            if (!tempList.contains(dept.getParentId()))
            {
                recursionFn(depts, dept);
                returnList.add(dept);
            }
        }
        if (returnList.isEmpty())
        {
            returnList = depts;
        }
        return returnList;
    }
/**
     * 构建前端所需要下拉树结构
     * 
     * @param depts 部门列表
     * @return 下拉树结构列表
     */
    @Override
    public List<TreeSelect> buildDeptTreeSelect(List<SysDept> depts)
    {
        List<SysDept> deptTrees = buildDeptTree(depts);
        return deptTrees.stream().map(TreeSelect::new).collect(Collectors.toList());//更改泛型 前端不需要的信息不要 构造函数映射赋值
    }
1、先找到顶级节点,找到它的子节点
2、遍历顶级节点的子节点,再找到它的子节点
/**
     * 递归列表
     */
    private void recursionFn(List<SysDept> list, SysDept t)
    {
        // 得到子节点列表
        List<SysDept> childList = getChildList(list, t);
        t.setChildren(childList);
        for (SysDept tChild : childList)
        {
            if (hasChild(list, tChild))
            {
                recursionFn(list, tChild);
            }
        }
    }

总结

本文简单介绍了用户数据加载,分页,查询,部门树建立功能。

若依框架(前后端分离版本)总结 RuoYi是一个后台管理系统,基于经典技术组合(Spring Boot、Apache Shiro、MyBatis、Thymeleaf)主要目的让开发者注重专注业务,降低技术难度,从而节省人力成本,缩短项目周期,提高软件安全质量。 阅读详情

相关推荐

若依分离版使用笔记,excel导入功能实现

4、添加导入按钮操作,添逻辑操作。excel导入功能实现。

weixin_42488035的博客 520

若依系统入门

若依系统入门简介

淡定九号的博客 7121

若依框架-前后端分离版环境搭建及启动教程

主要介绍了若依-前后端分离版项目环境搭建以及启动的过程

2403_87996093的博客 4595

若依框架入门(前后端分离版本)

学习基础:Springboot Vue 环境要求:JDK1.8+ MySQL Redis Maven Vue 下载地址:若依官网 ruoyi- ui为前端部分其余为后端部分,主要服务与ruoyi-admin文件夹 下载步骤:复制路径打开idea克隆即可 https://gitee.com/y_project/RuoYi-Vue.git 因为是分离版本我们除了启动后端部分外还要启动前端部分 当然我们也可以使用idea分别打开前后端部分这里就不列举了 ...

Theshy08的博客 14万+

使用【若依框架】快速搭建前后端分离项目

若依框架快速搭建前后端分离项目

y2736375642的博客 1788

基于前后端分离的工商考试管理系统

基于前后端分离的考试学习系统课程设计旨在开发一款满足学生、教师和管理员需求的在线考试和学习平台。主要参考超星学习通考试的系统,系统采用前、后端分离的技术实现,前端使用HTML5、CSS3和JavaScript、node.js、vue3及若依框架来实现页面框架搭建、布局、样式和交互,后端使用SSM框架搭建服务器、mysql创建数据库存储用户信息和考试资料。系统实现包括登录、主页、考试、练习题等功能界面的实现,还实现的调用摄像头的诚信考试功能模块的搭建,同时处理异常和跨域请求,保护系统安全。最终进行系

m0_65137405的博客 1665

若依框架学习(前后端分离)——(用户管理学习篇(2))

之前已经学习过用户信息查询功能,部门相关功能。本文介绍了若依系统中用户管理模块是如何实现的增删改用户操作。

yeahyeah81的博客 1921

.NET 8 通用权限框架 前后端分离,开箱即用

基于.NET 8(Furion)/SqlSugar实现的通用管理平台。整合最新技术,模块插件式开发,前后端分离,开箱即用。让开发更简单、更通用、更流行!

DotNet技术匠 1721

若依框架——前后端分离版

若依(RuoYi)是一款基于 Spring Boot、Spring Security、MyBatis-plus、Vue、Element-UI 的快速开发平台,是一个全功能权限系统,采用前后端分离的方式进行开发。若依包含了许多常用的功能,例如用户管理、角色管理、菜单管理、部门管理、字典管理、定时任务等等,还提供了代码生成器、日志管理、在线用户管理等扩展功能,可以快速搭建企业级应用。

moran_3346的博客 3万+

Flask如何实现前后端分离项目

简单分享喜爱Flask是如何实现前后端分离项目

一枚有趣的灵魂~享受编程带来的快乐 1994

若依-前后端分离项目学习

若依-前后端分离项目学习

m0_68728226的博客 1082

关于前后端分离框架的一些疑问

关于前后端分离框架的一些疑问

weixin_54106682的博客 1786

2024最新超详细无痛安装PyTorch,包括下载地址、环境配置与各种避坑指南

PyTorch更新很快,2024最新下载安装经验贴,包括anaconda+CUDA+cuDNN+PyTorch四部分的下载和安装。文章详细介绍了下载地址、环境配置、虚拟环境建立的问题,还温馨提示了各种闭坑指南。有需要的友友快过来康康!

qq_43596278的博客 11万+

Python Web前后端分离框架Django+Vue搭建

Python Web前后端分离框架Django+Vue搭建 对前面所学知识的归纳整理,感兴趣的可以看看,欢迎指正,原文:https://github.com/HelloMasonC/fullstack/blob/master/02-%E5%90%8E%E7%AB%AF/08-Python%20Web%E5%89%8D%E5%90%8E%E7%AB%AF%E5%88%86%E7%A6%BB%E6%A1%86%E6%9E%B6%E6%90%AD%E5%BB%BA.md 一、前后端分离框架介绍 本项目基于 P

sensenxiangshang 1万+

平均电流控制模式BUCK变换器的环路设计

引言 电压模式的BUCK变换器存在的常见缺点: 1、在没有前馈补偿的时候,对输入源的跳动响应较慢; 2、在不加入电感电流控制的时候,由于不直接对电感电流进行采样,因此不能实时的控制电感电流,有可能在某些负载极端变化时,系统直接奔溃; 3、LC组成的二阶系统存在谐振点,谐振峰随负载变化而变化,不容易做到完全消除; 峰值电流模式的BUCK变换器存在的常见缺点: 1、占空比大于50%时,存在次谐波震荡的问题,需要添加斜坡补偿已解决该问题; 2、抗干扰能力较差; 3、峰值电流和平均电流间存在误差,不适合做PFC线路

c007106333的博客 1万+

EL6751实战指南:从协议解析到工业现场部署

本文详细介绍了EL6751网关在工业通信协议转换中的应用,从CANopen协议解析到EtherCAT系统部署的实战指南。通过协议栈位置、数据封装方式和通信模型差异的深入分析,帮助工程师高效实现EtherCAT主站与CANopen从站设备间的无缝对接,提升工业现场通信效率。

weixin_30338481的博客 547

若依框架学习(前后端分离)——(异步任务管理器)

之前关于用户管理页面的操作及代码学习流程已经比较熟络,今天主要学习提到的异步任务管理器。

yeahyeah81的博客 2159

用App Inventor做个蓝牙温湿度计,手机自动连Arduino,5分钟搞定硬件数据上屏

本文详细介绍了如何使用App Inventor和Arduino快速搭建一个蓝牙温湿度监测系统,实现手机自动连接并显示实时数据。通过图形化编程和硬件组装指南,零代码基础的用户也能在5分钟内完成硬件数据上屏,适用于智能家居、教学演示等多种场景。

weixin_30813225的博客 172

前后端分离架构,超全面详解~

此文通俗易懂,全面讲解前后端分离架构核心思想与作用,对学习微服务、开发企业项目大有裨益,建议收藏细品,好好领悟!~一、简介前后端分离已成为互联网项目开发的业界标准使用方式,通过nginx+...

独行侠梦的博客 2万+

从Blender舞步到夜空画卷:基于Pix飞控的无人机编队灯光秀全链路开发实践

本文详细介绍了基于Pixhawk飞控的无人机编队灯光秀全链路开发实践。从Blender三维动画设计、QGroundControl地面站二次开发与MAVLink通信桥接,到PX4飞控的OFFBOARD模式路径控制与LED灯光驱动实现,最后通过Gazebo仿真验证并完成真机组装与首飞。文章为无人机爱好者提供了一套完整的、从创意设计到夜空执行的开源解决方案,重点阐述了多机同步与灯光控制的核心技术挑战与应对策略。

zeta9的博客 585

R数据分析:潜在剖面分析LPA的做法与解释

Latent Profile Analysis (LPA) tries to identify clusters of individuals (i.e., latent profiles) based on responses to a series of continuous variables (i.e., indicators). LPA assumes that there are unobserved latent profiles that generate patterns of resp.

Codewar的博客 1万+

【学习小记】001.前后端分离小疑问

根据java学习情况和查找资料,记录下来,方便后续可持续、可移动、可有迹可循的学习。

qq_54239348的博客 1695

【2026最新版】python点云处理算法汇总(长期更新版)

python点云处理算法整理。博客长期更新,最近一次更新时间为:2026年10月4日。

点云侠的博客 42万+

基于SSM+vue的前后端分离小项目(用户后台管理系统的实现)

本篇博客将介绍现今主要流行的前后端分离方式构建管理系统的实现 项目搭建环境: windows系统 服务器:Tomcat 9.0 项目运行环境:JDK1.8 前端主要技术:HTML、CSS、VUE前端框架、axios异步处理 服务器端主要技术: Spring、SpringMvc、mybatis 数据库:Mysql 5.5 构建管理工具:Maven 开发工具:SQLyog、IntelliJ IDE...

qq_41986840的博客 8398

从数据读取到业务事件:理解 ABAP CDS 视图的目的与选型(含 RAP、扩展与分析场景)

CDS视图在SAP S/4HANA中不仅是数据查询工具,更是语义模型和运行时能力的载体。它通过分层架构(基础视图、组合视图、消费视图等)实现数据复用与场景适配,支持UI、分析、事务处理等多样化消费。视图类型包括提供数据访问的接口视图(I_前缀)、消费视图(C_前缀)和事务视图,以及不提供数据访问的扩展视图。这种分层设计确保了数据模型的稳定性与扩展性,同时支持自定义字段和上下文感知分析。正确理解CDS视图的用途和分层规则,能帮助开发者构建更健壮、可维护的SAP应用。

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 302

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

Spring Security框架 前后端分离版

Spring 是非常流行和成功的 Java 应用开发框架,Spring Security 正是 Spring 家族中的 成员。Spring Security 基于 Spring 框架,提供了一套 Web 应用安全性的完整解决方 案。正如你可能知道的关于安全方面的两个主要区域是“认证”和“授权”(或者访问控 制),一般来说,Web 应用的安全性包括用户认证(Authentication)和用户授权 (Authorization)两个部分,这两点也是 Spring Security 重要核心功能。

asddasddeedd的博客 4614

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

上一篇: 若依框架学习(前后端分离)——(登录代码学习篇)
下一篇: 若依框架学习(前后端分离)——(用户管理学习篇(2))
yeahyeah81
博客等级 码龄9年 137粉丝 9原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值