From fe9c6432b0b6eea428bbb856fabe4f7d1e84f0cb Mon Sep 17 00:00:00 2001
From: Administrator <admin>
Date: Wed, 27 Oct 2021 17:16:01 +0800
Subject: [PATCH] 保安员资格审查查询修改
---
src/main/java/org/springblade/modules/information/mapper/InformationMapper.xml | 407 ++++++++++++++++++++++++++++++++++++++--------------------
1 files changed, 266 insertions(+), 141 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 6e41400..2fc448a 100644
--- a/src/main/java/org/springblade/modules/information/mapper/InformationMapper.xml
+++ b/src/main/java/org/springblade/modules/information/mapper/InformationMapper.xml
@@ -28,6 +28,7 @@
<result column="contactscell" property="contactscell"/>
<result column="business_License" property="businessLicense"/>
<result column="licence" property="licence"/>
+ <result column="jurisdictionName" property="jurisdictionName"/>
<result column="znum" property="znum"/>
<result column="cnum" property="cnum"/>
<result column="pnum" property="pnum"/>
@@ -41,9 +42,14 @@
i.*,
IFNULL(A.znum ,0) as znum,
IFNULL(B.cnum ,0) as cnum,
- IFNULL(C.pnum ,0) as pnum
+ IFNULL(C.pnum ,0) as pnum,
+ sj.dept_name jurisdictionName
FROM
sys_information i
+ left join
+ sys_jurisdiction sj
+ on
+ sj.id = i.jurisdiction
LEFT JOIN ( SELECT COUNT( * ) AS znum, dept_id FROM blade_user WHERE role_id = '1412226235153731586' 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' AND
@@ -540,59 +546,59 @@
<!--总保安数量-->
-<!-- <select id="queryCountB" resultType="java.util.HashMap">-->
-<!-- SELECT-->
-<!-- C.thisnum,-->
-<!-- C.lastnum,-->
-<!-- d.dept_name AS deptname,-->
-<!-- j.dept_name AS jurname-->
-<!-- FROM-->
-<!-- (-->
-<!-- SELECT-->
-<!-- IFNULL( A.thisnum, 0 ) AS thisnum,-->
-<!-- IFNULL( B.lastnum, 0 ) AS lastnum,-->
-<!-- A.dept_id,-->
-<!-- A.jurisdiction-->
-<!-- FROM-->
-<!-- (-->
-<!-- SELECT-->
-<!-- COUNT( * ) AS thisnum,-->
-<!-- dept_id,-->
-<!-- jurisdiction-->
-<!-- FROM-->
-<!-- blade_user-->
-<!-- WHERE-->
-<!-- role_id = '1412226235153731586' and status=1 and is_deleted=0-->
-<!-- AND DATE_FORMAT( create_time, '%Y%m' ) = DATE_FORMAT( CURDATE( ), '%Y%m' )-->
-<!-- GROUP BY-->
-<!-- dept_id,-->
-<!-- jurisdiction-->
-<!-- ) A-->
-<!-- LEFT JOIN (-->
-<!-- SELECT-->
-<!-- COUNT( * ) AS lastnum,-->
-<!-- dept_id,-->
-<!-- jurisdiction-->
-<!-- FROM-->
-<!-- blade_user-->
-<!-- WHERE-->
-<!-- role_id = '1412226235153731586' and status=1 and is_deleted=0-->
-<!-- AND PERIOD_DIFF( date_format( now( ), '%Y%m' ), date_format( create_time, '%Y%m' ) ) = 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 jurisdiction!='1372091709474910209'">-->
-<!-- and C.jurisdiction =#{jurisdiction}-->
-<!-- </if>-->
-<!-- <if test="deptid!=null and deptid!=''">-->
-<!-- and C.dept_id =#{deptid}-->
-<!-- </if>-->
-<!-- </select>-->
+ <!-- <select id="queryCountB" resultType="java.util.HashMap">-->
+ <!-- SELECT-->
+ <!-- C.thisnum,-->
+ <!-- C.lastnum,-->
+ <!-- d.dept_name AS deptname,-->
+ <!-- j.dept_name AS jurname-->
+ <!-- FROM-->
+ <!-- (-->
+ <!-- SELECT-->
+ <!-- IFNULL( A.thisnum, 0 ) AS thisnum,-->
+ <!-- IFNULL( B.lastnum, 0 ) AS lastnum,-->
+ <!-- A.dept_id,-->
+ <!-- A.jurisdiction-->
+ <!-- FROM-->
+ <!-- (-->
+ <!-- SELECT-->
+ <!-- COUNT( * ) AS thisnum,-->
+ <!-- dept_id,-->
+ <!-- jurisdiction-->
+ <!-- FROM-->
+ <!-- blade_user-->
+ <!-- WHERE-->
+ <!-- role_id = '1412226235153731586' and status=1 and is_deleted=0-->
+ <!-- AND DATE_FORMAT( create_time, '%Y%m' ) = DATE_FORMAT( CURDATE( ), '%Y%m' )-->
+ <!-- GROUP BY-->
+ <!-- dept_id,-->
+ <!-- jurisdiction-->
+ <!-- ) A-->
+ <!-- LEFT JOIN (-->
+ <!-- SELECT-->
+ <!-- COUNT( * ) AS lastnum,-->
+ <!-- dept_id,-->
+ <!-- jurisdiction-->
+ <!-- FROM-->
+ <!-- blade_user-->
+ <!-- WHERE-->
+ <!-- role_id = '1412226235153731586' and status=1 and is_deleted=0-->
+ <!-- AND PERIOD_DIFF( date_format( now( ), '%Y%m' ), date_format( create_time, '%Y%m' ) ) = 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 jurisdiction!='1372091709474910209'">-->
+ <!-- and C.jurisdiction =#{jurisdiction}-->
+ <!-- </if>-->
+ <!-- <if test="deptid!=null and deptid!=''">-->
+ <!-- and C.dept_id =#{deptid}-->
+ <!-- </if>-->
+ <!-- </select>-->
<select id="queryCountB" resultType="java.util.HashMap">
SELECT IFNULL(A.thisnum, 0) AS thisnum,
IFNULL(B.lastnum, 0) AS lastnum,
@@ -829,41 +835,41 @@
and H.departmentid =#{deptid}
</if>
</select>
-<!-- <select id="queryCountPq" resultType="java.util.HashMap">-->
-<!-- SELECT C.thisnum,-->
-<!-- C.lastnum,-->
-<!-- d.dept_name as deptname,-->
-<!-- j.dept_name as jurname-->
-<!-- FROM (-->
-<!-- SELECT IFNULL(A.thisnum, 0) AS thisnum,-->
-<!-- IFNULL(B.lastnum, 0) AS lastnum,-->
-<!-- A.dept_id,-->
-<!-- A.jurisdiction-->
-<!-- FROM (-->
-<!-- SELECT SUM(num) AS thisnum,-->
-<!-- dept_id,-->
-<!-- jurisdiction-->
-<!-- FROM sys_dispatcher-->
-<!-- WHERE DATE_FORMAT( dispatcherTime, '%Y%m' ) = DATE_FORMAT( CURDATE( ), '%Y%m' )-->
-<!-- GROUP BY dept_id, jurisdiction-->
-<!-- ) A-->
-<!-- left JOIN (-->
-<!-- SELECT SUM(num) AS lastnum,-->
-<!-- dept_id,-->
-<!-- jurisdiction-->
-<!-- FROM sys_dispatcher-->
-<!-- WHERE PERIOD_DIFF( date_format( now( ), '%Y%m' ), date_format( dispatcherTime, '%Y%m' ) ) = 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 jurisdiction!='1372091709474910209'">-->
-<!-- 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 C.thisnum,-->
+ <!-- C.lastnum,-->
+ <!-- d.dept_name as deptname,-->
+ <!-- j.dept_name as jurname-->
+ <!-- FROM (-->
+ <!-- SELECT IFNULL(A.thisnum, 0) AS thisnum,-->
+ <!-- IFNULL(B.lastnum, 0) AS lastnum,-->
+ <!-- A.dept_id,-->
+ <!-- A.jurisdiction-->
+ <!-- FROM (-->
+ <!-- SELECT SUM(num) AS thisnum,-->
+ <!-- dept_id,-->
+ <!-- jurisdiction-->
+ <!-- FROM sys_dispatcher-->
+ <!-- WHERE DATE_FORMAT( dispatcherTime, '%Y%m' ) = DATE_FORMAT( CURDATE( ), '%Y%m' )-->
+ <!-- GROUP BY dept_id, jurisdiction-->
+ <!-- ) A-->
+ <!-- left JOIN (-->
+ <!-- SELECT SUM(num) AS lastnum,-->
+ <!-- dept_id,-->
+ <!-- jurisdiction-->
+ <!-- FROM sys_dispatcher-->
+ <!-- WHERE PERIOD_DIFF( date_format( now( ), '%Y%m' ), date_format( dispatcherTime, '%Y%m' ) ) = 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 jurisdiction!='1372091709474910209'">-->
+ <!-- and C.jurisdiction =#{jurisdiction}-->
+ <!-- </if>-->
+ <!-- <if test="deptid!=null and deptid!=''">-->
+ <!-- and C.dept_id =#{deptid}-->
+ <!-- </if>-->
+ <!-- </select>-->
<!--查询本年所有月份的总人数-->
@@ -1030,63 +1036,123 @@
<!--资格审查异常数量-->
<select id="selectExtype" resultType="java.util.HashMap">
- SELECT COUNT
- (*) as num,
- d.dept_name,
- u.real_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 u.examination_type = 1 and u.is_deleted=0 and u.status = 1
- <if test="jurisdiction!=null and jurisdiction!='' and jurisdiction!='1372091709474910209'">
- and u.jurisdiction in (${jurisdiction})
- </if>
- <if test="deptid!=null and deptid!=''">
- and u.dept_id =#{deptid}
- </if>
+ SELECT
+ IFNULL( J.num, 0 ) AS num
+ FROM
+ ( SELECT departmentid, jurisdiction FROM sys_information GROUP BY departmentid, jurisdiction ) H
+ LEFT JOIN (
+ SELECT
+ COUNT( * ) AS num,
+ dept_id
+ FROM
+ blade_user
+ WHERE
+ examination_type = 1
+ AND is_deleted = 0
+ AND STATUS = 1
<if test="type!=null and type=='1'.toString()">
- and to_days(u.update_time) = to_days(now())
+ and to_days(audit_time) = to_days(now())
</if>
<if test="type!=null and type=='2'.toString()">
- and DATE_FORMAT(u.update_time, '%Y%m' ) = DATE_FORMAT( CURDATE( ) , '%Y%m' )
+ and DATE_FORMAT(audit_time, '%Y%m' ) = DATE_FORMAT( CURDATE( ) , '%Y%m' )
</if>
- GROUP BY d.dept_name,u.real_name,
- j.dept_name
+ GROUP BY
+ dept_id
+ ) J ON J.dept_id = H.departmentid
+ WHERE 1 = 1
+ <if test="jurisdiction!=null and jurisdiction!='' and jurisdiction!='1372091709474910209'">
+ AND H.jurisdiction in(${jurisdiction})
+ </if>
+ <if test="deptid!=null and deptid!=''">
+ AND H.departmentid = #{deptid}
+ </if>
</select>
+ <!-- <select id="selectExtype" resultType="java.util.HashMap">-->
+ <!-- SELECT COUNT-->
+ <!-- (*) as num,-->
+ <!-- d.dept_name,-->
+ <!-- u.real_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 u.examination_type = 1 and u.is_deleted=0 and u.status = 1-->
+ <!-- <if test="jurisdiction!=null and jurisdiction!='' and jurisdiction!='1372091709474910209'">-->
+ <!-- and u.jurisdiction in (${jurisdiction})-->
+ <!-- </if>-->
+ <!-- <if test="deptid!=null and deptid!=''">-->
+ <!-- and u.dept_id =#{deptid}-->
+ <!-- </if>-->
+ <!-- <if test="type!=null and type=='1'.toString()">-->
+ <!-- and to_days(u.update_time) = to_days(now())-->
+ <!-- </if>-->
+ <!-- <if test="type!=null and type=='2'.toString()">-->
+ <!-- and DATE_FORMAT(u.update_time, '%Y%m' ) = DATE_FORMAT( CURDATE( ) , '%Y%m' )-->
+ <!-- </if>-->
+ <!-- GROUP BY d.dept_name,u.real_name,-->
+ <!-- j.dept_name-->
+ <!-- </select>-->
<!--表现差的数量-->
+ <!-- <select id="selectBx" resultType="java.util.HashMap">-->
+ <!-- SELECT IFNULL(COUNT( * ),0) AS num,-->
+ <!-- d.dept_name,-->
+ <!-- j.dept_name AS jurname-->
+ <!-- FROM sys_performance u-->
+ <!-- LEFT JOIN blade_dept d ON d.id = u.departmentid-->
+ <!-- LEFT JOIN sys_jurisdiction j ON j.id = u.jurisdiction-->
+ <!-- WHERE score = 3-->
+ <!-- <if test="jurisdiction!=null and jurisdiction!='' and jurisdiction!='1372091709474910209'">-->
+ <!-- and u.jurisdiction in(${jurisdiction})-->
+ <!-- </if>-->
+ <!-- <if test="deptid!=null and deptid!=''">-->
+ <!-- and u.departmentid =#{deptid}-->
+ <!-- </if>-->
+ <!-- <if test="type!=null and type=='1'.toString()">-->
+ <!-- and to_days(u.time) = to_days(now())-->
+ <!-- </if>-->
+ <!-- <if test="type!=null and type=='2'.toString()">-->
+ <!-- and DATE_FORMAT(u.time, '%Y%m' ) = DATE_FORMAT( CURDATE( ) , '%Y%m' )-->
+ <!-- </if>-->
+ <!-- GROUP BY d.dept_name,-->
+ <!-- j.dept_name-->
+ <!-- </select>-->
<select id="selectBx" resultType="java.util.HashMap">
- SELECT IFNULL(COUNT( * ),0) AS num,
- d.dept_name,
- j.dept_name AS jurname
- FROM sys_performance u
- LEFT JOIN blade_dept d ON d.id = u.departmentid
- LEFT JOIN sys_jurisdiction j ON j.id = u.jurisdiction
- WHERE score = 3
- <if test="jurisdiction!=null and jurisdiction!='' and jurisdiction!='1372091709474910209'">
- and u.jurisdiction in(${jurisdiction})
- </if>
- <if test="deptid!=null and deptid!=''">
- and u.departmentid =#{deptid}
- </if>
+ SELECT
+ IFNULL( J.num, 0 ) AS num
+ FROM
+ ( SELECT departmentid, jurisdiction FROM sys_information GROUP BY departmentid, jurisdiction ) H
+ LEFT JOIN (
+ SELECT
+ IFNULL( COUNT( * ), 0 ) AS num,
+ u.dept_id
+ FROM
+ sys_performance p
+ INNER JOIN blade_user u ON p.securityId = u.id WHERE 1=1
<if test="type!=null and type=='1'.toString()">
- and to_days(u.time) = to_days(now())
+ and to_days(p.time) = to_days(now())
</if>
<if test="type!=null and type=='2'.toString()">
- and DATE_FORMAT(u.time, '%Y%m' ) = DATE_FORMAT( CURDATE( ) , '%Y%m' )
+ and DATE_FORMAT(p.time, '%Y%m' ) = DATE_FORMAT( CURDATE( ) , '%Y%m' )
</if>
- GROUP BY d.dept_name,
- j.dept_name
+ GROUP BY
+ dept_id
+ ) J ON J.dept_id = H.departmentid
+ WHERE 1 = 1
+ <if test="jurisdiction!=null and jurisdiction!='' and jurisdiction!='1372091709474910209'">
+ AND H.jurisdiction in(${jurisdiction})
+ </if>
+ <if test="deptid!=null and deptid!=''">
+ AND H.departmentid = #{deptid}
+ </if>
</select>
<select id="selectBxs" resultType="java.util.HashMap">
- select
- si.jurisdiction id,
- sj.parent_id,
- sj.dept_name jurisdictionName,
- si.enterprisename,
- "表现差" detail
+ select si.jurisdiction id,
+ sj.parent_id,
+ sj.dept_name jurisdictionName,
+ si.enterprisename,
+ "表现差" detail
from sys_performance sp
left join
blade_user bu
@@ -1100,9 +1166,8 @@
sys_jurisdiction sj
on
sj.id = si.jurisdiction
- where
- 1=1
- and (si.stats = 2 or si.stats =4)
+ where 1 = 1
+ and (si.stats = 2 or si.stats = 4)
and bu.is_deleted = 0
and bu.`status` = 1
and sp.score = 3
@@ -1561,12 +1626,23 @@
ON A.departmentid = D.dept_id
LEFT JOIN
(
- SELECT COUNT( * ) AS cznum, dept_id FROM blade_user where hold = 1 GROUP BY dept_id
+ SELECT COUNT( * ) AS cznum, dept_id FROM blade_user where
+ hold = 1
+ and role_id = '1412226235153731586'
+ and status= 1
+ and is_deleted = 0
+ GROUP BY dept_id
) E
ON A.departmentid = E.dept_id
LEFT JOIN
(
- SELECT COUNT( * ) AS pqnum, dept_id FROM blade_user where dispatch = 0 GROUP BY dept_id
+ SELECT COUNT( * ) AS pqnum, dept_id FROM blade_user
+ where
+ dispatch = 0
+ and role_id = '1412226235153731586'
+ and status= 1
+ and is_deleted = 0
+ GROUP BY dept_id
) F
ON A.departmentid = F.dept_id
where 1=1
@@ -2274,7 +2350,8 @@
from
(
select d.dept_id,count(*) count from (
- select a.dept_id, ifnull(b.count, 0) num1, ifnull(c.count, 0) num2,ifnull(FORMAT((c.count/b.count)*100, 2), 0) num3 from
+ select a.dept_id, ifnull(b.count, 0) num1, ifnull(c.count, 0) num2,ifnull(FORMAT((c.count/b.count)*100, 2), 0)
+ num3 from
(
select
bu.dept_id, ifnull(count(*), 0) count
@@ -2580,7 +2657,7 @@
<!--统计表现差的信息-->
<select id="getSecurityPerformanceGroupCountList" resultType="org.springblade.modules.information.vo.ResponseVo">
select a.id,
- a.dept_name name,
+ a.dept_name name,
ifnull(b.count, 0) num
from (select id, dept_name from sys_jurisdiction where parent_id = 1372091709474910209) a
left join
@@ -2611,7 +2688,7 @@
group by si.jurisdiction
) b
on
- a.id = b.parent_id
+ a.id = b.parent_id
</select>
@@ -2779,14 +2856,16 @@
<!--持证率低于50%,社保缴纳率低于50%,派遣率低于50%-->
- <select id="getSecurityHoldAndSoidAndDispatchGroupCountList" resultType="org.springblade.modules.information.vo.ResponseVo">
+ <select id="getSecurityHoldAndSoidAndDispatchGroupCountList"
+ resultType="org.springblade.modules.information.vo.ResponseVo">
select g.id,g.dept_name name,ifnull(f.count,0) num
from
(select id,dept_name from sys_jurisdiction where parent_id = 1372091709474910209) g
left join
(
select c.id,c.parent_id,count(*) count from (
- select si.enterpriseName,sj.id,sj.parent_id,a.dept_id,ifnull(a.count,0) num1,ifnull(b.count,0) num2,ifnull(FORMAT((b.count/a.count)*100,2),0) num3 from
+ select si.enterpriseName,sj.id,sj.parent_id,a.dept_id,ifnull(a.count,0) num1,ifnull(b.count,0)
+ num2,ifnull(FORMAT((b.count/a.count)*100,2),0) num3 from
(
select
bu.dept_id,ifnull(count(*),0) count
@@ -2873,4 +2952,50 @@
</if>
</select>
+
+ <select id="seleFj" resultType="java.util.HashMap">
+ SELECT i.departmentid,
+ i.enterpriseName,
+ IFNULL(D.znum, 0) AS znum,
+ IFNULL(d.num, 0) AS fwnum,
+ IFNULL(B.cznum, 0) AS cznum,
+ IFNULL(C.sbnum, 0) AS sbnum
+ FROM sys_information i
+ LEFT JOIN (
+ SELECT COUNT(*) AS znum,
+ dept_id
+ FROM blade_user
+ WHERE role_id = '1412226235153731586'
+ AND `status` = 1
+ AND is_deleted = 0
+ GROUP BY dept_id
+ ) D ON D.dept_id = i.departmentid
+ LEFT JOIN (SELECT COUNT(*) num, dept_id FROM sys_dispatcher_unit GROUP BY dept_id) d
+ ON i.departmentid = d.dept_id
+ LEFT JOIN (
+ SELECT COUNT(*) AS cznum,
+ dept_id
+ FROM blade_user
+ WHERE hold = 1
+ AND role_id = '1412226235153731586'
+ AND `status` = 1
+ AND is_deleted = 0
+ GROUP BY dept_id
+ ) B ON B.dept_id = i.departmentid
+ LEFT JOIN (
+ SELECT COUNT(*) AS sbnum,
+ dept_id
+ FROM blade_user
+ WHERE soil = 0
+ AND role_id = '1412226235153731586'
+ AND `status` = 1
+ AND is_deleted = 0
+ GROUP BY dept_id
+ ) C ON C.dept_id = i.departmentid
+ WHERE 1 = 1
+ AND i.stats !=0
+ <if test="jurisdiction!=null and jurisdiction != '' and jurisdiction != '1372091709474910209'">
+ and i.jurisdiction in(${jurisdiction})
+ </if>
+ </select>
</mapper>
--
Gitblit v1.9.3