IUserExamService.cs 4.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104
  1. using Exam.Application.Interface.Exam;
  2. using Exam.Share;
  3. using Exam.Share.Dtos.ExamManage;
  4. using Exam.Share.ViewResponses.Exam;
  5. using Hotline.Exams.ExamManages;
  6. using Hotline.Repository.SqlSugar.Exam.Interface;
  7. using Hotline.Share.Dtos.ExamManages;
  8. using Hotline.Share.Requests.Exam;
  9. using Hotline.Share.ViewResponses.Exam;
  10. namespace Hotline.Application.Exam.Interface.ExamManages
  11. {
  12. public interface IUserExamService:IQueryService<UserExamResultViewResponse,UserExamDto,UserExamPagedRequest>,IApiService<AddUserExamDto,UpdateUserExamDto,ExamUserExam>
  13. {
  14. /// <summary>
  15. /// 交卷
  16. /// </summary>
  17. /// <param name="submitExamDto"></param>
  18. /// <param name="cancellationToken"></param>
  19. /// <returns></returns>
  20. Task SubmitAsync(SubmitExamDto submitExamDto,CancellationToken cancellationToken);
  21. /// <summary>
  22. /// 阅卷
  23. /// </summary>
  24. /// <param name="gradingExtamItemDto"></param>
  25. /// <param name="cancellationToken"></param>
  26. /// <returns></returns>
  27. Task<GradingExamQuestionDto> GradingAsync(GradingExtamItemDto gradingExtamItemDto, CancellationToken cancellationToken);
  28. /// <summary>
  29. /// 获取考试试题类型和Id
  30. /// </summary>
  31. /// <param name="examQuestionRequest"></param>
  32. /// <returns></returns>
  33. Task<List<ExamQuestionViewResponse>> GetExamQuestionViewResponses(ExamQuestionGroupRequest examQuestionGroupRequest);
  34. /// <summary>
  35. /// 获取已阅卷的考试试题类型和Id
  36. /// </summary>
  37. /// <param name="examQuestionGroupRequest"></param>
  38. /// <returns></returns>
  39. Task<List<GradingQuestionViewResponce>> GetGradingQuestionViewResponces(ExamQuestionGroupRequest examQuestionGroupRequest);
  40. /// <summary>
  41. /// 获取考试试题
  42. /// </summary>
  43. /// <param name="examQuestionRequest"></param>
  44. /// <returns></returns>
  45. Task<ExamQuestionDto> GetExamQuestionDto(ExamQuestionRequest examQuestionRequest);
  46. /// <summary>
  47. /// 初次考试
  48. /// </summary>
  49. /// <param name="addUserExamItemDto"></param>
  50. /// <returns></returns>
  51. Task<StartExamViewResponse> ExamAsync(UpdateUserExamItemDto addUserExamItemDto, CancellationToken cancellationToken);
  52. /// <summary>
  53. /// 开始考试
  54. /// </summary>
  55. /// <param name="startUserExamDto"></param>
  56. /// <param name="CancellationToken"></param>
  57. /// <returns></returns>
  58. Task<StartExamViewResponse> StartUserExamAsync(StartUserExamDto startUserExamDto,CancellationToken cancellationToken);
  59. /// <summary>
  60. /// 完成阅卷
  61. /// </summary>
  62. /// <param name="gradingExtamDto"></param>
  63. /// <param name="cancellationToken"></param>
  64. /// <returns></returns>
  65. Task CompleteGradingAsync(GradingExamDto gradingExtamDto,CancellationToken cancellationToken);
  66. /// <summary>
  67. /// 获取阅卷试题
  68. /// </summary>
  69. /// <param name="gradingExamRequest"></param>
  70. /// <returns></returns>
  71. Task<List<GradingExamQuestionDto>> GetGradingExamQuestion(GradingExamRequest gradingExamRequest);
  72. /// <summary>
  73. /// 查看已阅卷考试试题
  74. /// </summary>
  75. /// <param name="viewGradingExamRequest"></param>
  76. /// <returns></returns>
  77. Task<GradingExamQuestionDto> ViewGradingExamQuestion(ViewGradingExamRequest viewGradingExamRequest);
  78. /// <summary>
  79. /// 获取缺考考生名单
  80. /// </summary>
  81. /// <param name="unExamUserReportPagedRequest"></param>
  82. /// <returns></returns>
  83. Task<UnExamUserPageViewResponse> GetUnExamUsers(UnExamUserReportPagedRequest unExamUserReportPagedRequest);
  84. /// <summary>
  85. /// 获取用户考试成绩
  86. /// </summary>
  87. /// <param name="userExamResultReportPagedRequest"></param>
  88. /// <returns></returns>
  89. Task<UserExamResultPageViewResponse> GetUserExamResults(UserExamResultReportPagedRequest userExamResultReportPagedRequest);
  90. }
  91. }