当前位置: 首页 > news >正文

前端用户管理模块方法及api分析

用户管理

方法及对应api

搜索 searchSysUser / GetSysUserListByPage
重置 resetData
添加用户 addShow :点击按钮后出现对话框,含有提交 submit / SaveSysUser、取消按钮
修改 editSysUser / UpdateSysUser
删除 deleteById / DeleteSysUser
分配角色 showAssignRole / DoAssignRoleToUser
在分配角色时需要获取所有角色 GetAllRoleList
上传头像

参数

用户属性:用户名称、密码、姓名、手机、头像、描述、状态、修改时间

api设计

配置:路径url、方法method、传参数据data

GetSysUserListByPage
入参: current, limit, queryDto
出参: 通过解构赋值法将返回的数据赋给data

SaveSysUser
入参:sysUser

UpdateSysUser
入参:sysUser

DeleteSysUser
入参:userId

DoAssignRoleToUser
入参:assginRoleVo

GetAllRoleList
入参:userId

方法设计

方法中的部分变量与模板中的变量双向绑定,v-model语法,单向绑定v-on

api测试

安装express,npm i express, 编辑express.js文件设置路由请求响应内容,node express.js 启动端口监听
baseURL http://127.0.0.1:8000/
利用AI生成测试数据,先用postman测试链接连通性,再在项目中点击按钮或刷新测试
.vue模板中的方法没有定义也可以正常显示,但在console面板中会有提醒

bug–api返回数据接收变量

返回数据通过解构赋值语法用data接收,返回的数据为标准的返回字段:code、message、data,data中有list数组对象,list数据时少加一个data,应为data.data.list
要求:不要用data作为接收变量

M查询

方法名/api: searchSysUser / GetSysUserListByPage

组件

表单组件 el-form, 行列组件 el-rol, el-col, el-form-item,
输入组件 el-input 日期选择器组件 el-date-picker
按钮组件 el-button
表格组件 el-table, el-table-column
分页组件 el-pagination

参数

定义createTimes参数承接开始和结束时间–提供给queryDto
检索条件有关键词、起始时间,都放在queryDto中–入参
定义pageParams放当前页和每页记录数–入参,与分页组件双向绑定
定义表格数据模型list --出参
定义分页条数据模型total --出参

方法实现

searchSysUser方法调用fetchData方法,fetchData方法获取查询输入的起始时间参数,后调用GetSysUserListByPage api方法获得返回的数据,传给表格和分页条数据模型
分页组件size-change和current-change都调用fetchData方法

M重置 resetData

组件

el-button

参数

查询方法中的queryDto,createTimes

方法实现

按下按钮后,搜索框中的数据会清空,相当于双向绑定的参数被恢复为空,因之前用ref定义过,对应变量重新赋值时需加.value

M添加用户 addShow

布局

点击按钮后出现对话框,含有提交 submit / SaveSysUser、取消按钮
对话框组件:el-dialog
对话框中是表单组件,输入框组件:el-form,el-form-item,el-input,头像是el-upload组件
输入框中的数据与sysUser中的各属性双向绑定

参数

sysUser,添加用户时需填写的各属性:用户名称、姓名、手机号、密码、描述、头像

方法实现

添加用户方法 addShow,将sysUser中的数据清空,dialogVisible设为true
头像上传 fileUpload,无按钮,无api,直接写在了template中
提交 submit,api:SaveSysUser,UpdateSysUser 没有id新加的为第一个,修改为第二个
取消 点击后将dialogVisible=false,dialogVisible在对话框组件中与v-model绑定,为true时显示,false不显示,默认为false

M修改

方法/接口 editSysUser / UpdateSysUser

组件

el-table-column,需声明一个插槽scope
el-button

参数

scope.row,当前行数据
添加用户方法中的sysUser,dialogVisible

方法实现

将当前行数据赋给sysUser
…row,创建 row 对象的一个浅拷贝,并将其赋值给 sysUser.value
dialogVisible设置为true
后续为对话框操作,与上述方法一致

