From 2d3b575ed96eee7ccd5b324baa3135d2236934ac Mon Sep 17 00:00:00 2001
From: 陈昶聿 <chychen@nbjetron.com>
Date: 星期五, 13 十一月 2026 16:39:37 +0800
Subject: [PATCH] 【市一】1、登录服务问题处理 2、电话挂断问题处理 3、查询报错问题处理

---
 ruoyi-system/src/main/resources/mapper/system/SysUserMapper.xml |   86 ++++++++++++++++++++++++++++++++++++++++--
 1 files changed, 81 insertions(+), 5 deletions(-)

diff --git a/ruoyi-system/src/main/resources/mapper/system/SysUserMapper.xml b/ruoyi-system/src/main/resources/mapper/system/SysUserMapper.xml
index 64c69a4..9075330 100644
--- a/ruoyi-system/src/main/resources/mapper/system/SysUserMapper.xml
+++ b/ruoyi-system/src/main/resources/mapper/system/SysUserMapper.xml
@@ -35,6 +35,8 @@
         <result property="userType" column="user_type"/>
         <result property="searchscope" column="searchscope"/>
         <result property="guid" column="guid"/>
+        <result property="orgid" column="orgid"/>
+        <result property="campusid" column="campusid"/>
         <association property="dept" column="dept_id" javaType="com.ruoyi.common.core.domain.entity.SysDept"
                      resultMap="deptResult"/>
         <collection property="roles" javaType="java.util.List" resultMap="RoleResult"/>
@@ -88,6 +90,8 @@
                u.create_time,
                u.remark,
                u.guid,
+               u.orgid,
+               u.campusid,
                d.dept_id,
                d.parent_id,
                d.ancestors,
@@ -117,8 +121,10 @@
         u.birthday,
         u.job_phone,
         u.phonenumber, u.sex, u.status,
-        u.del_flag, u.login_ip, u.login_date, u.create_by, u.create_time, u.remark, d.dept_name from sys_user
-        u
+        u.del_flag, u.login_ip, u.login_date, u.create_by, u.create_time, u.remark,
+        u.orgid,u.campusid,
+        d.dept_name
+        from sys_user u
         left join sys_user_dept d on u.user_id = d.user_id
         where u.del_flag = '0'
         <if test="userId != null">
@@ -167,6 +173,22 @@
             AND (u.dept_id = #{deptId} OR u.dept_id IN ( SELECT t.dept_id FROM sys_dept t WHERE find_in_set(#{deptId},
             ancestors) ))
         </if>
