Skip to content

Commit

Permalink
菜品信息分页查询
Browse files Browse the repository at this point in the history
  • Loading branch information
Q-1515 committed Jul 21, 2022
1 parent 595760b commit 53c4880
Show file tree
Hide file tree
Showing 5 changed files with 68 additions and 7 deletions.
Original file line number Diff line number Diff line change
@@ -1,16 +1,15 @@
package com.reggie.controller.admin;

import com.reggie.dto.DishDTO;
import com.reggie.dto.DishPageQueryDTO;
import com.reggie.result.PageResult;
import com.reggie.result.R;
import com.reggie.service.DishService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.*;

@RestController
@RequestMapping("/admin/dish")
Expand All @@ -24,15 +23,31 @@ public class DishController {

/**
* 添加菜品
* @param dishDTO 分类id,菜品描述,口味,菜品id,菜品图片路径,菜品名称,菜品价格,菜品状态
*
* @param dishDTO 分类id,菜品描述,口味,菜品id,菜品图片路径,菜品名称,菜品价格,菜品状态
* @return success
*/
@PostMapping
@ApiOperation("新增菜品")
public R<String> save(@RequestBody DishDTO dishDTO) {
log.info("添加菜品:{}",dishDTO);
log.info("添加菜品:{}", dishDTO);
dishService.save(dishDTO);
return R.success("菜品添加成功");
}


/**
* 菜品信息分页查询
*
* @param dishPageQueryDTO 页数,每页记录数,菜品名称,分类id,菜品售卖状态
* @return PageResult 总页数,菜品对象
*/
@GetMapping("/page")
@ApiOperation("菜品信息分页查询")
public R<PageResult> page(DishPageQueryDTO dishPageQueryDTO) {
log.info("菜品信息分页查询:{}", dishPageQueryDTO);
PageResult pageResult = dishService.page(dishPageQueryDTO);
return R.success(pageResult);
}

}
Original file line number Diff line number Diff line change
@@ -1,6 +1,9 @@
package com.reggie.mapper;

import com.github.pagehelper.Page;
import com.reggie.dto.DishPageQueryDTO;
import com.reggie.entity.DishFlavor;
import com.reggie.vo.DishVO;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

Expand All @@ -11,4 +14,7 @@ public interface DishFlavorMapper {

//插入菜品口味
void insert(@Param("flavors") List<DishFlavor> flavors);

//菜品信息分页查询
Page<DishVO> PageQuery(DishPageQueryDTO dishPageQueryDTO);
}
Original file line number Diff line number Diff line change
@@ -1,9 +1,14 @@
package com.reggie.service;

import com.reggie.dto.DishDTO;
import com.reggie.dto.DishPageQueryDTO;
import com.reggie.result.PageResult;

public interface DishService {

//添加菜品
void save(DishDTO dishDTO);

//菜品信息分页查询
PageResult page(DishPageQueryDTO dishPageQueryDTO);
}
Original file line number Diff line number Diff line change
@@ -1,11 +1,16 @@
package com.reggie.service.impl;

import com.github.pagehelper.Page;
import com.github.pagehelper.PageHelper;
import com.reggie.dto.DishDTO;
import com.reggie.dto.DishPageQueryDTO;
import com.reggie.entity.Dish;
import com.reggie.entity.DishFlavor;
import com.reggie.mapper.DishFlavorMapper;
import com.reggie.mapper.DishMapper;
import com.reggie.result.PageResult;
import com.reggie.service.DishService;
import com.reggie.vo.DishVO;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
Expand Down Expand Up @@ -46,14 +51,26 @@ public void save(DishDTO dishDTO) {
}

//循环添加id
flavors.forEach( item -> {
flavors.forEach(item -> {
//设置口味关联的菜品id
item.setDishId(dishId);
});

//插入菜品口味
dishFlavorMapper.insert(flavors);
}

/**
* 菜品信息分页查询
*
* @param dishPageQueryDTO 页数,每页记录数,菜品名称,分类id,菜品售卖状态
* @return PageResult 总页数,菜品对象
*/
public PageResult page(DishPageQueryDTO dishPageQueryDTO) {
//分页插件自动填充分页命令
PageHelper.startPage(dishPageQueryDTO.getPage(), dishPageQueryDTO.getPageSize());
Page<DishVO> page = dishFlavorMapper.PageQuery(dishPageQueryDTO);

return new PageResult(page.getTotal(), page.getResult());
}
}
18 changes: 18 additions & 0 deletions reggie_server/src/main/resources/mapper/DishFlavorMapper.xml
Original file line number Diff line number Diff line change
Expand Up @@ -9,4 +9,22 @@
(#{flavor.dishId},#{flavor.name},#{flavor.value})
</foreach>
</insert>

<!--菜品信息分页查询-->
<select id="PageQuery" resultType="com.reggie.vo.DishVO">
select d.*,c.name as categoryName
from dish d left join category c on c.id = d.category_id
<where>
<if test="name !=null and name !=''">
d.name like "%"#{name}"%"
</if>
<if test="categoryId != null">
and d.category_id = #{categoryId}
</if>
<if test="status != null">
and d.status = #{status}
</if>
</where>
order by d.create_time desc
</select>
</mapper>

0 comments on commit 53c4880

Please sign in to comment.