From 3432fad3ebcecd73d3d50fa8dfb7934cc61cfd06 Mon Sep 17 00:00:00 2001
From: Administrator <admin>
Date: Mon, 16 Aug 2021 15:04:16 +0800
Subject: [PATCH] 保安员查询新增审查排序

---
 src/main/java/org/springblade/modules/information/mapper/InformationMapper.xml |  188 ++++++++++++++++++++++++++++++++++++++++++++--
 1 files changed, 178 insertions(+), 10 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 a90ce6d..220ac1c 100644
--- a/src/main/java/org/springblade/modules/information/mapper/InformationMapper.xml
+++ b/src/main/java/org/springblade/modules/information/mapper/InformationMapper.xml
@@ -23,6 +23,9 @@
         <result column="departmentid" property="departmentid"/>
         <result column="stats" property="stats"/>
         <result column="jurisdiction" property="jurisdiction"/>
+        <result column="representativecell" property="representativecell"/>
+        <result column="contacts" property="contacts"/>
+        <result column="contactscell" property="contactscell"/>
     </resultMap>
 
 
@@ -62,7 +65,8 @@
         SELECT IFNULL(B.confess, 0)  AS confess,
                IFNULL(C.staff, 0)    AS staff,
                IFNULL(D.security, 0) AS security,
-               IFNULL(E.armed, 0)    AS armed
+               IFNULL(E.armed, 0)    AS armed,
+               IFNULL(F.region, 0)    AS region
         FROM (SELECT jurisdiction FROM sys_information GROUP BY jurisdiction) A
                  LEFT JOIN (SELECT COUNT(stats) AS confess, jurisdiction
                             FROM sys_information
@@ -80,6 +84,10 @@
                             FROM sys_information
                             WHERE stats = 3
                             GROUP BY jurisdiction) E ON A.jurisdiction = E.jurisdiction
+                 LEFT JOIN (SELECT COUNT(stats) AS region, jurisdiction
+                            FROM sys_information
+                            WHERE stats = 4
+                            GROUP BY jurisdiction) F ON A.jurisdiction = E.jurisdiction
         WHERE A.jurisdiction = #{departmentid}
     </select>
 
@@ -94,7 +102,7 @@
         LEFT JOIN sys_jurisdiction j ON j.id= u.jurisdiction
         WHERE
         hold = 1
-        <if test="jurisdiction!=null and jurisdiction!='' and jurisdiction!='1123598813738675201'">
+        <if test="jurisdiction!=null and jurisdiction!=''">
             and u.jurisdiction =#{jurisdiction}
         </if>
         <if test="deptid!=null and deptid!=''">
@@ -149,10 +157,9 @@
         SELECT IFNULL(A.lastmonth, 0) AS lastmonth,
         IFNULL(B.thismouth, 0) AS thismouth,
         IFNULL(A.amount, 0) AS lastamount,
-        IFNULL(b.amount, 0) AS thisamount
+        IFNULL(B.amount, 0) AS thisamount
         FROM (
-        SELECT COUNT
-        (*) AS lastmonth,
+        SELECT COUNT(*) AS lastmonth,
         amount,
         deptid
         FROM
@@ -173,8 +180,7 @@
         deptid
         ) A
         left JOIN (
-        SELECT COUNT
-        (*) AS thismouth,
+        SELECT COUNT(*) AS thismouth,
         amount,
         deptid
         FROM
@@ -460,7 +466,7 @@
         ) B ON A.deptid = B.deptid
         ) C
         LEFT JOIN blade_dept d ON C.deptid = d.id
-        LEFT JOIN sys_jurisdiction j ON j.id = c.jurisdiction where 1=1
+        LEFT JOIN sys_jurisdiction j ON j.id = C.jurisdiction where 1=1
         <if test="jurisdiction!=null and jurisdiction!='' and jurisdiction!='1123598813738675201'">
             and C.jurisdiction =#{jurisdiction}
         </if>