M删除

方法/接口 deleteById / DeleteSysUser

组件

与M修改一样

参数

scope.row,当前行数据

方法实现

传参row.id给后端接口

M分配角色

分配角色 showAssignRole / doAssign
api: GetAllRoleList / DoAssignRoleToUser

组件

el-button
el-dialog、el-form、el-form-item
el-input
el-checkbox-group,el-checkbox,v-for遍历,:key/:label绑定role.id,标签内rolename
对话框内部有提交,取消按钮提交对应方法为doAssign

参数

scope.row
用户名 sysUser.userName,与输入框组件双向绑定,默认不能修改
用户角色id userRoleIds,与多选框group双向绑定
角色列表 allRoles与多选框双向绑定
控制对话框弹出 dialogRoleVisible

方法实现

showAssignRole基于用户id,获取所有输入角色数据,及用户id对应的角色
doAssign将用户的id,角色id传给后端

M上传头像

fileUpload
前置依赖:pinia/modules/app.js

组件

el-upload
img

方法实现

需在请求头中添加token
成功后调用方法handleAvatarSuccess

相关文章:

前端用户管理模块方法及api分析

用户管理 方法及对应api 搜索 searchSysUser / GetSysUserListByPage 重置 resetData 添加用户 addShow :点击按钮后出现对话框,含有提交 submit / SaveSysUser、取消按钮 修改 editSysUser / UpdateSysUser 删除 deleteById / DeleteSysUser 分配角色…...

microsoft edge怎么关闭安全搜索

microsoft edge浏览器为用户提供了安全搜索功能,旨在帮助用户过滤掉搜索结果中出现的不当信息。然而,有些用户可能觉得安全搜索功能限制了他们的浏览体验或工作需求。下面就给大家带来关闭microsoft edge安全搜索的相关内容,一起来看看吧。&a…...

Qt | QSQLite内存数据库增删改查

点击上方"蓝字"关注我们 01、演示 参数随便设置 查询 修改 右键菜单是重点 手动提交,点击Submit All...

【论文阅读】SegNeXt:重新思考卷积注意力设计

《SegNeXt: Rethinking Convolutional Attention Design for Semantic Segmentation》 原文:https://github.com/Visual-Attention-Network/SegNeXt/blob/main/resources/paper.pdf 源码:https://github.com/Visual-Attention-Network/SegNeXt 1、简介 …...

【C++】String类:标准库介绍

目录 一.预备知识 1.auto关键字 2.范围for 3.迭代器 二.标准库里的string 1.string类的基本介绍 2.构造函数 ​编辑 3.访问及遍历操作 3.1 operator [] 3.2 基于范围for 3.3 使用迭代器 4.迭代器 5.容量操作 5.1 size和length 5.2 capacity 5.3 reserve和resiz…...

MS523非接触式读卡器 IC

MS523 是一款应用于 13.56MHz 非接触式通信中的高集成 度读写卡芯片,它集成了在 13.56MHz 下所有类型的被动非接 触式通信方式和协议,支持 ISO14443A/B 的多层应用。 主要特点  高度集成的解调和解码模拟电路  采用少量外部器件&#…...

仓颉编程语言入门 -- Socket 编程与HTTP 编程概述

仓颉的 Socket 编程概述 在网络通信的广阔天地中,仓颉的Socket编程如同一座桥梁,连接着不同的计算设备,实现了基于传输层协议的数据传输。无论是追求稳定可靠的TCP,还是偏好轻量级、无连接的UDP,Socket都扮演着不可或…...

Oracle基本SQL操作-用户角色权限管理

一、用户权限管理 -- 创建锁定用户,此时用户不可用 create USER zhucl IDENTIFIED BY 123456 account lock; 会提示用户被锁定: -- 删除用户 drop user zhucl;-- 重新创建用户,不锁定 create user zhucl IDENTIFIED BY 123456 account unlo…...

