package com.xjrsoft.module.courseTable.mapper;

import com.github.yulichang.base.MPJBaseMapper;
import com.xjrsoft.module.courseTable.dto.ClassTeacherDto;
import com.xjrsoft.module.courseTable.vo.ClassTeacherVo;
import com.xjrsoft.module.schedule.dto.ClassOptionDto;
import com.xjrsoft.module.courseTable.entity.CourseTable;
import com.xjrsoft.module.schedule.entity.WfCourseAdjust;
import com.xjrsoft.module.schedule.vo.ClassOptionVo;
import com.xjrsoft.module.schedule.dto.CourseTableAdjustDto;
import com.xjrsoft.module.schedule.dto.CourseTableDto;
import com.xjrsoft.module.schedule.vo.CourseDetailVo;
import com.xjrsoft.module.schedule.vo.CourseListVo;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * <p>
 * 课表 Mapper 接口
 * </p>
 *
 * @author baomidou
 * @since 2023-09-02 02:19:56
 */
@Mapper
public interface CourseTableMapper extends MPJBaseMapper<CourseTable> {
    List<CourseDetailVo> getList(@Param("dto") CourseTableDto dto);

    List<CourseListVo> getAdjustList(@Param("dto") CourseTableAdjustDto dto);

    List<ClassOptionVo> getClassListByTeacherId(@Param("dto") ClassOptionDto dto);

    //查询流程正在进行中或者已经完成的调课或者顶课申请
    List<WfCourseAdjust> getExceptCourseList(@Param("userId") Long userId);

    List<ClassTeacherVo> getClassTeacherIds(@Param("dto") ClassTeacherDto dto);
}
