From 26422a99ed7e19579ca11f008c180addc21f5153 Mon Sep 17 00:00:00 2001
From: 龚焕茏 <2842157468@qq.com>
Date: 星期三, 08 五月 2024 17:46:34 +0800
Subject: [PATCH] fix:禁用的人不能被查出来考试、题目去重

---
 src/main/resources/mapper/DepartmentMapper.xml |   85 ++++++++++++++++++++++++++++++++++++++++--
 1 files changed, 80 insertions(+), 5 deletions(-)

diff --git a/src/main/resources/mapper/DepartmentMapper.xml b/src/main/resources/mapper/DepartmentMapper.xml
index 4df30ab..db2d1fb 100644
--- a/src/main/resources/mapper/DepartmentMapper.xml
+++ b/src/main/resources/mapper/DepartmentMapper.xml
@@ -7,27 +7,102 @@
         <result column="deleted" jdbcType="VARCHAR" property="deleted"/>
     </resultMap>
 
+    <sql id="Base_Column_List">
+        id
+        , name,deleted
+    </sql>
+
     <insert id="add" parameterType="com.mindskip.xzs.domain.Department" useGeneratedKeys="true" keyProperty="id">
         insert into t_department (name, deleted)
         values (#{name,jdbcType=VARCHAR}, #{deleted,jdbcType=VARCHAR})
     </insert>
 
     <update id="update" parameterType="com.mindskip.xzs.domain.Department">
-        update t_user
+        update t_department
         <set>
             <if test="name != null">
                 name = #{name,jdbcType=VARCHAR},
             </if>
+            <if test="adminId != null">
+                admin_id = #{adminId},
+            </if>
             <if test="deleted != null">
-                name = #{deleted,jdbcType=VARCHAR},
+                deleted = #{deleted,jdbcType=VARCHAR},
             </if>
         </set>
         where id = #{id,jdbcType=INTEGER}
     </update>
 
     <select id="gets" resultMap="BaseResultMap">
-        select
-        <include refid="Base_Column_List"/>
-        from t_department where deleted=0
+        SELECT
+            td.id,
+            td.name,
+            td.admin_id as adminId,
+            tu.real_name as adminName
+        FROM
+            t_department td
+                LEFT JOIN t_user tu ON td.admin_id = tu.id AND tu.deleted = 0
+        WHERE
+            td.deleted = 0
+            <if test="deptId != null">
+                AND td.id = #{deptId}
+            </if>
     </select>
+
+    <select id="getById" resultMap="BaseResultMap">
+        SELECT
+            td.id,
+            td.name,
+            td.admin_id as adminId,
+            tu.real_name as adminName
+        FROM
+            t_department td
+                LEFT JOIN t_user tu ON td.admin_id = tu.id AND tu.deleted = 0
+        WHERE
+              td.id = #{id} AND td.deleted = 0
+    </select>
+
+    <select id="page" resultType="com.mindskip.xzs.viewmodel.admin.department.DepartmentResponseVM"
+            parameterType="com.mindskip.xzs.viewmodel.admin.department.DepartmentResponseVM">
+        SELECT
+            td.id,
+            td.name,
+            td.admin_id as adminId,
+            tu.real_name as adminName
+        FROM
+             t_department td
+                 LEFT JOIN t_user tu ON td.admin_id = tu.id AND tu.deleted = 0
+        <where>
+            AND td.deleted = 0
+            <if test="id != null ">
+                AND td.id= #{id}
+            </if>
+            <if test="name != null ">
+                AND td.name like concat('%',#{name},'%')
+            </if>
+
+        </where>
+    </select>
+
+    <select id="getName" resultMap="BaseResultMap">
+        SELECT
+            td.id,
+            td.name,
+            td.admin_id as adminId,
+            tu.real_name as adminName
+        FROM
+            t_department td
+                LEFT JOIN t_user tu ON td.admin_id = tu.id AND tu.deleted = 0
+        WHERE
+            td.name = #{name} AND td.deleted = 0
+    </select>
+
+    <select id="selectByAdminId" resultType="integer">
+        SELECT id FROM t_department WHERE admin_id = #{userId} AND deleted = 0
+    </select>
+
+    <select id="countByAdminId" resultType="integer">
+        SELECT count(*) FROM t_department WHERE admin_id = #{userId} AND deleted = 0 AND id != #{id}
+    </select>
+
 </mapper>

--
Gitblit v1.8.0