fuliqi
2024-07-03 526745df87b382366960df1c765b83a84d493019
src/main/resources/mapper/QuestionMapper.xml
@@ -92,18 +92,15 @@
        <foreach collection="questionIds" open="(" item="id" close=")" separator=",">#{id}</foreach>
    </select>
    <select id="selectBySubject" resultType="com.ycl.jxkg.domain.question.RandomQuestionDTO">
        SELECT
            id as questionId,question_type
        FROM
            t_question
        WHERE
            subject_id = #{subjectId}
            and question_type in
            <foreach collection="types" item="type" separator="," open="(" close=")">
                #{type}
            </foreach>
            and deleted = 0 and status = 1
    <select id="selectByDifAndSub" resultType="java.lang.Integer">
            SELECT COUNT(*) FROM t_question
            <where>
                deleted = 0 and status = 1
                <if test="subjectId!=null">and subject_id = #{subjectId}</if>
                <if test="difficult!=null">AND difficult = #{difficult}</if>
                <if test="questionType!=null">AND question_type = #{questionType}</if>
            </where>
    </select>
    <select id="getRandomQuestion" resultMap="BaseResultMap">
@@ -111,8 +108,12 @@
               *
        FROM
             t_question tq
        WHERE
              tq.subject_id = #{subjectId} AND tq.question_type = #{questionType} AND tq.deleted = 0
        <where>
            tq.deleted = 0 and tq.status = 1
            <if test="subjectId!=null">and tq.subject_id = #{subjectId}</if>
            <if test="difficult!=null">AND tq.difficult = #{difficult}</if>
            <if test="questionType!=null">AND tq.question_type = #{questionType}</if>
        </where>
        ORDER BY
                 RAND()
        LIMIT #{num}