日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

删除套餐(关联表的删除操作,批量删除,单个删除)

發布時間:2024/5/14 编程问答 44 豆豆
生活随笔 收集整理的這篇文章主要介紹了 删除套餐(关联表的删除操作,批量删除,单个删除) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

?需求分析:

?代碼開發-梳理交互過程:

?重寫接口:

?

public interface SetmealService extends IService<Setmeal> {/*** 新增套餐,同時需要保存套餐和菜品的關聯* @param setmealDto*/public void saveWithDish(SetmealDto setmealDto);/*** 刪除套餐,同時需要刪除套餐和菜品的關聯數據* @param ids*/public void removeWithDish(List<Long> ids); }

?重寫方法:

/*** 刪除套餐,同時需要刪除套餐和菜品的關聯數據* @param ids*/@Overridepublic void removeWithDish(List<Long> ids) {//select count(*) from setmeal where id in(1,2,3) and status = 1;//查詢套餐狀態,確定是否可用刪除LambdaQueryWrapper<Setmeal> eq = Wrappers.lambdaQuery(Setmeal.class).in(Setmeal::getId, ids).eq(Setmeal::getStatus, 1);int count = this.count(eq);if(count > 0){//如果不能刪除,拋出一個業務異常throw new CustomException("套餐正在售賣中,不能刪除");}//如果可以刪除,先刪除套餐表中的數據---setmealthis.removeByIds(ids);//delete from setmeal_dish where setmeal_id in(1,2,3);LambdaQueryWrapper<SetmealDish> in = Wrappers.lambdaQuery(SetmealDish.class).in(SetmealDish::getSetmealId, ids);//刪除關系表中的數據---setmeal_dishsetmealDishService.remove(in);}

調用重寫的方法:

/*** 刪除套餐* @param ids* @return*/@DeleteMappingpublic R<String> delete(@RequestParam List<Long> ids){setmealService.removeWithDish(ids);return R.success("套餐數據刪除成功");}

總結

以上是生活随笔為你收集整理的删除套餐(关联表的删除操作,批量删除,单个删除)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。