package com.tourism.webadmin.back.dao;

import com.tourism.common.core.annotation.EnableDataPerm;
import com.tourism.common.core.base.dao.BaseDaoMapper;
import com.tourism.webadmin.app.wechat.vo.shopfood.WechatQueryIndexBannerRestaurantVo;
import com.tourism.webadmin.app.wechat.vo.shopfood.WechatSelectShopVo;
import com.tourism.webadmin.back.model.RestaurantInfo;
import com.tourism.webadmin.back.vo.RestaurantInfoVo;
import org.apache.ibatis.annotations.Param;

import java.util.*;

/**
 * 餐馆信息数据操作访问接口。
 *
 * @author 吃饭睡觉
 * @date 2024-09-06
 */
@EnableDataPerm
public interface RestaurantInfoMapper extends BaseDaoMapper<RestaurantInfo> {

    /**
     * 批量插入对象列表。
     *
     * @param restaurantInfoList 新增对象列表。
     */
    void insertList(List<RestaurantInfo> restaurantInfoList);

    /**
     * 获取过滤后的对象列表。
     *
     * @param restaurantInfoFilter 主表过滤对象。
     * @param orderBy 排序字符串，order by从句的参数。
     * @return 对象列表。
     */
    List<RestaurantInfo> getRestaurantInfoList(
            @Param("restaurantInfoFilter") RestaurantInfo restaurantInfoFilter, @Param("orderBy") String orderBy);
    List<RestaurantInfo> getRestaurantInfoListByShopName(
            @Param("restaurantInfoFilter") RestaurantInfo restaurantInfoFilter, @Param("orderBy") String orderBy);
    List<WechatQueryIndexBannerRestaurantVo> queryIndexBannerRestaurant();

    List<RestaurantInfoVo> queryIndexDeliciousShop();

    List<WechatSelectShopVo> queryIndexSelectShop();
}
