From 74d740bb065e5806748b1ab8ca95d20984c7eace Mon Sep 17 00:00:00 2001
From: 陈昶聿 <chychen@nbjetron.com>
Date: 星期二, 01 九月 2026 10:05:54 +0800
Subject: [PATCH] 【丽水】1、system/user/getInfo 中的belongDepts和belongWards树形结构只获取子节点

---
 ruoyi-system/src/main/resources/mapper/system/SysDeptMapper.xml |   48 ++++++++++++++++++++++++++++++++++++++++++++++--
 1 files changed, 46 insertions(+), 2 deletions(-)

diff --git a/ruoyi-system/src/main/resources/mapper/system/SysDeptMapper.xml b/ruoyi-system/src/main/resources/mapper/system/SysDeptMapper.xml
index e2b39f7..4350001 100644
--- a/ruoyi-system/src/main/resources/mapper/system/SysDeptMapper.xml
+++ b/ruoyi-system/src/main/resources/mapper/system/SysDeptMapper.xml
@@ -26,11 +26,13 @@
         <result property="deptType" column="dept_type"/>
         <result property="guid" column="guid"/>
         <result property="orgid" column="orgid"/>
+        <result property="campusid" column="campusid"/>
     </resultMap>
 
     <sql id="selectDeptVo">
         select d.dept_id,
                d.dept_code,
+               d.campusid,
                d.parent_id,
                d.ancestors,
                d.dept_name,
@@ -71,11 +73,25 @@
         <if test="deptType != null and deptType != ''">
             AND dept_type = #{deptType}
         </if>
+        <if test="campusid != null and campusid != ''">
+            AND campusid = #{campusid}
+        </if>
         <if test="hisDeptId != null and hisDeptId != ''">
             AND his_dept_id = #{hisDeptId}
         </if>
         <if test="hisParentId != null and hisParentId != ''">
             AND his_parent_id = #{hisParentId}
+        </if>
+        <if test="orgid != null and orgid != ''">
+            AND orgid = #{orgid}
+        </if>
+        <if test="deptCodes != null and deptCodes.size() > 0">
+            AND dept_code IN
+            <foreach collection="deptCodes" item="deptCodeItem" open="("
+                     separator=","
+                     close=")">
+                #{deptCodeItem}
+            </foreach>
         </if>
         <!-- 鏁版嵁鑼冨洿杩囨护 -->
         ${params.dataScope}
@@ -105,17 +121,20 @@
                d.leader,
                d.phone,
                d.email,
+               d.campusid,
                d.status,
                d.his_dept_id,
                d.his_parent_id,
                (select dept_name from sys_dept where dept_id = d.parent_id) parent_name
         from sys_dept d
         where d.dept_id = #{deptId}
+        limit 1
     </select>
 
     <select id="selectDeptByCode" parameterType="string" resultMap="SysDeptResult">
         select d.dept_id,
                d.parent_id,
+               d.campusid,
                d.dept_code,
                d.dept_type,
                d.ancestors,
@@ -129,7 +148,14 @@
                d.status
         from sys_dept d
         where del_flag = 0
-          and d.dept_code = #{deptCode}
+        and d.dept_code = #{deptCode}
+        <if test="orgid != null and orgid != ''">
+            and d.orgid = #{orgid}
+        </if>
+        <if test="deptType != null and deptType != ''">
+            and d.dept_type = #{deptType}
+        </if>
+        limit 1
     </select>
 
     <select id="checkDeptExistUser" parameterType="Long" resultType="int">
@@ -151,6 +177,8 @@
         from sys_dept
         where find_in_set(#{deptId}, ancestors)
     </select>
+
+
 
     <select id="selectNormalChildrenDeptById" parameterType="Long" resultType="int">
         select count(*)
@@ -182,6 +210,7 @@
         <if test="hisDeptId != null and hisDeptId != ''">his_dept_id,</if>
         <if test="hisParentId != null and hisParentId != ''">his_parent_id,</if>
         <if test="orgid != null and orgid != ''">orgid,</if>
+        <if test="campusid != null and campusid != ''">campusid,</if>
         create_time
         )values(
         <if test="deptId != null and deptId != 0">#{deptId},</if>
@@ -199,6 +228,7 @@
         <if test="hisDeptId != null and hisDeptId != ''">#{hisDeptId},</if>
         <if test="hisParentId != null and hisParentId != ''">#{hisParentId},</if>
         <if test="orgid != null and orgid != ''">#{orgid},</if>
+        <if test="campusid != null and campusid != ''">#{campusid},</if>
         sysdate()
         )
     </insert>
@@ -220,6 +250,7 @@
             <if test="hisParentId != null and hisParentId != ''">his_parent_id = #{hisParentId},</if>
             <if test="hisDeptId != null and hisDeptId != ''">his_dept_id = #{hisDeptId},</if>
             <if test="orgid != null and orgid != ''">orgid = #{orgid},</if>
+            <if test="campusid != null and campusid != ''">campusid = #{campusid},</if>
             update_time = sysdate()
         </set>
         where dept_id = #{deptId}
@@ -247,8 +278,21 @@
 
     <delete id="deleteDeptById" parameterType="Long">
         update sys_dept
-        set del_flag = '2'
+        set del_flag = '1'
         where dept_id = #{deptId}
     </delete>
 
+    <select id="selectSysDeptListBySysUserDept" parameterType="com.ruoyi.common.core.domain.entity.SysUserDept"
+            resultMap="SysDeptResult">
+        <include refid="selectDeptVo"/>
+        inner join sys_user_dept ud
+        on d.dept_code = ud.dept_code
+        where 1=1
+        and d.del_flag = 0
+        and ud.del_flag = 0
+        <if test="orgid != null">and d.orgid = #{orgid} and ud.orgid = #{orgid}</if>
+        <if test="campusid != null">and d.campusid = #{campusid} and ud.campusid = #{campusid}</if>
+        <if test="userId != null">and ud.user_id = #{userId}</if>
+        <if test="deptType != null and deptType != ''">and d.dept_type = #{deptType}</if>
+    </select>
 </mapper>

--
Gitblit v1.9.3