<?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.zehong.system.mapper.TTrainUserCourseMapper"> <resultMap type="TTrainUserCourse" id="TTrainUserCourseResult"> <result property="userCourseId" column="user_course_id" /> <result property="userId" column="user_id" /> <result property="courseId" column="course_id" /> <result property="state" column="state" /> <result property="personnelType" column="personnel_type" /> <result property="examinationTime" column="examination_time" /> <result property="examinationResult" column="examination_result" /> <result property="createTime" column="create_time" /> <result property="createUser" column="create_user" /> <result property="staffName" column="staff_name"/> <result property="deptName" column="dept_name"/> <result property="finishDuration" column="finish_duration"/> <result property="trainState" column="train_state"/> <result property="states" column="states"/> </resultMap> <sql id="selectTTrainUserCourseVo"> select user_course_id, user_id, course_id, state, examination_time, personnel_type,examination_result, create_time, create_user,finish_duration,train_state from t_train_user_course </sql> <select id="selectTTrainUserCourseList" parameterType="TTrainUserCourse" resultMap="TTrainUserCourseResult"> <include refid="selectTTrainUserCourseVo"/> <where> <if test="userId != null "> and user_id = #{userId}</if> <if test="courseId != null "> and course_id = #{courseId}</if> <if test="state != null "> and state = #{state}</if> <if test="examinationTime != null "> and examination_time = #{examinationTime}</if> <if test="examinationResult != null "> and examination_result = #{examinationResult}</if> <if test="createUser != null and createUser != ''"> and create_user = #{createUser}</if> </where> </select> <select id="selectTTrainUserCourseById" parameterType="Long" resultMap="TTrainUserCourseResult"> <include refid="selectTTrainUserCourseVo"/> where user_course_id = #{userCourseId} </select> <insert id="insertTTrainUserCourse" parameterType="TTrainUserCourse" useGeneratedKeys="true" keyProperty="userCourseId"> insert into t_train_user_course <trim prefix="(" suffix=")" suffixOverrides=","> <if test="userId != null">user_id,</if> <if test="courseId != null">course_id,</if> <if test="state != null">state,</if> <if test="personnelType != null">personnel_type,</if> <if test="examinationTime != null">examination_time,</if> <if test="examinationResult != null">examination_result,</if> <if test="createTime != null">create_time,</if> <if test="createUser != null">create_user,</if> <if test="finishDuration != null">finish_duration,</if> <if test="trainState != null">train_state,</if> </trim> <trim prefix="values (" suffix=")" suffixOverrides=","> <if test="userId != null">#{userId},</if> <if test="courseId != null">#{courseId},</if> <if test="state != null">#{state},</if> <if test="personnelType != null">#{personnelType},</if> <if test="examinationTime != null">#{examinationTime},</if> <if test="examinationResult != null">#{examinationResult},</if> <if test="createTime != null">#{createTime},</if> <if test="createUser != null">#{createUser},</if> <if test="finishDuration != null">#{finishDuration},</if> <if test="trainState != null">#{trainState},</if> </trim> </insert> <update id="updateTTrainUserCourse" parameterType="TTrainUserCourse"> update t_train_user_course <trim prefix="SET" suffixOverrides=","> <if test="userId != null">user_id = #{userId},</if> <if test="courseId != null">course_id = #{courseId},</if> <if test="state != null">state = #{state},</if> <if test="personnelType != null">personnel_type = #{personnelType},</if> <if test="examinationTime != null">examination_time = #{examinationTime},</if> <if test="examinationResult != null">examination_result = #{examinationResult},</if> <if test="createTime != null">create_time = #{createTime},</if> <if test="createUser != null">create_user = #{createUser},</if> <if test="finishDuration != null">finish_duration = #{finishDuration},</if> <if test="trainState != null">train_state = #{trainState},</if> </trim> where user_course_id = #{userCourseId} </update> <delete id="deleteTTrainUserCourseById" parameterType="Long"> delete from t_train_user_course where user_course_id = #{userCourseId} </delete> <delete id="deleteTTrainUserCourseByIds" parameterType="String"> delete from t_train_user_course where user_course_id in <foreach item="userCourseId" collection="array" open="(" separator="," close=")"> #{userCourseId} </foreach> </delete> <select id="testPersonDetailByCourseId" parameterType="Long" resultMap="TTrainUserCourseResult"> SELECT sys.staff_name, d.dept_name, train.examination_result, train.state, train.examination_time FROM t_train_user_course train LEFT JOIN sys_user sys ON train.user_id = sys.user_id left join sys_dept d on sys.dept_id = d.dept_id WHERE train.course_id = #{courseId} </select> <!--导出所有考试详细数据项--> <select id="examDetails" parameterType="Long" resultMap="TTrainUserCourseResult"> SELECT sys.staff_name, d.dept_name, train.examination_result, train.examination_result, CASE WHEN train.state = 0 THEN '未考试' WHEN train.state = 1 THEN '未通过' WHEN train.state = 2 THEN '已通过' END AS states , train.examination_time FROM t_train_user_course train LEFT JOIN sys_user sys ON train.user_id = sys.user_id left join sys_dept d on sys.dept_id = d.dept_id WHERE train.course_id = #{courseId} </select> </mapper>