芋道系统,springboot+vue3+mysql实现地址的存储与显示

embedded/2024/10/21 11:42:50/

1.效果图

2.前端实现:

<el-form-item label="地址" prop="entrepriseAddress"><el-cascaderv-model="formData.entrepriseAddress"size="large":options="region"/></el-form-item>
//导入组件
import { regionData } from 'element-china-area-data'

需要再项目中安装一下地址组件:

安装命令:npm install element-china-area-data  

const emit = defineEmits(['success']) // 定义 success 事件,用于操作成功后的回调
const submitForm = async () => {// 校验表单await formRef.value.validate()// 提交请求formLoading.value = truetry {const data = formData.value as unknown as FleetEntrepriseVOif (formType.value === 'create') {await FleetEntrepriseApi.createFleetEntreprise(data)message.success(t('common.createSuccess'))} else {await FleetEntrepriseApi.updateFleetEntreprise(data)message.success(t('common.updateSuccess'))}dialogVisible.value = false// 发送操作成功的事件emit('success')} finally {formLoading.value = false}
}

相关api接口:

 createFleetEntreprise: async (data: FleetEntrepriseVO) => {

    return await request.post({ url: `/operate/fleet-entreprise/create`, data })

  },

3.后端代码

 @Schema(description = "地址", requiredMode = Schema.RequiredMode.REQUIRED)@NotEmpty(message = "地址不能为空")private List<String> entrepriseAddress;

需要以list集合的形式保存数据,因为前端传来的地址为数组形式;

而在数据表中是以char的字符类型存储:

/**
* 地址
*/
private String entrepriseAddress;

controller层:

 @PostMapping("/create")@Operation(summary = "创建企业")@PreAuthorize("@ss.hasPermission('operate:fleet-entreprise:create')")public CommonResult<Long> createFleetEntreprise(@Valid @RequestBody FleetEntrepriseSaveReqVO createReqVO) {return success(fleetEntrepriseService.createFleetEntreprise(createReqVO));}

实现层:

  @Overridepublic Long createFleetEntreprise(FleetEntrepriseSaveReqVO createReqVO) {// 插入FleetEntrepriseDO fleetEntreprise = BeanUtils.toBean(createReqVO, FleetEntrepriseDO.class);fleetEntrepriseMapper.insert(fleetEntreprise);// 返回return fleetEntreprise.getId();}

mapper层:

@Mapper
public interface FleetEntrepriseMapper extends BaseMapperX<FleetEntrepriseDO> {default PageResult<FleetEntrepriseDO> selectPage(FleetEntreprisePageReqVO reqVO) {return selectPage(reqVO, new LambdaQueryWrapperX<FleetEntrepriseDO>().likeIfPresent(FleetEntrepriseDO::getEntrepriseName, reqVO.getEntrepriseName()).eqIfPresent(FleetEntrepriseDO::getEntrepriseVenue, reqVO.getEntrepriseVenue()).orderByDesc(FleetEntrepriseDO::getId));}}

注意点:

前端把地址以数组的形式传到后端,所以要以list集合的形式保存,当用户编辑这条信息时,把值传给前端就会显示对应的地址;


http://www.ppmy.cn/embedded/46738.html

相关文章

Huawei 大型 WLAN 组网 AC 间漫游

AC1配置命令 <AC6005>display current-configuration # vlan batch 100 # interface Vlanif100description to_S3_CAPWAPip address 10.0.100.254 255.255.255.0 # interface GigabitEthernet0/0/1port link-type trunkport trunk allow-pass vlan 100# ip route-stati…

ETCD 备份与还原

安装etcdctl 准备看下etcd如何命令行操作&#xff0c;才发现&#xff0c;主机上&#xff0c;只用kubeadm拉起了etcd&#xff0c;但没有etcdctl命令。 # sudo docker ps -a | awk /etcd-master/{print $1} c4e3a57f05d7 26a11608b270 836dabc8e254 找到正在运行的etcd&#xf…

vscode中选择pytorch虚拟环境中库没有导入报错,但是本机命令行下载过了

这是下载成功的结果 这个时候你会发现matplotlib的库是下载过的&#xff0c;没法下载 这个的原因是你的matplotlib库是下载到本机的python上但是pytorch框架上的是没有这个库的&#xff0c;此时应该打开ananconda promopt 然后输入activate pytorch转换成pytorch环境 然后pip…

pip更新网络问题:Exception: Traceback (most recent call last): File

报错&#xff1a;rootdebian01:~# pip3.9 install --upgrade pip Collecting pip Downloading pip-24.0-py3-none-any.whl (2.1 MB) |██████████████████▉ | 1.2 MB 5.5 kB/s eta 0:02:39ERROR: Exception: Traceback (most recent call last): File “/usr…

MySQL的一些高频面试题汇总(持续补充)

1.事务4大特性 事务4大特性&#xff1a;原子性、一致性、隔离性、持久性 原⼦性&#xff1a;事务是最⼩的执⾏单位&#xff0c;不允许分割。事务的原⼦性确保动作要么全部完成&#xff0c;要么全不执行 一致性&#xff1a;执⾏事务前后&#xff0c;数据保持⼀致&#xff0c;多…

开个新专栏,叫吾日三醒吾身,这个我打算得到了感悟就更新

打算开个新专栏&#xff0c;还有4年就30岁了。人生如梦啊&#xff0c;过的真快&#xff0c;家里的宝宝也还有2个月就出生了&#xff0c;都快要当父亲啦&#xff0c;感觉这辈子还没做啥很牛的事情。所以就立个flag吧。 自考还没考过&#xff0c;就3门了&#xff0c;考了3年了&a…

如何利用unicloud阿里云云函数实现文件包括图片或文件上传,unicloud云函数写法一览

这里以一个单文件上传为例子&#xff0c;多图多文件同理&#xff0c;循环单图处理逻辑即可。 背景 前端vue上传图片文件&#xff08;base64格式&#xff09;到服务器&#xff0c;并获取返回的服务器资源存储路径 传入参数 { ”queryStringParameters“:{ "file":&qu…

Centos7.6使用docker部署elasticsearch6.8.6 + kibana6.8.6 + ik分词器

Centos7.6使用docker部署elasticsearch6.8.6 kibana6.8.6 ik分词器 创建单个节点文件夹&#xff0c;mkdir /home/es/single single目录下包括config data plugins 三个文件夹 在single目录下创建config文件夹&#xff0c;再创建elasticsearch.yml写入配置 echo “network.…