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

接口分析

接口

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

相关推荐
敏叔V5872 分钟前
AI智能体的工具学习进阶:零样本API理解与调用
人工智能·学习
2501_9418649623 分钟前
科学方法论破解学习时间堆砌误区
学习
傻小胖1 小时前
22.ETH-智能合约-北大肖臻老师客堂笔记
笔记·区块链·智能合约
1024小神1 小时前
SVG标签中path路径参数学习
学习
浅念-2 小时前
C++入门(2)
开发语言·c++·经验分享·笔记·学习
ZH15455891312 小时前
Flutter for OpenHarmony Python学习助手实战:面向对象编程实战的实现
python·学习·flutter
简佐义的博客2 小时前
生信入门进阶指南:学习顶级实验室多组学整合方案,构建肾脏细胞空间分子图谱
人工智能·学习
近津薪荼2 小时前
dfs专题4——二叉树的深搜(验证二叉搜索树)
c++·学习·算法·深度优先
rannn_1112 小时前
【苍穹外卖|Day4】套餐页面开发(新增套餐、分页查询、删除套餐、修改套餐、起售停售)
java·spring boot·后端·学习
张人玉3 小时前
VisionPro 定位与卡尺测量学习笔记
笔记·学习·计算机视觉·vsionprp