package com.yonge.cooleshow.biz.dal.dao;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.yonge.cooleshow.biz.dal.dto.CourseScheduleStudentMusicSheetResult;
import com.yonge.cooleshow.biz.dal.entity.CourseScheduleStudentMusicSheet;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * (CourseScheduleStudentMusicSheet)表数据库访问层
 *
 * @author zx
 * @since 2022-04-02 15:56:01
 */
public interface CourseScheduleStudentMusicSheetDao extends BaseMapper<CourseScheduleStudentMusicSheet> {

    List<CourseScheduleStudentMusicSheetResult> queryBySheetIdAndCourseId(@Param("musicSheetAccompanimentId") Long musicSheetAccompanimentId,
                                                                          @Param("courseId") Long courseId,
                                                                          @Param("userId") Long userId,
                                                                          @Param("downStatus") Integer downStatus,
                                                                          @Param("userType") Integer userType);
    //开启原音播放
    void openPlayStatus(@Param("scheduleId") Long scheduleId,
                       @Param("musicSheetAccompanimentId") Integer musicSheetAccompanimentId,
                       @Param("userId") Long userId);
    void openAccompanimentPlayStatus(@Param("scheduleId") Long scheduleId,
                                    @Param("musicSheetAccompanimentId") Integer musicSheetAccompanimentId,
                                    @Param("userId") Long userId);
    //关闭伴奏
    void closePlayStatus(@Param("courseId") Long courseId,@Param("userId") Long userId);

    void batchInsert(@Param("musicSheet") List<CourseScheduleStudentMusicSheetResult> musicSheet);
}

