若依前端框架增删改查
1.下拉列表根据数据库加载
这个是用来查询框
绑定了 @change 事件来处理站点选择变化后的查询逻辑。
<el-form-item label="站点选择" prop="stationId" v-has-permi="['ch:m:y']"><el-select v-model="queryParams.stationId" placeholder="请选择站点"@change="handleQuery"><el-option v-for="station in stationOptions" :key="station.stationId":label="station.stationName":value="station.stationId"></el-option></el-select></el-form-item>
这个是用在修改弹框中显示数据的,用于表单提交
<el-form-item label="站点"><el-select v-model="form.stationId" placeholder="请选择站点"><el-option v-for="station in stationOptions" :key="station.stationId":label="station.stationName":value="station.stationId"></el-option></el-select></el-form-item>
data() {return {// 站点选项stationOptions: undefined
}
,
created() {// 站点列表,挂载的时候加载this.getStationList()},
methods: {/** 查询站点选项框 */getStationList() {listStation().then(response => {this.stationOptions = response.rowsconsole.log(this.stationOptions)})},
还需要引入方法,这个是查询所有站点的表
import { listStation } from '@/api/system/station'
2.多租户:
首先要在表中加入部门id和创建人id(name也行)




使用:
还是来到web端,系统管理->角色管理->更多->数据权限
3.给一个框设置权限,只有超级管理员能看到
v-has-permi="['ch:m:y']"
4.查询:
查询参数要改成对应的搜索框的参数

这个列表是用来存后端返回来的数据的,一共在三个地方有

2.data中

3.查询方法中

解析代码:
这个getList是用来搜索到全部代码的
.then() 是 JavaScript 中 Promise 对象的方法,用于处理异步操作完成后的结果。当 listStaff 请求完成后,返回的 response 对象将作为参数传递给 .then() 的回调函数。
getList() {this.loading = true;//遮罩,有加载的图案listStaff(this.addDateRange(this.queryParams, this.dateRange)).then(response => {this.staffList = response.rows;this.total = response.total;this.loading = false;
}
5.新增:
表单中的参数要改

要点击新增弹窗出来首先要设open=true,打开弹窗
:visible.sync="open" 是 Vue.js 中的一个特殊绑定语法,它结合了 Vue 的 v-bind 和 .sync 修饰符,用来控制组件或元素的可见性,并同步更新状态。
<el-dialog :title="title" :visible.sync="open" width="500px" append-to-body><el-form ref="form" :model="form" :rules="rules" label-width="100px"><el-form-item label="加气员名字" prop="staffName"><el-input v-model="form.staffName" placeholder="请输入加气员名字" /></el-form-item></el-form><div slot="footer" class="dialog-footer"><el-button type="primary" @click="submitForm">确 定</el-button><el-button @click="cancel">取 消</el-button></div></el-dialog>
点击确认按钮后:
- 当你调用
this.$refs["form"].validate时,它会根据rules中的定义,逐个验证表单字段的输入是否合法。 this.$modal.msgSuccess("修改成功");是一个用来显示成功消息的语句,通常出现在基于 Vue.js 或类似框架的项目中
/** 提交按钮 */submitForm: function() {this.$refs["form"].validate(valid => {if (valid) {if (this.form.staffId != undefined) {updateStaff(this.form).then(response => {this.$modal.msgSuccess("修改成功");this.open = false;this.getList();});} else {addStaff(this.form).then(response => {this.$modal.msgSuccess("新增成功");this.open = false;this.getList();});}}});},
表示该插入操作将接收一个 SysStaff 类型的对象作为参数。
useGeneratedKeys 属性设置为 true 表示在执行插入操作时,MyBatis 会使用数据库自动生成的主键值。 keyProperty 属性指定插入操作后,自动生成的主键值会被设置到哪个属性中。
<!-- -->
<insert id="xx" parameterType="SysStaff" useGeneratedKeys="true" keyProperty="staffId"></insert>
点击表单的取消按钮,重置这里面的东西

6.修改:
多选框选择的id值

点击表单的取消按钮,重置这里面的东西

细节:
1.必填项:
]
rules: {photoCarhead: [{ required: true, message: '请上传原车头照片', trigger: 'change' }]},
2.禁止修改
readonly:用户可以选择和复制文本,但不能编辑。disabled:完全禁止用户编辑,且不允许选择文本。
3.序号列:
<!-- 序号列 --><el-table-column label="序号" width="80" align="center"><template slot-scope="scope">{{ scope.$index + 1 }}</template></el-table-column>
4.必填项:
加上rules
<el-form-item label="车牌号" prop="carLicence" :rules="rules.carLicence"><el-input v-model="form.carLicence" placeholder="请输入车牌号" />
</el-form-item>
在return中的rules中加上必填项
data() {return {form: {carLicence: ''},rules: {carLicence: [{ required: true, message: '车牌号为必填项', trigger: 'blur' }// ... existing validation rules ...]}}
}
1. 在el-form上添加:rules="rules"。
2. 在data的return中定义rules,包含carLicence的必填验证。
3. 可能需要添加trigger和validator,但基本的required已经足够。
5.给下拉列表加权限
这样只能admin能看,随便设的权限,其他人看不了
<el-form-item label="站点选择" prop="stationId" v-has-permi="['ch:m:y']">
相关文章:
若依前端框架增删改查
1.下拉列表根据数据库加载 这个是用来查询框 绑定了 change 事件来处理站点选择变化后的查询逻辑。 <el-form-item label"站点选择" prop"stationId" v-has-permi"[ch:m:y]"><el-select v-model"queryParams.stationId" pl…...
LiteratureReading:[2023] GPT-4: Technical Report
文章目录 一、文献简明(zero)二、快速预览(first)1、标题分析2、作者介绍3、引用数4、摘要分析(1)翻译(2)分析 5、总结分析(1)翻译(2)…...
区块链交易
文章目录 交易准备合约和代码逻辑合约compile.jsindex.js 运行 交易 项目来自https://github.com/Dapp-Learning-DAO/Dapp-Learning/blob/main/basic/02-web3js-transaction/README-cn.md 本项目包含对交易进行签名,发送,接收交易回执,验证…...
Walrus 经济模型 101
本文作者:Steve_4P,文章仅代表作者观点。 要点总结 2025 年 3 月 20 日,Walrus 基金会宣布成功融资 约 1.4 亿美元,投资方包括 Standard Crypto、a16z 等机构。Walrus 当前估值约 20 亿美元,其中 7% 代币供应量分配给…...
SpringCould微服务架构之Docker(1)
项目中微服务比较多的时候,一个一个手动的部署太麻烦了,所以就需要用到Docker。 项目部署中的问题: Docker是一种快速交付应用、运行应用的技术。...
mac丝滑安装Windows操作系统【丝滑简单免费】
mac丝滑安装Windows操作系统【丝滑&简单&免费】 记录mac丝滑安装windows系统1、安装免费版 VMware fusion 132、安装Windows镜像文件3、跳过联网安装(完成1后将2拖入1 点点点 即可来到3的环节)4、 安装vmware 工具【非常重要,涉及联网…...
系统与网络安全------网络应用基础(2)
资料整理于网络资料、书本资料、AI,仅供个人学习参考。 交换机 认识交换机 交换机,Switch 用户将多台计算机/交换机连接在一起,组建网络 交换机负责为其中任意两台计算机提供独享线路进行通信 非网管型交换机 即插即用交换机 即插即用&…...
eclipse [jvm memory monitor] SHOW_MEMORY_MONITOR=true
eclipse虚拟机内存监控设置SHOW_MEMORY_MONITORtrue D:\eclipse-jee-oxygen-2-win32-x86_64\workspace\.metadata\.plugins\org.eclipse.core.runtime\.settings org.eclipse.ui.prefs (文件比较多,别找错了) SHOW_MEMORY_MONITORtrue 重启 -xms 1024…...
【论文笔记】生成对抗网络 GAN
GAN 2014 年,Ian Goodfellow 等人提出生成对抗网络(Generative Adversarial Networks),GAN 的出现是划时代的,虽然目前主流的图像/视频生成模型是扩散模型(Diffusion Models)的天下,…...
《鸟哥的Linux私房菜基础篇》---5 vim 程序编辑器
目录 一、vim程序编辑器的简介 二、命令模式快捷键(默认模式) 1、光标移动 2、编辑操作 3、搜索与替换 三、插入模式快捷键 四、底行模式快捷键(按:进入) 五、高级技巧 1、分屏操作 2、多文件编辑 3、可视化…...
spring+k8s 功能说明
以下是一个结合 Kubernetes(k8s) 和 Spring Boot 的完整实例,涵盖应用开发、容器化、部署到 Kubernetes 集群的全流程。 1. 创建 Spring Boot 应用 1.1 项目初始化 使用 Spring Initializr 生成一个简单的 REST API 项目: • 依…...
Enovia许可分析的自动化解决方案
随着企业产品生命周期管理(PLM)需求的不断演变,Enovia许可分析已成为确保资源优化和合规性的关键环节。然而,传统的手动许可分析方法往往效率低下、易出错,并且难以应对大规模数据。为了解决这一挑战,Enovi…...
【Agent】Dify Docker 安装问题 INTERNAL SERVER ERROR
总结:建议大家选择稳定版本的分支,直接拉取 master 分支,可能出现一下后面更新代码导致缺失一些环境内容。 启动报错 一直停留在 INSTALL 界面 我是通过 Docker 进行安装的,由于项目开发者不严谨导致,遇到一个奇怪的…...
【学Rust写CAD】11 2D CAD可用rust库
使用 Rust 开发 2D CAD 应用时,选择合适的库是关键。以下是一些适合用于 2D CAD 开发的 Rust 库和工具,涵盖图形渲染、几何计算、用户界面等方面: 图形渲染 lyon 简介: lyon 是一个用于 2D 图形渲染的 Rust 库,支持路径填充、描边…...
怎样基于安卓部署deepseek?
要在安卓设备上部署DeepSeek(或者类似的深度学习模型),您需要将模型从开发环境迁移到安卓应用中。具体步骤涉及将深度学习模型转化为安卓设备能够运行的格式,并配置安卓应用以支持这种模型的运行。以下是一个简化的步骤指南&#…...
【Excel使用技巧】某列保留固定字段或内容
目录 ✅ 方法一:使用 Excel 公式提取 body 部分 🔍 解释: ✅ 方法二:批量处理整列数据 🚨 注意事项 🚨 处理效果 我想保留Excel某一列的固定内容,比如原内容是: thread entry i…...
a-date-picker 格式化日期格式 YYYY-MM-DD HH:mm:ss
<template><a-range-pickerv-model:value"dateRange":show-time"{ format: HH:mm:ss, // 时间部分格式defaultValue: [moment(00:00:00, HH:mm:ss), moment(23:59:59, HH:mm:ss)] // 默认时间范围}"format"YYYY-MM-DD HH:mm:ss" // 整体…...
vue3,element-plus 表格搜索过滤数据
1、表格数据 // 表格数据 import type { User } from "/interface"; const tableData ref<User[]>([]); 2、 表格搜索过滤数据 // 搜索内容 const search ref(""); // 表格过滤数据 const tableFilterData computed(() >tableData.value.fi…...
WordPress 性能优化技术指南:打造快速加载的网站
WordPress 是全球最流行的内容管理系统(CMS),以其灵活性和易用性深受用户喜爱。然而,随着网站内容和功能的增加,加载速度可能会变慢,影响用户体验和搜索引擎排名。在2025年的数字化环境中,网站性…...
vue中上传接口file表单提交二进制文件流
1.使用elementui上传组件 要做一个选择文件后,先不上传,等最后点击确定后,把file二进制流及附加参数一起提交上去。 首先使用elementui中的上传组件,设置auto-uploadfalse,也就是选择文件后不立刻上传。 <el-uplo…...
【学习笔记】卷积网络简介及原理探析
作者选择了由 Ian Goodfellow、Yoshua Bengio 和 Aaron Courville 三位大佬撰写的《Deep Learning》(人工智能领域的经典教程,深度学习领域研究生必读教材),开始深度学习领域学习,深入全面的理解深度学习的理论知识。 之前的文章参考下面的链接…...
element-plus中Cascader级联选择器组件的使用
目录 一.基本使用 二.进阶使用 1.如何获取最后一级选项的值? 2.如何让级联选择器的输入框只展示最后一级? 三.实战 1.场景描述 2.实现步骤 ①设计后端返回值Vo ②编写controller ③编写service ④编写mapper层 ⑤在前端,通过发送…...
计算机网络的分类——按照按拓扑结构分类
计算机的拓扑结构是引用拓扑学中研究和大小、形状无关的点、线关系的方法,将网络中的计算机和通信设备抽象为一个点,把传输介质抽象成一条线,由点和线组成的几何图形就是计算机网络的拓扑结构。计算机网络的拓扑结构主要由通信子网决定&#…...
【华为Pura先锋盛典】华为Pura X“阔折叠”手机发布:首次全面搭载HarmonyOS 5
文章目录 前言一、阔感体验,大有不同二、鸿蒙AI,大有智慧三、便携出行,大有不同四、首款全面搭载 HarmonyOS 5 的手机五、卓越性能,可靠安心六、红枫影像,大放光彩预热:鸿蒙电脑HarmonyOS 5 升级计划小结 前…...
MQ,RabbitMQ,MQ的好处,RabbitMQ的原理和核心组件,工作模式
1.MQ MQ全称 Message Queue(消息队列),是在消息的传输过程中 保存消息的容器。它是应用程序和应用程序之间的通信方法 1.1 为什么使用MQ 在项目中,可将一些无需即时返回且耗时的操作提取出来,进行异步处理࿰…...
ETL:数据清洗、规范化和聚合的重要性
在当今这个数据呈爆炸式增长的时代,数据已成为企业最为宝贵的资产之一。然而,数据的海量增长也伴随着诸多问题,如数据来源多样、结构复杂以及质量问题等,这些问题严重阻碍了数据的有效处理与深度分析。在此背景下,ETL&…...
电机控制常见面试问题(十八)
文章目录 一.电机控制高级拓扑结构1.LLC 二.谈谈电压器饱和后果三.电压器绕组连接方式的影响四.有源逆变的条件 一.电机控制高级拓扑结构 1.LLC LLC是什么?—— 一个会"变魔术"的电源盒子 想象你有一个魔法盒子,能把电池的电压变大或变小&…...
stable diffusion本地安装
1. 基本环境准备 安装conda 环境 pytorch基础学习-CSDN博客 创建虚拟环境: conda create -n sd python3.10 一定要指定用3.10,过高的版本会提示错误: 激活启用环境: conda activate sd 设置pip国内镜像源: pip conf…...
【内网穿透】Linux部署FRP0.61.2实现rk3566 Wechat iPad协议内网穿透教程
写在前面 FRP(Fast Reverse Proxy)是一个由Go语言编写的开源项目,用于内网穿透,即通过公网服务器将内网服务暴露给外部访问。这对于需要在内网环境中部署但又希望外部用户能够访问这些服务的场景非常有用 Github:htt…...
Flutter项目升级到指定版本的详细步骤指南
一、升级前的准备工作 备份项目 使用Git提交当前所有修改:git commit -am "Pre-upgrade backup"或直接复制项目文件夹 查看当前环境信息 flutter --version flutter doctor二、升级Flutter SDK到指定版本 方法1:通过版本管理工具升级&#x…...
