package com.xhkjedu.smarking.mapper.report.reportstu;

import com.xhkjedu.base.TkMapper;
import com.xhkjedu.smarking.model.report.reportstu.MsrStudent;
import com.xhkjedu.smarking.vo.report.reportother.ExamReportParams;
import com.xhkjedu.smarking.vo.report.reportstu.StudentParams;
import org.apache.ibatis.annotations.Param;

import java.util.*;

/**
 * @Description 阅卷报告-学生成绩分析表 Mapper 接口
 * @Author auto
 * @Date 2024-12-09
 */
public interface MsrStudentMapper extends TkMapper<MsrStudent> {
    //获取学生考试得分和排名
    List<MsrStudent> listStuScoreAndRankByExamid(@Param("examid") int examid,@Param("subjectid") String subjectid);
    //批量修改学生主观题、客观题分值
    void updateBatchObjSubScore(@Param("list") List<MsrStudent> list);
    //综合报告-小分表-学生分数排名
    List<Map<String, Object>> listStuScoreAndRankByExamidAndSubjectid(@Param("examid") int examid, @Param("subjectid") String subjectid);
    //学生报告-学生学科试题分析
    List<Map<String, Object>> listStuSubjectQuestions(@Param("params") ExamReportParams params);
    //综合报告-总概览-整体分数分布分析
    List<Map<String, Object>> listScoreForZgl(@Param("examid") Integer examid,@Param("subjectid") String subjectid);

    //综合报告-排行榜
    List<Map> listStudentForPhb(@Param("sql") String sql, @Param("params") StudentParams params);

    //学生成绩分析
    List<MsrStudent> listStudentBySql(@Param("sql") String sql);
}
