|
|
|
@ -2,17 +2,17 @@
|
|
|
|
|
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
|
|
|
|
<mapper namespace="com.sztzjy.financial_bigdata.mapper.StuTheoryRecordMapper">
|
|
|
|
|
<resultMap id="BaseResultMap" type="com.sztzjy.financial_bigdata.entity.StuTheoryRecord">
|
|
|
|
|
<id column="user_id" jdbcType="VARCHAR" property="userId" />
|
|
|
|
|
<result column="school_id" jdbcType="VARCHAR" property="schoolId" />
|
|
|
|
|
<result column="class_id" jdbcType="VARCHAR" property="classId" />
|
|
|
|
|
<result column="name" jdbcType="VARCHAR" property="name" />
|
|
|
|
|
<result column="student_id" jdbcType="VARCHAR" property="studentId" />
|
|
|
|
|
<result column="exam_count" jdbcType="INTEGER" property="examCount" />
|
|
|
|
|
<result column="highest_score" jdbcType="DECIMAL" property="highestScore" />
|
|
|
|
|
<result column="lowest_score" jdbcType="DECIMAL" property="lowestScore" />
|
|
|
|
|
<result column="total_duration" jdbcType="INTEGER" property="totalDuration" />
|
|
|
|
|
<result column="average_score" jdbcType="DECIMAL" property="averageScore" />
|
|
|
|
|
<result column="system_owner" jdbcType="VARCHAR" property="systemOwner" />
|
|
|
|
|
<id column="user_id" jdbcType="VARCHAR" property="userId"/>
|
|
|
|
|
<result column="school_id" jdbcType="VARCHAR" property="schoolId"/>
|
|
|
|
|
<result column="class_id" jdbcType="VARCHAR" property="classId"/>
|
|
|
|
|
<result column="name" jdbcType="VARCHAR" property="name"/>
|
|
|
|
|
<result column="student_id" jdbcType="VARCHAR" property="studentId"/>
|
|
|
|
|
<result column="exam_count" jdbcType="INTEGER" property="examCount"/>
|
|
|
|
|
<result column="highest_score" jdbcType="DECIMAL" property="highestScore"/>
|
|
|
|
|
<result column="lowest_score" jdbcType="DECIMAL" property="lowestScore"/>
|
|
|
|
|
<result column="total_duration" jdbcType="INTEGER" property="totalDuration"/>
|
|
|
|
|
<result column="average_score" jdbcType="DECIMAL" property="averageScore"/>
|
|
|
|
|
<result column="system_owner" jdbcType="VARCHAR" property="systemOwner"/>
|
|
|
|
|
</resultMap>
|
|
|
|
|
<sql id="Example_Where_Clause">
|
|
|
|
|
<where>
|
|
|
|
@ -32,7 +32,8 @@
|
|
|
|
|
</when>
|
|
|
|
|
<when test="criterion.listValue">
|
|
|
|
|
and ${criterion.condition}
|
|
|
|
|
<foreach close=")" collection="criterion.value" item="listItem" open="(" separator=",">
|
|
|
|
|
<foreach close=")" collection="criterion.value" item="listItem" open="("
|
|
|
|
|
separator=",">
|
|
|
|
|
#{listItem}
|
|
|
|
|
</foreach>
|
|
|
|
|
</when>
|
|
|
|
@ -61,7 +62,8 @@
|
|
|
|
|
</when>
|
|
|
|
|
<when test="criterion.listValue">
|
|
|
|
|
and ${criterion.condition}
|
|
|
|
|
<foreach close=")" collection="criterion.value" item="listItem" open="(" separator=",">
|
|
|
|
|
<foreach close=")" collection="criterion.value" item="listItem" open="("
|
|
|
|
|
separator=",">
|
|
|
|
|
#{listItem}
|
|
|
|
|
</foreach>
|
|
|
|
|
</when>
|
|
|
|
@ -73,18 +75,20 @@
|
|
|
|
|
</where>
|
|
|
|
|
</sql>
|
|
|
|
|
<sql id="Base_Column_List">
|
|
|
|
|
user_id, school_id, class_id, name, student_id, exam_count, highest_score, lowest_score,
|
|
|
|
|
user_id
|
|
|
|
|
, school_id, class_id, name, student_id, exam_count, highest_score, lowest_score,
|
|
|
|
|
total_duration, average_score, system_owner
|
|
|
|
|
</sql>
|
|
|
|
|
<select id="selectByExample" parameterType="com.sztzjy.financial_bigdata.entity.StuTheoryRecordExample" resultMap="BaseResultMap">
|
|
|
|
|
<select id="selectByExample" parameterType="com.sztzjy.financial_bigdata.entity.StuTheoryRecordExample"
|
|
|
|
|
resultMap="BaseResultMap">
|
|
|
|
|
select
|
|
|
|
|
<if test="distinct">
|
|
|
|
|
distinct
|
|
|
|
|
</if>
|
|
|
|
|
<include refid="Base_Column_List" />
|
|
|
|
|
<include refid="Base_Column_List"/>
|
|
|
|
|
from stu_theory_record
|
|
|
|
|
<if test="_parameter != null">
|
|
|
|
|
<include refid="Example_Where_Clause" />
|
|
|
|
|
<include refid="Example_Where_Clause"/>
|
|
|
|
|
</if>
|
|
|
|
|
<if test="orderByClause != null">
|
|
|
|
|
order by ${orderByClause}
|
|
|
|
@ -92,18 +96,19 @@
|
|
|
|
|
</select>
|
|
|
|
|
<select id="selectByPrimaryKey" parameterType="java.lang.String" resultMap="BaseResultMap">
|
|
|
|
|
select
|
|
|
|
|
<include refid="Base_Column_List" />
|
|
|
|
|
<include refid="Base_Column_List"/>
|
|
|
|
|
from stu_theory_record
|
|
|
|
|
where user_id = #{userId,jdbcType=VARCHAR}
|
|
|
|
|
</select>
|
|
|
|
|
<delete id="deleteByPrimaryKey" parameterType="java.lang.String">
|
|
|
|
|
delete from stu_theory_record
|
|
|
|
|
delete
|
|
|
|
|
from stu_theory_record
|
|
|
|
|
where user_id = #{userId,jdbcType=VARCHAR}
|
|
|
|
|
</delete>
|
|
|
|
|
<delete id="deleteByExample" parameterType="com.sztzjy.financial_bigdata.entity.StuTheoryRecordExample">
|
|
|
|
|
delete from stu_theory_record
|
|
|
|
|
<if test="_parameter != null">
|
|
|
|
|
<include refid="Example_Where_Clause" />
|
|
|
|
|
<include refid="Example_Where_Clause"/>
|
|
|
|
|
</if>
|
|
|
|
|
</delete>
|
|
|
|
|
<insert id="insert" parameterType="com.sztzjy.financial_bigdata.entity.StuTheoryRecord">
|
|
|
|
@ -189,10 +194,11 @@
|
|
|
|
|
</if>
|
|
|
|
|
</trim>
|
|
|
|
|
</insert>
|
|
|
|
|
<select id="countByExample" parameterType="com.sztzjy.financial_bigdata.entity.StuTheoryRecordExample" resultType="java.lang.Long">
|
|
|
|
|
<select id="countByExample" parameterType="com.sztzjy.financial_bigdata.entity.StuTheoryRecordExample"
|
|
|
|
|
resultType="java.lang.Long">
|
|
|
|
|
select count(*) from stu_theory_record
|
|
|
|
|
<if test="_parameter != null">
|
|
|
|
|
<include refid="Example_Where_Clause" />
|
|
|
|
|
<include refid="Example_Where_Clause"/>
|
|
|
|
|
</if>
|
|
|
|
|
</select>
|
|
|
|
|
<update id="updateByExampleSelective" parameterType="map">
|
|
|
|
@ -233,7 +239,7 @@
|
|
|
|
|
</if>
|
|
|
|
|
</set>
|
|
|
|
|
<if test="_parameter != null">
|
|
|
|
|
<include refid="Update_By_Example_Where_Clause" />
|
|
|
|
|
<include refid="Update_By_Example_Where_Clause"/>
|
|
|
|
|
</if>
|
|
|
|
|
</update>
|
|
|
|
|
<update id="updateByExample" parameterType="map">
|
|
|
|
@ -250,7 +256,7 @@
|
|
|
|
|
average_score = #{record.averageScore,jdbcType=DECIMAL},
|
|
|
|
|
system_owner = #{record.systemOwner,jdbcType=VARCHAR}
|
|
|
|
|
<if test="_parameter != null">
|
|
|
|
|
<include refid="Update_By_Example_Where_Clause" />
|
|
|
|
|
<include refid="Update_By_Example_Where_Clause"/>
|
|
|
|
|
</if>
|
|
|
|
|
</update>
|
|
|
|
|
<update id="updateByPrimaryKeySelective" parameterType="com.sztzjy.financial_bigdata.entity.StuTheoryRecord">
|
|
|
|
@ -305,14 +311,18 @@
|
|
|
|
|
</update>
|
|
|
|
|
|
|
|
|
|
<resultMap id="DtoMap" type="com.sztzjy.financial_bigdata.entity.stu_dto.StuTheoryIndexInfoDto">
|
|
|
|
|
<result column="score" jdbcType="DECIMAL" property="lastTaskScore" />
|
|
|
|
|
<result column="total_duration" jdbcType="INTEGER" property="theoryTotalDuration" />
|
|
|
|
|
<result column="exam_count" jdbcType="INTEGER" property="theoryNum" />
|
|
|
|
|
<result column="rank" jdbcType="INTEGER" property="theoryLastRank" />
|
|
|
|
|
<result column="score" jdbcType="DECIMAL" property="lastTaskScore"/>
|
|
|
|
|
<result column="total_duration" jdbcType="INTEGER" property="theoryTotalDuration"/>
|
|
|
|
|
<result column="exam_count" jdbcType="INTEGER" property="theoryNum"/>
|
|
|
|
|
<result column="rank" jdbcType="INTEGER" property="theoryLastRank"/>
|
|
|
|
|
</resultMap>
|
|
|
|
|
|
|
|
|
|
<select id="selectTheoryInfo" parameterType="com.sztzjy.financial_bigdata.entity.stu_dto.StuTheoryIndexInfoDto" resultMap="DtoMap">
|
|
|
|
|
SELECT ste.score, str.total_duration,str.exam_count, (
|
|
|
|
|
<select id="selectTheoryInfo" parameterType="com.sztzjy.financial_bigdata.entity.stu_dto.StuTheoryIndexInfoDto"
|
|
|
|
|
resultMap="DtoMap">
|
|
|
|
|
SELECT ste.score,
|
|
|
|
|
str.total_duration,
|
|
|
|
|
str.exam_count,
|
|
|
|
|
(
|
|
|
|
|
SELECT COUNT(*) AS `rank`
|
|
|
|
|
FROM stu_theory_exam
|
|
|
|
|
WHERE accuracy >= (
|
|
|
|
@ -320,11 +330,11 @@
|
|
|
|
|
FROM stu_theory_exam
|
|
|
|
|
WHERE user_id = 4
|
|
|
|
|
ORDER BY exam_time DESC
|
|
|
|
|
LIMIT 1
|
|
|
|
|
)
|
|
|
|
|
LIMIT 1 )
|
|
|
|
|
) AS `rank`
|
|
|
|
|
FROM stu_theory_exam ste
|
|
|
|
|
JOIN stu_theory_record str ON ste.user_id = str.user_id
|
|
|
|
|
JOIN stu_theory_record str
|
|
|
|
|
ON ste.user_id = str.user_id
|
|
|
|
|
WHERE ste.user_id = 4
|
|
|
|
|
AND ste.answered = 1
|
|
|
|
|
AND ste.accuracy >= (
|
|
|
|
@ -337,4 +347,20 @@
|
|
|
|
|
ORDER BY ste.exam_time DESC
|
|
|
|
|
LIMIT 1;
|
|
|
|
|
</select>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<select id="selectConditions" resultMap="BaseResultMap">
|
|
|
|
|
select *
|
|
|
|
|
from stu_theory_record
|
|
|
|
|
<where>
|
|
|
|
|
system_owner = #{systemOwner}
|
|
|
|
|
AND school_id = #{schoolId}
|
|
|
|
|
<if test="classId != null and classId != ''">
|
|
|
|
|
AND class_id = #{classId}
|
|
|
|
|
</if>
|
|
|
|
|
<if test="keyWord != null and keyWord != ''">
|
|
|
|
|
AND (student_id like CONCAT ('%',#{keyWord},'%') or name like CONCAT ('%',#{keyWord},'%'))
|
|
|
|
|
</if>
|
|
|
|
|
</where>
|
|
|
|
|
</select>
|
|
|
|
|
</mapper>
|