package com.xhkjedu.sstudy.mapper.recite;

import com.xhkjedu.base.TkMapper;
import com.xhkjedu.sstudy.model.recite.TReciteStudent;
import com.xhkjedu.sstudy.vo.recite.ReciteStudentVo;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;

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

/**
 * @ClassName ReciteStudentMapper
 * Description 学生背诵内容
 * Author WN
 * Date 2020/6/10 9:23
 **/
@Repository
public interface ReciteStudentMapper extends TkMapper<TReciteStudent> {

    /**
     *功能描述 批量保存
     * @author WN
     * @date 2020/6/10
     * @param  * @param list
     * @return void
     */
    void saveBatch(List<TReciteStudent> list);

    /**
     *功能描述 列表--学生
     * @author WN
     * @date 2020/6/10
     * @param  * @param rs
     * @return java.util.List<com.xhkjedu.vo.recite.ReciteStudentVo>
     */
    List<ReciteStudentVo> listStuReceites(@Param("rs") TReciteStudent rs);

    /**
     *功能描述 保存--学生背诵内容
     * @author WN
     * @date 2020/6/10
     * @param  * @param rs
     * @return java.lang.Integer
     */
    Integer updateStudRecite(@Param("rs") TReciteStudent rs);

    /**
     *功能描述 详情--根据学生背诵id获取背诵内容
     * @author WN
     * @date 2020/6/10
     * @param  * @param rsid
     * @param reciteid
     * @return com.xhkjedu.model.recite.TReciteStudent
     */
    ReciteStudentVo getReciteStuByRsid(@Param("studentid") Integer studentid, @Param("reciteid") Integer reciteid);

    /**
     * 功能描述  获取阅读班级统计
     *
     * @param * @param reciteid
     * @return java.util.List<com.xhkjedu.vo.recite.ReciteClassAnalyzeVo>
     * @author WN
     * @date 2020/6/17
     */
    List<Map> listRecitesClassForAnalyze(@Param("reciteid")Integer reciteid, @Param("classids")String classids
            ,@Param("classid")Integer classid,@Param("schoolid") Integer schoolid);

    //////////////////////////////////////////////学生WEB端//////////////////////////////////////////////
    /**
     * 背诵列表
     * @Param [student]
     * @Author ywx
     * @Date 2020/9/4 9:08
     * @return java.util.List<com.xhkjedu.vo.recite.ReciteStudentVo>
     **/
    List<ReciteStudentVo> listReciteForStuWeb(@Param("rs") TReciteStudent student);
}
