KmtExerciseService.java 5.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197
  1. package com.ssj.service.kmt.service;
  2. import com.ssj.bean.kmt.kmt.domain.KmtExerciseBook;
  3. import com.ssj.bean.kmt.kmt.domain.KmtExerciseQuestion;
  4. import com.ssj.framework.core.security.exception.CommonException;
  5. import com.ssj.framework.core.util.ResponseEntity;
  6. import com.ssj.service.conch.common.request.PageReq;
  7. import com.ssj.service.kmt.dto.ExerciseBookCourseDTO;
  8. import com.ssj.service.kmt.dto.ExerciseQuetionDto;
  9. import com.ssj.service.kmt.dto.exercise.ExerciseQuestionRollbacks;
  10. import com.ssj.service.kmt.exercise.request.SubmitAnswerProofreadResultReq;
  11. import com.ssj.service.kmt.request.*;
  12. import com.ssj.service.kmt.request.rollbackai.AddExerciseQuestionRequest;
  13. import com.ssj.service.kmt.request.rollbackai.ExerciseQuestionDealRequest;
  14. import org.springframework.web.bind.annotation.RequestBody;
  15. import org.springframework.web.bind.annotation.RequestParam;
  16. import java.util.List;
  17. import java.util.Map;
  18. public interface KmtExerciseService {
  19. /**
  20. * 修改题目
  21. * @return
  22. */
  23. ResponseEntity updateQuestion(QuestionUpdateRequest request);
  24. /**
  25. * 打回题目,审核打回给加工人员重加工,加工打回给ai
  26. * @param userId 审核人
  27. */
  28. ResponseEntity questionRollback(String userId, QuestionRollbackRequest request) throws CommonException;
  29. /**
  30. * kmt题目打回
  31. * @param userId
  32. * @param request
  33. * @return
  34. */
  35. ResponseEntity kmtQuestionRollback(String userId, KmtQuestionRollbackRequest request);
  36. /**
  37. * 发布题目
  38. * @param request 题目id
  39. * @param userId 审核人
  40. */
  41. ResponseEntity publishQuestion(QuestionPublishRequest request, String userId) throws CommonException;
  42. /**
  43. * 发布kmt题目
  44. * @param request
  45. * @param userId
  46. * @return
  47. */
  48. ResponseEntity publishKmtQuestion(KmtQuestionPublishRequest request, String userId);
  49. /**
  50. * 提交审核
  51. * @param questionIdList 题目id
  52. * @param detailIds 知识点列表
  53. * @param userId 加工人
  54. */
  55. void submit2Auditing(List<String> questionIdList, List<HowDetailPointsRequest> detailIds, String userId) throws CommonException;
  56. /**
  57. * 提交审核
  58. * @param request
  59. * @param userId 加工人
  60. */
  61. ResponseEntity submit2AuditingV1(AuditingV1Request request, String userId);
  62. /**
  63. * 分配题目,根据条件选择题目,条件优先级为:课时id->单元id->练习册id
  64. */
  65. void distributeQuestions(QuestionDistributeRequest request);
  66. /**
  67. * 根据条件查询练习册课时列表
  68. * @param request
  69. */
  70. List<ExerciseBookCourseDTO> getBookExerciseList(QuestionDistributeRequest request);
  71. /**
  72. * 保存提交审核
  73. * @param request
  74. */
  75. ResponseEntity submitKmtQuestions2Auditing (AuditingRequest request, String userId);
  76. /**
  77. * 添加es记录
  78. * @param questions
  79. */
  80. void updateEsKmtExerciseQuestionKnow(List<KmtExerciseQuestion> questions);
  81. /**
  82. * 删除题目
  83. * @param questionId
  84. */
  85. void deleteKmtQuestion (String questionId, String userId);
  86. /**
  87. * 答案校对提交结果
  88. * @param req
  89. * @return
  90. */
  91. ResponseEntity submitAnswerProofreadResult (SubmitAnswerProofreadResultReq req);
  92. /**
  93. * 答案校对提交答案
  94. * @param request 入参
  95. */
  96. ResponseEntity answerProofreadSubmitAnswer(AnswerProofreadSubmitAnswerRequest request);
  97. /**
  98. * 查询答案校对本数
  99. * @param userId
  100. * @return
  101. */
  102. ResponseEntity teacherAnswerProofreadDetail(String userId);
  103. /**
  104. * 题目报错
  105. * @param userId
  106. * @param request
  107. * @return
  108. */
  109. ResponseEntity questionsError(String userId, QuestionRollbackRequest request);
  110. /**
  111. * 查询报错题目列表
  112. * @param req
  113. * @param userId
  114. * @return
  115. */
  116. Map<String, Object> findExerciseErrorQuestions(QuestionErrorListVo req, String userId);
  117. /**
  118. * 查询报错练习册列表
  119. * @param userId
  120. * @param bookName
  121. * @return
  122. */
  123. Map<String, Object> findErrorExerciseBooks(String userId, String bookName);
  124. /**
  125. * 查询题目的信息
  126. * @param kmtExerciseQuestions
  127. */
  128. void appendQuestionDataFromJSONFile (List<KmtExerciseQuestion> kmtExerciseQuestions);
  129. /**
  130. * 查询题目信息
  131. * @param kmtExerciseQuestions
  132. */
  133. void appendQuestionDtoDataFromJSONFile(List<ExerciseQuetionDto> kmtExerciseQuestions);
  134. /**
  135. * 往know查询出来的题目里加入题目信息
  136. * @param questions
  137. */
  138. void appendQuestionMapFromJSONFile (List<Map<String, Object>> questions);
  139. /**
  140. * 保存题目信息
  141. * @param kmtExerciseQuestions
  142. */
  143. void saveQuestionData2JSONFile (List<KmtExerciseQuestion> kmtExerciseQuestions);
  144. /**
  145. * 生成练习册json文件相对路径
  146. * @param exerciseBook
  147. * @param id
  148. * @return
  149. */
  150. String getQuestionJSONPath (KmtExerciseBook exerciseBook, String id);
  151. /**
  152. * 生成kmtjson文件相对路径
  153. * @param courseName
  154. * @param id
  155. * @return
  156. */
  157. String getKmtQuestionJSONPath (String courseName, String id);
  158. ResponseEntity updateRollbackUserId();
  159. /**
  160. * 查询打回记录
  161. * @param questionId
  162. * @return
  163. */
  164. List<ExerciseQuestionRollbacks> findQuestionRollbackRecord (String questionId);
  165. }