【瑞吉外卖】前后端分离开发、项目部署、Swagger

您所在的位置:网站首页 瑞吉外卖登陆网址是什么 【瑞吉外卖】前后端分离开发、项目部署、Swagger

【瑞吉外卖】前后端分离开发、项目部署、Swagger

2024-05-18 07:22| 来源: 网络整理| 查看: 265

@RestController@RequestMapping("/setmeal")@Slf4j@Api(tags = "套餐相关接口")public class SetmealController {

@Autowired private SetmealService setmealService; @Autowired private CategoryService categoryService; @Autowired private SetmealDishService setmealDishService;

/** * 新增套餐 * @param setmealDto * @return */ @PostMapping @CacheEvict(value = "setmealCache",allEntries = true) @ApiOperation(value = "新增套餐接口") public R save(@RequestBody SetmealDto setmealDto){ log.info("套餐信息:{}",setmealDto);

setmealService.saveWithDish(setmealDto);

return R.success("新增套餐成功"); }

/** * 套餐分页查询 * @param page * @param pageSize * @param name * @return */ @GetMapping("/page") @ApiOperation(value = "套餐分页查询接口") @ApiImplicitParams({ @ApiImplicitParam(name = "page",value = "页码",required = true), @ApiImplicitParam(name = "pageSize",value = "每页记录数",required = true), @ApiImplicitParam(name = "name",value = "套餐名称",required = false) }) public R page(int page,int pageSize,String name){ //分页构造器对象 Page pageInfo = new Page(page,pageSize); Page dtoPage = new Page();

LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper(); //添加查询条件,根据name进行like模糊查询 queryWrapper.like(name != null,Setmeal::getName,name); //添加排序条件,根据更新时间降序排列 queryWrapper.orderByDesc(Setmeal::getUpdateTime);

setmealService.page(pageInfo,queryWrapper);

//对象拷贝 BeanUtils.copyProperties(pageInfo,dtoPage,"records"); List records = pageInfo.getRecords();

List list = records.stream().map((item) -> { SetmealDto setmealDto = new SetmealDto(); //对象拷贝 BeanUtils.copyProperties(item,setmealDto); //分类id Long categoryId = item.getCategoryId(); //根据分类id查询分类对象 Category category = categoryService.getById(categoryId); if(category != null){ //分类名称 String categoryName = category.getName(); setmealDto.setCategoryName(categoryName); } return setmealDto; }).collect(Collectors.toList());

dtoPage.setRecords(list); return R.success(dtoPage); }

/** * 删除套餐 * @param ids * @return */ @DeleteMapping @CacheEvict(value = "setmealCache",allEntries = true) @ApiOperation(value = "套餐删除接口") public R delete(@RequestParam List ids){ log.info("ids:{}",ids);

setmealService.removeWithDish(ids);

return R.success("套餐数据删除成功"); }

/** * 根据条件查询套餐数据 * @param setmeal * @return */ @GetMapping("/list") @Cacheable(value = "setmealCache",key = "#setmeal.categoryId + '_' + #setmeal.status") @ApiOperation(value = "套餐条件查询接口") public R list(Setmeal setmeal){ LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper(); queryWrapper.eq(setmeal.getCategoryId() != null,Setmeal::getCategoryId,setmeal.getCategoryId()); queryWrapper.eq(setmeal.getStatus() != null,Setmeal::getStatus,setmeal.getStatus()); queryWrapper.orderByDesc(Setmeal::getUpdateTime);

List list = setmealService.list(queryWrapper);

return R.success(list); }}



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3