From 2bf92184d4584cac58b76b8d1ea0b3b0ff34b4fb Mon Sep 17 00:00:00 2001
From: 龚焕茏 <2842157468@qq.com>
Date: 星期五, 24 五月 2024 13:46:30 +0800
Subject: [PATCH] fix:统计修改

---
 src/main/resources/mapper/ExamPaperMapper.xml |   34 +++++++++++++++++++++++++++++-----
 1 files changed, 29 insertions(+), 5 deletions(-)

diff --git a/src/main/resources/mapper/ExamPaperMapper.xml b/src/main/resources/mapper/ExamPaperMapper.xml
index 93ad348..7338f3a 100644
--- a/src/main/resources/mapper/ExamPaperMapper.xml
+++ b/src/main/resources/mapper/ExamPaperMapper.xml
@@ -441,7 +441,8 @@
     <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
+    where paper_type != 7
+    and dept_id in
     <foreach collection="deptIds" item="item" open="(" separator="," close=")">
         #{item}
     </foreach>
@@ -457,10 +458,7 @@
           left join t_user_tag b on a.id = b.user_id
           left join t_user_department c on a.id = c.user_id
       where
-          user_name != 'admin'
-          <if test="tagId != null and tagId != ''">
-             and b.tag_id = #{tagId}
-          </if>
+          user_name != 'admin' and a.status != 2 and a.deleted = 0 and (a.`condition` = 0 or a.`condition` is null)
           <if test="deptIds != null and deptIds.size > 0">
             and c.department_id in
             <foreach collection="deptIds" open="(" separator="," close=")" item="deptId">
@@ -468,7 +466,33 @@
             </foreach>
           </if>
       group by a.id, a.real_name
+        <if test="(tagIds != null and tagIds.size > 0) or (excludeTagIds != null and excludeTagIds.size > 0)">
+        having
+        </if>
+        <if test="tagIds != null and tagIds.size > 0">
+          <foreach collection="tagIds" open="(" separator="or" close=")" item="item">
+            find_in_set(#{item}, group_concat(b.tag_id))
+          </foreach>
+        </if>
+        <if test="excludeTagIds != null and excludeTagIds.size > 0">
+          <if test="tagIds != null and tagIds.size > 0">and</if>
+          <foreach collection="excludeTagIds" open="(" separator="and" close=")" item="item">
+            not find_in_set(#{item}, group_concat(b.tag_id))
+          </foreach>
+        </if>
       order by a.id
     </select>
 
+    <select id="getExamPaperByTemplateId" resultType="java.lang.Integer" parameterType="com.mindskip.xzs.domain.vo.ExamTemplatesVO">
+      select exam_paper_id from t_exam_templates_user_count where exam_templates_id = #{id}
+    </select>
+
+  <select id="getExamPaper" resultType="com.mindskip.xzs.domain.ExamPaper">
+    select id, name, paper_type, create_time from t_exam_paper where paper_type != 7 order by create_time desc
+  </select>
+
+  <select id="getTemplate" resultType="com.mindskip.xzs.domain.ExamPaper">
+    select id, name, paper_type, ctime as create_time from t_exam_templates order by ctime desc
+  </select>
+
 </mapper>

--
Gitblit v1.8.0