From f0cbe681cb28df22952fb8a6420424a7385ac9db Mon Sep 17 00:00:00 2001 From: xiangpei <xiangpei@timesnew.cn> Date: 星期五, 10 五月 2024 09:30:25 +0800 Subject: [PATCH] 练习删除 --- 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