package com.yutou.nas.mybatis.dao;

import com.yutou.nas.mybatis.model.MusicData;
import com.yutou.nas.mybatis.model.MusicDataExample;
import java.util.List;

import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

@Mapper
public interface MusicDataDao {
    long countByExample(MusicDataExample example);

    int deleteByExample(MusicDataExample example);

    int deleteByPrimaryKey(Integer id);

    int insert(MusicData record);

    int insertSelective(MusicData record);

    List<MusicData> selectByExample(@Param("example") MusicDataExample example,@Param("isDelFile") boolean isDelFile);

    MusicData selectByPrimaryKey(@Param("id")Integer id,@Param("isDelFile")boolean isDelFile);

    int updateByExampleSelective(@Param("record") MusicData record, @Param("example") MusicDataExample example);

    int updateByExample(@Param("record") MusicData record, @Param("example") MusicDataExample example);

    int updateByPrimaryKeySelective(MusicData record);

    int updateByPrimaryKey(MusicData record);

    void truncate();
    List<MusicData> selectByRegexp(@Param("regexp")String regexp,@Param("isDelFile")boolean isDelFile);

    List<MusicData> selectAllAlbum();
    List<MusicData> selectAllArtist();
    List<MusicData> selectAlbum(@Param("album")String album,@Param("isDelFile")boolean isDelFile);
    List<MusicData> selectArtist(@Param("artist")String artist,@Param("isDelFile")boolean isDelFile);

}