exam-api/exam-admin/src/main/resources/mapper/exam/ExamRegistrationMapper.xml
2025-07-17 17:55:39 +08:00

74 lines
3.1 KiB
XML

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.yf.exam.modules.exam.mapper.ExamRegistrationMapper">
<!-- 通用查询映射结果 -->
<resultMap id="BaseResultMap" type="com.yf.exam.modules.exam.entity.ExamRegistration">
<id column="id" property="id" />
<result column="user_id" property="userId" />
<result column="user_name" property="userName" />
<result column="real_name" property="realName" />
<result column="phone" property="phone" />
<result column="exam_id" property="examId" />
<result column="title" property="title" />
<result column="email" property="email" />
<result column="address" property="address" />
<result column="education" property="education" />
<result column="graduate_school" property="graduateSchool" />
<result column="major" property="major" />
<result column="reg_type" property="regType" />
<result column="train_institution" property="trainInstitution" />
<result column="train_start_date" property="trainStartDate" />
<result column="train_end_date" property="trainEndDate" />
<result column="card_front" property="cardFront" />
<result column="card_back" property="cardBack" />
<result column="card_copy" property="cardCopy" />
<result column="photo" property="photo" />
<result column="certificate" property="certificate" />
<result column="physical_report" property="physicalReport" />
<result column="sign_picture" property="signPicture" />
<result column="reg_time" property="regTime" />
<result column="finish_state" property="finishState" />
<result column="create_time" property="createTime" />
<result column="update_time" property="updateTime" />
</resultMap>
<!-- 通用查询结果列 -->
<sql id="Base_Column_List">
id,user_id,user_name,real_name,phone,exam_id,title,email,address,education,graduate_school,major,reg_type,
train_institution,train_start_date,train_end_date,card_front,card_back,card_copy,photo,certificate,physical_report,sign_picture,
reg_time,finish_state,create_time,update_time
</sql>
<select id="getRegExamList" resultType="com.yf.exam.modules.exam.dto.response.ExamRegistrationVO">
SELECT reg.user_id as userId, reg.reg_time, reg.finish_state, ex.id as examId, ex.title, ex.content
, ex.exam_type, ex.start_date, ex.end_date, ex.start_time, ex.end_time
,ex.total_score, ex.total_time, ex.qualify_score, ex.exam_fee
FROM el_exam_registration reg
left join el_exam ex on reg.exam_id = ex.id
WHERE ex.state=0
<if test="userId!=null">
AND reg.user_id=#{userId}
</if>
<if test="finishState!=null">
AND reg.finish_state=#{finishState}
</if>
<if test="examId!=null">
AND reg.exam_id=#{examId}
</if>
order by ex.start_date, ex.start_time
</select>
<update id="updateFinishState" parameterType="com.yf.exam.modules.exam.entity.ExamRegistration">
update el_exam_registration
<trim prefix="SET" suffixOverrides=",">
<if test="finishState != null">finish_state =
#{finishState},
</if>
</trim>
where user_id = #{userId} and exam_id = #{examId}
</update>
</mapper>