package com.keao.edu.user.service;


import com.keao.edu.common.page.PageInfo;
import com.keao.edu.common.service.BaseService;
import com.keao.edu.user.api.entity.ExamRoom;
import com.keao.edu.user.dto.ExamRoomDto;
import com.keao.edu.user.dto.ExamRoomStatisticsDto;
import com.keao.edu.user.page.ExamRoomQueryInfo;

public interface ExamRoomService extends BaseService<Long, ExamRoom> {

    /**
     * 获取教师考试列表
     * @param queryInfo
     * @return
     */
    PageInfo<ExamRoomDto> queryExamRoomPage(ExamRoomQueryInfo queryInfo);

    /**
     * @describe 创建教室
     * @author Joburgess
     * @date 2020.06.23
     * @param examRoom:
     * @return com.keao.edu.user.api.entity.ExamRoom
     */
    void createExamRoom(ExamRoom examRoom);

    /**
     * @describe 更新教室信息
     * @author Joburgess
     * @date 2020.06.23
     * @param examRoom:
     * @return com.keao.edu.user.api.entity.ExamRoom
     */
    ExamRoom updateExamRoom(ExamRoom examRoom);

    /**
     * @describe 删除教室
     * @author Joburgess
     * @date 2020.06.24
     * @param examRoomIds:
     * @return void
     */
    void deleteExamRooms(String examRoomIds);

    /**
     * @describe 发送考试安排
     * @author Joburgess
     * @date 2020.06.29
     * @return void
     */
    void sendExamPlan(Integer organId, Integer examId);

    /**
     * @describe 获取考场统计信息
     * @author Joburgess
     * @date 2020.06.30
     * @param organId:
     * @param examId:
     * @return com.keao.edu.user.dto.ExamRoomStatisticsDto
     */
    ExamRoomStatisticsDto getExamRoomStatisticsInfo(Integer organId, Integer examId);
}
