From 05d651ca0168025ec451702f1df88dab4f2a9559 Mon Sep 17 00:00:00 2001
From: 龚焕茏 <2842157468@qq.com>
Date: 星期五, 10 五月 2024 17:58:19 +0800
Subject: [PATCH] feat:新增补考按钮
---
src/main/resources/mapper/QuestionMapper.xml | 67 +++++++++++++++++++++++++++++----
1 files changed, 59 insertions(+), 8 deletions(-)
diff --git a/src/main/resources/mapper/QuestionMapper.xml b/src/main/resources/mapper/QuestionMapper.xml
index cd42200..fe253d0 100644
--- a/src/main/resources/mapper/QuestionMapper.xml
+++ b/src/main/resources/mapper/QuestionMapper.xml
@@ -180,26 +180,36 @@
<select id="page" resultMap="BaseResultMap" parameterType="com.mindskip.xzs.viewmodel.admin.question.QuestionPageRequestVM">
SELECT
- <include refid="Base_Column_List"/>
- FROM t_question
+ q.*
+ FROM t_question q
+ LEFT JOIN t_question_subject qs on q.id = qs.question_id
+ LEFT JOIN t_text_content t on q.info_text_content_id = t.id
<where>
- and deleted=0
+ and q.deleted=0 and qs.deleted = 0
<if test="id != null ">
- and id= #{id}
+ and q.id= #{id}
</if>
<if test="level != null ">
- and grade_level= #{level}
+ and q.grade_level= #{level}
</if>
<if test="subjectId != null ">
- and subject_id= #{subjectId}
+ and qs.subject_id in
+ <foreach item="subjectId" collection="subjectId" open="(" separator=","
+ close=")">
+ #{subjectId}
+ </foreach>
</if>
<if test="questionType != null ">
- and question_type= #{questionType}
+ and q.question_type= #{questionType}
+ </if>
+ <if test="questionName != null and questionName != ''">
+ and t.content->'$."titleContent"' LIKE concat('%',#{questionName},'%')
</if>
<if test="content != null">
- and info_text_content_id in (SELECT id FROM t_text_content WHERE content like concat('%',#{content},'%') )
+ and q.info_text_content_id in (SELECT id FROM t_text_content WHERE content like concat('%',#{content},'%') )
</if>
</where>
+ group by q.id
</select>
@@ -228,4 +238,45 @@
GROUP BY create_time
</select>
+ <select id="getAll" resultMap="BaseResultMap">
+ SELECT <include refid="Base_Column_List"/>
+ from t_question where deleted=0
+ </select>
+
+ <select id="export" resultMap="exportMap">
+ SELECT
+ q.*, ttc.content
+ FROM
+ t_question q
+ INNER JOIN t_text_content ttc on q.info_text_content_id = ttc.id AND q.deleted = 0
+ <where>
+ <if test="query.questionType != null">
+ q.question_type = #{query.questionType}
+ </if>
+ <if test="query.start != null and query.end != null">
+ q.create_time between #{query.start} and #{query.end}
+ </if>
+ </where>
+ </select>
+
+ <resultMap id="exportMap" type="com.mindskip.xzs.vo.QuestionImportVO">
+ <result column="question_type" property="questionType" />
+ <result column="title" property="title" />
+ <result column="analyze" property="analyze" />
+ <result column="score" property="score" />
+ <result column="difficult" property="difficult" />
+ <result column="content" property="questionContent" />
+ <result column="score" property="score" />
+ <result column="correct" property="correct" />
+ <collection property="subjectList" column="id" ofType="string" select="selectSubjects"/>
+ </resultMap>
+
+ <select id="selectSubjects" resultType="string">
+ SELECT
+ ts.name
+ FROM
+ t_question_subject tqs
+ INNER JOIN t_subject ts ON tqs.subject_id = ts.id AND tqs.question_id = #{id} AND tqs.deleted = 0 AND ts.deleted = 0
+ </select>
+
</mapper>
--
Gitblit v1.8.0