package com.qxueyou.scc.admin.classes.service; import java.util.Date; import java.util.List; import java.util.Map; import com.qxueyou.scc.admin.classes.model.ClsClass; import com.qxueyou.scc.base.model.Pager; import com.qxueyou.scc.base.model.Result; /** * 班级管理服务层 * * @author chenjunliang */ public interface IClassService { /** * 新增班级 * * @param course * @return */ Result insertClass(String className, String classNumber, Date startTime, Date endTime, String subjectId, String teacherId,String chargeClassName); /** * *新增补考分组 * @param classTypes * @return */ Result insertReClass(String className, String classNumber, Date startTime, Date endTime, String subjectId, String teacherId,String classTypes); /** * 修改班级 * * @param course * @return */ Result updateClass(String classId, String className, String classNumber, Date startTime, Date endTime, String subjectId, boolean needJoinAudit, boolean needQuitAudit, boolean showAnalysisAfterExer, boolean canMultiExer, boolean needForum, String teacherId, String chargeClassName); /** * 获取班级列表 * * @return */ List getClassLst(String keyword, String teacherId, Integer pageSize, Integer pageNum, Integer pageType); /** * 获取班级列表数量 * * @return */ int getClassLstCount(String keyword, String teacherId, Integer pageType); /** * @return */ List listMyClass(); /** * 获取班级考试、作业等活动信息 * * @return */ Map getClassActivityInfo(String classId); /** * 获取班级详情 * * @return */ ClsClass read(String classId); /** * 删除班级 * * @param classIds * @return */ Result deleteClass(String[] classIds); /** * 新增学生 * * @param count 学生数量 * @return */ Result addStudent(String classId, int count); /** * 获取个人已加入班级的课程及学习情况 * * @param classId * @return */ List> getSubjectLstByClsId(String classId); Result getAllClassLst(); /** * 老师获取班级列表 */ List getClassLstByTeacherId(); /** * 查询老师或管理员可用的班级ID和名称列表 * @param teacherId 根据教师ID过滤 * @param subjectId 根据课程ID过滤 * @return */ List> queryAvailableClassIdAndName(String teacherId,String subjectId); /** * app教师端班级列表 * * @param keyword * @param limit * @param pageNum * @return */ Result classList(String keyword, Pager pager, int type); /** * 根据班级ID获取班级名字,顺序与传入的id顺序一致 * @param classIds * @return */ String [] queryClassNamesByIds(String[] classIds); /** * 根据用户ID查询所用户加入的班级 * @param userId * @return */ List queryStudentClassesByUserId(String userId); /** * 查询所有班级信息 * @return */ List> queryAllClassIdAndName(); ClsClass getReClass(String classTypes); List getTeacherClassLst(String teacherId); }