+        <if test="hospInfoCodeList != null and hospInfoCodeList.size() > 0">
+            <!-- 绉戝澶� Code 浠讳竴鍖归厤锛欴001,D003 绛変环浜� D001 鎴� D003锛岄『搴忔棤鍏� -->
+            AND (
+            <foreach collection="hospInfoCodeList" item="code" separator=" OR ">
+                u.hosp_info LIKE concat('%"', #{code}, '"%')
+            </foreach>
+            )
+        </if>
+        <if test="deptInfoCodeList != null and deptInfoCodeList.size() > 0">
+            <!-- 鐥呭尯澶� Code 浠讳竴鍖归厤锛歐001,W003 绛変环浜� W001 鎴� W003锛岄『搴忔棤鍏� -->
+            AND (
+            <foreach collection="deptInfoCodeList" item="code" separator=" OR ">
+                u.dept_info LIKE concat('%"', #{code}, '"%')
+            </foreach>
+            )
+        </if>
         <!-- 鏁版嵁鑼冨洿杩囨护 -->
         ${params.dataScope}
     </select>
@@ -180,13 +202,18 @@
         u.birthday,
         u.job_phone,
         u.phonenumber, u.sex, u.status,
-        u.del_flag, u.login_ip, u.login_date, u.create_by, u.create_time, u.remark from sys_user u
+        u.del_flag, u.login_ip, u.login_date, u.create_by, u.create_time, u.remark,
+        u.orgid, u.campusid
+        from sys_user u
         where u.del_flag = '0'
         <if test="orgid != null">
             AND u.orgid = #{orgid}
         </if>
         <if test="userId != null">
             AND u.user_id = #{userId}
+        </if>
+        <if test="userCode != null">
+            AND u.user_code = #{userCode}
         </if>
         <if test="userName != null and userName != ''">
             AND u.user_name like concat('%', #{userName}, '%')
@@ -231,7 +258,43 @@
             AND (u.dept_id = #{deptId} OR u.dept_id IN ( SELECT t.dept_id FROM sys_dept t WHERE find_in_set(#{deptId},
             ancestors) ))
         </if>
+        <if test="hospInfoCodeList != null and hospInfoCodeList.size() > 0">
+            <!-- 绉戝澶� Code 浠讳竴鍖归厤锛欴001,D003 绛変环浜� D001 鎴� D003锛岄『搴忔棤鍏� -->
+            AND (
+            <foreach collection="hospInfoCodeList" item="code" separator=" OR ">
+                u.hosp_info LIKE concat('%"', #{code}, '"%')
+            </foreach>
+            )
+        </if>
+        <if test="deptInfoCodeList != null and deptInfoCodeList.size() > 0">
+            <!-- 鐥呭尯澶� Code 浠讳竴鍖归厤锛歐001,W003 绛変环浜� W001 鎴� W003锛岄『搴忔棤鍏� -->
+            AND (
+            <foreach collection="deptInfoCodeList" item="code" separator=" OR ">
+                u.dept_info LIKE concat('%"', #{code}, '"%')
+            </foreach>
+            )
+        </if>
         <if test="pageSize != null  and pageNum != null">limit ${pageSize} OFFSET ${pageNum}</if>
+    </select>
+
+    <select id="selectUsersForRepairUserDept" resultMap="SysUserResult">
+        select u.user_id,
+               u.user_name,
+               u.orgid,
+               u.campusid,
+               u.hosp_info,
+               u.dept_info
+        from sys_user u
+        where u.del_flag = '0'
+          and ((u.hosp_info is not null and u.hosp_info != '' and u.hosp_info != '[]')
+            or (u.dept_info is not null and u.dept_info != '' and u.dept_info != '[]'))
+        <if test="orgid != null and orgid != ''">
+            AND u.orgid = #{orgid}
+        </if>
+        <if test="userId != null">
+            AND u.user_id = #{userId}
+        </if>
+        order by u.user_id
     </select>
 
     <select id="selectAllocatedList" parameterType="com.ruoyi.common.core.domain.entity.SysUser"
@@ -322,11 +385,18 @@
         where u.user_id = #{userId}
     </select>
 
-    <select id="checkUserNameUnique" parameterType="String" resultMap="SysUserResult">
+    <select id="checkUserNameUnique" parameterType="com.ruoyi.common.core.domain.entity.SysUser" resultMap="SysUserResult">
         select user_id, user_name
         from sys_user
         where user_name = #{userName}
-          and del_flag = '0' limit 1
+        and del_flag = '0'
+        <if test="orgid != null and orgid != ''">
+            and orgid = #{orgid}
+        </if>
+        <if test="campusid != null and campusid != ''">
+            and campusid = #{campusid}
+        </if>
+        limit 1
     </select>
 
     <select id="checkPhoneUnique" parameterType="String" resultMap="SysUserResult">
@@ -370,6 +440,8 @@
         <if test="hisUserId != null and hisUserId != ''">his_user_id,</if>
         <if test="deptCode != null and deptCode != ''">dept_code,</if>
         <if test="deptName != null and deptName != ''">dept_name,</if>
+        <if test="orgid != null and orgid != ''">orgid,</if>
+        <if test="campusid != null and campusid != ''">campusid,</if>
         create_time
         )values(
         <if test="userId != null and userId != ''">#{userId},</if>
@@ -395,6 +467,8 @@
         <if test="hisUserId != null and hisUserId != ''">#{hisUserId},</if>
         <if test="deptCode != null and deptCode != ''">#{deptCode},</if>
         <if test="deptName != null and deptName != ''">#{deptName},</if>
+        <if test="orgid != null and orgid != ''">#{orgid},</if>
+        <if test="campusid != null and campusid != ''">#{campusid},</if>
         sysdate()
         )
     </insert>
@@ -430,6 +504,8 @@
             </if>
             <if test="deptCode != null and deptCode != ''">dept_code=#{deptCode},</if>
             <if test="deptName != null and deptName != ''">dept_name=#{deptName},</if>
+            <if test="orgid != null and orgid != ''">orgid=#{orgid},</if>
+            <if test="campusid != null and campusid != ''">campusid=#{campusid},</if>
             update_time = sysdate()
         </set>
         where user_id = #{userId}

--
Gitblit v1.9.3