学习笔记-菜品接口-删除菜品

接口分析

接口

  • DELETE:表示删除操作(REST 风格)

  • 批量删除:一次可以删多个菜品

请求参数

该批量删除接口通过 Query 参数 ids 接收多个菜品 id,

id 之间用逗号分隔。

补充:针对其中的Query参数我们此处通过对应的@RequestParam注解来进行获取参数信息

返回响应

code:业务状态码

data:返回数据

msg:提示信息

代码开发

DIshController代码开发

@DeleteMapping:把 HTTP DELETE 请求映射到这个方法

方法参数:@RequestParam List<Long> ids

由于ids是Query参数信息(放在URL的?后面)

形参接受List集合

Spring MVC 会自动做两件事:

  1. 按逗号分割"1,2,3"["1","2","3"]

  2. 类型转换:字符串 → Long

Service其中代码&实现类其中代码

这个方法是 Service 层对外暴露的"批量删除菜品"的业务入口,

用来承接 Controller 传下来的菜品 id 列表,

并在实现类中完成所有"删除前校验 + 实际删除"的业务逻辑。

实现类

1.优先来判断当前菜品是否处于起售其中状态,对于起售状态的菜品我们无法来进行删除操作

2.假设当前需要来删除的菜品被具体的某个套餐所关联了,我们无法来进行实际的具体删除操作

排除了两种无法来进行删除当前菜品的信息之后,对应来进行实际的删除即可对应删除该菜品信息之后,对应的去删除口味表其中所关联的口味信息数据

Mapper其中操作

根据id值去查询对应的dish对象

套餐Mapper其中来实际查询对应的套餐信息

根据对应的dish_id来删除实际的对应的菜品信息

对应的将dish菜品表其中所关联的口味表其中的信息数据来进行实际的删除

相关推荐
千寻girling9 小时前
记录第一次学习 Docker
学习·docker·容器
Kobebryant-Manba9 小时前
学习RNN(简洁实现)
人工智能·rnn·学习
知南x10 小时前
【DPDK例程学习】(4) l2fwd
学习·word
努力努力再努力FFF10 小时前
大学四年AI能力规划:从入门学习到简历表达
人工智能·学习
Litluecat10 小时前
配合多角色提示语3,学习AI漫剧(刚开始学)
人工智能·学习·ai·提示词·短剧·漫剧
三品吉他手会点灯10 小时前
STM32F103 学习笔记-24-I2C-读写EEPROM(第1节)-I2C物理层介绍
笔记·stm32·学习
MartinYeung510 小时前
[论文学习]大型语言模型中个人可识别资讯(PII)的机器遗忘技术:UnlearnPII 基准与 PERMU_tok 方法的深度分析
人工智能·学习·语言模型
fanged11 小时前
Linux内核学习21--V4L2学习3(应用)(TODO)
学习
万物更新_11 小时前
vue框架
前端·javascript·vue.js·笔记
上海观智网络12 小时前
上海小程序定制开发合同怎么签?需要注意什么?
经验分享·笔记·小程序