ソースを参照

练习册报错页面修改

chen 5 年 前
コミット
f9270f9825

+ 17 - 1
ssj-kmt-exercise-api/src/main/java/com/ssj/aijia/kmt/exercise/controller/KmtExerciseController.java

@@ -576,7 +576,7 @@ public class KmtExerciseController extends BaseController {
     @RequestMapping(value = "/findExerciseErrorQuestions", method = RequestMethod.POST)
     @ApiOperation(value = "报错明细", httpMethod = "POST", notes = "报错明细")
     public ResponseEntity findExerciseErrorQuestions(@RequestParam(name = "accessToken") String accessToken,
-                                         @RequestBody PageReq request) {
+                                         @RequestBody QuestionErrorListVo request) {
         ResponseEntity responseEntity = new ResponseEntity();
         try {
             String userId = tokenManager.getUserId(accessToken);
@@ -588,6 +588,22 @@ public class KmtExerciseController extends BaseController {
         return responseEntity;
     }
 
+    @RequestMapping(value = "/findErrorExerciseBooks", method = RequestMethod.POST)
+    @ApiOperation(value = "练习册报错页面查询练习册", httpMethod = "POST", notes = "练习册报错页面查询练习册")
+    public ResponseEntity findErrorExerciseBooks(@RequestParam(name = "accessToken") String accessToken,
+                                                     @RequestBody ExerciseBooksEditRequest request) {
+        ResponseEntity responseEntity = new ResponseEntity();
+        try {
+            String userId = tokenManager.getUserId(accessToken);
+            responseEntity.success(kmtExerciseService.findErrorExerciseBooks(userId, request.getBookName()), "成功");
+        } catch (Exception e) {
+            logger.error("异常", e);
+            responseEntity.failure(ResponseConstant.CODE_500, "系统繁忙,请稍后重试");
+        }
+        return responseEntity;
+    }
+
+
     @IgnoreSecurity
     @RequestMapping(value = "updateRollbackUserId",method = RequestMethod.POST)
     @ApiOperation(value = "更新打回数据",httpMethod = "POST",notes = "更新打回数据")

+ 11 - 2
ssj-kmt-exercise-service-impl/src/main/java/com/ssj/service/kmt/kmt/service/impl/KmtExerciseServiceImpl.java

@@ -20,6 +20,7 @@ import com.ssj.framework.weixin.util.DateUtil;
 import com.ssj.kmt.utils.JSONFileUtil;
 import com.ssj.service.conch.common.request.PageReq;
 import com.ssj.service.kmt.dto.*;
+import com.ssj.service.kmt.dto.exercise.ExerciseBookEditDto;
 import com.ssj.service.kmt.dto.exercise.ExerciseQuestionRollbacks;
 import com.ssj.service.kmt.exercise.request.SubmitAnswerProofreadResultReq;
 import com.ssj.service.kmt.exercisesys.enums.ProofreadStatusEnum;
@@ -1613,10 +1614,10 @@ public class KmtExerciseServiceImpl implements KmtExerciseService {
     }
 
     @Override
-    public Map<String, Object> findExerciseErrorQuestions(PageReq req, String userId) {
+    public Map<String, Object> findExerciseErrorQuestions(QuestionErrorListVo req, String userId) {
         Map<String, Object> data = new HashMap<>();
         Page page = new Page(req.getPageNo(), req.getPageSize());
-        List<KmtExerciseQuestionErrors> questionErrors = kmtExerciseMapper.findKmtExerciseQuestionByErrorUserId(userId, page);
+        List<KmtExerciseQuestionErrors> questionErrors = kmtExerciseMapper.findKmtExerciseQuestionByErrorUserId(userId, req.getExerciseBookId(),  page);
         if (CollectionUtils.isNotEmpty(questionErrors)){
             List<String> userIds = this.findUserIdsInExerciseQuestionList(questionErrors);
             List<TbLibManager> users = null;
@@ -1653,6 +1654,14 @@ public class KmtExerciseServiceImpl implements KmtExerciseService {
         return data;
     }
 
+    @Override
+    public Map<String, Object> findErrorExerciseBooks (String userId, String bookName){
+        List<ExerciseBookEditDto> books = kmtExerciseMapper.findErrorExerciseBooks(bookName, userId);
+        Map<String, Object> data = new HashMap<>();
+        data.put("books", books);
+        return data;
+    }
+
     /**
      * 从题目列表中提取四个用户的id
      * @param list

+ 19 - 0
ssj-kmt-exercise-service/src/main/java/com/ssj/service/kmt/request/QuestionErrorListVo.java

@@ -0,0 +1,19 @@
+package com.ssj.service.kmt.request;
+
+import com.ssj.service.conch.common.request.PageReq;
+import io.swagger.annotations.ApiModelProperty;
+
+public class QuestionErrorListVo extends PageReq {
+    private final static long serialVersionUID = 1L;
+
+    @ApiModelProperty(name = "exerciseBookId", value = "练习册id", required = true)
+    private String exerciseBookId;
+
+    public String getExerciseBookId() {
+        return exerciseBookId;
+    }
+
+    public void setExerciseBookId(String exerciseBookId) {
+        this.exerciseBookId = exerciseBookId;
+    }
+}

+ 9 - 1
ssj-kmt-exercise-service/src/main/java/com/ssj/service/kmt/service/KmtExerciseService.java

@@ -136,7 +136,15 @@ public interface KmtExerciseService {
      * @param userId
      * @return
      */
-    Map<String, Object> findExerciseErrorQuestions(PageReq req, String userId);
+    Map<String, Object> findExerciseErrorQuestions(QuestionErrorListVo req, String userId);
+
+    /**
+     * 查询报错练习册列表
+     * @param userId
+     * @param bookName
+     * @return
+     */
+    Map<String, Object> findErrorExerciseBooks(String userId, String bookName);
 
     /**
      * 查询题目的信息

+ 6 - 1
ssj-mybatis-service-impl/src/main/java/com/ssj/service/mapper/KmtExerciseMapper.java

@@ -881,7 +881,9 @@ public interface KmtExerciseMapper {
      * @param page
      * @return
      */
-    List<KmtExerciseQuestionErrors> findKmtExerciseQuestionByErrorUserId (@Param("userId") String userId, Page page);
+    List<KmtExerciseQuestionErrors> findKmtExerciseQuestionByErrorUserId (@Param("userId") String userId,
+                                                                          @Param("exerciseBookId") String exerciseBookId,
+                                                                          Page page);
 
     /**
      * 计算练习册老师的角色下的错误题数
@@ -1256,4 +1258,7 @@ public interface KmtExerciseMapper {
 
     @Update("update kmt_exercise_book set had_auditing = 0 where id=#{exerciseBookId}")
     int updateExerciseBookNotAuditing (@Param("exerciseBookId") String exerciseBookId);
+
+    List<ExerciseBookEditDto> findErrorExerciseBooks(@Param("bookName") String bookName,
+                                                     @Param("userId") String userId);
 }

+ 11 - 1
ssj-mybatis-service-impl/src/main/resources/mybatis/mapper/KmtExerciseMapper.xml

@@ -1594,7 +1594,9 @@
         and error_user_auth=#{beType}
     </select>
     <select id="findKmtExerciseQuestionByErrorUserId" resultType="com.ssj.bean.kmt.kmt.domain.KmtExerciseQuestionErrors">
-        select * from kmt_exercise_question_errors where error_user_id=#{userId} order by create_time desc
+        select * from kmt_exercise_question_errors where error_user_id=#{userId}
+        and exercise_book_id=#{exerciseBookId}
+        order by create_time desc
     </select>
 
     <select id="countQuestionErrorCountByExerciseBookId" resultType="java.lang.Integer">
@@ -2069,4 +2071,12 @@
         </choose>
         order by rb.create_time desc
     </select>
+
+    <select id="findErrorExerciseBooks" resultType="com.ssj.service.kmt.dto.exercise.ExerciseBookEditDto">
+        select distinct eb.id exercise_book_id, eb.book_name exercise_book_name from kmt_exercise_question_errors qe, kmt_exercise_book eb
+        where qe.exercise_book_id = eb.id and error_user_id=#{userId}
+        <if test="bookName != null and bookName != ''">
+            and eb.book_name like concat('%',#{bookName},'%')
+        </if>
+    </select>
 </mapper>