Qt-信号和槽(8)

目录 信号的概念 Qt中的信号三要素 connect函数 connect的原型 connect的使用 信号函数和槽函数 参数匹配 close关闭槽函数 运行结果 第一个问题:怎么知道 手册使用 第二个问题,为什么可以直接传递函数指针 自定义槽函数 第一种自定义槽函…...

80.游戏的分辨率修改思路与分析

免责声明:内容仅供学习参考,请合法利用知识,禁止进行违法犯罪活动! 内容参考于:易道云信息技术研究院 上一个内容:79.游戏分析工具闪屏问题优化与数据被修改高亮 GAMEHACKER2.exe 工具下载地址&#xff…...

MaxKB(二):Ubuntu24.04搭建maxkb开发环境

接上文:windows10搭建maxkb开发环境(劝退指南) 上文在windows10环境搭建maxkb开发环境遇到各种坑,后面就转战ubuntu平台,果然比较顺利的完成开发环境搭建。当然遇到相关的问题还是可以参考上文《windows10搭建maxkb开发…...

c#实现数据导出为PDF的方式

PdfSharp vs iTextSharp: C#中PDF导出功能比较 PdfSharp 优点 轻量级:适合简单的PDF生成任务易于学习:API相对简单,学习曲线较缓开源:提供开源版本,可自由使用和修改纯C#实现:不依赖外部库或COM组件支持…...

【联想电脑】:使用拓展坞后转接HDMI,无法识别显示屏

项目场景: 作为一个嵌入式软件开发者,有两个外接屏幕,不足为奇。 但是在今天的使用电脑过程中,出现了接了一个拓展坞上面有HDMI接口,但是HDMI接口接上外接显示屏的时候电脑无法识别到,导致只有电脑直连的HD…...

Verilog刷题笔记53

题目: Fsm serialdata See also: Serial receiver Now that you have a finite state machine that can identify when bytes are correctly received in a serial bitstream, add a datapath that will output the correctly-received data byte. out_byte needs …...

GoFly快速开发后台框架-后端接口请求返回403提示码就跨域问题/请求端域名拦截问题

问题: 大家在本地开发或者部署后请求后端时返回403,只有一个问题就是存在请求端跨域问题。 解决办法: 解决这个问题很简单,跨域的就解决跨域就好了。 我们官方给大家统一解决办法是: 到后端配置文件resource/conf…...

设备实时数据采集:开启制造业智能化、自动化的新篇章

传统制造业在进行生产过程中,会涉及到设备实时数据采集需求,这些数据对于监控生产流程、优化生产效率、保证产品质量以及降低成本等方面至关重要。以下是一些常见的数据采集需求: 1.生产数据:包括生产数量、生产批次、生产速度等&…...

【python与java的区别-03(集合、字典)】

一、Set python: 集合(set)是一个无序的不重复元素序列。 集合中的元素不会重复,并且可以进行交集、并集、差集等常见的集合操作。 可以使用大括号 { } 创建集合,元素之间用逗号 , 分隔, 或者也可以使用 set() 函数…...

Java继承

目录 一、继承概念 二、语法格式 三、类型及特性 四、关键字 4.1. super 4.2. super与this指针 4.3 final 关键字 一、继承概念 继承(inheritance)机制:是面向对象程序设计使代码可以复用的最重要的手段,它允许程序员在保持原有类特 性 的基础上进…...

Kafka集群搭建的两种方式

目录 1. 依赖Zookeeper搭建集群 1. 下载Kafka二进制文件 2. 更改kafka配置 3. 启动Zookeeper集群和Kafka集群 4. 验证集群 1.创建主题 2. 检查主题是否存在 3. 创建生产者生产数据 4. 创建消费者消费数据 5. 检查Zookeeper中Kafka集群的元数据 2. 不依赖Zookeeper搭…...

两种变量初始化方法的区别

