From 8b375fe00a241b3a769b82fe3dac8d1c9dce8a02 Mon Sep 17 00:00:00 2001
From: Administrator <admin>
Date: Thu, 16 Jun 2022 14:36:07 +0800
Subject: [PATCH] 模拟考试修改

---
 src/main/java/org/springblade/modules/dispatcher/mapper/DispatcherMapper.xml |   30 ++++++++++++++++++++++++++++--
 1 files changed, 28 insertions(+), 2 deletions(-)

diff --git a/src/main/java/org/springblade/modules/dispatcher/mapper/DispatcherMapper.xml b/src/main/java/org/springblade/modules/dispatcher/mapper/DispatcherMapper.xml
index 16a5fd6..64e2c70 100644
--- a/src/main/java/org/springblade/modules/dispatcher/mapper/DispatcherMapper.xml
+++ b/src/main/java/org/springblade/modules/dispatcher/mapper/DispatcherMapper.xml
@@ -15,7 +15,7 @@
     <!--派遣记录分页数据-->
     <select id="selectDispatcherPage" resultType="org.springblade.modules.dispatcher.vo.DispatcherVO">
         select
-            sd.*,bu.real_name securityName,sdu.name dispatcherCompany,bu.cardid idCardNo
+            sd.*,bu.real_name securityName,sdu.name dispatcherCompany,bu.cardid idCardNo,bd.dept_name deptName
         from
             sys_dispatcher sd
         left join
@@ -26,6 +26,10 @@
             blade_user bu
         on
             bu.id = sd.user_ids
+        left join
+            blade_dept bd
+        on
+            bd.id = bu.dept_id
         left join
             sys_jurisdiction sj
         on
@@ -40,7 +44,25 @@
             and sd.dispatcher_unit_id = #{dispatcher.dispatcherUnitId}
         </if>
         <if test="dispatcher.deptId!=null">
-            and sd.dept_id = #{dispatcher.deptId}
+            and sd.dept_id in
+            (
+                select id from blade_dept where id = #{dispatcher.deptId}
+                union
+                SELECT
+                id
+                FROM
+                (
+                SELECT
+                t1.id,t1.parent_id,t1.dept_name,
+                IF
+                ( find_in_set( parent_id, @pids ) > 0, @pids := concat( @pids, ',', id ), 0 ) AS ischild
+                FROM
+                ( SELECT id, parent_id,dept_name FROM blade_dept t ORDER BY parent_id, id ) t1,
+                ( SELECT @pids := #{dispatcher.deptId} ) t2
+                ) t3
+                WHERE
+                ischild != 0
+            )
         </if>
         <if test="dispatcher.dispatch!=null and dispatcher.dispatch!=''">
             and sd.status = #{dispatcher.dispatch}
@@ -53,6 +75,9 @@
         </if>
         <if test="dispatcher.securityName!=null and  dispatcher.securityName!=''">
             and bu.real_name like concat('%', #{dispatcher.securityName},'%')
+        </if>
+        <if test="dispatcher.deptName!=null and  dispatcher.deptName!=''">
+            and bd.dept_name like concat('%', #{dispatcher.deptName},'%')
         </if>
         <if test="dispatcher.cardid!=null and  dispatcher.cardid!=''">
             and sd.cardid like concat('%', #{dispatcher.cardid},'%')
@@ -90,6 +115,7 @@
         where
         1=1
         and dispatcher_unit_id = #{dispatcherUnitVO1.id}
+        and status = 0
     </select>
 
     <!--查询用的派遣信息-->

--
Gitblit v1.9.3