@@ -503,7 +509,7 @@
         ) B ON A.dept_id = B.dept_id
         ) C
         LEFT JOIN blade_dept d ON C.dept_id = d.id
-        LEFT JOIN sys_jurisdiction j ON j.id = c.jurisdiction WHERE 1=1
+        LEFT JOIN sys_jurisdiction j ON j.id = C.jurisdiction WHERE 1=1
         <if test="jurisdiction!=null and jurisdiction!='' and jurisdiction!='1123598813738675201'">
             and C.jurisdiction =#{jurisdiction}
         </if>
@@ -540,7 +546,7 @@
         GROUP BY dept_id, jurisdiction
         ) B ON A.dept_id = B.dept_id) C
         LEFT JOIN blade_dept d ON C.dept_id = d.id
-        LEFT JOIN sys_jurisdiction j ON j.id = c.jurisdiction where 1=1
+        LEFT JOIN sys_jurisdiction j ON j.id = C.jurisdiction where 1=1
         <if test="jurisdiction!=null and jurisdiction!='' and jurisdiction!='1123598813738675201'">
             and C.jurisdiction =#{jurisdiction}
         </if>
@@ -728,6 +734,12 @@
         <if test="deptid!=null and deptid!=''">
             and u.dept_id =#{deptid}
         </if>
+        <if test="type!=null and type=='1'">
+            and to_days(u.update_time) = to_days(now());
+        </if>
+        <if test="type!=null and type=='2'">
+            and DATE_FORMAT(u.update_time, '%Y%m' ) = DATE_FORMAT( CURDATE( ) , '%Y%m' )
+        </if>
         GROUP BY d.dept_name,
         j.dept_name
     </select>
@@ -746,6 +758,12 @@
         <if test="deptid!=null and deptid!=''">
             and u.departmentid =#{deptid}
         </if>
+        <if test="type!=null and type=='1'">
+            and to_days(u.time) = to_days(now());
+        </if>
+        <if test="type!=null and type=='2'">
+            and DATE_FORMAT(u.time, '%Y%m' ) = DATE_FORMAT( CURDATE( ) , '%Y%m' )
+        </if>
         GROUP BY d.dept_name,
         j.dept_name
     </select>
@@ -755,6 +773,15 @@
         SELECT id, dept_name
         FROM sys_jurisdiction
         WHERE id!=1123598813738675201
+    </select>
+
+    <select id="selectExtypeUser" resultType="java.lang.Integer">
+        SELECT
+            COUNT( CASE WHEN ( examination_mx IS NOT NULL OR examination_mx != "" ) THEN 1 END ) AS sum
+        FROM
+            blade_user
+        WHERE
+            STATUS != 1
     </select>
 
     <!--派遣保安人數量-->
@@ -798,4 +825,145 @@
     <delete id="deleteDept">
         delete from  blade_dept where id=#{ids}
     </delete>
