From c421c54a84cc1350bd9b5d6ab545ff3a440b0a1d Mon Sep 17 00:00:00 2001
From: tangzy <tangzy123456>
Date: Wed, 21 Jul 2021 14:37:43 +0800
Subject: [PATCH] 1.统计
---
src/main/java/org/springblade/modules/information/mapper/InformationMapper.xml | 326 +++++++++++++++++++++++-------------------------------
1 files changed, 140 insertions(+), 186 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 2afaed4..7bdf3c1 100644
--- a/src/main/java/org/springblade/modules/information/mapper/InformationMapper.xml
+++ b/src/main/java/org/springblade/modules/information/mapper/InformationMapper.xml
@@ -261,54 +261,44 @@
<!--总保安数量-->
<select id="queryCountB" resultType="java.util.HashMap">
SELECT C.thisnum,
- C.lastnum,
- d.dept_name as deptname,
- j.dept_name as jurname
+ C.lastnum,
+ d.dept_name as deptname,
+ j.dept_name as jurname
FROM (
- SELECT ISNULL(A.thisnum, 0) AS thisnum,
- ISNULL(B.lastnum, 0) AS lastnum,
- A.dept_id,
- A.jurisdiction
- FROM (
- SELECT COUNT
- (*) AS thisnum,
- dept_id,
- jurisdiction
- FROM blade_user
- WHERE dept_id IN (
- SELECT i.departmentid
- FROM sys_information i
- INNER JOIN sys_jurisdiction j ON j.id = i.jurisdiction
- GROUP BY i.departmentid
- )
- AND role_id = '1413323482159321089'
- AND datediff(
- MONTH, create_time,
- getdate()) = 0
- GROUP BY dept_id,
- jurisdiction
- ) A
- FULL JOIN (
- SELECT COUNT
- (*) AS lastnum,
- dept_id,
- jurisdiction
- 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,
- 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
+ SELECT ISNULL(A.thisnum, 0) AS thisnum,
+ ISNULL(B.lastnum, 0) AS lastnum,
+ A.dept_id,
+ A.jurisdiction
+ FROM (
+ SELECT COUNT
+ (*) AS thisnum,
+ dept_id,
+ jurisdiction
+ FROM blade_user
+ WHERE role_id = '1413323482159321089'
+ AND datediff(
+ MONTH, create_time,
+ getdate()) = 0
+ GROUP BY dept_id,
+ jurisdiction
+ ) A
+ FULL JOIN (
+ SELECT COUNT
+ (*) AS lastnum,
+ dept_id,
+ jurisdiction
+ FROM blade_user
+ WHERE role_id = '1413323482159321089'
+ AND datediff(
+ MONTH, create_time,
+ getdate()) = 1
+ 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
<if test="jurisdiction!=null and jurisdiction!=''">
- and C.jurisdiction =#{jurisdiction}
+ and C.jurisdiction =#{jurisdiction}
</if>
<if test="deptid!=null and deptid!=''">
and C.dept_id =#{deptid}
@@ -332,14 +322,8 @@
dept_id,
jurisdiction
FROM blade_user
- WHERE dept_id IN (
- SELECT i.departmentid
- FROM sys_information i
- INNER JOIN sys_jurisdiction j ON j.id = i.jurisdiction
- GROUP BY i.departmentid
- )
- AND role_id = '1413323482159321089'
- AND examination = 0
+ WHERE role_id = '1413323482159321089'
+ AND examination_type = 0
AND datediff(
MONTH, create_time,
getdate()) = 0
@@ -352,12 +336,8 @@
dept_id,
jurisdiction
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
+ WHERE role_id = '1413323482159321089'
+ AND examination_type = 0
AND datediff(
MONTH, create_time,
getdate()) = 1
@@ -391,13 +371,7 @@
dept_id,
jurisdiction
FROM blade_user
- WHERE dept_id IN (
- SELECT i.departmentid
- FROM sys_information i
- INNER JOIN sys_jurisdiction j ON j.id = i.jurisdiction
- GROUP BY i.departmentid
- )
- AND role_id = '1413323482159321089'
+ WHERE role_id = '1413323482159321089'
AND hold = 0
AND datediff(
MONTH, create_time,
@@ -411,11 +385,7 @@
dept_id,
jurisdiction
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'
+ WHERE role_id = '1413323482159321089'
AND hold = 0
AND datediff(
MONTH, create_time,
@@ -435,152 +405,136 @@
<!--缴纳社保数量-->
<select id="queryCountSb" resultType="java.util.HashMap">
+ SELECT C.thisnum,
+ C.lastnum,
+ d.dept_name AS deptname,
+ j.dept_name AS jurname
+ FROM (
SELECT ISNULL(A.thisnum, 0) AS thisnum,
- ISNULL(B.lastnum, 0) AS lastnum
+ ISNULL(B.lastnum, 0) AS lastnum,
+ A.deptid,
+ A.jurisdiction
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
+ deptid,
+ jurisdiction
+ FROM sys_socil
+ WHERE datediff(
+ MONTH, insuredtime,
+ getdate()) = 0
+ GROUP BY deptid,
+ jurisdiction
) 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
+ deptid,
+ jurisdiction
+ FROM sys_socil
+ WHERE datediff(
+ MONTH, insuredtime,
+ getdate()) = 1
+ GROUP BY deptid,
+ jurisdiction
) 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
+ <if test="jurisdiction!=null and jurisdiction!=''">
+ and C.jurisdiction =#{jurisdiction}
+ </if>
+ <if test="deptid!=null and deptid!=''">
+ and C.dept_id =#{deptid}
+ </if>
</select>
<!--服务客户数量-->
<select id="queryCountKh" resultType="java.util.HashMap">
+ SELECT C.thisnum,
+ C.lastnum,
+ C.dept_id,
+ d.dept_name AS deptname,
+ j.dept_name AS jurname
+ FROM (
SELECT ISNULL(A.thisnum, 0) AS thisnum,
- ISNULL(B.lastnum, 0) AS lastnum
+ ISNULL(B.lastnum, 0) AS lastnum,
+ A.dept_id,
+ A.jurisdiction
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
+ dept_id,
+ jurisdiction
+ FROM sys_dispatcher
+ WHERE datediff(
+ MONTH, dispatcherTime,
+ getdate()) = 0
+ GROUP BY dept_id,
+ jurisdiction
) 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
+ dept_id,
+ jurisdiction
+ FROM sys_dispatcher
+ WHERE datediff(
+ MONTH, dispatcherTime,
+ getdate()) = 1
+ 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
+ <if test="jurisdiction!=null and jurisdiction!=''">
+ and C.jurisdiction =#{jurisdiction}
+ </if>
+ <if test="deptid!=null and deptid!=''">
+ and C.dept_id =#{deptid}
+ </if>
</select>
<!--保安派遣数量-->
<select id="queryCountPq" resultType="java.util.HashMap">
- SELECT ISNULL(A.thisnum, 0) AS thisnum,
- ISNULL(B.lastnum, 0) AS lastnum
+ SELECT C.thisnum,
+ C.lastnum,
+ d.dept_name as deptname,
+ j.dept_name as jurname
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
+ SELECT ISNULL(A.thisnum, 0) AS thisnum,
+ ISNULL(B.lastnum, 0) AS lastnum,
+ A.dept_id,
+ A.jurisdiction
+ FROM (
+ SELECT SUM(num) AS thisnum,
+ dept_id,
+ jurisdiction
+ FROM sys_dispatcher
+ WHERE datediff(
+ MONTH, dispatcherTime,
+ getdate()) = 0
+ GROUP BY dept_id, jurisdiction
) 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}
+ SELECT SUM(num) AS lastnum,
+ dept_id,
+ jurisdiction
+ FROM sys_dispatcher
+ WHERE datediff(
+ MONTH, dispatcherTime,
+ getdate()) = 1
+ 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
+ <if test="jurisdiction!=null and jurisdiction!=''">
+ and C.jurisdiction =#{jurisdiction}
</if>
- GROUP BY i.departmentid )
- AND datediff(month
- , dispatcherTime
- , getdate())=1
<if test="deptid!=null and deptid!=''">
- and dept_id =#{deptid}
+ and C.dept_id =#{deptid}
</if>
- GROUP BY
- dept_id
- ) B ON A.dept_id = B.dept_id
</select>
--
Gitblit v1.9.3