From 5cdadbb29f95f35b5eabdc733ce60b16d0338037 Mon Sep 17 00:00:00 2001
From: tangzy <tangzy123456>
Date: Tue, 20 Jul 2021 09:29:06 +0800
Subject: [PATCH] 1.保安员证编码
---
src/main/java/org/springblade/modules/information/mapper/InformationMapper.xml | 621 +++++++++++++++++++++++++++++++++++++++++++++++++++++++-
1 files changed, 607 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 bfdd344..f153c96 100644
--- a/src/main/java/org/springblade/modules/information/mapper/InformationMapper.xml
+++ b/src/main/java/org/springblade/modules/information/mapper/InformationMapper.xml
@@ -59,23 +59,616 @@
</delete>
<select id="selectCount" resultType="java.util.HashMap">
- SELECT
- isnull( B.confess, 0 ) AS confess,
- isnull( C.staff, 0 ) AS staff,
- isnull( D.security, 0 ) AS security,
- isnull( E.armed, 0 ) AS armed
- FROM
- ( SELECT jurisdiction FROM sys_information GROUP BY jurisdiction ) A
- FULL JOIN ( SELECT COUNT ( stats ) AS confess, jurisdiction FROM sys_information WHERE stats = 0 GROUP BY jurisdiction ) B ON A.jurisdiction = B.jurisdiction
- FULL JOIN ( SELECT COUNT ( stats ) AS staff, jurisdiction FROM sys_information WHERE stats = 1 GROUP BY jurisdiction ) C ON A.jurisdiction = C.jurisdiction
- FULL JOIN ( SELECT COUNT ( stats ) AS security, jurisdiction FROM sys_information WHERE stats = 2 GROUP BY jurisdiction ) D ON A.jurisdiction = D.jurisdiction
- FULL JOIN ( SELECT COUNT ( stats ) AS armed, jurisdiction FROM sys_information WHERE stats = 3 GROUP BY jurisdiction ) E ON A.jurisdiction = E.jurisdiction
- WHERE
- A.jurisdiction = #{departmentid}
+ SELECT isnull(B.confess, 0) AS confess,
+ isnull(C.staff, 0) AS staff,
+ isnull(D.security, 0) AS security,
+ isnull(E.armed, 0) AS armed
+ FROM (SELECT jurisdiction FROM sys_information GROUP BY jurisdiction) A
+ FULL JOIN (SELECT COUNT(stats) AS confess, jurisdiction
+ FROM sys_information
+ WHERE stats = 0
+ GROUP BY jurisdiction) B ON A.jurisdiction = B.jurisdiction
+ FULL JOIN (SELECT COUNT(stats) AS staff, jurisdiction
+ FROM sys_information
+ WHERE stats = 1
+ GROUP BY jurisdiction) C ON A.jurisdiction = C.jurisdiction
+ FULL JOIN (SELECT COUNT(stats) AS security, jurisdiction
+ FROM sys_information
+ WHERE stats = 2
+ GROUP BY jurisdiction) D ON A.jurisdiction = D.jurisdiction
+ FULL JOIN (SELECT COUNT(stats) AS armed, jurisdiction
+ FROM sys_information
+ WHERE stats = 3
+ GROUP BY jurisdiction) E ON A.jurisdiction = E.jurisdiction
+ WHERE A.jurisdiction = #{departmentid}
</select>
+
+ <!--保安公司未持证预警-->
<select id="selectInCount" resultType="java.util.HashMap">
- SELECT COUNT(u.dept_id) AS number,d.dept_name FROM blade_user u LEFT JOIN blade_dept d ON d.id=u.dept_id WHERE u.hold=1 GROUP BY u.dept_id,d.dept_name
+ SELECT
+ d.dept_name,
+ j.dept_name as jurname
+ FROM
+ blade_user u
+ LEFT JOIN blade_dept d ON d.id= u.dept_id
+ LEFT JOIN sys_jurisdiction j ON j.id= u.jurisdiction
+ WHERE
+ hold = 1
+ <if test="jurisdiction!=null and jurisdiction!='' and jurisdiction!='1123598813738675201'">
+ and u.jurisdiction =#{jurisdiction}
+ </if>
+ <if test="deptid!=null and deptid!=''">
+ and u.dept_id =#{deptid}
+ </if>
+ GROUP BY
+ d.dept_name,
+ j.dept_name
</select>
+ <!--通过辖区查询机构id,然后通过机构id查询当前机构交社保的人数(numj单位已交社保数量;numz单位人员总数)-->
+ <select id="selectCs" resultType="java.util.HashMap">
+ SELECT A.numj,
+ B.numz,
+ d.dept_name as deptname
+ FROM (
+ SELECT COUNT
+ (*) AS numj,
+ deptid
+ FROM sys_socil
+ WHERE deptid IN (SELECT i.departmentid
+ FROM sys_information i
+ LEFT JOIN sys_jurisdiction j ON j.id = i.jurisdiction where 1=1
+ <if test="jurisdiction!=null and jurisdiction!='' and jurisdiction!='1123598813738675201'">
+ and i.jurisdiction =#{jurisdiction}
+ </if>
+ GROUP BY i.departmentid)
+ GROUP BY deptid
+ ) A
+ FULL JOIN (
+ SELECT COUNT
+ (*) AS numz,
+ dept_id
+ FROM blade_user
+ WHERE dept_id IN (SELECT i.departmentid
+ FROM sys_information i
+ LEFT JOIN sys_jurisdiction j ON j.id = i.jurisdiction where 1=1
+ <if test="jurisdiction!=null and jurisdiction!=''">
+ and i.jurisdiction =#{jurisdiction}
+ </if>
+ GROUP BY i.departmentid)
+ GROUP BY dept_id
+ ) B ON A.deptid = B.dept_id
+ LEFT JOIN (SELECT id, dept_name FROM blade_dept) d ON d.id = A.deptid where 1=1
+ <if test="deptid!=null and deptid!=''">
+ and A.deptid =#{deptid}
+ </if>
+ </select>
+
+ <!--统计上个月和这个月交社保的人数以及缴纳金额-->
+ <select id="selectTo" resultType="java.util.HashMap">
+ SELECT ISNULL(A.lastmonth, 0) AS lastmonth,
+ ISNULL(B.thismouth, 0) AS thismouth,
+ ISNULL(A.amount, 0) AS lastamount,
+ ISNULL(b.amount, 0) AS thisamount
+ FROM (
+ SELECT COUNT
+ (*) AS lastmonth,
+ amount,
+ deptid
+ FROM
+ sys_socil
+ WHERE
+ deptid IN ( SELECT i.departmentid FROM sys_information i LEFT JOIN sys_jurisdiction j ON j.id= i.jurisdiction
+ where 1=1
+ <if test="jurisdiction!=null and jurisdiction!='' and jurisdiction!='1123598813738675201'">
+ and i.jurisdiction =#{jurisdiction}
+ </if>
+ GROUP BY i.departmentid )
+ AND datediff(month
+ , insuredtime
+ , getdate())=1
+ <if test="deptid!=null and deptid!=''">
+ and deptid =#{deptid}
+ </if>
+ GROUP BY
+ amount,
+ deptid
+ ) A
+ FULL JOIN (
+ SELECT COUNT
+ (*) AS thismouth,
+ amount,
+ deptid
+ FROM
+ sys_socil
+ WHERE
+ deptid IN ( SELECT i.departmentid FROM sys_information i LEFT JOIN sys_jurisdiction j ON j.id= i.jurisdiction
+ where 1=1
+ <if test="jurisdiction!=null and jurisdiction!='' and jurisdiction!='1123598813738675201'">
+ and i.jurisdiction =#{jurisdiction}
+ </if>
+ GROUP BY i.departmentid )
+ AND datediff(month
+ , insuredtime
+ , getdate())=0
+ <if test="deptid!=null and deptid!=''">
+ and deptid =#{deptid}
+ </if>
+ GROUP BY
+ amount,
+ deptid
+ ) B ON A.deptid = B.deptid
+ </select>
+
+
+ <!--查询本年所有月份的交社保的数量-->
+ <select id="queryYearSoil" resultType="java.util.HashMap">
+ SELECT COUNT
+ (CASE WHEN MONTH (
+ s.insuredtime ) = 1 THEN s.cardid END ) AS '1', COUNT(CASE WHEN MONTH ( s.insuredtime ) = 2 THEN s.cardid END )
+ AS '2', COUNT(CASE WHEN MONTH ( s.insuredtime ) = 3 THEN s.cardid END ) AS '3', COUNT(CASE WHEN MONTH (
+ s.insuredtime ) = 4 THEN s.cardid END ) AS '4', COUNT(CASE WHEN MONTH ( s.insuredtime ) = 5 THEN s.cardid END )
+ AS '5', COUNT(CASE WHEN MONTH ( s.insuredtime ) = 6 THEN s.cardid END ) AS '6', COUNT(CASE WHEN MONTH (
+ s.insuredtime ) = 7 THEN s.cardid END ) AS '7', COUNT(CASE WHEN MONTH ( s.insuredtime ) = 8 THEN s.cardid END )
+ AS '8', COUNT(CASE WHEN MONTH ( s.insuredtime ) = 9 THEN s.cardid END ) AS '9', COUNT(CASE WHEN MONTH (
+ s.insuredtime ) = 10 THEN s.cardid END ) AS '10', COUNT(CASE WHEN MONTH ( s.insuredtime ) = 11 THEN s.cardid END
+ ) AS '11', COUNT(CASE WHEN MONTH ( s.insuredtime ) = 12 THEN s.cardid END ) AS '12'
+ FROM sys_socil AS s
+ WHERE
+ YEAR ( s.insuredtime ) =#{year}
+ AND deptid IN (
+ SELECT
+ i.departmentid
+ FROM
+ sys_information i
+ LEFT JOIN sys_jurisdiction j ON j.id= i.jurisdiction where 1=1
+ <if test="jurisdiction!=null and jurisdiction!='' and jurisdiction!='1123598813738675201'">
+ and i.jurisdiction =#{jurisdiction}
+ </if>
+ GROUP BY
+ i.departmentid )
+ <if test="deptid!=null and deptid!=''">
+ and deptid =#{deptid}
+ </if>
+ </select>
+
+ <!--查询本年所有月份的交社保的金额-->
+ <select id="queryYearAn" resultType="java.util.HashMap">
+ SELECT ISNULL(SUM(CASE WHEN MONTH (s.insuredtime) = 1 THEN s.amount END ), 0) AS '1', ISNULL(SUM(CASE WHEN MONTH
+ (s.insuredtime) = 2 THEN s.amount END ), 0) AS '2', ISNULL(SUM(CASE WHEN MONTH (s.insuredtime) = 3 THEN s.amount
+ END ), 0) AS '3', ISNULL(SUM(CASE WHEN MONTH (s.insuredtime) = 4 THEN s.amount END ), 0) AS '4', ISNULL(SUM(CASE
+ WHEN MONTH (s.insuredtime) = 5 THEN s.amount END ), 0) AS '5', ISNULL(SUM(CASE WHEN MONTH (s.insuredtime) = 6
+ THEN s.amount END ), 0) AS '6', ISNULL(SUM(CASE WHEN MONTH (s.insuredtime) = 7 THEN s.amount END ), 0) AS '7',
+ ISNULL(SUM(CASE WHEN MONTH (s.insuredtime) = 8 THEN s.amount END ), 0) AS '8', ISNULL(SUM(CASE WHEN MONTH
+ (s.insuredtime) = 9 THEN s.amount END ), 0) AS '9', ISNULL(SUM(CASE WHEN MONTH (s.insuredtime) = 10 THEN
+ s.amount END ), 0) AS '10', ISNULL(SUM(CASE WHEN MONTH (s.insuredtime) = 11 THEN s.amount END ), 0) AS '11',
+ ISNULL(SUM(CASE WHEN MONTH (s.insuredtime) = 12 THEN s.amount END ), 0) AS '12'
+ FROM sys_socil AS s
+ WHERE YEAR (s.insuredtime) =#{year}
+ AND deptid IN (SELECT i.departmentid FROM sys_information i LEFT JOIN sys_jurisdiction j ON j.id= i.jurisdiction
+ where 1=1
+ <if test="jurisdiction!=null and jurisdiction!='' and jurisdiction!='1123598813738675201'">
+ and i.jurisdiction =#{jurisdiction}
+ </if>
+ GROUP BY i.departmentid )
+ <if test="deptid!=null and deptid!=''">
+ and deptid =#{deptid}
+ </if>
+ </select>
+
+
+ <!--总保安数量-->
+ <select id="queryCountB" resultType="java.util.HashMap">
+ SELECT ISNULL(A.thisnum, 0) as thisnum,
+ ISNULL(B.lastnum, 0) as lastnum
+ FROM (
+ SELECT COUNT
+ (*) AS thisnum,
+ dept_id
+ FROM blade_user
+ WHERE dept_id IN (SELECT i.departmentid
+ FROM sys_information i
+ LEFT JOIN sys_jurisdiction j ON j.id = i.jurisdiction where 1=1
+ <if test="jurisdiction!=null and jurisdiction!=''">
+ and i.jurisdiction =#{jurisdiction}
+ </if>
+ GROUP BY i.departmentid)
+ AND role_id = '1413323482159321089'
+ <if test="deptid!=null and deptid!=''">
+ and deptid =#{deptid}
+ </if>
+ AND datediff(
+ MONTH, create_time,
+ getdate()) = 0
+ GROUP BY dept_id
+ ) A
+ FULL JOIN (
+ SELECT COUNT
+ (*) AS lastnum,
+ dept_id
+ FROM blade_user
+ WHERE dept_id IN (SELECT i.departmentid
+ FROM sys_information i
+ LEFT JOIN sys_jurisdiction j ON j.id = i.jurisdiction
+ GROUP BY i.departmentid)
+ AND role_id = '1413323482159321089'
+ AND datediff(
+ MONTH, create_time,
+ getdate()) = 1
+ GROUP BY dept_id
+ ) B ON A.dept_id = B.dept_id
+ </select>
+
+ <!--正常保安数量-->
+ <select id="queryCountZc" resultType="java.util.HashMap">
+ SELECT ISNULL(A.thisnum, 0) as thisnum,
+ ISNULL(B.lastnum, 0) as lastnum
+ FROM (
+ SELECT COUNT
+ (*) AS thisnum,
+ dept_id
+ FROM blade_user
+ WHERE dept_id IN (SELECT i.departmentid
+ FROM sys_information i
+ LEFT JOIN sys_jurisdiction j ON j.id = i.jurisdiction where 1=1
+ <if test="jurisdiction!=null and jurisdiction!=''">
+ and i.jurisdiction =#{jurisdiction}
+ </if>
+ GROUP BY i.departmentid)
+ AND role_id = '1413323482159321089'
+ AND examination = 0
+ <if test="deptid!=null and deptid!=''">
+ and deptid =#{deptid}
+ </if>
+ AND datediff(
+ MONTH, create_time,
+ getdate()) = 0
+ GROUP BY dept_id
+ ) A
+ FULL JOIN (
+ SELECT COUNT
+ (*) AS lastnum,
+ dept_id
+ FROM blade_user
+ WHERE dept_id IN (SELECT i.departmentid
+ FROM sys_information i
+ LEFT JOIN sys_jurisdiction j ON j.id = i.jurisdiction
+ GROUP BY i.departmentid)
+ AND role_id = '1413323482159321089'
+ AND examination = 0
+ AND datediff(
+ MONTH, create_time,
+ getdate()) = 1
+ GROUP BY dept_id
+ ) B ON A.dept_id = B.dept_id
+ </select>
+
+ <!--持证保安数量-->
+ <select id="queryCountCz" resultType="java.util.HashMap">
+ SELECT ISNULL(A.thisnum, 0) as thisnum,
+ ISNULL(B.lastnum, 0) as lastnum
+ FROM (
+ SELECT COUNT
+ (*) AS thisnum,
+ dept_id
+ FROM blade_user
+ WHERE dept_id IN (SELECT i.departmentid
+ FROM sys_information i
+ LEFT JOIN sys_jurisdiction j ON j.id = i.jurisdiction where 1=1
+ <if test="jurisdiction!=null and jurisdiction!=''">
+ and i.jurisdiction =#{jurisdiction}
+ </if>
+ GROUP BY i.departmentid)
+ AND role_id = '1413323482159321089'
+ AND hold = 0
+ <if test="deptid!=null and deptid!=''">
+ and deptid =#{deptid}
+ </if>
+ AND datediff(
+ MONTH, create_time,
+ getdate()) = 0
+ GROUP BY dept_id
+ ) A
+ FULL JOIN (
+ SELECT COUNT
+ (*) AS lastnum,
+ dept_id
+ FROM blade_user
+ WHERE dept_id IN (SELECT i.departmentid
+ FROM sys_information i
+ LEFT JOIN sys_jurisdiction j ON j.id = i.jurisdiction
+ GROUP BY i.departmentid)
+ AND role_id = '1413323482159321089'
+ AND hold = 0
+ AND datediff(
+ MONTH, create_time,
+ getdate()) = 1
+ GROUP BY dept_id
+ ) B ON A.dept_id = B.dept_id
+ </select>
+
+ <!--缴纳社保数量-->
+ <select id="queryCountSb" resultType="java.util.HashMap">
+ SELECT ISNULL(A.thisnum, 0) AS thisnum,
+ ISNULL(B.lastnum, 0) AS lastnum
+ FROM (
+ SELECT COUNT
+ (*) AS thisnum,
+ deptid
+ FROM
+ sys_socil
+ WHERE
+ deptid IN ( SELECT i.departmentid FROM sys_information i LEFT JOIN sys_jurisdiction j ON j.id= i.jurisdiction
+ where 1=1
+ <if test="jurisdiction!=null and jurisdiction!='' and jurisdiction!='1123598813738675201'">
+ and i.jurisdiction =#{jurisdiction}
+ </if>
+ GROUP BY i.departmentid )
+ AND datediff(month
+ , insuredtime
+ , getdate())=0
+ <if test="deptid!=null and deptid!=''">
+ and deptid =#{deptid}
+ </if>
+ GROUP BY
+ deptid
+ ) A
+ FULL JOIN (
+ SELECT COUNT
+ (*) AS lastnum,
+ deptid
+ FROM
+ sys_socil
+ WHERE
+ deptid IN ( SELECT i.departmentid FROM sys_information i LEFT JOIN sys_jurisdiction j ON j.id= i.jurisdiction
+ where 1=1
+ <if test="jurisdiction!=null and jurisdiction!='' and jurisdiction!='1123598813738675201'">
+ and i.jurisdiction =#{jurisdiction}
+ </if>
+ GROUP BY i.departmentid )
+ AND datediff(month
+ , insuredtime
+ , getdate())=1
+ <if test="deptid!=null and deptid!=''">
+ and deptid =#{deptid}
+ </if>
+ GROUP BY
+ deptid
+ ) B ON A.deptid = B.deptid
+ </select>
+
+ <!--服务客户数量-->
+ <select id="queryCountKh" resultType="java.util.HashMap">
+ SELECT ISNULL(A.thisnum, 0) AS thisnum,
+ ISNULL(B.lastnum, 0) AS lastnum
+ FROM (
+ SELECT COUNT
+ (*) AS thisnum,
+ dept_id
+ FROM
+ sys_dispatcher_unit
+ WHERE
+ dept_id IN ( SELECT i.departmentid FROM sys_information i LEFT JOIN sys_jurisdiction j ON j.id= i.jurisdiction
+ where 1=1
+ <if test="jurisdiction!=null and jurisdiction!='' and jurisdiction!='1123598813738675201'">
+ and i.jurisdiction =#{jurisdiction}
+ </if>
+ GROUP BY i.departmentid )
+ AND datediff(month
+ , create_time
+ , getdate())=0
+ <if test="deptid!=null and deptid!=''">
+ and dept_id =#{deptid}
+ </if>
+ GROUP BY
+ dept_id
+ ) A
+ FULL JOIN (
+ SELECT COUNT
+ (*) AS lastnum,
+ dept_id
+ FROM
+ sys_dispatcher_unit
+ WHERE
+ dept_id IN ( SELECT i.departmentid FROM sys_information i LEFT JOIN sys_jurisdiction j ON j.id= i.jurisdiction
+ where 1=1
+ <if test="jurisdiction!=null and jurisdiction!='' and jurisdiction!='1123598813738675201'">
+ and i.jurisdiction =#{jurisdiction}
+ </if>
+ GROUP BY i.departmentid )
+ AND datediff(month
+ , create_time
+ , getdate())=1
+ <if test="deptid!=null and deptid!=''">
+ and dept_id =#{deptid}
+ </if>
+ GROUP BY
+ dept_id
+ ) B ON A.dept_id = B.dept_id
+ </select>
+
+ <!--保安派遣数量-->
+ <select id="queryCountPq" resultType="java.util.HashMap">
+ SELECT ISNULL(A.thisnum, 0) AS thisnum,
+ ISNULL(B.lastnum, 0) AS lastnum
+ FROM (
+ SELECT COUNT
+ (*) AS thisnum,
+ dept_id
+ FROM
+ sys_dispatcher
+ WHERE
+ dept_id IN ( SELECT i.departmentid FROM sys_information i LEFT JOIN sys_jurisdiction j ON j.id= i.jurisdiction
+ where 1=1
+ <if test="jurisdiction!=null and jurisdiction!='' and jurisdiction!='1123598813738675201'">
+ and i.jurisdiction =#{jurisdiction}
+ </if>
+ GROUP BY i.departmentid )
+ AND datediff(month
+ , dispatcherTime
+ , getdate())=0
+ <if test="deptid!=null and deptid!=''">
+ and dept_id =#{deptid}
+ </if>
+ GROUP BY
+ dept_id
+ ) A
+ FULL JOIN (
+ SELECT COUNT
+ (*) AS lastnum,
+ dept_id
+ FROM
+ sys_dispatcher
+ WHERE
+ dept_id IN ( SELECT i.departmentid FROM sys_information i LEFT JOIN sys_jurisdiction j ON j.id= i.jurisdiction
+ where 1=1
+ <if test="jurisdiction!=null and jurisdiction!='' and jurisdiction!='1123598813738675201'">
+ and i.jurisdiction =#{jurisdiction}
+ </if>
+ GROUP BY i.departmentid )
+ AND datediff(month
+ , dispatcherTime
+ , getdate())=1
+ <if test="deptid!=null and deptid!=''">
+ and dept_id =#{deptid}
+ </if>
+ GROUP BY
+ dept_id
+ ) B ON A.dept_id = B.dept_id
+ </select>
+
+
+ <!--查询本年所有月份的总人数-->
+ <select id="queryYearZ" resultType="java.util.HashMap">
+ SELECT COUNT
+ (CASE WHEN MONTH (
+ s.create_time ) = 1 THEN s.role_id END ) AS '1', COUNT(CASE WHEN MONTH ( s.create_time ) = 2 THEN s.role_id END
+ ) AS '2', COUNT(CASE WHEN MONTH ( s.create_time ) = 3 THEN s.role_id END ) AS '3', COUNT(CASE WHEN MONTH (
+ s.create_time ) = 4 THEN s.role_id END ) AS '4', COUNT(CASE WHEN MONTH ( s.create_time ) = 5 THEN s.role_id END
+ ) AS '5', COUNT(CASE WHEN MONTH ( s.create_time ) = 6 THEN s.role_id END ) AS '6', COUNT(CASE WHEN MONTH (
+ s.create_time ) = 7 THEN s.role_id END ) AS '7', COUNT(CASE WHEN MONTH ( s.create_time ) = 8 THEN s.role_id END
+ ) AS '8', COUNT(CASE WHEN MONTH ( s.create_time ) = 9 THEN s.role_id END ) AS '9', COUNT(CASE WHEN MONTH (
+ s.create_time ) = 10 THEN s.role_id END ) AS '10', COUNT(CASE WHEN MONTH ( s.create_time ) = 11 THEN s.role_id
+ END ) AS '11', COUNT(CASE WHEN MONTH ( s.create_time ) = 12 THEN s.role_id END ) AS '12'
+ FROM blade_user AS s
+ WHERE
+ YEAR ( s.create_time ) =#{year}
+ AND dept_id IN (
+ SELECT
+ i.departmentid
+ FROM
+ sys_information i
+ LEFT JOIN sys_jurisdiction j ON j.id= i.jurisdiction where 1=1
+ <if test="jurisdiction!=null and jurisdiction!='' and jurisdiction!='1123598813738675201'">
+ and i.jurisdiction =#{jurisdiction}
+ </if>
+ GROUP BY
+ i.departmentid
+ )
+ AND role_id='1413323482159321089'
+ <if test="deptid!=null and deptid!=''">
+ and dept_id =#{deptid}
+ </if>
+ </select>
+ <!--查询本年所有月份的正常保安人数-->
+ <select id="queryYearZc" resultType="java.util.HashMap">
+ SELECT COUNT
+ (CASE WHEN MONTH (
+ s.create_time ) = 1 THEN s.role_id END ) AS '1', COUNT(CASE WHEN MONTH ( s.create_time ) = 2 THEN s.role_id END
+ ) AS '2', COUNT(CASE WHEN MONTH ( s.create_time ) = 3 THEN s.role_id END ) AS '3', COUNT(CASE WHEN MONTH (
+ s.create_time ) = 4 THEN s.role_id END ) AS '4', COUNT(CASE WHEN MONTH ( s.create_time ) = 5 THEN s.role_id END
+ ) AS '5', COUNT(CASE WHEN MONTH ( s.create_time ) = 6 THEN s.role_id END ) AS '6', COUNT(CASE WHEN MONTH (
+ s.create_time ) = 7 THEN s.role_id END ) AS '7', COUNT(CASE WHEN MONTH ( s.create_time ) = 8 THEN s.role_id END
+ ) AS '8', COUNT(CASE WHEN MONTH ( s.create_time ) = 9 THEN s.role_id END ) AS '9', COUNT(CASE WHEN MONTH (
+ s.create_time ) = 10 THEN s.role_id END ) AS '10', COUNT(CASE WHEN MONTH ( s.create_time ) = 11 THEN s.role_id
+ END ) AS '11', COUNT(CASE WHEN MONTH ( s.create_time ) = 12 THEN s.role_id END ) AS '12'
+ FROM blade_user AS s
+ WHERE
+ YEAR ( s.create_time ) =#{year}
+ AND dept_id IN (
+ SELECT
+ i.departmentid
+ FROM
+ sys_information i
+ LEFT JOIN sys_jurisdiction j ON j.id= i.jurisdiction where 1=1
+ <if test="jurisdiction!=null and jurisdiction!='' and jurisdiction!='1123598813738675201'">
+ and i.jurisdiction =#{jurisdiction}
+ </if>
+ GROUP BY
+ i.departmentid
+ )
+ AND role_id='1413323482159321089' AND examination=0
+ <if test="deptid!=null and deptid!=''">
+ and dept_id =#{deptid}
+ </if>
+ </select>
+ <!--查询本年所有月份的保安持证人数-->
+ <select id="queryYearCz" resultType="java.util.HashMap">
+ SELECT COUNT
+ (CASE WHEN MONTH (
+ s.create_time ) = 1 THEN s.role_id END ) AS '1', COUNT(CASE WHEN MONTH ( s.create_time ) = 2 THEN s.role_id END
+ ) AS '2', COUNT(CASE WHEN MONTH ( s.create_time ) = 3 THEN s.role_id END ) AS '3', COUNT(CASE WHEN MONTH (
+ s.create_time ) = 4 THEN s.role_id END ) AS '4', COUNT(CASE WHEN MONTH ( s.create_time ) = 5 THEN s.role_id END
+ ) AS '5', COUNT(CASE WHEN MONTH ( s.create_time ) = 6 THEN s.role_id END ) AS '6', COUNT(CASE WHEN MONTH (
+ s.create_time ) = 7 THEN s.role_id END ) AS '7', COUNT(CASE WHEN MONTH ( s.create_time ) = 8 THEN s.role_id END
+ ) AS '8', COUNT(CASE WHEN MONTH ( s.create_time ) = 9 THEN s.role_id END ) AS '9', COUNT(CASE WHEN MONTH (
+ s.create_time ) = 10 THEN s.role_id END ) AS '10', COUNT(CASE WHEN MONTH ( s.create_time ) = 11 THEN s.role_id
+ END ) AS '11', COUNT(CASE WHEN MONTH ( s.create_time ) = 12 THEN s.role_id END ) AS '12'
+ FROM blade_user AS s
+ WHERE
+ YEAR ( s.create_time ) =#{year}
+ AND dept_id IN (
+ SELECT
+ i.departmentid
+ FROM
+ sys_information i
+ LEFT JOIN sys_jurisdiction j ON j.id= i.jurisdiction where 1=1
+ <if test="jurisdiction!=null and jurisdiction!='' and jurisdiction!='1123598813738675201'">
+ and i.jurisdiction =#{jurisdiction}
+ </if>
+ GROUP BY
+ i.departmentid
+ )
+ AND role_id='1413323482159321089' AND hold=0
+ <if test="deptid!=null and deptid!=''">
+ and dept_id =#{deptid}
+ </if>
+ </select>
+
+ <!--查询本年所有月份的客户数量-->
+ <select id="queryYearKh" resultType="java.util.HashMap">
+ SELECT COUNT
+ ( CASE WHEN MONTH ( s.create_time ) = 1 THEN s.dept_id END ) AS '1',
+ COUNT ( CASE WHEN MONTH ( s.create_time ) = 2 THEN s.dept_id END ) AS '2',
+ COUNT ( CASE WHEN MONTH ( s.create_time ) = 3 THEN s.dept_id END ) AS '3',
+ COUNT ( CASE WHEN MONTH ( s.create_time ) = 4 THEN s.dept_id END ) AS '4',
+ COUNT ( CASE WHEN MONTH ( s.create_time ) = 5 THEN s.dept_id END ) AS '5',
+ COUNT ( CASE WHEN MONTH ( s.create_time ) = 6 THEN s.dept_id END ) AS '6',
+ COUNT ( CASE WHEN MONTH ( s.create_time ) = 7 THEN s.dept_id END ) AS '7',
+ COUNT ( CASE WHEN MONTH ( s.create_time ) = 8 THEN s.dept_id END ) AS '8',
+ COUNT ( CASE WHEN MONTH ( s.create_time ) = 9 THEN s.dept_id END ) AS '9',
+ COUNT ( CASE WHEN MONTH ( s.create_time ) = 10 THEN s.dept_id END ) AS '10',
+ COUNT ( CASE WHEN MONTH ( s.create_time ) = 11 THEN s.dept_id END ) AS '11',
+ COUNT ( CASE WHEN MONTH ( s.create_time ) = 12 THEN s.dept_id END ) AS '12'
+ FROM
+ sys_dispatcher_unit AS s
+ WHERE
+ YEAR ( s.create_time ) =#{year}
+ AND dept_id IN (
+ SELECT
+ i.departmentid
+ FROM
+ sys_information i
+ LEFT JOIN sys_jurisdiction j ON j.id= i.jurisdiction where 1=1
+ <if test="jurisdiction!=null and jurisdiction!='' and jurisdiction!='1123598813738675201'">
+ and i.jurisdiction =#{jurisdiction}
+ </if>
+ GROUP BY
+ i.departmentid
+ )
+ <if test="deptid!=null and deptid!=''">
+ and dept_id =#{deptid}
+ </if>
+ </select>
</mapper>
--
Gitblit v1.9.3