chen 5 rokov pred
rodič
commit
61b1b61a90

+ 1 - 1
ssj-kmt-exercise-service-impl/src/main/java/com/ssj/service/kmt/kmt/service/impl/KmtExerciseQuestionDealServiceImpl.java

@@ -386,7 +386,7 @@ public class KmtExerciseQuestionDealServiceImpl implements KmtExerciseQuestionDe
     @Override
     public ResponseEntity findEditExerciseQuestions(ExerciseQuestionsEditRequest request) {
         Page page = new Page(request.getPageNo(), request.getPageSize());
-        List<ExerciseQuestionEditDto> list = kmtExerciseMapper.findEditExerciseQuestions(request.getExerciseBookId(), page);
+        List<ExerciseQuestionEditDto> list = kmtExerciseMapper.findEditExerciseQuestions(request, page);
         Map<String, String> users = new HashMap<>();
         for (ExerciseQuestionEditDto questionEditDto : list){
             String versionStr = knowledgeVersion.getVersionNameBySubjectAndVersionNum(questionEditDto.getCourseName(), questionEditDto.getVersion());

+ 11 - 0
ssj-kmt-exercise-service/src/main/java/com/ssj/service/kmt/request/rollbackai/ExerciseBooksEditRequest.java

@@ -22,6 +22,9 @@ public class ExerciseBooksEditRequest implements Serializable {
     @ApiModelProperty(name = "bookName", value = "练习册名称", required = false)
     private String  bookName;
 
+    @ApiModelProperty(name = "questionId", value = "题目id", required = false)
+    private String questionId;
+
 
     public String getSubject() {
         return subject;
@@ -62,4 +65,12 @@ public class ExerciseBooksEditRequest implements Serializable {
     public void setBookName(String bookName) {
         this.bookName = bookName;
     }
+
+    public String getQuestionId() {
+        return questionId;
+    }
+
+    public void setQuestionId(String questionId) {
+        this.questionId = questionId;
+    }
 }

+ 11 - 0
ssj-kmt-exercise-service/src/main/java/com/ssj/service/kmt/request/rollbackai/ExerciseQuestionsEditRequest.java

@@ -8,6 +8,9 @@ import java.io.Serializable;
 public class ExerciseQuestionsEditRequest implements Serializable {
     private static final long serialVersionUID = 1L;
 
+    @ApiModelProperty(name = "questionId", value = "题目id", required = false)
+    private String questionId;
+
     @ApiModelProperty(name = "exerciseBookId", value = "练习册id", required = true)
     private String  exerciseBookId;
 
@@ -40,4 +43,12 @@ public class ExerciseQuestionsEditRequest implements Serializable {
     public void setPageSize(int pageSize) {
         this.pageSize = pageSize;
     }
+
+    public String getQuestionId() {
+        return questionId;
+    }
+
+    public void setQuestionId(String questionId) {
+        this.questionId = questionId;
+    }
 }

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

@@ -19,6 +19,7 @@ import com.ssj.service.kmt.exercisesys.request.*;
 import com.ssj.service.kmt.request.UnitAndPeriodListRequest;
 import com.ssj.service.kmt.request.rollbackai.AddExerciseQuestionRequest;
 import com.ssj.service.kmt.request.rollbackai.ExerciseBooksEditRequest;
+import com.ssj.service.kmt.request.rollbackai.ExerciseQuestionsEditRequest;
 import com.ssj.service.sys.homework.vo.HomeworkExerciseBookDto;
 import org.apache.ibatis.annotations.*;
 
@@ -1224,7 +1225,7 @@ public interface KmtExerciseMapper {
     List<ExerciseBookEditDto> findEditExerciseBooks (@Param("request")ExerciseBooksEditRequest request);
 
 
-    List<ExerciseQuestionEditDto> findEditExerciseQuestions (@Param("exerciseBookId") String exerciseBookId,
+    List<ExerciseQuestionEditDto> findEditExerciseQuestions (@Param("request") ExerciseQuestionsEditRequest request,
                                     Page page);
 
     @Select("select eb.id from kmt_exercise_book eb, kmt_exercise_questions eq where eb.book_id=eq.book_id" +

+ 23 - 7
ssj-mybatis-service-impl/src/main/resources/mybatis/mapper/KmtExerciseMapper.xml

@@ -2037,19 +2037,35 @@
 
     <select id="findEditExerciseBooks" 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_rollback rb, kmt_exercise_questions eq, kmt_exercise_book eb
-        where rb.question_id=eq.id and eq.exercise_book_id=eb.id and  rb.type=2 and eb.grade=#{request.grade}
-        and eb.course_name=#{request.subject}
-        and eb.version=#{request.versionType} and eb.semester=#{request.semester}
-        <if test="request.bookName != null and request.bookName != ''">
-            and eb.book_name like concat('%',#{request.bookName},'%')
-        </if>
+        where rb.question_id=eq.id and eq.exercise_book_id=eb.id and  rb.type=2
+        <choose>
+            <when test="request.questionId != null and request.questionId != ''">
+                and eq.id=#{request.questionId}
+            </when>
+            <otherwise>
+                and eb.grade=#{request.grade}
+                and eb.course_name=#{request.subject}
+                and eb.version=#{request.versionType} and eb.semester=#{request.semester}
+                <if test="request.bookName != null and request.bookName != ''">
+                    and eb.book_name like concat('%',#{request.bookName},'%')
+                </if>
+            </otherwise>
+        </choose>
     </select>
 
     <select id="findEditExerciseQuestions" resultType="com.ssj.service.kmt.dto.exercise.ExerciseQuestionEditDto">
         select eq.id question_id, eb.book_name exercise_book_name, eb.course_name, eb.grade, eb.version, eb.semester,
         eq.deal_status, eb.book_type type, rb.create_time, rb.user_id from kmt_exercise_question_rollback rb,
         kmt_exercise_questions eq, kmt_exercise_book eb
-        where rb.question_id=eq.id and eq.exercise_book_id=eb.id and  rb.type=2 and eb.id=#{exerciseBookId}
+        where rb.question_id=eq.id and eq.exercise_book_id=eb.id and  rb.type=2
+        <choose>
+            <when test="request.questionId != null and request.questionId != ''">
+                and eq.id=#{request.getQuestionId}
+            </when>
+            <otherwise>
+                and eb.id=#{request.exerciseBookId}
+            </otherwise>
+        </choose>
         order by rb.create_time desc
     </select>
 </mapper>