package com.xhkjedu.slive.mapper.gradeclass;

import com.xhkjedu.base.TkMapper;
import com.xhkjedu.slive.model.gradeclass.TClass;
import com.xhkjedu.slive.vo.gradeclass.ClassVo;
import com.xhkjedu.slive.vo.xz.XzClassVo;
import org.apache.ibatis.annotations.Param;

import java.util.List;

public interface ClassMapper extends TkMapper<TClass> {
    //更新学生数量
    void updateNum(@Param("classid") Integer classid);

    //更新班级、分组学生数量
    void updateNum2(@Param("classid") Integer classid);

    //批量更新班级、分组学生数量
    void updateClassGroupNumBatch(@Param("classids") String classids);

    //基本信息
    ClassVo getById(Integer classid);

    //年级下班级id集合
    List<Integer> listClassidsByGradeid(@Param("gradeid") Integer gradeid, @Param("schoolid") Integer schoolid);

    //修改单个班级状态
    Integer updateClassstateByClassid(@Param("classid") Integer classid, @Param("classstate") Integer classstate);

    //修改的那个班级类型
    Integer updateClasstype(@Param("classid") Integer classid, @Param("classtype") Integer classtype);

    //获取班级当前年份
    Integer getYearById(Integer classid);

    //删除班级学生及分组学生
    void deleteClassstu(@Param("zbclassid") Integer zbclassid, @Param("classid")Integer classid);

    //根据行政直播id获取该学校当前年份指定年级下的行政班和提高班
    List<XzClassVo> listClassByXzid(@Param("schoolid") Integer schoolid, @Param("gradeid") Integer gradeid);
}
