using Tiobon.Core.Common;
using Tiobon.Core.IServices.BASE;
using Tiobon.Core.Model;
using Tiobon.Core.Model.Models;

namespace Tiobon.Core.IServices
{
    /// <summary>
    /// 考试记录(自定义服务接口)
    /// </summary>	
    public interface IGhre_ExamRecordServices :IBaseServices<Ghre_ExamRecord, Ghre_ExamRecordDto, InsertGhre_ExamRecordInput, EditGhre_ExamRecordInput>
	{
		Task<ServicePageResult<Ghre_ExamRecordDto>> Query(string examId,   QueryBody body);

        Task<ServiceResult> ModifyAdjustScore(string examRecordId,   EditGhre_ExamRecordInput edit);

        Task<ServiceResult<Ghre_ExamRecordExtend>> ExtendAsync(long examRecordId);

        Task<ServiceResult> CommentAsync(Ghre_ExamRecordExtend extend, long examRecordId);

        Task<ServiceResult<QueryExam>> QueryExamAsync(long id);

        Task<ServiceResult> StartExamAsync(long examRecordId);

        Task<ServiceResult> RetakeExamAsync(long examRecordId);

        Task<ServiceResult> AnswerExamAsync(List<DefaultGhre_ExamPaperPreview> answers, long studyRecordId);
    }
}