package com.qmth.exam.reserve.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.qmth.boot.core.collection.PageResult;
import com.qmth.exam.reserve.bean.examsite.*;
import com.qmth.exam.reserve.bean.login.LoginUser;
import com.qmth.exam.reserve.bean.stdapply.CategoryVO;
import com.qmth.exam.reserve.entity.ExamSiteEntity;

import java.io.InputStream;
import java.util.List;
import java.util.Map;

public interface ExamSiteService extends IService<ExamSiteEntity> {

    List<CategoryVO> listExamSite(Long teachingId, Boolean flag);

    List<ExamSiteInfo> getExamSiteListForStudent(Long categoryId);

    int countExamSiteCapacityById(Long examSiteId);

    List<ExamSiteCapacityInfo> findAllExamSiteCapacityList();

    PageResult<ExamSiteVO> page(ExamSiteReq req);

    void saveExamSite(LoginUser user, ExamSiteSaveReq req);

    void enable(Long id, Boolean enable);

    List<Map<String, Object>> importExamSite(LoginUser user, InputStream inputStream);

    void updateExamSiteCapacity(Long examSiteId);

    void saveGuide(ExamSiteGuideReq req);

}
