package com.tcm.training.admin.live.mapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.tcm.training.admin.live.entity.LiveReserve; import com.tcm.training.admin.live.vo.LiveReserveRow; import com.tcm.training.admin.live.vo.LiveReserveSummaryRow; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; import java.time.LocalDateTime; import java.util.List; @Mapper public interface LiveReserveMapper extends BaseMapper { /** 预约记录分页列表(动态筛选) */ IPage selectReservePage(IPage page, @Param("courseId") Long courseId, @Param("sessionId") Long sessionId, @Param("keyword") String keyword, @Param("isCancel") Integer isCancel); IPage selectGlobalReservePage(IPage page, @Param("courseId") Long courseId, @Param("sessionId") Long sessionId, @Param("phone") String phone, @Param("courseName") String courseName, @Param("liveStatus") Integer liveStatus, @Param("hasWatched") Integer hasWatched, @Param("reserveFrom") LocalDateTime reserveFrom, @Param("reserveTo") LocalDateTime reserveTo); List selectGlobalReserveList(@Param("courseId") Long courseId, @Param("sessionId") Long sessionId, @Param("phone") String phone, @Param("courseName") String courseName, @Param("liveStatus") Integer liveStatus, @Param("hasWatched") Integer hasWatched, @Param("reserveFrom") LocalDateTime reserveFrom, @Param("reserveTo") LocalDateTime reserveTo); LiveReserveSummaryRow selectGlobalReserveSummary(@Param("courseId") Long courseId, @Param("sessionId") Long sessionId, @Param("phone") String phone, @Param("courseName") String courseName, @Param("liveStatus") Integer liveStatus, @Param("hasWatched") Integer hasWatched, @Param("reserveFrom") LocalDateTime reserveFrom, @Param("reserveTo") LocalDateTime reserveTo); }