Examination_system/Examination_system-1/.svn/pristine/22/22e96bb09a1d8b35f2633f05747...

455 lines
15 KiB
Plaintext
Raw Normal View History

2023-10-30 13:10:40 +08:00
<?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) &gt;= #{param.startTime}
</if>
<if test="param.endTime != null and param.endTime !='' ">
AND SUBSTRING(epr.end_time,1,10) &lt;= #{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>