package com.sky.mapper; import com.github.pagehelper.Page; import com.sky.annotation.AutoFill; import com.sky.dto.DishPageQueryDTO; import com.sky.entity.Dish; import com.sky.enumeration.OperationType; import com.sky.vo.DishVO; import org.apache.ibatis.annotations.Delete; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Select; import java.util.List; import java.util.Map; @Mapper public interface DishMapper { /** * 插入菜品数据 */ @AutoFill(OperationType.INSERT) void insert(Dish dish); /** * 根据主键查询菜品 */ @Select("select * from dish where id=#{id}") Dish getById(Long id); /** * 根据主键删除菜品数据 */ @Delete("delete from dish where id=#{id}") void deleteById(Long id); /** * 根据id动态修改菜品数据 */ @AutoFill(OperationType.UPDATE) void update(Dish dish); /** * 动态条件查询菜品 */ List list(Dish dish); /** * 根据套餐id查询菜品 */ @Select("select a.* from dish a left join setmeal_dish b on a.id = b.dish_id where b.setmeal_id = #{setmealId}") List getBySetmealId(Long setmealId); /** * 菜品分页查询 */ Page pageQuery(DishPageQueryDTO dishPageQueryDTO); /** * 根据条件统计菜品数量 * @param map * @return */ Integer countByMap(Map map); }