From 33fdb033e0a6b5ef6b2f8ac5fc67ad8222e564e5 Mon Sep 17 00:00:00 2001
From: xiangpei <xiangpei@timesnew.cn>
Date: 星期五, 17 五月 2024 14:49:12 +0800
Subject: [PATCH] 下载文件接口,bug修改
---
src/main/resources/mapper/ExamPaperMapper.xml | 100 +++++++++++++++++++++++++++++++++++++++++++-------
1 files changed, 86 insertions(+), 14 deletions(-)
diff --git a/src/main/resources/mapper/ExamPaperMapper.xml b/src/main/resources/mapper/ExamPaperMapper.xml
index 2ab6a9c..f24b711 100644
--- a/src/main/resources/mapper/ExamPaperMapper.xml
+++ b/src/main/resources/mapper/ExamPaperMapper.xml
@@ -17,11 +17,13 @@
<result column="create_time" jdbcType="TIMESTAMP" property="createTime" />
<result column="deleted" jdbcType="BIT" property="deleted" />
<result column="task_exam_id" jdbcType="INTEGER" property="taskExamId" />
+ <result column="type" jdbcType="VARCHAR" property="type" />
+ <result column="user_ids" jdbcType="VARCHAR" property="userIds" />
</resultMap>
<sql id="Base_Column_List">
- id, name, subject_id, paper_type, grade_level, score, question_count, suggest_time,
+ id, dept_id, name, subject_id, paper_type, grade_level, score, question_count, suggest_time,
limit_start_time, limit_end_time, frame_text_content_id, create_user, create_time,
- deleted, task_exam_id
+ deleted, task_exam_id, type, user_ids
</sql>
<select id="selectByPrimaryKey" parameterType="java.lang.Integer" resultMap="BaseResultMap">
select
@@ -38,13 +40,14 @@
paper_type, grade_level, score,
question_count, suggest_time, limit_start_time,
limit_end_time, frame_text_content_id, create_user,
- create_time, deleted, task_exam_id
+ create_time, deleted, task_exam_id, type, user_ids
)
values (#{id,jdbcType=INTEGER}, #{name,jdbcType=VARCHAR}, #{subjectId,jdbcType=INTEGER},
#{paperType,jdbcType=INTEGER}, #{gradeLevel,jdbcType=INTEGER}, #{score,jdbcType=INTEGER},
#{questionCount,jdbcType=INTEGER}, #{suggestTime,jdbcType=INTEGER}, #{limitStartTime,jdbcType=TIMESTAMP},
#{limitEndTime,jdbcType=TIMESTAMP}, #{frameTextContentId,jdbcType=INTEGER}, #{createUser,jdbcType=INTEGER},
- #{createTime,jdbcType=TIMESTAMP}, #{deleted,jdbcType=BIT}, #{taskExamId,jdbcType=INTEGER}
+ #{createTime,jdbcType=TIMESTAMP}, #{deleted,jdbcType=BIT}, #{taskExamId,jdbcType=INTEGER},
+ #{type,jdbcType=VARCHAR}, #{userIds,jdbcType=VARCHAR}
)
</insert>
<insert id="insertSelective" parameterType="com.mindskip.xzs.domain.ExamPaper" useGeneratedKeys="true" keyProperty="id">
@@ -52,6 +55,9 @@
<trim prefix="(" suffix=")" suffixOverrides=",">
<if test="id != null">
id,
+ </if>
+ <if test="deptId != null">
+ dept_id,
</if>
<if test="name != null">
name,
@@ -95,10 +101,19 @@
<if test="taskExamId != null">
task_exam_id,
</if>
+ <if test="type != null">
+ type,
+ </if>
+ <if test="userIds != null">
+ user_ids,
+ </if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides=",">
<if test="id != null">
#{id,jdbcType=INTEGER},
+ </if>
+ <if test="deptId != null">
+ #{deptId,jdbcType=INTEGER},
</if>
<if test="name != null">
#{name,jdbcType=VARCHAR},
@@ -142,6 +157,12 @@
<if test="taskExamId != null">
#{taskExamId,jdbcType=INTEGER},
</if>
+ <if test="type != null">
+ #{type,jdbcType=VARCHAR},
+ </if>
+ <if test="userIds != null">
+ #{userIds,jdbcType=VARCHAR},
+ </if>
</trim>
</insert>
<update id="updateByPrimaryKeySelective" parameterType="com.mindskip.xzs.domain.ExamPaper">
@@ -149,6 +170,9 @@
<set>
<if test="name != null">
name = #{name,jdbcType=VARCHAR},
+ </if>
+ <if test="deptId != null">
+ dept_id = #{deptId,jdbcType=INTEGER},
</if>
<if test="subjectId != null">
subject_id = #{subjectId,jdbcType=INTEGER},
@@ -189,6 +213,9 @@
<if test="taskExamId != null">
task_exam_id = #{taskExamId,jdbcType=INTEGER},
</if>
+ <if test="userIds != null">
+ user_ids = #{userIds,jdbcType=INTEGER},
+ </if>
</set>
where id = #{id,jdbcType=INTEGER}
</update>
@@ -196,6 +223,7 @@
update t_exam_paper
set name = #{name,jdbcType=VARCHAR},
subject_id = #{subjectId,jdbcType=INTEGER},
+ dept_id = #{deptId,jdbcType=INTEGER},
paper_type = #{paperType,jdbcType=INTEGER},
grade_level = #{gradeLevel,jdbcType=INTEGER},
score = #{score,jdbcType=INTEGER},
@@ -230,21 +258,23 @@
SELECT
e.*
FROM t_exam_paper e
- left join t_exam_paper_department d on e.id = d.exam_paper_id
left join t_exam_paper_subject s on e.id = s.exam_paper_id
<where>
and e.deleted=0
<if test="id != null ">
and e.id= #{id}
</if>
- <if test="level != null ">
- and d.department_id= #{level} and d.deleted = 0
+ <if test="deptIds != null and deptIds.size() > 0">
+ and e.dept_id in <foreach collection="deptIds" item="item" open="(" separator="," close=")"> #{item} </foreach>
</if>
<if test="subjectId != null ">
and s.subject_id= #{subjectId} and s.deleted = 0
</if>
<if test="paperType != null ">
and e.paper_type= #{paperType}
+ </if>
+ <if test="type != null ">
+ and e.type= #{type}
</if>
</where>
group by e.id
@@ -260,10 +290,8 @@
FROM t_exam_paper e
LEFT JOIN t_exam_paper_department s on s.exam_paper_id = e.id
<where>
- and e.deleted=0 and s.deleted = 0
+ and e.deleted=0
and e.task_exam_id is null
- and s.department_id =
- #{level}
and e.paper_type=#{paperType}
</where>
group by e.id
@@ -288,6 +316,9 @@
<if test="paperType == 4">
and e.paper_type = #{paperType}
</if>
+ <if test="type != null and type != ''">
+ and e.type = #{type}
+ </if>
</where>
group by e.id
@@ -300,7 +331,7 @@
FROM t_exam_paper e
LEFT JOIN t_exam_paper_department d on d.exam_paper_id = e.id
<where>
- and e.deleted=0 and d.deleted = 0
+ and e.deleted=0 and d.deleted = 0 and e.type = 0
and e.paper_type in
<foreach item="examPaperType" collection="examPaperType" open="(" separator=","
close=")">
@@ -311,6 +342,11 @@
</if>
<if test="examPaperType == 3 ">
</if>
+ <foreach item="examPaperType" collection="examPaperType">
+ <if test="examPaperType == 4 ">
+ and #{dateTime} between e.limit_start_time and e.limit_end_time
+ </if>
+ </foreach>
<if test="examPaperType == 4 ">
and #{dateTime} between e.limit_start_time and e.limit_end_time
</if>
@@ -321,14 +357,32 @@
SELECT e.id,e.name,e.limit_start_time,e.limit_end_time
FROM t_exam_paper e
LEFT JOIN t_exam_paper_user u on u.exam_paper_id = e.id
- where
- e.deleted=0 and u.deleted = 0
- and u.user_id = #{userId} ORDER BY e.id desc ) t
+ <where>
+ e.deleted=0 and u.deleted = 0 and e.type = 0
+ and u.user_id = #{userId}
+ and e.paper_type in
+ <foreach item="examPaperType" collection="examPaperType" open="(" separator=","
+ close=")">
+ #{examPaperType}
+ </foreach>
+ <foreach item="examPaperType" collection="examPaperType">
+ <if test="examPaperType == 4 ">
+ and #{dateTime} between e.limit_start_time and e.limit_end_time
+ </if>
+ </foreach>
+ </where>
+ ORDER BY e.id desc ) t
</select>
<select id="selectAllCount" resultType="java.lang.Integer">
SELECT count(*) from t_exam_paper where deleted=0
+ <if test="deptIds != null and deptIds.size() > 0">
+ and dept_id in
+ <foreach collection="deptIds" item="item" open="(" close=")" separator=",">
+ #{item}
+ </foreach>
+ </if>
</select>
<select id="selectCountByDate" resultType="com.mindskip.xzs.domain.other.KeyValue">
@@ -377,4 +431,22 @@
and deleted = 0
</select>
+ <select id="getPaperExcelById" resultType="com.mindskip.xzs.domain.vo.PaperExcelVO" parameterType="java.lang.Integer">
+ select u.real_name as name,a.create_user as userId,a.user_score as userScore,a.paper_score as paperScore
+ from t_exam_paper_answer a
+ left join t_user u on u.id = a.create_user
+ where a.exam_paper_id = #{id}
+ </select>
+
+ <select id="list" resultType="com.mindskip.xzs.domain.ExamPaper">
+ select id, name from t_exam_paper
+ <if test="deptIds != null and deptIds.size() > 0">
+ where dept_id in
+ <foreach collection="deptIds" item="item" open="(" separator="," close=")">
+ #{item}
+ </foreach>
+ </if>
+ order by create_time desc
+ </select>
+
</mapper>
--
Gitblit v1.8.0