package com.ym.mec.biz.dal.dao;

import com.ym.mec.biz.dal.entity.MusicGroupSchoolTermStudentCourseDetail;
import com.ym.mec.common.dal.BaseDAO;
import com.ym.mec.biz.dal.entity.MusicGroupSchoolTermCourseDetail;
import org.apache.ibatis.annotations.Param;

import java.util.Date;
import java.util.List;

public interface MusicGroupSchoolTermCourseDetailDao extends BaseDAO<Integer, MusicGroupSchoolTermCourseDetail> {


    /**
     * 获取所选时间乐团的预排课明细
     * @param musicGroupId
     * @param startCourseDate
     * @return
     */
    MusicGroupSchoolTermCourseDetail findByCourseDateAndMusicGroupId(@Param("musicGroupId") String musicGroupId,
                                                                     @Param("startCourseDate") Date startCourseDate,
                                                                     @Param("courseFlag") Integer courseFlag);

    /**
     * 获取所选时间乐团的预排课明细
     * @param musicGroupId
     * @return
     */
    List<MusicGroupSchoolTermCourseDetail> findByMusicGroupId(@Param("musicGroupId") String musicGroupId);

    /**
     * 获取所有未确认的预排课数据
     * @return
     */
    List<MusicGroupSchoolTermCourseDetail> queryAllNoCourse();

    /**
     * 获取当前学期截止前14天的乐团，并提醒排课
     * @param remindCourseTime
     * @return
     */
    List<String> queryPushCourseTermMusicIds(String remindCourseTime);
}