package com.ynfy.buss.exam.userexam.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
import com.ynfy.buss.exam.userexam.entity.UserExam;

import java.util.List;

/**
 * @Description: 用户考试表
 * @Author: jeecg-boot
 * @Date: 2023-03-05
 * @Version: V1.0
 */
public interface IUserExamService extends IService<UserExam> {

    /**
     * 检查是否有正在进行中的考试
     *
     * @param userId
     * @return
     */
    boolean checkExamIn(String userId);


    /**
     * 获取正在进行中的考试
     *
     * @param userId
     * @return
     */
    UserExam listExamIn(String userId);


    /**
     * 统计用户某次考试参加的次数
     *
     * @param userId
     * @return
     */
    long countUserExam(String userId, String examId);

    /**
     * 查询用户考试信息及试题
     *
     * @param id
     * @return
     */
    UserExam listUserExam(String id);

    /**
     * 根据条件分页查询
     */
    IPage<UserExam> selectPageList(IPage<UserExam> page, UserExam userExam);

    /**
     * 获取过期了，并且正在进行中的考试
     *
     * @return
     */
    List<UserExam> listExpireExamIn();
}
