From a19eb9f3c3d07363830a274fc0493d311b1a85f8 Mon Sep 17 00:00:00 2001
From: Administrator <admin>
Date: Sat, 27 Nov 2021 18:01:12 +0800
Subject: [PATCH] 公司单位人数统计修改

---
 src/main/java/org/springblade/modules/information/mapper/InformationMapper.xml |   54 +++++++++++++++++++++++++++++++++++++++++++++++++++---
 1 files changed, 51 insertions(+), 3 deletions(-)

diff --git a/src/main/java/org/springblade/modules/information/mapper/InformationMapper.xml b/src/main/java/org/springblade/modules/information/mapper/InformationMapper.xml
index 49ce504..bbef26b 100644
--- a/src/main/java/org/springblade/modules/information/mapper/InformationMapper.xml
+++ b/src/main/java/org/springblade/modules/information/mapper/InformationMapper.xml
@@ -426,7 +426,23 @@
         and role_id = '1412226235153731586'
         and is_deleted = 0
         AND status=1
-        and dept_id = #{dept.id}
+        and dept_id in
+            (
+                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 := #{dept.id} ) t2
+                ) t3
+                WHERE
+                ischild != 0
+            )
     </select>
 
     <!--查询单位的已派遣人数-->
@@ -437,7 +453,23 @@
         and is_deleted = 0
         AND status=1
         AND dispatch=0
-        and dept_id = #{dept.id}
+        and dept_id in
+            (
+                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 := #{dept.id} ) t2
+                ) t3
+                WHERE
+                ischild != 0
+            )
     </select>
 
     <!--查询单位持证的人数-->
@@ -448,7 +480,23 @@
         and is_deleted = 0
         AND status=1
         AND hold=1
-        and dept_id = #{dept.id}
+        and dept_id in
+            (
+                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 := #{dept.id} ) t2
+                ) t3
+                WHERE
+                ischild != 0
+            )
     </select>
 
 </mapper>

--
Gitblit v1.9.3