package com.xjrsoft.module.classtime.mapper;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.github.yulichang.base.MPJBaseMapper;
import com.xjrsoft.module.classtime.entity.ClassTimeStatistics;
import com.xjrsoft.module.classtime.vo.ClassTimeStatisticsRecordVo;
import com.xjrsoft.module.classtime.vo.CourseListVo;
import com.xjrsoft.module.classtime.vo.TeacherListVo;
import com.xjrsoft.module.oa.entity.WfTeacherCourseTime;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
* @title: 课时统计
* @Author dzx
* @Date: 2024-09-26
* @Version 1.0
*/
@Mapper
public interface ClassTimeStatisticsMapper extends MPJBaseMapper<ClassTimeStatistics> {

    /**
     * 查询正式聘用和外聘教师的id、姓名、聘用方式
     * @return 数据集合
     */
    List<TeacherListVo> getTeacherList();

    /**
     * 查询所有课时补充数据
     * @return 数据集合
     */
    List<WfTeacherCourseTime> getWfTeacherCourseTimeList(@Param("dto") ClassTimeStatistics dto);

    List<CourseListVo> getCourseList(@Param("dto") ClassTimeStatistics dto);

    /**
     * 查询顶课数据
     * @param dto
     * @return
     */
    List<CourseListVo> getSubstituteList(@Param("dto") ClassTimeStatistics dto);

    List<ClassTimeStatisticsRecordVo> getRecordList(@Param("id") Long id);

    /**
     * 查询节假日补班课程
     * @param dto
     * @return
     */
    List<CourseListVo> getHolidayReplaceCourseList(@Param("dto") ClassTimeStatistics dto);
}
