From 345d17cf82e1bbc1fbfbeec10193c2bed59cd674 Mon Sep 17 00:00:00 2001
From: Administrator <admin>
Date: Mon, 27 Sep 2021 22:21:21 +0800
Subject: [PATCH] 注册登录,车辆,装备,枪支,招聘,培训考试修改

---
 src/main/java/org/springblade/modules/information/mapper/InformationMapper.xml |   56 ++++++++++++++++++++++++++++++++++++++++++--------------
 1 files changed, 42 insertions(+), 14 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 dbeebc2..224e874 100644
--- a/src/main/java/org/springblade/modules/information/mapper/InformationMapper.xml
+++ b/src/main/java/org/springblade/modules/information/mapper/InformationMapper.xml
@@ -61,15 +61,46 @@
         IFNULL(C.pnum ,0) as pnum
         FROM
         sys_information i
-        LEFT JOIN ( SELECT COUNT( * ) AS znum, dept_id FROM blade_user WHERE
-        ( role_id = '1412226235153731586' OR role_id = '1416733602219110402' ) AND
-        status=1 GROUP BY dept_id ) A ON A.dept_id = i.departmentid
-        LEFT JOIN ( SELECT COUNT( * ) AS cnum, dept_id FROM blade_user WHERE
-        ( role_id = '1412226235153731586' OR role_id = '1416733602219110402' ) AND
-        status=1 AND hold=1 GROUP BY dept_id ) B ON B.dept_id = i.departmentid
-        LEFT JOIN ( SELECT COUNT( * ) AS pnum, dept_id FROM blade_user WHERE role_id = '1412226235153731586' AND
-        status=1 AND dispatch=0 GROUP BY dept_id ) C ON C.dept_id = i.departmentid
+        LEFT JOIN
+        (
+        SELECT COUNT( * ) AS znum, dept_id FROM blade_user
+        WHERE 1=1
+        and role_id = '1412226235153731586'
+        and is_deleted = 0
+        AND status=1
+        GROUP BY dept_id
+        ) A
+        ON A.dept_id = i.departmentid
+        LEFT JOIN
+        (
+        SELECT COUNT( * ) AS cnum, dept_id FROM blade_user
+        WHERE 1=1
+        and role_id = '1412226235153731586'
+        and is_deleted = 0
+        AND status=1
+        AND hold=1
+        GROUP BY dept_id
+        ) B
+        ON B.dept_id = i.departmentid
+        LEFT JOIN
+        (
+        SELECT COUNT( * ) AS pnum, dept_id FROM blade_user
+        WHERE 1=1
+        and is_deleted = 0
+        and role_id = '1412226235153731586'
+        AND status=1
+        AND dispatch=0
+        GROUP BY dept_id
+        ) C
+        ON C.dept_id = i.departmentid
+        left join
+        sys_jurisdiction sj
+        on
+        sj.id = i.jurisdiction
         where 1=1
+        <if test="information.jurisdiction!=null and information.jurisdiction!='' and information.jurisdiction!='1372091709474910209'">
+            and (sj.id=#{information.jurisdiction} or sj.parent_id=#{information.jurisdiction})
+        </if>
         <if test="information.enterprisename!=null and information.enterprisename!=''">
             and i.enterpriseName like concat(concat('%', #{information.enterprisename}),'%')
         </if>
@@ -78,9 +109,6 @@
         </if>
         <if test="information.stats!=null and information.stats!=''">
             and i.stats=#{information.stats}
-        </if>
-        <if test="information.jurisdiction!=null and information.jurisdiction!='' and information.jurisdiction!='1372091709474910209'">
-            and i.jurisdiction=#{information.jurisdiction}
         </if>
         <if test="information.departmentid!=null and information.departmentid!=''">
             and i.departmentid=#{information.departmentid}
@@ -150,11 +178,11 @@
         FROM
         (
         SELECT departmentid, jurisdiction FROM sys_information GROUP BY departmentid, jurisdiction ) H
-        LEFT JOIN ( SELECT COUNT(*) AS num, u.dept_id FROM blade_user u WHERE u.examination_type = 0 and role_id =
+        LEFT JOIN ( SELECT COUNT(*) AS num, u.dept_id FROM blade_user u WHERE (u.examination_type = 0 or
+        u.examination_type is null) and role_id =
         '1412226235153731586' AND `status` = 1 AND is_deleted = 0 GROUP BY u.dept_id
         ) A ON H.departmentid = A.dept_id
-        LEFT JOIN ( SELECT COUNT(*) AS num, u.dept_id FROM blade_user u WHERE (u.examination_type = 1 or
-        u.examination_type is null ) and role_id = '1412226235153731586' AND `status` = 1 AND is_deleted = 0 GROUP BY
+        LEFT JOIN ( SELECT COUNT(*) AS num, u.dept_id FROM blade_user u WHERE u.examination_type = 1  and role_id = '1412226235153731586' AND `status` = 1 AND is_deleted = 0 GROUP BY
         u.dept_id
         ) B ON H.departmentid = B.dept_id where 1=1
         <if test="jurisdiction!=null and jurisdiction!='' and jurisdiction!='1372091709474910209'">

--
Gitblit v1.9.3