<?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.thhy.secure.modules.biz.exam.mapper.ExamMapper">
|
|
<!-- 通用查询结果列 -->
|
<sql id="Base_Column_List">
|
t.exam_id as examId,
|
t.exam_name as examName,
|
t.question_count as questionCount,
|
t.qualified_score as qualifiedScore,
|
t.exam_date as examDate,
|
t.exam_type as examType,
|
t.train_id as trainId,
|
t.create_time as createTime,
|
t.update_time as updateTime,
|
t.create_user as createUser,
|
t.update_user as updateUser,
|
t.is_use as isUse,
|
t.company_id as companyId
|
</sql>
|
|
<sql id="condition_query">
|
<where>
|
<trim suffixOverrides=" AND ">
|
<if test="examName!=null and examName!=''">
|
t.exam_name = #{examName} AND
|
</if>
|
<if test="questionCount!=null">
|
t.question_count = #{questionCount} AND
|
</if>
|
<if test="qualifiedScore!=null">
|
t.qualified_score = #{qualifiedScore} AND
|
</if>
|
<if test="examDate!=null">
|
t.exam_date = #{examDate} AND
|
</if>
|
<if test="examType!=null and examType!=''">
|
t.exam_type = #{examType} AND
|
</if>
|
<if test="trainId!=null">
|
t.train_id = #{trainId} AND
|
</if>
|
<if test="createTime!=null">
|
t.create_time = #{createTime} AND
|
</if>
|
<if test="updateTime!=null">
|
t.update_time = #{updateTime} AND
|
</if>
|
<if test="createUser!=null and createUser!=''">
|
t.create_user = #{createUser} AND
|
</if>
|
<if test="updateUser!=null and updateUser!=''">
|
t.update_user = #{updateUser} AND
|
</if>
|
<if test="isUse!=null">
|
t.is_use = #{isUse} AND
|
</if>
|
<if test="companyId!=null and companyId!=''">
|
t.company_id = #{companyId} AND
|
</if>
|
</trim>
|
</where>
|
</sql>
|
|
<select id="queryById" resultType="com.thhy.secure.modules.biz.exam.entity.Exam">
|
select <include refid="Base_Column_List" />
|
from t_exam t
|
where t.exam_id=#{examId}
|
</select>
|
|
<select id="queryVersionById" resultType="integer">
|
select version from t_exam
|
where exam_id=#{examId}
|
</select>
|
|
<!--查询列表-->
|
<select id="findList" resultType="com.thhy.secure.modules.biz.exam.entity.ExamListVo">
|
SELECT
|
t.exam_id as examId,t.exam_name as examName,t.exam_date as examDate,
|
t.exam_type as examType,t.train_id as trainId,
|
t.question_count as questionCount,
|
t.qualified_score as qualifiedScore,
|
(select Count(DISTINCT user_id) as count from t_exam_record where exam_id = t.exam_id and is_finish=1) as userCount
|
from t_exam t
|
<where>
|
<trim suffixOverrides=" AND ">
|
t.is_use = 1 AND t.company_id = #{companyId} AND
|
<if test="examName!=null and examName!=''">
|
t.exam_name LIKE concat('%',#{examName},'%') AND
|
</if>
|
<if test="startDay!=null">
|
t.exam_date >= #{startDay} AND
|
</if>
|
<if test="endDay!=null">
|
t.exam_date <= #{endDay} AND
|
</if>
|
</trim>
|
</where>
|
order by t.create_time desc
|
</select>
|
|
<!--小程序查询列表-->
|
<select id="miniList" resultType="com.thhy.secure.modules.biz.exam.entity.ExamListVo">
|
SELECT DISTINCT
|
t.exam_id as examId,t.exam_name as examName,t.exam_date as examDate,
|
t.exam_type as examType,t.train_id as trainId,
|
t.question_count as questionCount,
|
t.qualified_score as qualifiedScore,
|
t.create_time as createTime,
|
(select Count(DISTINCT user_id) as count from t_exam_record where exam_id = t.exam_id and is_finish=1) as userCount
|
from t_exam t
|
left join t_secure_train st on st.secure_id = t.train_id
|
left join t_secure_group tsg on tsg.secure_id = st.secure_id
|
left join sys_plat_position_user ppu on ppu.position_id = tsg.group_id
|
<where>
|
<trim suffixOverrides=" AND ">
|
t.is_use = 1 AND t.company_id = #{companyId} AND
|
<if test="userId != null and userId !=''">
|
ppu.user_id = #{userId} AND
|
</if>
|
<if test="examName!=null and examName!=''">
|
t.exam_name LIKE concat('%',#{examName},'%') AND
|
</if>
|
<if test="startDay!=null">
|
t.exam_date >= #{startDay} AND
|
</if>
|
<if test="endDay!=null">
|
t.exam_date <= #{endDay} AND
|
</if>
|
</trim>
|
</where>
|
order by t.create_time desc
|
</select>
|
|
<select id="examList" resultType="com.thhy.secure.modules.biz.exam.entity.ExamSampleVo">
|
SELECT
|
t.exam_id as examId,t.exam_name as examName,t.exam_date as examDate
|
from t_exam t
|
<where>
|
<trim suffixOverrides=" AND ">
|
t.is_use = 1 AND t.company_id = #{companyId} AND
|
<if test="examName!=null and examName!=''">
|
t.exam_name LIKE concat('%',#{examName},'%') AND
|
</if>
|
<if test="startDay!=null">
|
t.exam_date >= #{startDay} AND
|
</if>
|
<if test="endDay!=null">
|
t.exam_date <= #{endDay} AND
|
</if>
|
</trim>
|
</where>
|
order by t.create_time desc
|
</select>
|
|
<!--查询列表-->
|
<select id="findAll" resultType="com.thhy.secure.modules.biz.exam.entity.Exam">
|
SELECT
|
<include refid="Base_Column_List" />
|
from t_exam t
|
</select>
|
|
<!--插入操作-->
|
<insert id="insert">
|
insert into t_exam
|
<trim prefix="(" suffix=")" suffixOverrides="," >
|
<if test="examId != null">
|
exam_id,
|
</if>
|
<if test="examName != null">
|
exam_name,
|
</if>
|
<if test="questionCount != null">
|
question_count,
|
</if>
|
<if test="qualifiedScore != null">
|
qualified_score,
|
</if>
|
<if test="examDate != null">
|
exam_date,
|
</if>
|
<if test="examType != null">
|
exam_type,
|
</if>
|
<if test="trainId != null">
|
train_id,
|
</if>
|
<if test="createTime != null">
|
create_time,
|
</if>
|
<if test="updateTime != null">
|
update_time,
|
</if>
|
<if test="createUser != null">
|
create_user,
|
</if>
|
<if test="updateUser != null">
|
update_user,
|
</if>
|
<if test="isUse != null">
|
is_use,
|
</if>
|
<if test="companyId != null">
|
company_id,
|
</if>
|
</trim>
|
|
<trim prefix="values (" suffix=")" suffixOverrides="," >
|
<if test="examId != null">
|
#{examId},
|
</if>
|
<if test="examName != null">
|
#{examName},
|
</if>
|
<if test="questionCount != null">
|
#{questionCount},
|
</if>
|
<if test="qualifiedScore != null">
|
#{qualifiedScore},
|
</if>
|
<if test="examDate != null">
|
#{examDate},
|
</if>
|
<if test="examType != null">
|
#{examType},
|
</if>
|
<if test="trainId != null">
|
#{trainId},
|
</if>
|
<if test="createTime != null">
|
#{createTime},
|
</if>
|
<if test="updateTime != null">
|
#{updateTime},
|
</if>
|
<if test="createUser != null">
|
#{createUser},
|
</if>
|
<if test="updateUser != null">
|
#{updateUser},
|
</if>
|
<if test="isUse != null">
|
#{isUse},
|
</if>
|
<if test="companyId != null">
|
#{companyId},
|
</if>
|
</trim>
|
</insert>
|
|
|
<!--更新操作-->
|
<update id="update">
|
update t_exam
|
<set>
|
<if test="examName != null">
|
exam_name=#{examName},
|
</if>
|
<if test="questionCount != null">
|
question_count=#{questionCount},
|
</if>
|
<if test="qualifiedScore != null">
|
qualified_score=#{qualifiedScore},
|
</if>
|
<if test="examDate != null">
|
exam_date=#{examDate},
|
</if>
|
<if test="examType != null">
|
exam_type=#{examType},
|
</if>
|
<if test="trainId != null">
|
train_id=#{trainId},
|
</if>
|
<if test="createTime != null">
|
create_time=#{createTime},
|
</if>
|
<if test="updateTime != null">
|
update_time=#{updateTime},
|
</if>
|
<if test="createUser != null">
|
create_user=#{createUser},
|
</if>
|
<if test="updateUser != null">
|
update_user=#{updateUser},
|
</if>
|
<if test="isUse != null">
|
is_use=#{isUse},
|
</if>
|
<if test="companyId != null">
|
company_id=#{companyId},
|
</if>
|
</set>
|
where exam_id=#{examId}
|
</update>
|
|
<!--逻辑删除-->
|
<update id="deletelogic">
|
update t_exam
|
SET is_use = 0
|
where exam_id=#{examId}
|
</update>
|
|
<!--根据ID删除-->
|
<delete id="deleteById">
|
delete from t_exam
|
where exam_id=#{examId}
|
</delete>
|
|
<select id="examReportList" resultType="com.thhy.secure.modules.biz.exam.entity.ExamSampleListVo">
|
select e.exam_id as examId,e.exam_name as examName
|
from t_exam e
|
<where>
|
e.company_id = #{companyId} AND
|
<trim suffixOverrides=" AND ">
|
e.exam_name LIKE concat('%',#{examName},'%')
|
</trim>
|
</where>
|
</select>
|
|
<select id="queryPlatUser" resultType="string">
|
select plat_id from sys_users where user_id=#{userId}
|
</select>
|
|
</mapper>
|