+
+
+    <select id="selectLi" resultType="java.util.HashMap">
+        SELECT
+        IFNULL( A.num, 0 ) AS num,
+        IFNULL( B.cznum, 0 ) AS cznum,
+        IFNULL( C.paiqnum, 0 ) AS paiqnum,
+        IFNULL( D.wpaiqnum, 0 ) AS wpaiqnum,
+        IFNULL( E.caijnum, 0 ) AS caijnum,
+        IFNULL( F.wcaijnum, 0 ) AS wcaijnum,
+        IFNULL( G.yicnum, 0 ) AS yicnum,
+        A.dept_id,
+        d.dept_name AS deptname,
+        j.dept_name AS jurname
+        FROM
+        ( SELECT COUNT( * ) AS num, dept_id, jurisdiction FROM blade_user WHERE role_id = '1412226235153731586' GROUP BY
+        dept_id, jurisdiction ) A
+        LEFT JOIN (
+        SELECT
+        COUNT( * ) AS cznum,
+        dept_id,
+        jurisdiction
+        FROM
+        blade_user
+        WHERE
+        role_id = '1412226235153731586'
+        AND hold=0
+        GROUP BY
+        dept_id,
+        jurisdiction
+        ) B ON A.dept_id = B.dept_id
+        LEFT JOIN (
+        SELECT
+        COUNT( * ) AS paiqnum,
+        dept_id,
+        jurisdiction
+        FROM
+        blade_user
+        WHERE
+        role_id = '1412226235153731586'
+        AND dispatch=0
+        GROUP BY
+        dept_id,
+        jurisdiction
+        ) C ON C.dept_id = A.dept_id
+        LEFT JOIN (
+        SELECT
+        COUNT( * ) AS wpaiqnum,
+        dept_id,
+        jurisdiction
+        FROM
+        blade_user
+        WHERE
+        role_id = '1412226235153731586'
+        AND dispatch=1
+        GROUP BY
+        dept_id,
+        jurisdiction
+        ) D ON D.dept_id = A.dept_id
+        LEFT JOIN (
+        SELECT
+        COUNT( * ) AS caijnum,
+        dept_id,
+        jurisdiction
+        FROM
+        blade_user
+        WHERE
+        role_id = '1412226235153731586'
+        AND photo=0
+        GROUP BY
+        dept_id,
+        jurisdiction
+        ) E ON E.dept_id = A.dept_id
+        LEFT JOIN (
+        SELECT
+        COUNT( * ) AS wcaijnum,
+        dept_id,
+        jurisdiction
+        FROM
+        blade_user
+        WHERE
+        role_id = '1412226235153731586'
+        AND photo=1
+        GROUP BY
+        dept_id,
+        jurisdiction
+        ) F ON F.dept_id = A.dept_id
+        LEFT JOIN (
+        SELECT
+        COUNT( * ) AS yicnum,
+        dept_id,
+        jurisdiction
+        FROM
+        blade_user
+        WHERE
+        role_id = '1412226235153731586'
+        AND examination_mx=1
+        GROUP BY
+        dept_id,
+        jurisdiction
+        ) G ON G.dept_id = A.dept_id
+        LEFT JOIN blade_dept d ON A.dept_id = d.id
+        LEFT JOIN sys_jurisdiction j ON j.id = A.jurisdiction
+        WHERE 1=1
+        <if test="jurisdiction!=null and jurisdiction!='' and jurisdiction!='1123598813738675201'">
+            and A.jurisdiction =#{jurisdiction}
+        </if>
+        <if test="deptid!=null and deptid!=''">
+            and A.dept_id =#{deptid}
+        </if>
+    </select>
+
+    <select id="seCountI" resultType="java.util.HashMap">
+        SELECT COUNT(*) as num,stats FROM sys_information
+        where 1=1
+        <if test="deptid!=null and deptid!=''">
+            and departmentid=#{deptid}
+        </if>
+        <if test="jurisdiction!=null and jurisdiction!=''and jurisdiction!='1123598813738675201'">
+            AND jurisdiction=#{jurisdiction}
+        </if>
+        GROUP BY stats
+    </select>
+    <select id="seCountUm" resultType="java.lang.String">
+        SELECT COUNT(*) as mnum FROM `blade_user` WHERE status=1 AND sex=1
+        <if test="deptid!=null and deptid!=''">
+            and dept_id=#{deptid}
+        </if>
+        <if test="jurisdiction!=null and jurisdiction!=''and jurisdiction!='1123598813738675201'">
+            AND jurisdiction=#{jurisdiction}
+        </if>
+    </select>
+    <select id="seCountUg" resultType="java.lang.String">
+        SELECT COUNT(*) as gnum FROM `blade_user` WHERE status=1 AND sex=2
+        <if test="deptid!=null and deptid!=''">
+            and dept_id=#{deptid}
+        </if>
+        <if test="jurisdiction!=null and jurisdiction!=''and jurisdiction!='1123598813738675201'">
+            AND jurisdiction=#{jurisdiction}
+        </if>
+    </select>
 </mapper>

--
Gitblit v1.9.3