package org.jeecg.modules.system.app.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import org.apache.ibatis.annotations.Param;
import org.jeecg.modules.app.dto.SearchDTO;
import org.jeecg.modules.app.vo.PlaceInfoVO;
import org.jeecg.modules.app.vo.PlaceVO;
import org.jeecg.modules.app.vo.SearchVO;
import org.jeecg.modules.system.app.entity.AppSite;

/**
 * @Description: 场地表
 * @Author: jeecg-boot
 * @Date:   2025-07-03
 * @Version: V1.0
 */
public interface AppSiteMapper extends BaseMapper<AppSite> {

    /**
     * @Author SheepHy
     * @Description 场地列表查询
     * @Date 10:37 2025/7/4
     * @Param
     * @return
     **/
    Page<PlaceVO> getPlaceList(@Param("page")IPage<PlaceVO> page, @Param("venueType")String venueType);

    /**
     * @Author SheepHy
     * @Description 全局搜索场地分页查询
     * @Date 11:05 2025/7/7
     * @Param searchDTO {@link SearchDTO}
     * @return Page<SearchVO.SearchPlaceVO>
     **/
    Page<SearchVO.SearchPlaceVO> convertSearchPlaceVOPage(@Param("page")Page<SearchVO.SearchPlaceVO> page,@Param("searchDTO")SearchDTO searchDTO);

    /**
     * @Author SheepHy
     * @Description 门店详情信息查询
     * @Date 19:41 2025/7/7
     * @Param id 门店id
     * @return PlaceInfoVO {@link PlaceInfoVO}
     **/
    PlaceInfoVO getPlaceInfo(@Param("id")String id);

}
