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


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

import java.util.List;
import java.util.Map;

public interface SysMusicScoreAccompanimentDao extends BaseDAO<Integer, SysMusicScoreAccompaniment> {


    void batchInsert(@Param("sysMusicScoreAccompaniments") List<SysMusicScoreAccompaniment> sysMusicScoreAccompaniments,
                     @Param("sysMusicScoreId") Integer sysMusicScoreId);

    void batchDel(@Param("delExamSongAccompanimentIds") List<Integer> delExamSongAccompanimentIds);

    List<Integer> findSubjectByMusicScoreId(@Param("sysMusicScoreId") Integer sysMusicScoreId, @Param("idList") List<Integer> idList);

    void batchUpdate(@Param("sysMusicScoreAccompaniments") List<SysMusicScoreAccompaniment> sysMusicScoreAccompaniments);

    void deleteBySongId(Integer id);

    List<SysMusicScoreAccompaniment> queryAccPage(Map<String, Object> params);

    int findAccCount(Map<String, Object> params);

    /**
     * 获取伴奏声部列表
     * @return
     */
    List<Subject> querySubjectIds();
}