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

接口分析

接口

  • 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菜品表其中所关联的口味表其中的信息数据来进行实际的删除

相关推荐
wangqiaowq16 小时前
Ontology 学习
学习
choumou_M18 小时前
算法_1:由浅入深学习快速排序QuickSort
学习·算法·排序算法
一壶浊酒伴余生20 小时前
新概念英语第一册 · 句法笔记
笔记·英语学习·英语语法·新概念英语
蒸蒸yyyyzwd1 天前
后端学习笔记 day111
笔记·学习
叼烟扛炮1 天前
[LangChain] 学习笔记(08):工具调用底层闭环与第三方搜索(Tavily)实战
人工智能·笔记·学习·langchain
Century_Dragon1 天前
让新能源故障诊断实训“触手可及“——仿真教学软件(VR)介绍
学习
江屿风1 天前
【Git-组件】【Git入门:从文档灾难到版本掌控】流食般投喂
运维·笔记·git·组件·版本控制
楚山之石1 天前
【Radiology】影像组学的标准化与可重复性:IBSI 卷积滤波器共识及其未能覆盖的环节
人工智能·学习·机器学习·mri
小李不想当小白1 天前
HAL库之UART(STM32 HAL库学习笔记)
笔记·stm32·单片机·嵌入式硬件·学习·嵌入式
旖旎夜光1 天前
【C++ 基础入门】C++ 多态(中):虚函数表、多态原理与动静绑定
开发语言·c++·笔记·学习