455 lines
15 KiB
XML
455 lines
15 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.bonus.score.dao.ScoreDao">
|
|
<resultMap type="com.bonus.score.beans.ScoreBean" id="baseMap">
|
|
<id column="examId" property="examId"></id>
|
|
<result column="userId" property="userId"/>
|
|
<result column="id" property="id"/>
|
|
<result column="grade" property="grade"/>
|
|
<result column="startTime" property="startTime"/>
|
|
<result column="endTime" property="endTime"/>
|
|
<result column="questionTypeName" property="questionTypeName"/>
|
|
<result column="examPerson" property="examPerson"/>
|
|
<result column="examName" property="examName"/>
|
|
<result column="examCount" property="examCount"/>
|
|
<result column="specialName" property="specialName"/>
|
|
<result column="professId" property="professId"/>
|
|
<result column="singleAnswer" property="singleAnswer"/>
|
|
<result column="multiAnswer" property="multiAnswer"/>
|
|
<result column="judgeAnswer" property="judgeAnswer"/>
|
|
<result column="fillAnswer" property="fillAnswer"/>
|
|
<result column="caseAnswer" property="caseAnswer"/>
|
|
<result column="soluAnswer" property="soluAnswer"/>
|
|
<result column="other" property="other"/>
|
|
<result column="singleTrue" property="singleTrue"/>
|
|
<result column="singleGrade" property="singleGrade"/>
|
|
<result column="multiTrue" property="multiTrue"/>
|
|
<result column="multiGrade" property="multiGrade"/>
|
|
<result column="judgeTrue" property="judgeTrue"/>
|
|
<result column="judgeGrade" property="judgeGrade"/>
|
|
<result column="fillTrue" property="fillTrue"/>
|
|
<result column="fillGrade" property="fillGrade"/>
|
|
<result column="caseTrue" property="caseTrue"/>
|
|
<result column="caseGrade" property="caseGrade"/>
|
|
<result column="soluTrue" property="soluTrue"/>
|
|
<result column="soluGrade" property="soluGrade"/>
|
|
</resultMap>
|
|
|
|
<resultMap type="com.bonus.question.beans.QuestionBean" id="questionMap">
|
|
<id column="questionId" property="questionId"></id>
|
|
<result column="content" property="content"/>
|
|
<result column="operation" property="operation"/>
|
|
<result column="standardAnswer" property="standardAnswer"/>
|
|
<result column="answer" property="answer"/>
|
|
<result column="questionGrade" property="questionGrade"/>
|
|
<result column="trueAnswer" property="trueAnswer"/>
|
|
<result column="questionOperation" property="questionOperation" />
|
|
</resultMap>
|
|
|
|
<select id="getpersonLimit" parameterType="com.bonus.score.beans.ScoreBean" resultType="com.bonus.score.beans.ScoreBean" >
|
|
SELECT
|
|
pm.ID AS userId,
|
|
pm.`NAME` AS examPerson
|
|
FROM
|
|
exam_person_record exam
|
|
LEFT JOIN pm_user pm on pm.LOGIN_NAME= exam.user_id
|
|
WHERE
|
|
exam_id = #{examId}
|
|
</select>
|
|
|
|
<select id="findByPage" parameterType="com.bonus.score.beans.ScoreBean" resultType="com.bonus.score.beans.ScoreBean">
|
|
SELECT
|
|
ep.exam_name AS examName,
|
|
ep.exam_count AS examCount,
|
|
pu.NAME AS examPerson,
|
|
pu.ID AS id,
|
|
CONCAT( pooo.`NAME`, '/', poo.`NAME`, '/', po.`NAME` ) AS specialName,
|
|
epr.exam_id AS examId,
|
|
epr.user_id AS userId,
|
|
epr.grade,
|
|
epr.start_time AS startTime,
|
|
epr.end_time AS endTime,
|
|
epr.single_answer AS singleAnswer,
|
|
epr.multi_answer AS multiAnswer,
|
|
epr.judge_answer AS judgeAnswer,
|
|
epr.fill_answer AS fillAnswer,
|
|
epr.case_answer AS caseAnswer,
|
|
epr.solu_answer AS soluAnswer
|
|
FROM
|
|
exam_person_record epr
|
|
LEFT JOIN pm_user pu ON pu.LOGIN_NAME = epr.user_id
|
|
LEFT JOIN exam_paper ep ON ep.exam_id = epr.exam_id
|
|
LEFT JOIN pm_organization po ON po.ID = epr.profess_id
|
|
LEFT JOIN pm_organization poo ON poo.ID = po.PARENT_ID
|
|
LEFT JOIN pm_organization pooo ON pooo.ID = poo.PARENT_ID
|
|
WHERE
|
|
ep.is_active = 2
|
|
<if test="param.keyWord != null and param.keyWord != '' ">
|
|
and (
|
|
ep.exam_name LIKE CONCAT("%",#{param.keyWord},"%") or
|
|
ep.exam_count LIKE CONCAT("%",#{param.keyWord},"%") or
|
|
pu.NAME LIKE CONCAT("%",#{param.keyWord},"%") or
|
|
po.`NAME` LIKE CONCAT("%",#{param.keyWord},"%") or
|
|
poo.`NAME` LIKE CONCAT("%",#{param.keyWord},"%") or
|
|
pooo.`NAME` LIKE CONCAT("%",#{param.keyWord},"%")
|
|
)
|
|
</if>
|
|
<if test="param.startTime != null and param.startTime !='' ">
|
|
AND SUBSTRING(epr.start_time,1,10) >= #{param.startTime}
|
|
</if>
|
|
<if test="param.endTime != null and param.endTime !='' ">
|
|
AND SUBSTRING(epr.end_time,1,10) <= #{param.endTime}
|
|
</if>
|
|
order by ep.exam_id desc
|
|
</select>
|
|
|
|
<select id="findUserByExamId" parameterType="com.bonus.score.beans.ScoreBean" resultType="com.bonus.score.beans.ScoreBean">
|
|
SELECT
|
|
ep.exam_name AS examName,
|
|
pu.`NAME` AS examPerson,
|
|
CONCAT( pooo.`NAME`, '/', poo.`NAME`, '/', po.`NAME` ) AS specialName,
|
|
epr.exam_id as examId,
|
|
epr.user_id AS userId,
|
|
epr.grade as grade,
|
|
epr.start_time AS startTime,
|
|
epr.end_time AS endTime,
|
|
epr.single_answer AS singleAnswer,
|
|
epr.multi_answer AS multiAnswer,
|
|
epr.judge_answer AS judgeAnswer,
|
|
epr.fill_answer AS fillAnswer,
|
|
epr.case_answer AS caseAnswer,
|
|
epr.solu_answer AS soluAnswer
|
|
FROM
|
|
exam_person_record epr
|
|
LEFT JOIN pm_user pu ON pu.LOGIN_NAME = epr.user_id
|
|
LEFT JOIN exam_paper ep ON ep.exam_id = epr.exam_id
|
|
LEFT JOIN pm_organization po ON po.ID = epr.profess_id
|
|
LEFT JOIN pm_organization poo ON poo.ID = po.PARENT_ID
|
|
LEFT JOIN pm_organization pooo ON pooo.ID = poo.PARENT_ID
|
|
WHERE
|
|
epr.exam_id = #{examId}
|
|
AND
|
|
epr.user_id = #{user.loginName}
|
|
order by ep.exam_id desc
|
|
</select>
|
|
|
|
<select id="findGradeReport" parameterType="com.bonus.score.beans.ScoreBean" resultMap="questionMap">
|
|
select
|
|
question_title as content,
|
|
operation as operation,
|
|
question_option as questionOperation,
|
|
classification as classification,
|
|
true_answer as trueAnswer,
|
|
grade as questionGrade,
|
|
answer as answer,
|
|
standard_answer as standardAnswer
|
|
from exam_question
|
|
where exam_id = #{examId} and exam_user = #{id} and classification = #{classification}
|
|
</select>
|
|
|
|
<select id="findSelfGradeReport" parameterType="com.bonus.score.beans.ScoreBean" resultMap="questionMap">
|
|
select
|
|
e.question_id,
|
|
sq.content as content,
|
|
sq.operation as operation,
|
|
question_option as questionOperation,
|
|
sq.classification as classification,
|
|
sq.answer as trueAnswer,
|
|
e.grade as questionGrade,
|
|
e.answer as answer,
|
|
e.standard_answer as standardAnswer
|
|
from exam_question_self e
|
|
LEFT JOIN sz_question sq on e.question_id = sq.question_id
|
|
where e.exam_id = #{examId} and e.exam_user = #{id} and sq.classification = #{classification}
|
|
</select>
|
|
|
|
<delete id="delete" parameterType="com.bonus.score.beans.ScoreBean">
|
|
delete from exam_person_record
|
|
where exam_id = #{examId} and user_id = #{userId}
|
|
</delete>
|
|
|
|
<select id="getinfoByid" resultMap="baseMap">
|
|
select exam_id as examId,grade from exam_person_record where exam_id=#{0}
|
|
</select>
|
|
|
|
<select id="countTotalGrade" parameterType="com.bonus.score.beans.ScoreBean" resultType="java.lang.String">
|
|
select
|
|
single_grade + multi_grade + judge_grade + fill_grade + solu_grade + case_grade as totalGrade
|
|
from
|
|
exam_person_record
|
|
where
|
|
exam_id = #{examId} and user_id = #{userId}
|
|
</select>
|
|
|
|
<select id="findAllGrade" parameterType="com.bonus.score.beans.ScoreBean" resultMap="baseMap">
|
|
select
|
|
single_grade as singleGrade,
|
|
multi_grade as multiGrade,
|
|
judge_grade as judgeGrade,
|
|
fill_grade as fillGrade,
|
|
case_grade as caseGrade,
|
|
solu_grade as soluGrade
|
|
from
|
|
exam_person_record
|
|
where
|
|
exam_id = #{examId} and user_id = #{userId}
|
|
</select>
|
|
|
|
<select id="findAllSelfGrade" parameterType="com.bonus.score.beans.ScoreBean" resultMap="baseMap">
|
|
select
|
|
single_grade as singleGrade,
|
|
multi_grade as multiGrade,
|
|
judge_grade as judgeGrade,
|
|
fill_grade as fillGrade,
|
|
case_grade as caseGrade,
|
|
solu_grade as soluGrade
|
|
from
|
|
exam_person_self_record
|
|
where
|
|
exam_id = #{examId} and user_id = #{userId}
|
|
</select>
|
|
|
|
<insert id="saveExamPerson" parameterType="com.bonus.score.beans.ScoreBean">
|
|
insert into
|
|
exam_person_record(
|
|
<if test="examId !=null and examId !=''">
|
|
exam_id,
|
|
</if>
|
|
<if test="professId !=null and professId !=''">
|
|
profess_id,
|
|
</if>
|
|
<if test="endTime !=null and endTime !=''">
|
|
end_time,
|
|
</if>
|
|
<if test="user.loginName !=null">
|
|
user_id,
|
|
</if>
|
|
<if test="user.greenScore !=null">
|
|
grade,
|
|
</if>
|
|
start_time
|
|
)
|
|
values(
|
|
<if test="examId !=null and examId !=''">
|
|
#{examId},
|
|
</if>
|
|
<if test="professId !=null and professId !=''">
|
|
#{professId},
|
|
</if>
|
|
<if test="endTime !=null and endTime !=''">
|
|
#{endTime},
|
|
</if>
|
|
<if test="user.loginName !=null">
|
|
#{user.loginName},
|
|
</if>
|
|
<if test="user.greenScore !=null">
|
|
#{user.greenScore},
|
|
</if>
|
|
sysdate()
|
|
)
|
|
</insert>
|
|
|
|
<insert id="insertSelfRecord" parameterType="com.bonus.score.beans.ScoreBean">
|
|
insert into
|
|
exam_person_self_record(
|
|
<if test="examId !=null and examId !=''">
|
|
exam_id,
|
|
</if>
|
|
<if test="professId !=null and professId !=''">
|
|
profess_id,
|
|
</if>
|
|
<if test="endTime !=null and endTime !=''">
|
|
end_time,
|
|
</if>
|
|
<if test="user.loginName !=null">
|
|
user_id,
|
|
</if>
|
|
<if test="user.greenScore !=null">
|
|
grade,
|
|
</if>
|
|
start_time
|
|
)
|
|
values(
|
|
<if test="examId !=null and examId !=''">
|
|
#{examId},
|
|
</if>
|
|
<if test="professId !=null and professId !=''">
|
|
#{professId},
|
|
</if>
|
|
<if test="endTime !=null and endTime !=''">
|
|
#{endTime},
|
|
</if>
|
|
<if test="user.loginName !=null">
|
|
#{user.loginName},
|
|
</if>
|
|
<if test="user.greenScore !=null">
|
|
#{user.greenScore},
|
|
</if>
|
|
sysdate()
|
|
)
|
|
</insert>
|
|
|
|
<update id="updateRegistration" parameterType="com.bonus.score.beans.ScoreBean">
|
|
update sz_registration
|
|
set del_flag = 1
|
|
where idcard = #{userId} and del_flag = 0
|
|
</update>
|
|
|
|
<update id="update" parameterType="com.bonus.score.beans.ScoreBean">
|
|
update exam_person_record
|
|
<set>
|
|
<if test="grade != null and grade != '' " >
|
|
grade = #{grade},
|
|
</if>
|
|
<if test="singleAnswer != null and singleAnswer != '' " >
|
|
single_answer = #{singleAnswer},
|
|
</if>
|
|
<if test="multiAnswer != null and multiAnswer != '' " >
|
|
multi_answer = #{multiAnswer},
|
|
</if>
|
|
<if test="judgeAnswer != null and judgeAnswer != '' " >
|
|
judge_answer = #{judgeAnswer},
|
|
</if>
|
|
<if test="fillAnswer != null and fillAnswer != '' " >
|
|
fill_answer = #{fillAnswer},
|
|
</if>
|
|
<if test="caseAnswer != null and caseAnswer != '' " >
|
|
case_answer = #{caseAnswer},
|
|
</if>
|
|
<if test="soluAnswer != null and soluAnswer != '' " >
|
|
solu_answer = #{soluAnswer},
|
|
</if>
|
|
<if test="other != null and other != '' " >
|
|
other = #{other},
|
|
</if>
|
|
<if test="singleTrue != null and singleTrue != '' " >
|
|
single_true = #{singleTrue},
|
|
</if>
|
|
<if test="singleGrade != null and singleGrade != '' " >
|
|
single_grade = #{singleGrade},
|
|
</if>
|
|
<if test="multiTrue != null and multiTrue != '' " >
|
|
multi_true = #{multiTrue},
|
|
</if>
|
|
<if test="multiGrade != null and multiGrade != '' " >
|
|
multi_grade = #{multiGrade},
|
|
</if>
|
|
<if test="judgeTrue != null and judgeTrue != ''" >
|
|
judge_true = #{judgeTrue},
|
|
</if>
|
|
<if test="judgeGrade != null and judgeGrade != ''" >
|
|
judge_grade = #{judgeGrade}
|
|
</if>
|
|
<if test="fillTrue != null and fillTrue != ''" >
|
|
fill_true = #{fillTrue},
|
|
</if>
|
|
<if test="fillGrade != null and fillGrade != ''" >
|
|
fill_grade = #{fillGrade},
|
|
</if>
|
|
<if test="caseTrue != null and caseTrue != ''" >
|
|
case_true = #{caseTrue},
|
|
</if>
|
|
<if test="caseGrade != null and caseGrade != ''" >
|
|
case_grade = #{caseGrade},
|
|
</if>
|
|
<if test="soluTrue != null and soluTrue != ''" >
|
|
solu_true = #{soluTrue},
|
|
</if>
|
|
<if test="soluGrade != null and soluGrade != ''" >
|
|
solu_grade = #{soluGrade},
|
|
</if>
|
|
</set>
|
|
where
|
|
exam_id = #{examId} and user_id = #{userId}
|
|
</update>
|
|
|
|
<update id="updateSelfRecord" parameterType="com.bonus.score.beans.ScoreBean">
|
|
update exam_person_self_record
|
|
<set>
|
|
<if test="grade != null and grade != '' " >
|
|
grade = #{grade},
|
|
</if>
|
|
<if test="singleAnswer != null and singleAnswer != '' " >
|
|
single_answer = #{singleAnswer},
|
|
</if>
|
|
<if test="multiAnswer != null and multiAnswer != '' " >
|
|
multi_answer = #{multiAnswer},
|
|
</if>
|
|
<if test="judgeAnswer != null and judgeAnswer != '' " >
|
|
judge_answer = #{judgeAnswer},
|
|
</if>
|
|
<if test="fillAnswer != null and fillAnswer != '' " >
|
|
fill_answer = #{fillAnswer},
|
|
</if>
|
|
<if test="caseAnswer != null and caseAnswer != '' " >
|
|
case_answer = #{caseAnswer},
|
|
</if>
|
|
<if test="soluAnswer != null and soluAnswer != '' " >
|
|
solu_answer = #{soluAnswer},
|
|
</if>
|
|
<if test="other != null and other != '' " >
|
|
other = #{other},
|
|
</if>
|
|
<if test="singleTrue != null and singleTrue != '' " >
|
|
single_true = #{singleTrue},
|
|
</if>
|
|
<if test="singleGrade != null and singleGrade != '' " >
|
|
single_grade = #{singleGrade},
|
|
</if>
|
|
<if test="multiTrue != null and multiTrue != '' " >
|
|
multi_true = #{multiTrue},
|
|
</if>
|
|
<if test="multiGrade != null and multiGrade != '' " >
|
|
multi_grade = #{multiGrade},
|
|
</if>
|
|
<if test="judgeTrue != null and judgeTrue != ''" >
|
|
judge_true = #{judgeTrue},
|
|
</if>
|
|
<if test="judgeGrade != null and judgeGrade != ''" >
|
|
judge_grade = #{judgeGrade}
|
|
</if>
|
|
<if test="fillTrue != null and fillTrue != ''" >
|
|
fill_true = #{fillTrue},
|
|
</if>
|
|
<if test="fillGrade != null and fillGrade != ''" >
|
|
fill_grade = #{fillGrade},
|
|
</if>
|
|
<if test="caseTrue != null and caseTrue != ''" >
|
|
case_true = #{caseTrue},
|
|
</if>
|
|
<if test="caseGrade != null and caseGrade != ''" >
|
|
case_grade = #{caseGrade},
|
|
</if>
|
|
<if test="soluTrue != null and soluTrue != ''" >
|
|
solu_true = #{soluTrue},
|
|
</if>
|
|
<if test="soluGrade != null and soluGrade != ''" >
|
|
solu_grade = #{soluGrade},
|
|
</if>
|
|
</set>
|
|
where
|
|
exam_id = #{examId} and user_id = #{userId}
|
|
</update>
|
|
|
|
<update id="updateGrade" parameterType="com.bonus.score.beans.ScoreBean">
|
|
update
|
|
exam_person_record
|
|
set
|
|
grade = #{grade}
|
|
where
|
|
exam_id = #{examId} and user_id = #{userId}
|
|
</update>
|
|
|
|
|
|
<select id="find" parameterType="com.bonus.score.beans.ScoreBean" resultMap="baseMap">
|
|
SELECT
|
|
exam_id AS examId,
|
|
user_id AS userId,
|
|
grade
|
|
FROM
|
|
exam_person_record
|
|
WHERE
|
|
exam_id = #{examId} and user_id = #{userId}
|
|
</select>
|
|
|
|
</mapper> |