脚本宝典收集整理的这篇文章主要介绍了day05,脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。
@GetMapping("/list") public R<List<Dish>> list(Dish dish){ //构造查询条件 LambdaQueryWrapper<Dish> queryWrapper = new LambdaQueryWrapper<>(); queryWrapper.eq(dish.getCategoryId() != null, Dish::getCategoryId, dish.getCategoryId()); //添加条件,查询状态为1(1为起售,0为停售)的菜品 queryWrapper.eq(Dish::getStatus,1); List<Dish> list = dishService.list(queryWrapper); //添加排序条件 return R.success(list); }
这步回显菜品代码倒是没啥好说的 但是一定要注意访问时候的数据是什么 决定他在哪隔层 用什么方法
添加套餐 就是注意那里没有添加哪个
@Autowired private SetmealDishService setmealDishService; @Override public void saveWithDish(SetmealDto setmealDto) { super.save(setmealDto); List<SetmealDish> setmealDishes = setmealDto.getSetmealDishes(); List<SetmealDish> collect = setmealDishes.stream().map((item) -> { Long id = setmealDto.getId(); item.setSetmealId(id); return item; }).collect(Collectors.toList()); setmealDishService.saveBatch(collect); }
} @GetMapping("/page") public R<Page> list(int page, int pageSize, String name){ Page<Setmeal> pageInfo=new Page<>(page,pageSize); Page<SetmealDto> dtoPage = new Page<>(); //构造查询条件对象 LambdaQueryWrapper<Setmeal> queryWrapper = new LambdaQueryWrapper<>(); queryWrapper.like(name != null, Setmeal::getName, name); //操作数据库 setmealService.page(pageInfo,queryWrapper); BeanUtils.copyProperties(pageInfo,dtoPage,"record"); List<SetmealDto> collect = pageInfo.getRecords().stream().map((item) -> { SetmealDto setmealDto = new SetmealDto(); BeanUtils.copyProperties(item, setmealDto); Long categoryId = item.getCategoryId(); Category byId = categoryService.getById(categoryId); String name1 = byId.getName(); setmealDto.setCategoryName(name1); return setmealDto; }).collect(Collectors.toList()); dtoPage.setRecords(collect); return R.success(dtoPage); }
第一 查询用like、
第二:如果再插入属性找不到插入地方就new一个
public void removeWithDish(List<Long> ids) { LambdaQueryWrapper<Setmeal> queryWrapper=new LambdaQueryWrapper<>(); queryWrapper.in(Setmeal::getId,ids); queryWrapper.eq(Setmeal::getStatus,1); int count = super.count(queryWrapper); if(count>0){ throw new CustomException("套餐正在售卖中,不能删除"); } super.removeByIds(ids); LambdaQueryWrapper<SetmealDish> queryWrapper1=new LambdaQueryWrapper<>(); queryWrapper1.in(SetmealDish::getSetmealId,ids); setmealDishService.remove(queryWrapper1); }
以上是脚本宝典为你收集整理的day05全部内容,希望文章能够帮你解决day05所遇到的问题。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。