1. CarriageEntity carriageEntity new CarriageEntity()和 null的区别 1.1 CarriageEntity carriageEntity new CarriageEntity(); 初始化:这行代码创建了一个新的 CarriageEntity 对象,并将其引用赋值给 carriageEntity 变量。对象状态&#xff…...

接口测试中缓存处理策略

在接口测试中,缓存处理策略是一个关键环节,直接影响测试结果的准确性和可靠性。合理的缓存处理策略能够确保测试环境的一致性,避免因缓存数据导致的测试偏差。以下是接口测试中常见的缓存处理策略及其详细说明: 一、缓存处理的核…...

XCTF-web-easyupload

试了试php,php7,pht,phtml等,都没有用 尝试.user.ini 抓包修改将.user.ini修改为jpg图片 在上传一个123.jpg 用蚁剑连接,得到flag...

Linux 文件类型,目录与路径,文件与目录管理

文件类型 后面的字符表示文件类型标志 普通文件:-(纯文本文件,二进制文件,数据格式文件) 如文本文件、图片、程序文件等。 目录文件:d(directory) 用来存放其他文件或子目录。 设备…...

QMC5883L的驱动

简介 本篇文章的代码已经上传到了github上面,开源代码 作为一个电子罗盘模块,我们可以通过I2C从中获取偏航角yaw,相对于六轴陀螺仪的yaw,qmc5883l几乎不会零飘并且成本较低。 参考资料 QMC5883L磁场传感器驱动 QMC5883L磁力计…...

ssc377d修改flash分区大小

1、flash的分区默认分配16M、 / # df -h Filesystem Size Used Available Use% Mounted on /dev/root 1.9M 1.9M 0 100% / /dev/mtdblock4 3.0M...

【网络安全产品大调研系列】2. 体验漏洞扫描

前言 2023 年漏洞扫描服务市场规模预计为 3.06(十亿美元)。漏洞扫描服务市场行业预计将从 2024 年的 3.48(十亿美元)增长到 2032 年的 9.54(十亿美元)。预测期内漏洞扫描服务市场 CAGR(增长率&…...

渗透实战PortSwigger靶场-XSS Lab 14:大多数标签和属性被阻止

<script>标签被拦截 我们需要把全部可用的 tag 和 event 进行暴力破解 XSS cheat sheet&#xff1a; https://portswigger.net/web-security/cross-site-scripting/cheat-sheet 通过爆破发现body可以用 再把全部 events 放进去爆破 这些 event 全部可用 <body onres…...

江苏艾立泰跨国资源接力:废料变黄金的绿色供应链革命

在华东塑料包装行业面临限塑令深度调整的背景下&#xff0c;江苏艾立泰以一场跨国资源接力的创新实践&#xff0c;重新定义了绿色供应链的边界。 跨国回收网络&#xff1a;废料变黄金的全球棋局 艾立泰在欧洲、东南亚建立再生塑料回收点&#xff0c;将海外废弃包装箱通过标准…...

python爬虫:Newspaper3k 的详细使用(好用的新闻网站文章抓取和解析的Python库)

更多内容请见: 爬虫和逆向教程-专栏介绍和目录 文章目录 一、Newspaper3k 概述1.1 Newspaper3k 介绍1.2 主要功能1.3 典型应用场景1.4 安装二、基本用法2.2 提取单篇文章的内容2.2 处理多篇文档三、高级选项3.1 自定义配置3.2 分析文章情感四、实战案例4.1 构建新闻摘要聚合器…...

BCS 2025|百度副总裁陈洋:智能体在安全领域的应用实践

6月5日&#xff0c;2025全球数字经济大会数字安全主论坛暨北京网络安全大会在国家会议中心隆重开幕。百度副总裁陈洋受邀出席&#xff0c;并作《智能体在安全领域的应用实践》主题演讲&#xff0c;分享了在智能体在安全领域的突破性实践。他指出&#xff0c;百度通过将安全能力…...