From 30df94c05573a426d030510d4dd58ae1d93bfb7a Mon Sep 17 00:00:00 2001
From: tangzy <tangzy123456>
Date: Mon, 06 Dec 2021 14:03:37 +0800
Subject: [PATCH] 1.资格审查排序
---
src/main/java/org/springblade/modules/information/mapper/InformationMapper.xml | 2647 +++++++++++++++++++++++++++++++++++++++++++--------------
1 files changed, 1,975 insertions(+), 672 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 7967fe8..c378b49 100644
--- a/src/main/java/org/springblade/modules/information/mapper/InformationMapper.xml
+++ b/src/main/java/org/springblade/modules/information/mapper/InformationMapper.xml
@@ -45,17 +45,26 @@
FROM
sys_information i
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
+ status=1 AND is_deleted = 0 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
- status=1 AND hold=1 GROUP BY dept_id ) B ON B.dept_id = i.departmentid
+ status=1 AND is_deleted = 0 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
+ status=1 AND is_deleted = 0 AND dispatch=0 GROUP BY dept_id ) C ON C.dept_id = i.departmentid
where 1=1
<if test="information.enterprisename!=null and information.enterprisename!=''">
and i.enterpriseName like concat(concat('%', #{information.enterprisename}),'%')
</if>
<if test="information.representative!=null and information.representative!=''">
and i.representative like concat(concat('%', #{information.representative}),'%')
+ </if>
+ <if test="information.creditcode!=null and information.creditcode!=''">
+ and i.creditCode like concat(concat('%', #{information.creditcode}),'%')
+ </if>
+ <if test="information.representativecell!=null and information.representativecell!=''">
+ and i.representativecell like concat(concat('%', #{information.representativecell}),'%')
+ </if>
+ <if test="information.address!=null and information.address!=''">
+ and i.address like concat(concat('%', #{information.address}),'%')
</if>
<if test="information.stats!=null and information.stats!=''">
and i.stats=#{information.stats}
@@ -136,44 +145,54 @@
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!='1372091709474910209'">
- and i.jurisdiction in(${jurisdiction})
- </if>
- GROUP BY i.departmentid)
- GROUP BY deptid
- ) A
- left JOIN (
- SELECT COUNT
- (*) AS numz,
- dept_id
+ SELECT COUNT(*) as numj,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 where 1=1
+ WHERE soil = 1
<if test="jurisdiction!=null and jurisdiction!='' and jurisdiction!='1372091709474910209'">
- and i.jurisdiction in(${jurisdiction})
+ and jurisdiction in(${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>
+ group by jurisdiction
</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!='1372091709474910209'">-->
+ <!-- and i.jurisdiction in(${jurisdiction})-->
+ <!-- </if>-->
+ <!-- GROUP BY i.departmentid)-->
+ <!-- GROUP BY deptid-->
+ <!-- ) A-->
+ <!-- left 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 jurisdiction!='1372091709474910209'">-->
+ <!-- and i.jurisdiction in(${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">-->
@@ -331,91 +350,278 @@
<!-- ) F ON F.dept_id = A.deptid-->
<!-- </select> -->
<!--统计上个月和这个月交社保的人数以及缴纳金额-->
+ <!-- <select id="selectTo" resultType="java.util.HashMap">-->
+ <!-- SELECT IFNULL(A.lastmonth, 0) AS lastmonth,-->
+ <!-- IFNULL(B.thismouth, 0) AS thismouth,-->
+ <!-- IFNULL(C.thisamount, 0) AS thisamount,-->
+ <!-- IFNULL(D.lastamount, 0) AS lastamount,-->
+ <!-- IFNULL(E.userthismouth, 0) AS userthismouth,-->
+ <!-- IFNULL(F.userlastmouth, 0) AS userlastmouth,-->
+ <!-- IFNULL(G.userpcthismouth, 0) AS userpcthismouth,-->
+ <!-- IFNULL(J.userpclastmouth, 0) AS userpclastmouth-->
+ <!-- FROM (SELECT departmentid, jurisdiction FROM sys_information GROUP BY departmentid, jurisdiction) H-->
+ <!-- LEFT JOIN (-->
+ <!-- SELECT COUNT(*) AS lastmonth,-->
+ <!-- deptid-->
+ <!-- FROM sys_socil-->
+ <!-- WHERE PERIOD_DIFF(date_format(now(), '%Y%m'), date_format(insuredtime, '%Y%m')) = 1-->
+ <!-- GROUP BY deptid-->
+ <!-- ) A ON A.deptid = H.departmentid-->
+ <!-- LEFT JOIN (-->
+ <!-- SELECT COUNT(*) AS thismouth,-->
+ <!-- deptid-->
+ <!-- FROM sys_socil-->
+ <!-- WHERE DATE_FORMAT(insuredtime, '%Y%m') = DATE_FORMAT(CURDATE(), '%Y%m')-->
+ <!-- GROUP BY deptid-->
+ <!-- ) B ON B.deptid = H.departmentid-->
+ <!-- LEFT JOIN (-->
+ <!-- SELECT SUM(amount) AS thisamount,-->
+ <!-- deptid-->
+ <!-- FROM sys_socil-->
+ <!-- WHERE DATE_FORMAT(insuredtime, '%Y%m') = DATE_FORMAT(CURDATE(), '%Y%m')-->
+ <!-- GROUP BY deptid-->
+ <!-- ) C ON C.deptid = H.departmentid-->
+ <!-- LEFT JOIN (-->
+ <!-- SELECT SUM(amount) AS lastamount,-->
+ <!-- deptid-->
+ <!-- FROM sys_socil-->
+ <!-- WHERE PERIOD_DIFF(date_format(now(), '%Y%m'), date_format(insuredtime, '%Y%m')) = 1-->
+ <!-- GROUP BY deptid-->
+ <!-- ) D ON D.deptid = H.departmentid-->
+ <!-- LEFT JOIN (-->
+ <!-- SELECT COUNT(*) AS userthismouth,-->
+ <!-- dept_id-->
+ <!-- FROM blade_user-->
+ <!-- WHERE DATE_FORMAT(update_time, '%Y%m') = DATE_FORMAT(CURDATE(), '%Y%m')-->
+ <!-- AND STATUS = 1-->
+ <!-- AND is_deleted = 0-->
+ <!-- GROUP BY dept_id-->
+ <!-- ) E ON E.dept_id = H.departmentid-->
+ <!-- LEFT JOIN (-->
+ <!-- SELECT COUNT(*) AS userlastmouth,-->
+ <!-- dept_id-->
+ <!-- FROM blade_user-->
+ <!-- WHERE PERIOD_DIFF(date_format(now(), '%Y%m'), date_format(update_time, '%Y%m')) = 1-->
+ <!-- AND STATUS = 1-->
+ <!-- AND is_deleted = 0-->
+ <!-- GROUP BY dept_id-->
+ <!-- ) F ON F.dept_id = H.departmentid-->
+ <!-- LEFT JOIN (-->
+ <!-- SELECT COUNT(*) AS userpcthismouth,-->
+ <!-- dept_id-->
+ <!-- FROM blade_user-->
+ <!-- WHERE DATE_FORMAT(update_time, '%Y%m') = DATE_FORMAT(CURDATE(), '%Y%m')-->
+ <!-- AND dispatch = 0-->
+ <!-- AND STATUS = 1-->
+ <!-- AND is_deleted = 0-->
+ <!-- GROUP BY dept_id-->
+ <!-- ) G ON G.dept_id = H.departmentid-->
+ <!-- LEFT JOIN (-->
+ <!-- SELECT COUNT(*) AS userpclastmouth,-->
+ <!-- dept_id-->
+ <!-- FROM blade_user-->
+ <!-- WHERE PERIOD_DIFF(date_format(now(), '%Y%m'), date_format(update_time, '%Y%m')) = 1-->
+ <!-- AND dispatch = 0-->
+ <!-- AND STATUS = 1-->
+ <!-- AND is_deleted = 0-->
+ <!-- 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 =#{jurisdiction}-->
+ <!-- </if>-->
+ <!-- <if test="deptid!=null and deptid!=''">-->
+ <!-- and H.departmentid =#{deptid}-->
+ <!-- </if>-->
+ <!-- </select>-->
+
+ <!--统计上个月和这个月交社保的人数以及缴纳金额-->
<select id="selectTo" resultType="java.util.HashMap">
- SELECT IFNULL(A.lastmonth, 0) AS lastmonth,
- IFNULL(B.thismouth, 0) AS thismouth,
- IFNULL(C.thisamount, 0) AS thisamount,
- IFNULL(D.lastamount, 0) AS lastamount,
- IFNULL(E.userthismouth, 0) AS userthismouth,
- IFNULL(F.userlastmouth, 0) AS userlastmouth,
- IFNULL(G.userpcthismouth, 0) AS userpcthismouth,
- IFNULL(J.userpclastmouth, 0) AS userpclastmouth
- FROM (SELECT departmentid, jurisdiction FROM sys_information GROUP BY departmentid, jurisdiction) H
+ SELECT
+ IFNULL( A.lastmonth, 0 ) AS lastmonth,
+ IFNULL( B.thismouth, 0 ) AS thismouth,
+ IFNULL( Z.num, 0 ) AS num,
+ IFNULL( C.thisamount, 0 ) AS thisamount,
+ IFNULL( D.lastamount, 0 ) AS lastamount,
+ IFNULL( R.amountnum, 0 ) AS amountnum,
+ IFNULL( E.userthismouth, 0 ) AS userthismouth,
+ IFNULL( F.userlastmouth, 0 ) AS userlastmouth,
+ IFNULL( I.usernum, 0 ) AS usernum,
+ IFNULL( G.userpcthismouth, 0 ) AS userpcthismouth,
+ IFNULL( J.userpclastmouth, 0 ) AS userpclastmouth,
+ IFNULL( P.userpcnum, 0 ) AS userpcnum
+ FROM
+ ( SELECT departmentid, jurisdiction FROM sys_information GROUP BY departmentid, jurisdiction ) H
LEFT JOIN (
- SELECT COUNT(*) AS lastmonth,
+ SELECT
+ COUNT( * ) AS lastmonth,
deptid
- FROM sys_socil
- WHERE PERIOD_DIFF(date_format(now(), '%Y%m'), date_format(insuredtime, '%Y%m')) = 1
- GROUP BY deptid
+ FROM
+ sys_socil
+ WHERE
+ PERIOD_DIFF( date_format( now( ), '%Y%m' ), date_format( insuredtime, '%Y%m' ) ) = 1
+ GROUP BY
+ deptid
) A ON A.deptid = H.departmentid
LEFT JOIN (
- SELECT COUNT(*) AS thismouth,
+ SELECT
+ COUNT( * ) AS thismouth,
deptid
- FROM sys_socil
- WHERE DATE_FORMAT(insuredtime, '%Y%m') = DATE_FORMAT(CURDATE(), '%Y%m')
- GROUP BY deptid
+ FROM
+ sys_socil
+ WHERE
+ DATE_FORMAT( insuredtime, '%Y%m' ) = DATE_FORMAT( CURDATE( ), '%Y%m' )
+ GROUP BY
+ deptid
) B ON B.deptid = H.departmentid
LEFT JOIN (
- SELECT SUM(amount) AS thisamount,
+ SELECT
+ COUNT( * ) AS num,
deptid
- FROM sys_socil
- WHERE DATE_FORMAT(insuredtime, '%Y%m') = DATE_FORMAT(CURDATE(), '%Y%m')
- GROUP BY deptid
+ FROM
+ sys_socil
+ GROUP BY
+ deptid
+ ) Z ON Z.deptid = H.departmentid
+ LEFT JOIN (
+ SELECT
+ SUM( amount ) AS thisamount,
+ deptid
+ FROM
+ sys_socil
+ WHERE
+ DATE_FORMAT( insuredtime, '%Y%m' ) = DATE_FORMAT( CURDATE( ), '%Y%m' )
+ GROUP BY
+ deptid
) C ON C.deptid = H.departmentid
LEFT JOIN (
- SELECT SUM(amount) AS lastamount,
+ SELECT
+ SUM( amount ) AS lastamount,
deptid
- FROM sys_socil
- WHERE PERIOD_DIFF(date_format(now(), '%Y%m'), date_format(insuredtime, '%Y%m')) = 1
- GROUP BY deptid
+ FROM
+ sys_socil
+ WHERE
+ PERIOD_DIFF( date_format( now( ), '%Y%m' ), date_format( insuredtime, '%Y%m' ) ) = 1
+ GROUP BY
+ deptid
) D ON D.deptid = H.departmentid
LEFT JOIN (
- SELECT COUNT(*) AS userthismouth,
+ SELECT
+ SUM(amount) AS amountnum,
+ deptid
+ FROM
+ sys_socil
+ GROUP BY
+ deptid
+ ) R ON R.deptid = H.departmentid
+ LEFT JOIN (
+ SELECT
+ COUNT( * ) AS userthismouth,
dept_id
- FROM blade_user
- WHERE DATE_FORMAT(update_time, '%Y%m') = DATE_FORMAT(CURDATE(), '%Y%m')
+ FROM
+ blade_user
+ WHERE
+ DATE_FORMAT( update_time, '%Y%m' ) = DATE_FORMAT( CURDATE( ), '%Y%m' )
AND STATUS = 1
- AND is_deleted = 0
- GROUP BY dept_id
+ AND is_deleted = 0 AND role_id='1412226235153731586'
+ GROUP BY
+ dept_id
) E ON E.dept_id = H.departmentid
LEFT JOIN (
- SELECT COUNT(*) AS userlastmouth,
+ SELECT
+ COUNT( * ) AS userlastmouth,
dept_id
- FROM blade_user
- WHERE PERIOD_DIFF(date_format(now(), '%Y%m'), date_format(update_time, '%Y%m')) = 1
+ FROM
+ blade_user
+ WHERE
+ PERIOD_DIFF( date_format( now( ), '%Y%m' ), date_format( update_time, '%Y%m' ) ) = 1
AND STATUS = 1
- AND is_deleted = 0
- GROUP BY dept_id
+ AND is_deleted = 0 AND role_id='1412226235153731586'
+ GROUP BY
+ dept_id
) F ON F.dept_id = H.departmentid
LEFT JOIN (
- SELECT COUNT(*) AS userpcthismouth,
+ SELECT
+ J.znum+J.fznum as usernum,
+ J.dept_id
+ FROM
+ (
+ SELECT
+ A.znum,
+ IFNULL( B.znum, 0 ) AS fznum,
+ A.dept_id
+ FROM
+ (
+ SELECT
+ COUNT( * ) AS znum,
+ bu.dept_id
+ FROM
+ blade_user bu
+ WHERE
+ bu.`status` = 1
+ AND bu.is_deleted = 0
+ AND bu.role_id = '1412226235153731586'
+ GROUP BY
+ bu.dept_id
+ ) A
+ LEFT JOIN (
+ SELECT
+ IFNULL( COUNT( * ), 0 ) AS znum,
+ bd.parent_id
+ FROM
+ blade_user bu
+ LEFT JOIN blade_dept bd ON bu.dept_id = bd.id
+ WHERE
+ bu.`status` = 1
+ AND bu.is_deleted = 0
+ AND bu.role_id = '1412226235153731586'
+ GROUP BY
+ bd.parent_id
+ ) B ON B.parent_id = A.dept_id
+ ) J) I ON I.dept_id = H.departmentid
+ LEFT JOIN (
+ SELECT
+ COUNT( * ) AS userpcthismouth,
dept_id
- FROM blade_user
- WHERE DATE_FORMAT(update_time, '%Y%m') = DATE_FORMAT(CURDATE(), '%Y%m')
- AND dispatch = 0
- AND STATUS = 1
- AND is_deleted = 0
- GROUP BY dept_id
+ FROM
+ sys_dispatcher
+ WHERE
+ DATE_FORMAT( dispatcherTime, '%Y%m' ) = DATE_FORMAT( CURDATE( ), '%Y%m' )
+ AND STATUS = 0
+ GROUP BY
+ dept_id
) G ON G.dept_id = H.departmentid
LEFT JOIN (
- SELECT COUNT(*) AS userpclastmouth,
+ SELECT
+ COUNT( * ) AS userpclastmouth,
dept_id
- FROM blade_user
- WHERE PERIOD_DIFF(date_format(now(), '%Y%m'), date_format(update_time, '%Y%m')) = 1
- AND dispatch = 0
- AND STATUS = 1
- AND is_deleted = 0
- GROUP BY dept_id
- ) J ON J.dept_id = H.departmentid where 1=1
+ FROM
+ sys_dispatcher
+ WHERE
+ PERIOD_DIFF( date_format( now( ), '%Y%m' ), date_format( dispatcherTime, '%Y%m' ) ) = 1
+ AND STATUS = 0
+ GROUP BY
+ dept_id
+ ) J ON J.dept_id = H.departmentid
+ LEFT JOIN (
+ SELECT
+ COUNT(*) AS userpcnum,
+ dept_id
+ FROM
+ sys_dispatcher
+ WHERE STATUS = 0
+ GROUP BY
+ dept_id
+ ) P ON P.dept_id = H.departmentid
+ LEFT JOIN blade_dept d ON H.departmentid = d.id
+ LEFT JOIN sys_jurisdiction j ON j.id = H.jurisdiction
+ WHERE 1 =1
<if test="jurisdiction!=null and jurisdiction!='' and jurisdiction!='1372091709474910209'">
- and H.jurisdiction =#{jurisdiction}
+ and (j.id = #{jurisdiction} or j.parent_id = #{jurisdiction})
</if>
<if test="deptid!=null and deptid!=''">
and H.departmentid =#{deptid}
</if>
</select>
-
-
<!--查询本年所有月份的交社保的数量-->
<select id="queryYearSoil" resultType="java.util.HashMap">
SELECT COUNT
@@ -530,273 +736,411 @@
</select>
- <!--总保安数量-->
+ <!-- <!–总保安数量–>-->
+ <!-- <select id="queryCountB" resultType="java.util.HashMap">-->
+ <!-- SELECT IFNULL(A.thisnum, 0) AS thisnum,-->
+ <!-- IFNULL(B.lastnum, 0) AS lastnum,-->
+ <!-- H.departmentid,-->
+ <!-- H.jurisdiction-->
+ <!-- FROM (SELECT departmentid, jurisdiction FROM sys_information GROUP BY departmentid, jurisdiction) H-->
+ <!-- LEFT JOIN (-->
+ <!-- SELECT COUNT(*) AS thisnum,-->
+ <!-- dept_id-->
+ <!-- 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-->
+ <!-- ) A ON A.dept_id = H.departmentid-->
+ <!-- LEFT JOIN (-->
+ <!-- SELECT COUNT(*) AS lastnum,-->
+ <!-- dept_id-->
+ <!-- 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-->
+ <!-- ) B ON B.dept_id = H.departmentid where 1=1-->
+ <!-- <if test="jurisdiction!=null and jurisdiction!='' and jurisdiction!='1372091709474910209'">-->
+ <!-- and H.jurisdiction =#{jurisdiction}-->
+ <!-- </if>-->
+ <!-- <if test="deptid!=null and deptid!=''">-->
+ <!-- and H.departmentid =#{deptid}-->
+ <!-- </if>-->
+ <!-- </select>-->
<select id="queryCountB" resultType="java.util.HashMap">
+ SELECT IFNULL(A.thisnum, 0) AS thisnum,
+ IFNULL(B.lastnum, 0) AS lastnum,
+ IFNULL( C.num, 0 ) AS num,
+ IFNULL( C.fznum, 0 ) AS fznum,
+ H.departmentid,
+ H.jurisdiction
+ FROM (SELECT departmentid, jurisdiction FROM sys_information WHERE stats!=1 GROUP BY departmentid, jurisdiction)
+ H
+ LEFT JOIN (
+ SELECT COUNT(*) AS thisnum,
+ dept_id
+ FROM blade_user
+ WHERE role_id = '1412226235153731586'
+ AND STATUS = 1
+ AND is_deleted = 0
+ AND DATE_FORMAT(rtime, '%Y%m') = DATE_FORMAT(CURDATE(), '%Y%m')
+ GROUP BY dept_id
+ ) A ON A.dept_id = H.departmentid
+ LEFT JOIN (
+ SELECT COUNT(*) AS lastnum,
+ dept_id
+ FROM blade_user
+ WHERE role_id = '1412226235153731586'
+ AND STATUS = 1
+ AND is_deleted = 0
+ AND PERIOD_DIFF(date_format(now(), '%Y%m'), date_format(rtime, '%Y%m')) = 1
+ GROUP BY dept_id
+ ) B ON B.dept_id = H.departmentid
+ LEFT JOIN (
SELECT
- C.thisnum,
- C.lastnum,
- d.dept_name AS deptname,
- j.dept_name AS jurname
+ J.fznum,
+ J.znum+J.fznum as num,
+ J.dept_id
FROM
(
SELECT
- IFNULL( A.thisnum, 0 ) AS thisnum,
- IFNULL( B.lastnum, 0 ) AS lastnum,
- A.dept_id,
- A.jurisdiction
+ A.znum,
+ IFNULL( B.znum, 0 ) AS fznum,
+ A.dept_id
FROM
(
SELECT
- COUNT( * ) AS thisnum,
- dept_id,
- jurisdiction
+ COUNT( * ) AS znum,
+ bu.dept_id
FROM
- blade_user
+ blade_user bu
WHERE
- role_id = '1412226235153731586' and status=1 and is_deleted=0
- AND DATE_FORMAT( create_time, '%Y%m' ) = DATE_FORMAT( CURDATE( ), '%Y%m' )
+ bu.`status` = 1
+ AND bu.is_deleted = 0
+ AND bu.role_id = '1412226235153731586'
GROUP BY
- dept_id,
- jurisdiction
+ bu.dept_id
) A
LEFT JOIN (
SELECT
- COUNT( * ) AS lastnum,
- dept_id,
- jurisdiction
+ IFNULL( COUNT( * ), 0 ) AS znum,
+ bd.parent_id
FROM
- blade_user
+ blade_user bu
+ LEFT JOIN blade_dept bd ON bu.dept_id = bd.id
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
+ bu.`status` = 1
+ AND bu.is_deleted = 0
+ AND bu.role_id = '1412226235153731586'
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
+ bd.parent_id
+ ) B ON B.parent_id = A.dept_id
+ ) J
+ ) C ON C.dept_id = H.departmentid
+ LEFT JOIN sys_jurisdiction j ON j.id = H.jurisdiction
WHERE 1 =1
<if test="jurisdiction!=null and jurisdiction!='' and jurisdiction!='1372091709474910209'">
- and C.jurisdiction =#{jurisdiction}
+ and (j.id = #{jurisdiction} or j.parent_id = #{jurisdiction})
</if>
<if test="deptid!=null and deptid!=''">
- and C.dept_id =#{deptid}
+ and H.departmentid =#{deptid}
</if>
</select>
<!--正常保安数量-->
<select id="queryCountZc" 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
+ SELECT
+ IFNULL( A.thisnum, 0 ) AS thisnum,
+ IFNULL( B.lastnum, 0 ) AS lastnum,
+ IFNULL( D.num, 0 ) AS num,
+ H.departmentid,
+ H.jurisdiction,
+ d.dept_name AS deptname,
+ j.dept_name AS jurname
+ FROM
+ ( SELECT departmentid, jurisdiction FROM sys_information GROUP BY departmentid, jurisdiction ) H
+ LEFT JOIN (
+ SELECT
+ COUNT( * ) AS thisnum,
+ dept_id
+ FROM
+ blade_user
+ WHERE
+ role_id = '1412226235153731586'
+ AND STATUS = 1
+ AND is_deleted = 0
AND examination_type = 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 DATE_FORMAT( rtime, '%Y%m' ) = DATE_FORMAT( CURDATE( ), '%Y%m' )
+ GROUP BY
+ dept_id
+ ) A ON H.departmentid = A.dept_id
+ LEFT JOIN (
+ SELECT
+ COUNT( * ) AS lastnum,
+ dept_id
+ FROM
+ blade_user
+ WHERE
+ role_id = '1412226235153731586'
+ AND STATUS = 1
+ AND is_deleted = 0
AND examination_type = 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
+ AND PERIOD_DIFF( date_format( now( ), '%Y%m' ), date_format( rtime, '%Y%m' ) ) = 1
+ GROUP BY
+ dept_id
+ ) B ON H.departmentid = B.dept_id
+ LEFT JOIN (
+ SELECT
+ COUNT( * ) AS num,
+ dept_id
+ FROM
+ blade_user
+ WHERE
+ role_id = '1412226235153731586'
+ AND STATUS = 1
+ AND is_deleted = 0
+ AND examination_type = 0
+ GROUP BY
+ dept_id
+ ) D ON H.departmentid = D.dept_id
+ LEFT JOIN blade_dept d ON H.departmentid = d.id
+ LEFT JOIN sys_jurisdiction j ON j.id = H.jurisdiction
+ WHERE 1 =1
<if test="jurisdiction!=null and jurisdiction!='' and jurisdiction!='1372091709474910209'">
- and C.jurisdiction =#{jurisdiction}
+ and (j.id = #{jurisdiction} or j.parent_id = #{jurisdiction})
</if>
<if test="deptid!=null and deptid!=''">
- and C.dept_id =#{deptid}
+ and H.departmentid =#{deptid}
</if>
</select>
<!--持证保安数量-->
<select id="queryCountCz" 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
+ SELECT
+ IFNULL( A.thisnum, 0 ) AS thisnum,
+ IFNULL( B.lastnum, 0 ) AS lastnum,
+ IFNULL( C.num, 0 ) AS num,
+ H.departmentid,
+ H.jurisdiction,
+ H.enterpriseName AS deptname,
+ j.dept_name AS jurname
+ FROM
+ ( SELECT departmentid, jurisdiction,enterpriseName FROM sys_information GROUP BY departmentid,
+ jurisdiction,enterpriseName ) H
+ LEFT JOIN (
+ SELECT
+ COUNT(*) AS thisnum,
+ dept_id
+ FROM
+ blade_user
+ WHERE
+ role_id = '1412226235153731586'
+ AND STATUS = 1
+ AND is_deleted = 0
AND hold = 1
- 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 DATE_FORMAT( rtime, '%Y%m' ) = DATE_FORMAT( CURDATE( ), '%Y%m' )
+ GROUP BY
+ dept_id
+ ) A ON H.departmentid = A.dept_id
+ LEFT JOIN (
+ SELECT
+ COUNT(*) AS lastnum,
+ dept_id
+ FROM
+ blade_user
+ WHERE
+ role_id = '1412226235153731586'
+ AND STATUS = 1
+ AND is_deleted = 0
AND hold = 1
- 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
+ AND PERIOD_DIFF( date_format( now( ), '%Y%m' ), date_format( rtime, '%Y%m' ) ) = 1
+ GROUP BY
+ dept_id
+ ) B ON H.departmentid = B.dept_id
+ LEFT JOIN (
+ SELECT
+ COUNT(*) AS num,
+ dept_id
+ FROM
+ blade_user
+ WHERE
+ role_id = '1412226235153731586'
+ AND STATUS = 1
+ AND is_deleted = 0
+ AND hold = 1
+ GROUP BY
+ dept_id
+ ) C ON H.departmentid = C.dept_id
+ LEFT JOIN sys_jurisdiction j ON j.id = H.jurisdiction
+ WHERE 1 =1
<if test="jurisdiction!=null and jurisdiction!='' and jurisdiction!='1372091709474910209'">
- and C.jurisdiction =#{jurisdiction}
+ and (j.id = #{jurisdiction} or j.parent_id = #{jurisdiction})
</if>
<if test="deptid!=null and deptid!=''">
- and C.dept_id =#{deptid}
+ and H.departmentid =#{deptid}
</if>
</select>
<!--缴纳社保数量-->
<select id="queryCountSb" resultType="java.util.HashMap">
- SELECT C.thisnum,
- C.lastnum,
+ SELECT
+ IFNULL( A.thisnum, 0 ) AS thisnum,
+ IFNULL( B.lastnum, 0 ) AS lastnum,
+ IFNULL( C.num, 0 ) AS num,
+ H.departmentid,
+ H.jurisdiction,
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.deptid,
- A.jurisdiction
- FROM (
- SELECT COUNT
- (*) AS thisnum,
- deptid,
- jurisdiction
- FROM sys_socil
- WHERE DATE_FORMAT(insuredtime, '%Y%m' ) = DATE_FORMAT( CURDATE( ), '%Y%m' )
- GROUP BY deptid,
- jurisdiction
- ) A
- left JOIN (
- SELECT COUNT
- (*) AS lastnum,
- deptid,
- jurisdiction
- FROM sys_socil
- WHERE PERIOD_DIFF( date_format( now( ), '%Y%m' ), date_format( insuredtime, '%Y%m' ) ) = 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
+ FROM
+ ( SELECT departmentid, jurisdiction FROM sys_information GROUP BY departmentid, jurisdiction ) H
+ LEFT JOIN (
+ SELECT
+ COUNT( * ) AS thisnum,
+ deptid
+ FROM
+ sys_socil
+ WHERE
+ DATE_FORMAT( insuredtime, '%Y%m' ) = DATE_FORMAT( CURDATE( ), '%Y%m' )
+ GROUP BY
+ deptid
+ ) A ON H.departmentid = A.deptid
+ LEFT JOIN (
+ SELECT
+ COUNT( * ) AS lastnum,
+ deptid
+ FROM
+ sys_socil
+ WHERE
+ PERIOD_DIFF( date_format( now( ), '%Y%m' ), date_format( insuredtime, '%Y%m' ) ) = 1
+ GROUP BY
+ deptid
+ ) B ON H.departmentid = B.deptid
+ LEFT JOIN (
+ SELECT
+ COUNT( * ) AS num,
+ deptid
+ FROM
+ sys_socil
+ GROUP BY
+ deptid
+ ) C ON H.departmentid = C.deptid
+ LEFT JOIN blade_dept d ON H.departmentid = d.id
+ LEFT JOIN sys_jurisdiction j ON j.id = H.jurisdiction
+ WHERE 1 =1
<if test="jurisdiction!=null and jurisdiction!='' and jurisdiction!='1372091709474910209'">
- and C.jurisdiction =#{jurisdiction}
+ and (j.id = #{jurisdiction} or j.parent_id = #{jurisdiction})
</if>
<if test="deptid!=null and deptid!=''">
- and C.deptid =#{deptid}
+ and H.departmentid =#{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 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 sys_dispatcher_unit
- WHERE DATE_FORMAT( start_time, '%Y%m' ) = DATE_FORMAT( CURDATE( ), '%Y%m' )
- GROUP BY dept_id,
- jurisdiction
- ) A
- left JOIN (
- SELECT COUNT
- (*) AS lastnum,
- dept_id,
- jurisdiction
- FROM sys_dispatcher_unit
- WHERE PERIOD_DIFF( date_format( now( ), '%Y%m' ), date_format( start_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
+ SELECT
+ IFNULL( A.thisnum, 0 ) AS thisnum,
+ IFNULL( B.lastnum, 0 ) AS lastnum,
+ IFNULL( C.num, 0 ) AS num,
+ H.departmentid,
+ H.jurisdiction
+ FROM
+ ( SELECT departmentid, jurisdiction FROM sys_information GROUP BY departmentid, jurisdiction ) H
+ LEFT JOIN (
+ SELECT
+ COUNT(*) AS thisnum,
+ dept_id
+ FROM
+ sys_dispatcher_unit
+ WHERE
+ DATE_FORMAT( start_time, '%Y%m' ) = DATE_FORMAT( CURDATE( ), '%Y%m' )
+ GROUP BY
+ dept_id
+ ) A ON H.departmentid = A.dept_id
+ LEFT JOIN (
+ SELECT
+ COUNT(*) AS lastnum,
+ dept_id
+ FROM
+ sys_dispatcher_unit
+ WHERE
+ PERIOD_DIFF( date_format( now( ), '%Y%m' ), date_format( start_time, '%Y%m' ) ) = 1
+ GROUP BY
+ dept_id
+ ) B ON H.departmentid = B.dept_id
+ LEFT JOIN (
+ SELECT
+ COUNT(*) AS num,
+ dept_id
+ FROM
+ sys_dispatcher_unit
+ GROUP BY
+ dept_id
+ ) C ON H.departmentid = C.dept_id
+ LEFT JOIN blade_dept d ON H.departmentid = d.id
+ LEFT JOIN sys_jurisdiction j ON j.id = H.jurisdiction
+ WHERE 1 =1
<if test="jurisdiction!=null and jurisdiction!='' and jurisdiction!='1372091709474910209'">
- and C.jurisdiction =#{jurisdiction}
+ and (j.id = #{jurisdiction} or j.parent_id = #{jurisdiction})
</if>
<if test="deptid!=null and deptid!=''">
- and C.dept_id =#{deptid}
+ 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
+ SELECT
+ IFNULL( G.thisnum, 0 ) AS thisnum,
+ IFNULL( J.lastnum, 0 ) AS lastnum,
+ IFNULL( C.num, 0 ) AS num
+ FROM
+ ( SELECT departmentid, jurisdiction FROM sys_information GROUP BY departmentid, jurisdiction ) H
+ LEFT JOIN (
+ SELECT
+ COUNT(*) AS thisnum,
+ dept_id
+ FROM
+ sys_dispatcher
+ WHERE
+ DATE_FORMAT( dispatcherTime, '%Y%m' ) = DATE_FORMAT( CURDATE( ), '%Y%m' )
+ AND `status`=0
+ GROUP BY
+ dept_id
+ ) G ON G.dept_id = H.departmentid
+ LEFT JOIN (
+ SELECT
+ COUNT(*) AS lastnum,
+ dept_id
+ FROM
+ sys_dispatcher
+ WHERE
+ PERIOD_DIFF( date_format( now( ), '%Y%m' ), date_format( dispatcherTime, '%Y%m' ) ) = 1
+ AND `status`=0
+ GROUP BY
+ dept_id
+ ) J ON J.dept_id = H.departmentid
+ LEFT JOIN (
+ SELECT
+ COUNT(*) AS num,
+ dept_id
+ FROM
+ sys_dispatcher
+ where `status`=0
+ GROUP BY
+ dept_id
+ ) C ON C.dept_id = H.departmentid
+ LEFT JOIN sys_jurisdiction j ON j.id = H.jurisdiction
+ WHERE 1 = 1
<if test="jurisdiction!=null and jurisdiction!='' and jurisdiction!='1372091709474910209'">
- and C.jurisdiction =#{jurisdiction}
+ and (j.id = #{jurisdiction} or j.parent_id = #{jurisdiction})
</if>
<if test="deptid!=null and deptid!=''">
- and C.dept_id =#{deptid}
+ and H.departmentid =#{deptid}
</if>
</select>
-
<!--查询本年所有月份的总人数-->
<select id="queryYearZ" resultType="java.util.HashMap">
@@ -961,62 +1305,124 @@
<!--资格审查异常数量-->
+ <!-- <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="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="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="selectJur" resultType="java.util.HashMap">-->
+ <!-- SELECT id, dept_name-->
+ <!-- FROM sys_jurisdiction-->
+ <!-- WHERE id!=1372091709474910209-->
+ <!-- </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 AND score=3
<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="selectJur" resultType="java.util.HashMap">-->
-<!-- SELECT id, dept_name-->
-<!-- FROM sys_jurisdiction-->
-<!-- WHERE id!=1372091709474910209-->
-<!-- </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
@@ -1073,142 +1479,227 @@
<select id="selectLi" resultType="java.util.HashMap">
SELECT
- IFNULL( A.num, 0 ) AS num,
+ IFNULL( V.num, 0 ) AS num,
IFNULL( B.cznum, 0 ) AS cznum,
- IFNULL( C.paiqnum, 0 ) AS paiqnum,
- IFNULL( D.wpaiqnum, 0 ) AS wpaiqnum,
+ IFNULL( C.num, 0 ) AS paiqnum,
+ IFNULL( D.num, 0 ) AS wpaiqnum,
IFNULL( E.sbnum, 0 ) AS sbnum,
IFNULL( F.wcaijnum, 0 ) AS wcaijnum,
IFNULL( H.ycaijzpnum, 0 ) AS ycaijzpnum,
IFNULL( I.ycaijzwnum, 0 ) AS ycaijzwnum,
IFNULL( G.yicnum, 0 ) AS yicnum,
- A.dept_id,
- d.enterpriseName AS deptname,
- d.stats,
+ A.departmentid,
+ A.enterpriseName AS deptname,
+ A.stats,
j.dept_name AS jurname
FROM
- ( SELECT COUNT( * ) AS num, dept_id, jurisdiction FROM blade_user WHERE role_id = '1412226235153731586' and
- status=1 AND is_deleted=0 GROUP BY
- dept_id, jurisdiction ) A
+ ( SELECT jurisdiction, departmentid,enterpriseName,stats FROM sys_information where stats !=1) A
+ LEFT JOIN (
+ SELECT
+ J.znum+J.fznum as num,
+ J.dept_id
+ FROM
+ (
+ SELECT
+ A.znum,
+ IFNULL( B.znum, 0 ) AS fznum,
+ A.dept_id
+ FROM
+ (
+ SELECT
+ COUNT( * ) AS znum,
+ bu.dept_id
+ FROM
+ blade_user bu
+ WHERE
+ bu.`status` = 1
+ AND bu.is_deleted = 0
+ AND bu.role_id = '1412226235153731586'
+ GROUP BY
+ bu.dept_id
+ ) A
+ LEFT JOIN (
+ SELECT
+ IFNULL( COUNT( * ), 0 ) AS znum,
+ bd.parent_id
+ FROM
+ blade_user bu
+ LEFT JOIN blade_dept bd ON bu.dept_id = bd.id
+ WHERE
+ bu.`status` = 1
+ AND bu.is_deleted = 0
+ AND bu.role_id = '1412226235153731586'
+ GROUP BY
+ bd.parent_id
+ ) B ON B.parent_id = A.dept_id
+ ) J
+ ) V ON V.dept_id = A.departmentid
LEFT JOIN (
SELECT
COUNT( * ) AS cznum,
- dept_id,
- jurisdiction
+ dept_id
FROM
blade_user
WHERE
- role_id = '1412226235153731586' and status=1 AND is_deleted=0
- AND hold=1
+ role_id = '1412226235153731586'
+ AND STATUS = 1
+ AND is_deleted = 0
+ AND hold = 1
GROUP BY
- dept_id,
- jurisdiction
- ) B ON A.dept_id = B.dept_id
+ dept_id
+ ) B ON A.departmentid = B.dept_id
LEFT JOIN (
SELECT
- COUNT( * ) AS paiqnum,
- dept_id,
- jurisdiction
+ L.znum+L.fznum as num,
+ L.dept_id
FROM
- blade_user
+ (
+ SELECT
+ A.znum,
+ IFNULL( B.znum, 0 ) AS fznum,
+ A.dept_id
+ FROM
+ (
+ SELECT
+ COUNT( * ) AS znum,
+ bu.dept_id
+ FROM
+ blade_user bu
WHERE
- role_id = '1412226235153731586' and status=1 AND is_deleted=0
- AND dispatch=0
+ bu.`status` = 1
+ AND bu.is_deleted = 0
+ AND bu.role_id = '1412226235153731586'
+ AND bu.dispatch = 0
GROUP BY
- dept_id,
- jurisdiction
- ) C ON C.dept_id = A.dept_id
+ bu.dept_id
+ ) A
LEFT JOIN (
SELECT
- COUNT( * ) AS wpaiqnum,
- dept_id,
- jurisdiction
+ IFNULL( COUNT( * ), 0 ) AS znum,
+ bd.parent_id
+ FROM
+ blade_user bu
+ LEFT JOIN blade_dept bd ON bu.dept_id = bd.id
+ WHERE
+ bu.`status` = 1
+ AND bu.is_deleted = 0
+ AND bu.role_id = '1412226235153731586'
+ AND bu.dispatch = 0
+ GROUP BY
+ bd.parent_id
+ ) B ON B.parent_id = A.dept_id
+ ) L
+ ) C ON C.dept_id = A.departmentid
+ LEFT JOIN (
+ SELECT
+ K.znum+K.fznum as num,
+ K.dept_id
+ FROM
+ (
+ SELECT
+ A.znum,
+ IFNULL( B.znum, 0 ) AS fznum,
+ A.dept_id
+ FROM
+ (
+ SELECT
+ COUNT( * ) AS znum,
+ bu.dept_id
+ FROM
+ blade_user bu
+ WHERE
+ bu.`status` = 1
+ AND bu.is_deleted = 0
+ AND bu.role_id = '1412226235153731586'
+ AND bu.dispatch = 1
+ GROUP BY
+ bu.dept_id
+ ) A
+ LEFT JOIN (
+ SELECT
+ IFNULL( COUNT( * ), 0 ) AS znum,
+ bd.parent_id
+ FROM
+ blade_user bu
+ LEFT JOIN blade_dept bd ON bu.dept_id = bd.id
+ WHERE
+ bu.`status` = 1
+ AND bu.is_deleted = 0
+ AND bu.role_id = '1412226235153731586'
+ AND bu.dispatch = 1
+ GROUP BY
+ bd.parent_id
+ ) B ON B.parent_id = A.dept_id
+ ) K
+ ) D ON D.dept_id = A.departmentid
+ LEFT JOIN ( SELECT COUNT( * ) AS sbnum, deptid FROM sys_socil GROUP BY deptid ) E ON E.deptid = A.departmentid
+ LEFT JOIN (
+ SELECT
+ COUNT( * ) AS wcaijnum,
+ dept_id
FROM
blade_user
WHERE
- role_id = '1412226235153731586' and status=1 AND is_deleted=0
- AND dispatch=1
+ role_id = '1412226235153731586'
+ AND STATUS = 1
+ AND is_deleted = 0
+ AND photo = 1
GROUP BY
- dept_id,
- jurisdiction
- ) D ON D.dept_id = A.dept_id
+ dept_id
+ ) F ON F.dept_id = A.departmentid
LEFT JOIN (
- SELECT COUNT( * ) AS sbnum, deptid, jurisdiction FROM sys_socil GROUP BY deptid, jurisdiction
- ) E
- ON E.deptid = A.dept_id
- LEFT JOIN
- (
- SELECT
- COUNT( * ) AS wcaijnum,
- dept_id,
- jurisdiction
- FROM
- blade_user
- WHERE
- role_id = '1412226235153731586' and status=1 AND is_deleted=0
- AND photo=1
- GROUP BY
- dept_id,
- jurisdiction
- ) F
- ON F.dept_id = A.dept_id
- LEFT JOIN
- (
- SELECT
- COUNT( * ) AS ycaijzpnum,
- dept_id,
- jurisdiction
- FROM
- blade_user
- WHERE
- role_id = '1412226235153731586' and status=1 AND is_deleted=0
- AND photo=0
- GROUP BY
- dept_id,
- jurisdiction
- ) H
- ON H.dept_id = A.dept_id
- LEFT JOIN
- (
- SELECT
- COUNT( * ) AS ycaijzwnum,
- dept_id,
- jurisdiction
- FROM
- blade_user
- WHERE
- role_id = '1412226235153731586' and status=1 AND is_deleted=0
- AND fingerprint=0
- GROUP BY
- dept_id,
- jurisdiction
- ) I
- ON I.dept_id = A.dept_id
+ SELECT
+ COUNT( * ) AS ycaijzpnum,
+ dept_id
+ FROM
+ blade_user
+ WHERE
+ role_id = '1412226235153731586'
+ AND STATUS = 1
+ AND is_deleted = 0
+ AND photo = 0
+ GROUP BY
+ dept_id
+ ) H ON H.dept_id = A.departmentid
+ LEFT JOIN (
+ SELECT
+ COUNT( * ) AS ycaijzwnum,
+ dept_id
+ FROM
+ blade_user
+ WHERE
+ role_id = '1412226235153731586'
+ AND STATUS = 1
+ AND is_deleted = 0
+ AND fingerprint = 0
+ GROUP BY
+ dept_id
+ ) I ON I.dept_id = A.departmentid
LEFT JOIN (
SELECT
COUNT( * ) AS yicnum,
- dept_id,
- jurisdiction
+ dept_id
FROM
blade_user
WHERE
- role_id = '1412226235153731586' and status=1 AND is_deleted=0
- AND examination_mx=1
+ role_id = '1412226235153731586'
+ AND STATUS = 1
+ AND is_deleted = 0
+ AND examination_mx = 1
GROUP BY
- dept_id,
- jurisdiction
- ) G ON G.dept_id = A.dept_id
- LEFT JOIN sys_information d ON A.dept_id = d.departmentid
+ dept_id
+ ) G ON G.dept_id = A.departmentid
+ LEFT JOIN blade_dept d ON A.departmentid = d.id
LEFT JOIN sys_jurisdiction j ON j.id = A.jurisdiction
- WHERE 1=1
+ WHERE 1 =1
<if test="jurisdiction!=null and jurisdiction!='' and jurisdiction!='1372091709474910209'">
- and A.jurisdiction =#{jurisdiction}
+ and (j.id = #{jurisdiction} or j.parent_id = #{jurisdiction})
</if>
<if test="deptid!=null and deptid!=''">
- and d.enterpriseName like concat(concat('%', #{deptid}),'%')
+ and A.enterpriseName like concat(concat('%', #{deptid}),'%')
</if>
<if test="stats!=null and stats!=''">
- and d.stats =#{stats}
+ and A.stats =#{stats}
</if>
</select>
@@ -1361,6 +1852,37 @@
J.departmentid, J.cznum, J.ghnum, J.ghnum, J.pcnum, J.sbnum, J.zcnum, J.znum, J.jurname,J.jurisdiction
</select>
+ <select id="seleP" resultType="java.util.HashMap">
+ SELECT
+ IFNULL(G.pnum, 0) AS pnum,
+ IFNULL(J.wpnum, 0) AS wpnum
+ FROM (SELECT departmentid, jurisdiction FROM sys_information GROUP BY departmentid, jurisdiction) H
+ LEFT JOIN (
+ SELECT COUNT(*) AS pnum,
+ dept_id
+ FROM blade_user
+ WHERE dispatch = 0
+ AND STATUS = 1
+ AND is_deleted = 0
+ GROUP BY dept_id
+ ) G ON G.dept_id = H.departmentid
+ LEFT JOIN (
+ SELECT COUNT(*) AS wpnum,
+ dept_id
+ FROM blade_user
+ WHERE dispatch = 1
+ AND STATUS = 1
+ AND is_deleted = 0
+ 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 =#{jurisdiction}
+ </if>
+ <if test="deptid!=null and deptid!=''">
+ and H.departmentid =#{deptid}
+ </if>
+ </select>
+
<!--公司经济情况进入图表-->
<select id="selectJj" resultType="java.util.HashMap">
SELECT J.*
@@ -1444,17 +1966,19 @@
) A
LEFT JOIN
(
- SELECT COUNT( * ) AS num, dept_id FROM sys_dispatcher_unit
- where
- start_time <= now() and end_time > now()
- GROUP BY dept_id
+ SELECT COUNT( * ) AS num, dept_id FROM sys_dispatcher_unit
+ where
+ start_time <= now() and end_time > now()
+ GROUP BY dept_id
) B
ON A.departmentid = B.dept_id
LEFT JOIN
(
- SELECT COUNT( * ) AS znum, dept_id FROM blade_user WHERE role_id = '1412226235153731586'
- and status=1
- GROUP BY dept_id
+ SELECT COUNT( * ) AS znum, dept_id FROM blade_user
+ WHERE role_id = '1412226235153731586'
+ and status=1
+ and is_deleted = 0
+ GROUP BY dept_id
) C
ON A.departmentid = C.dept_id
LEFT JOIN
@@ -1464,12 +1988,22 @@
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
@@ -1833,16 +2367,15 @@
<!--获取保安公司信息(本市保安公司,分公司)包含经纬度-->
<select id="getSecurityUnitPositionInfo" resultType="org.springblade.modules.information.vo.InformationVO">
- select
- si.*,sj.dept_name jurisdictionName
- from
- sys_information si
- left join
- sys_jurisdiction sj
- on
- si.jurisdiction = sj.id
- where 1=1
- and (stats = 2 or stats = 4)
+ select si.*,
+ sj.dept_name jurisdictionName
+ from sys_information si
+ left join
+ sys_jurisdiction sj
+ on
+ si.jurisdiction = sj.id
+ where 1 = 1
+ and (stats = 2 or stats = 4)
</select>
<!--根据辖区查询保安公司分页信息(本市保安公司,分公司)-->
@@ -1858,50 +2391,50 @@
where 1=1
and (stats = 0 or stats = 1 or stats = 2 or stats = 4)
<if test="information.jurisdiction!=null and information.jurisdiction!=''">
- and (sj.id = #{information.jurisdiction} or sj.parent_id = #{information.jurisdiction})
+ and (sj.id = #{information.jurisdiction} or sj.parent_id = #{information.jurisdiction})
</if>
</select>
<sql id="getSecurity">
- select
- dept_id,ifnull(count(*),0) count
- from blade_user bu
+ select dept_id,
+ ifnull(count(*), 0) count
+ from blade_user bu
left join blade_role br
- on bu.role_id = br.id
- where
+ on bu.role_id = br.id
+ where
role_alias = "安保人员"
- and bu.is_deleted = 0
- and bu.`status` = 1
+ and bu.is_deleted = 0
+ and bu.`status` = 1
</sql>
<!--根据辖区查询统计保安公司持证情况分页信息(本市保安公司,分公司)-->
<select id="getSecurityUnitHoldInfoPage" resultType="org.springblade.modules.information.vo.InformationVO">
select
- si.*,sj.dept_name jurisdictionName,
- ifnull(a.count,0) znum,
- ifnull(b.count,0) cnum,
- ifnull(c.count,0) pnum
+ si.*,sj.dept_name jurisdictionName,
+ ifnull(a.count,0) znum,
+ ifnull(b.count,0) cnum,
+ ifnull(c.count,0) pnum
from sys_information si
left join
(
- <include refid="getSecurity"/>
- group by dept_id
+ <include refid="getSecurity"/>
+ group by dept_id
) a
on
a.dept_id = si.departmentid
left join
(
- <include refid="getSecurity"/>
- and bu.hold = 1
- group by dept_id
+ <include refid="getSecurity"/>
+ and bu.hold = 1
+ group by dept_id
) b
on
b.dept_id = si.departmentid
left join
(
- <include refid="getSecurity"/>
- and bu.hold = 2
- group by dept_id
+ <include refid="getSecurity"/>
+ and bu.hold = 2
+ group by dept_id
) c
on
c.dept_id = si.departmentid
@@ -1912,58 +2445,75 @@
where 1=1
and (si.stats = 2 or si.stats = 4)
<if test="information.jurisdiction!=null and information.jurisdiction!=''">
- and (sj.id = #{information.jurisdiction} or sj.parent_id = #{information.jurisdiction})
+ and (sj.id = #{information.jurisdiction} or sj.parent_id = #{information.jurisdiction})
</if>
</select>
<!--根据辖区查询统计保安公司(1:持证率低于50% 2:派遣率低于50% 3:缴纳社保率低于50% 的保安公司个数及保安公司分页信息(本市保安公司,分公司)-->
<select id="getSecurityUnitLess50Page" resultType="org.springblade.modules.information.vo.InformationVO">
- select c.*,sj.dept_name jurisdictionName from (
- select
- si.*,
- ifnull(a.count,0) znum,
- ifnull(b.count,0) cnum,
- ifnull(FORMAT((b.count/a.count)*100,2),0) pnum
- from sys_information si
- left join
- (
- <include refid="getSecurity"/>
- group by dept_id
- ) a
- on
- a.dept_id = si.departmentid
- left join
- (
- <include refid="getSecurity"/>
- <if test="type==1">
- and bu.hold = 1
- </if>
- <if test="type==2">
- and bu.dispatch = 0
- </if>
- <if test="type==3">
- and bu.soil = 0
- </if>
- <if test="type==4">
- and bu.insurance = 0
- </if>
- group by dept_id
- ) b
- on
- b.dept_id = si.departmentid
+ select c.*,sj.dept_name jurisdictionName,si.enterpriseName enterprisename from (
+ select
+ a.dept_id,
+ ifnull(a.count,0) znum,
+ ifnull(b.count,0) cnum,
+ ifnull(FORMAT((b.count/a.count)*100,2),0) pnum
+ from
+ (
+ select dept_id,
+ ifnull(count(*), 0) count
+ from blade_user bu
+ left join blade_role br
+ on bu.role_id = br.id
+ where
+ role_alias = "安保人员"
+ and bu.is_deleted = 0
+ and bu.`status` = 1
+ group by dept_id
+ ) a
+ left join
+ (
+ select dept_id,
+ ifnull(count(*), 0) count
+ from blade_user bu
+ left join blade_role br
+ on bu.role_id = br.id
+ where
+ role_alias = "安保人员"
+ and bu.is_deleted = 0
+ and bu.`status` = 1
+ <if test="type==1">
+ and bu.hold = 1
+ </if>
+ <if test="type==2">
+ and bu.dispatch = 0
+ </if>
+ <if test="type==3">
+ and bu.soil = 0
+ </if>
+ <if test="type==4">
+ and bu.insurance = 0
+ </if>
+ group by dept_id
+ ) b
+ on
+ a.dept_id = b.dept_id
)c
+ left join
+ sys_information si
+ on
+ si.departmentid = c.dept_id
left join
sys_jurisdiction sj
on
- c.jurisdiction = sj.id
+ si.jurisdiction = sj.id
where 1=1
- and (c.stats = 2 or c.stats = 4)
+ and (si.stats = 2 or si.stats = 4)
and pnum < #{information.proportion}
<if test="information.jurisdiction!=null and information.jurisdiction!='' and information.jurisdiction!='1372091709474910209'">
- and (sj.id = #{information.jurisdiction} or sj.parent_id = #{information.jurisdiction})
+ and (sj.id = #{information.jurisdiction} or sj.parent_id = #{information.jurisdiction})
</if>
<if test="information.departmentid!=null and information.departmentid!=''">
- and c.departmentid = #{information.departmentid}
+ and c.dept_id = #{information.departmentid}
</if>
</select>
@@ -1972,81 +2522,82 @@
<!--根据辖区查询统计保安公司考试通过率低于50%的保安公司个数及保安公司分页信息(本市保安公司,分公司)-->
<select id="getSecurityUnitExamLess50Page" resultType="org.springblade.modules.information.vo.InformationVO">
select d.*,sj.dept_name jurisdictionName from (
- select
- si.*,
- ifnull(a.count,0) znum,
- ifnull(b.count,0) cnum,
- ifnull(FORMAT((b.count/c.count)*100,2),0) pnum
- from sys_information si
- left join
- (
- <include refid="getSecurity"/>
- group by dept_id
- ) a
- on
- a.dept_id = si.departmentid
- left join
- (
- select b1.dept_id,ifnull(b2.count,0) count from
- (
- select
- bu.dept_id,ifnull(count(*),0) count
- from blade_user bu
- left join blade_role br
- on bu.role_id = br.id
- where
- role_alias = "安保人员"
- and bu.is_deleted = 0
- and bu.`status` = 1
- group by dept_id
- ) b1
+ select
+ si.*,
+ ifnull(a.count,0) znum,
+ ifnull(b.count,0) cnum,
+ ifnull(FORMAT((b.count/c.count)*100,2),0) pnum,
+ ifnull(c.count,0) knum
+ from sys_information si
+ left join
+ (
+ <include refid="getSecurity"/>
+ group by dept_id
+ ) a
+ on
+ a.dept_id = si.departmentid
+ left join
+ (
+ select b1.dept_id,ifnull(b2.count,0) count from
+ (
+ select
+ bu.dept_id,ifnull(count(*),0) count
+ from blade_user bu
+ left join blade_role br
+ on bu.role_id = br.id
+ where
+ role_alias = "安保人员"
+ and bu.is_deleted = 0
+ and bu.`status` = 1
+ group by dept_id
+ ) b1
- left join
- (
- select count(*) count,bu.dept_id from
- exam_score es
- left join
- blade_user bu
- on
- bu.id = es.user_id
- where qualified = 0 group by bu.dept_id
- ) b2
- on
- b1.dept_id = b2.dept_id
- ) b
- on
- b.dept_id = si.departmentid
- left join
- (
- select c1.dept_id,ifnull(c2.count,0) count from
- (
- select
- bu.dept_id,ifnull(count(*),0) count
- from blade_user bu
- left join blade_role br
- on bu.role_id = br.id
- where
- role_alias = "安保人员"
- and bu.is_deleted = 0
- and bu.`status` = 1
- group by dept_id
- ) c1
+ left join
+ (
+ select count(*) count,bu.dept_id from
+ exam_score es
+ left join
+ blade_user bu
+ on
+ bu.id = es.user_id
+ where qualified = 0 group by bu.dept_id
+ ) b2
+ on
+ b1.dept_id = b2.dept_id
+ ) b
+ on
+ b.dept_id = si.departmentid
+ left join
+ (
+ select c1.dept_id,ifnull(c2.count,0) count from
+ (
+ select
+ bu.dept_id,ifnull(count(*),0) count
+ from blade_user bu
+ left join blade_role br
+ on bu.role_id = br.id
+ where
+ role_alias = "安保人员"
+ and bu.is_deleted = 0
+ and bu.`status` = 1
+ group by dept_id
+ ) c1
- left join
- (
- select count(*) count,bu.dept_id from
- exam_score es
- left join
- blade_user bu
- on
- bu.id = es.user_id
- where 1=1 group by bu.dept_id
- ) c2
- on
- c1.dept_id = c2.dept_id
- ) c
- on
- c.dept_id = si.departmentid
+ left join
+ (
+ select count(*) count,bu.dept_id from
+ exam_score es
+ left join
+ blade_user bu
+ on
+ bu.id = es.user_id
+ where 1=1 group by bu.dept_id
+ ) c2
+ on
+ c1.dept_id = c2.dept_id
+ ) c
+ on
+ c.dept_id = si.departmentid
)d
left join
sys_jurisdiction sj
@@ -2054,9 +2605,10 @@
d.jurisdiction = sj.id
where 1=1
and (d.stats = 2 or d.stats = 4)
+ and knum != 0
and pnum < #{information.proportion}
<if test="information.jurisdiction!=null and information.jurisdiction!='' and information.jurisdiction!='1372091709474910209'">
- and (sj.id = #{information.jurisdiction} or sj.parent_id = #{information.jurisdiction})
+ and (sj.id = #{information.jurisdiction} or sj.parent_id = #{information.jurisdiction})
</if>
</select>
@@ -2078,125 +2630,876 @@
<!--根据辖区查询统计当前辖区下的保安公司(本市保安公司,分公司)预警信息,包含(未持证,现实表现差,未缴纳社保,资格审查异常)-->
<select id="getSubstationWarnInfoPage" resultType="org.springblade.modules.information.vo.InformationVO">
- select jurisdictionName,enterprisename,detail from (
- (
+ (select
+ sj1.dept_name jurisdictionName,
+ si1.enterpriseName enterprisename,
+ "表现差" detail,
+ a.count znum
+ from (
select
- si.jurisdiction id,
- sj.parent_id,
- sj.dept_name jurisdictionName,
- si.enterprisename,
- "表现差" detail
+ bu.dept_id,count(*) count
from sys_performance sp
left join
blade_user bu
on
bu.id = sp.securityId
- left join
- sys_information si
- on
- bu.dept_id = si.departmentid
- left join
- sys_jurisdiction sj
- on
- sj.id = si.jurisdiction
where
1=1
- and (si.stats = 2 or si.stats =4)
and bu.is_deleted = 0
and bu.`status` = 1
and sp.score = 3
- )
-
- union
- (
- select
- sj.id,
- sj.parent_id,
- sj.dept_name jurisdictionName,
- si.enterprisename,
- if(bu.hold=2,"未持证","证件吊销") as detail
- from
- blade_user bu
- <include refid="getSubstationWarn"/>
- and (bu.hold = 2 or bu.hold = 3)
- )
-
-
- union
- (
- select
- sj.id,
- sj.parent_id,
- sj.dept_name jurisdictionName,
- si.enterprisename,
- "未缴纳社保" as detail
- from
- blade_user bu
- <include refid="getSubstationWarn"/>
- and bu.soil = 1
- )
-
- union
- (
- select
- sj.id,
- sj.parent_id,
- sj.dept_name jurisdictionName,
- si.enterprisename,
- "审查异常" as detail
- from
- blade_user bu
- <include refid="getSubstationWarn"/>
- and bu.examination_type = 1
- )
+ GROUP BY bu.dept_id
) a
+ left join
+ sys_information si1
+ on
+ a.dept_id = si1.departmentid
+ left join
+ sys_jurisdiction sj1
+ on
+ sj1.id = si1.jurisdiction
where 1=1
+ and (si1.stats = 2 or si1.stats =4)
<if test="information.jurisdiction!=null and information.jurisdiction!='' and information.jurisdiction!='1372091709474910209'">
- and (a.id = #{information.jurisdiction} or a.parent_id = #{information.jurisdiction})
+ and (sj1.id = #{information.jurisdiction} or sj1.parent_id = #{information.jurisdiction})
</if>
+ )
+
+ union
+
+ (
+ select
+ sj1.dept_name jurisdictionName,
+ si1.enterpriseName enterprisename,
+ "资格审查异常" detail,
+ a.count znum
+ from (
+ select
+ bu.dept_id,count(*) count
+ from
+ blade_user bu
+ where
+ 1=1
+ and bu.is_deleted = 0
+ and bu.`status` = 1
+ and bu.examination_type = 1
+ GROUP BY bu.dept_id
+ ) a
+ left join
+ sys_information si1
+ on
+ a.dept_id = si1.departmentid
+ left join
+ sys_jurisdiction sj1
+ on
+ sj1.id = si1.jurisdiction
+ where 1=1
+ and (si1.stats = 2 or si1.stats =4)
+ <if test="information.jurisdiction!=null and information.jurisdiction!='' and information.jurisdiction!='1372091709474910209'">
+ and (sj1.id = #{information.jurisdiction} or sj1.parent_id = #{information.jurisdiction})
+ </if>
+ )
+
+ union
+
+ (
+ select
+ sj1.dept_name jurisdictionName,
+ si1.enterpriseName enterprisename,
+ "考试通过率低于50%" detail,
+ e.count znum
+ 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
+ bu.dept_id, ifnull(count(*), 0) count
+ from blade_user bu
+ left join blade_role br
+ on bu.role_id = br.id
+ where
+ role_alias = "安保人员"
+ and bu.is_deleted = 0
+ and bu.`status` = 1
+ group by dept_id
+ ) a
+ left join
+ (
+ select count(*) count, bu.dept_id from
+ exam_score es
+ left join
+ blade_user bu
+ on
+ bu.id = es.user_id
+ where 1=1 group by bu.dept_id
+ ) b
+ on
+ a.dept_id = b.dept_id
+ left join
+ (
+ select count(*) count, bu.dept_id from
+ exam_score es
+ left join
+ blade_user bu
+ on
+ bu.id = es.user_id
+ where qualified = 0 group by bu.dept_id
+ ) c
+ on
+ c.dept_id = a.dept_id
+ where 1=1
+ ) d
+ where 1=1
+ and num1!=0
+ and num3 < 50
+ GROUP BY dept_id
+ ) e
+ left join
+ sys_information si1
+ on
+ e.dept_id = si1.departmentid
+ left join
+ sys_jurisdiction sj1
+ on
+ sj1.id = si1.jurisdiction
+ where 1=1
+ and (stats = 2 or stats=4)
+ <if test="information.jurisdiction!=null and information.jurisdiction!='' and information.jurisdiction!='1372091709474910209'">
+ and (sj1.id = #{information.jurisdiction} or sj1.parent_id = #{information.jurisdiction})
+ </if>
+ )
+
+ union
+
+ (
+ select
+ sj1.dept_name jurisdictionName,
+ si1.enterpriseName enterprisename,
+ "持证率低于50%" detail,
+ e.count znum
+ from
+ (
+ select c.dept_id,count(*) count from (
+ SELECT
+ 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
+ FROM
+ blade_user bu
+ LEFT JOIN blade_role br ON bu.role_id = br.id
+ WHERE
+ role_alias = "安保人员"
+ AND bu.is_deleted = 0
+ AND bu.`status` = 1
+ GROUP BY
+ dept_id
+ ) a
+
+ LEFT JOIN (
+ SELECT
+ bu.dept_id,
+ ifnull(count(*),0) count
+ FROM
+ blade_user bu
+ LEFT JOIN blade_role br ON bu.role_id = br.id
+ WHERE
+ role_alias = "安保人员"
+ AND bu.is_deleted = 0
+ AND bu.`status` = 1
+ AND bu.hold = 1
+ GROUP BY
+ dept_id
+ ) b ON a.dept_id = b.dept_id
+ ) c
+ where 1=1
+ and num3 < 50
+ GROUP BY c.dept_id
+ ) e
+ left join
+ sys_information si1
+ on
+ e.dept_id = si1.departmentid
+ left join
+ sys_jurisdiction sj1
+ on
+ sj1.id = si1.jurisdiction
+ where 1=1
+ AND ( stats = 2 OR stats = 4 )
+ <if test="information.jurisdiction!=null and information.jurisdiction!='' and information.jurisdiction!='1372091709474910209'">
+ and (sj1.id = #{information.jurisdiction} or sj1.parent_id = #{information.jurisdiction})
+ </if>
+ )
+
+ union
+
+ (
+ select
+ sj1.dept_name jurisdictionName,
+ si1.enterpriseName enterprisename,
+ "社保缴纳率低于50%" detail,
+ e.count znum
+ from
+ (
+ select c.dept_id,count(*) count from (
+ SELECT
+ 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
+ FROM
+ blade_user bu
+ LEFT JOIN blade_role br ON bu.role_id = br.id
+ WHERE
+ role_alias = "安保人员"
+ AND bu.is_deleted = 0
+ AND bu.`status` = 1
+ GROUP BY
+ dept_id
+ ) a
+
+ LEFT JOIN (
+ SELECT
+ bu.dept_id,
+ ifnull(count(*),0) count
+ FROM
+ blade_user bu
+ LEFT JOIN blade_role br ON bu.role_id = br.id
+ WHERE
+ role_alias = "安保人员"
+ AND bu.is_deleted = 0
+ AND bu.`status` = 1
+ AND bu.soil = 0
+ GROUP BY
+ dept_id
+ ) b ON a.dept_id = b.dept_id
+ ) c
+ where 1=1
+ and num3 < 50
+ GROUP BY c.dept_id
+ ) e
+ left join
+ sys_information si1
+ on
+ e.dept_id = si1.departmentid
+ left join
+ sys_jurisdiction sj1
+ on
+ sj1.id = si1.jurisdiction
+ where 1=1
+ AND ( stats = 2 OR stats = 4 )
+ <if test="information.jurisdiction!=null and information.jurisdiction!='' and information.jurisdiction!='1372091709474910209'">
+ and (sj1.id = #{information.jurisdiction} or sj1.parent_id = #{information.jurisdiction})
+ </if>
+ )
+
+ union
+
+ (
+ select
+ sj1.dept_name jurisdictionName,
+ si1.enterpriseName enterprisename,
+ "派遣率低于50%" detail,
+ e.count znum
+ from
+ (
+ select c.dept_id,count(*) count from (
+ SELECT
+ 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
+ FROM
+ blade_user bu
+ LEFT JOIN blade_role br ON bu.role_id = br.id
+ WHERE
+ role_alias = "安保人员"
+ AND bu.is_deleted = 0
+ AND bu.`status` = 1
+ GROUP BY
+ dept_id
+ ) a
+
+ LEFT JOIN (
+ SELECT
+ bu.dept_id,
+ ifnull(count(*),0) count
+ FROM
+ blade_user bu
+ LEFT JOIN blade_role br ON bu.role_id = br.id
+ WHERE
+ role_alias = "安保人员"
+ AND bu.is_deleted = 0
+ AND bu.`status` = 1
+ AND bu.dispatch = 0
+ GROUP BY
+ dept_id
+ ) b ON a.dept_id = b.dept_id
+ ) c
+ where 1=1
+ and num3 < 50
+ GROUP BY c.dept_id
+ ) e
+ left join
+ sys_information si1
+ on
+ e.dept_id = si1.departmentid
+ left join
+ sys_jurisdiction sj1
+ on
+ sj1.id = si1.jurisdiction
+ where 1=1
+ AND ( stats = 2 OR stats = 4 )
+ <if test="information.jurisdiction!=null and information.jurisdiction!='' and information.jurisdiction!='1372091709474910209'">
+ and (sj1.id = #{information.jurisdiction} or sj1.parent_id = #{information.jurisdiction})
+ </if>
+ )
+
</select>
<!--根据辖区查询统计当前辖区下的保安公司(本市保安公司,分公司))服务对象小于2家的公司数量的分页信息-->
<select id="getSecurityUnitServerLess2Page" resultType="org.springblade.modules.information.vo.InformationVO">
select * from
(
- select
- DISTINCT
- si.id,
- si.departmentid,
- si.jurisdiction,
- si.enterprisename,
- sj.dept_name jurisdictionName,
- ifnull(a.count,0) znum,
- sdu.name dispatchUnitName,
- sdu.end_time
- from sys_information si
- left join
- sys_dispatcher_unit sdu
- on
- si.departmentid = sdu.dept_id
- left join
- sys_jurisdiction sj
- on
- sj.id = si.jurisdiction
- left join
- (
- select ifnull(count(*),0) count,dept_id from sys_dispatcher_unit
- where 1=1
- and start_time <= now()
- and end_time > now()
- GROUP BY dept_id
- ) a
- on
- a.dept_id = si.departmentid
- 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>
+ select
+ DISTINCT
+ si.id,
+ si.departmentid,
+ si.jurisdiction,
+ si.enterprisename,
+ sj.dept_name jurisdictionName,
+ ifnull(a.count,0) znum,
+ sdu.name dispatchUnitName,
+ sdu.end_time
+ from sys_information si
+ left join
+ sys_dispatcher_unit sdu
+ on
+ si.departmentid = sdu.dept_id
+ left join
+ sys_jurisdiction sj
+ on
+ sj.id = si.jurisdiction
+ left join
+ (
+ select ifnull(count(*),0) count,dept_id from sys_dispatcher_unit
+ where 1=1
+ and start_time <= now()
+ and end_time > now()
+ GROUP BY dept_id
+ ) a
+ on
+ a.dept_id = si.departmentid
+ 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>
) b
- where b.znum < 2
+ where b.znum < #{information.proportion}
<if test="information.departmentid!=null and information.departmentid!=''">
and b.departmentid = #{information.departmentid}
</if>
</select>
+
+
+ <!--统计表现差的信息-->
+ <select id="getSecurityPerformanceGroupCountList" resultType="org.springblade.modules.information.vo.ResponseVo">
+ select a.id,
+ a.dept_name name,
+ ifnull(b.count, 0) num
+ from (select id, dept_name from sys_jurisdiction where parent_id = 1372091709474910209) a
+ left join
+ (
+ select sj.id,
+ sj.parent_id,
+ count(*) count
+ from sys_performance sp
+ left join
+ blade_user bu
+ on
+ bu.id = sp.securityId
+ left join
+ sys_information si
+ on
+ bu.dept_id = si.departmentid
+ left join
+ sys_jurisdiction sj
+ on
+ sj.id = si.jurisdiction
+ where
+ 1=1
+ and (si.stats = 2
+ or si.stats =4)
+ and bu.is_deleted = 0
+ and bu.`status` = 1
+ and sp.score = 3
+ group by si.jurisdiction
+ ) b
+ on
+ a.id = b.parent_id
+ union all
+ (
+ select a.id,
+ a.dept_name name,
+ ifnull(b.count, 0) num
+ from (select id, dept_name from sys_jurisdiction where parent_id = 1372091709474910209) a
+ left join
+ (
+ select sj.id,
+ sj.parent_id,
+ count(*) count
+ from sys_performance sp
+ left join
+ blade_user bu
+ on
+ bu.id = sp.securityId
+ left join
+ sys_information si
+ on
+ bu.dept_id = si.departmentid
+ left join
+ sys_jurisdiction sj
+ on
+ sj.id = si.jurisdiction
+ where
+ 1=1
+ and (si.stats = 2
+ or si.stats =4)
+ and bu.is_deleted = 0
+ and bu.`status` = 1
+ and sp.score = 3
+ group by si.jurisdiction
+ ) b
+ on
+ a.id = b.id
+ )
+ </select>
+
+
+ <!--统计资格审查异常信息-->
+ <select id="getSecurityExaminationGroupCountList" resultType="org.springblade.modules.information.vo.ResponseVo">
+ select a.id, a.dept_name name, ifnull(b.count, 0) num
+ from (select id, dept_name from sys_jurisdiction where parent_id = 1372091709474910209) a
+ left join
+ (
+ select sj.id,
+ sj.parent_id,
+ count(*) count
+ from
+ blade_user bu
+ left join
+ sys_information si
+ on
+ bu.dept_id = si.departmentid
+ left join
+ sys_jurisdiction sj
+ on
+ sj.id = si.jurisdiction
+ where
+ 1=1
+ and (si.stats = 2
+ or si.stats =4)
+ and bu.is_deleted = 0
+ and bu.`status` = 1
+ and bu.examination_type = 1
+ group by si.jurisdiction
+ ) b
+ on
+ a.id = b.parent_id
+ union all
+ (
+ select a.id, a.dept_name name, ifnull(b.count, 0) num
+ from (select id, dept_name from sys_jurisdiction where parent_id = 1372091709474910209) a
+ left join
+ (
+ select sj.id,
+ sj.parent_id,
+ count(*) count
+ from
+ blade_user bu
+ left join
+ sys_information si
+ on
+ bu.dept_id = si.departmentid
+ left join
+ sys_jurisdiction sj
+ on
+ sj.id = si.jurisdiction
+ where
+ 1=1
+ and (si.stats = 2
+ or si.stats =4)
+ and bu.is_deleted = 0
+ and bu.`status` = 1
+ and bu.examination_type = 1
+ group by si.jurisdiction
+ ) b
+ on
+ a.id = b.id
+ )
+ </select>
+
+
+ <!--考试通过率低于50%-->
+ <select id="getSecurityExamPassingGroupCountList" 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 e.id, e.parent_id, count(*) count
+ from (
+ select d.*, ifnull(FORMAT((num2/num1)*100, 2), 0) num3, sj.* from (
+ select a.dept_id, ifnull(b.count, 0) num1, ifnull(c.count, 0) num2 from
+ (
+ select
+ bu.dept_id, ifnull(count (*), 0) count
+ from blade_user bu
+ left join blade_role br
+ on bu.role_id = br.id
+ where
+ role_alias = "安保人员"
+ and bu.is_deleted = 0
+ and bu.`status` = 1
+ group by dept_id
+ ) a
+ left join
+ (
+ select count (*) count, bu.dept_id from
+ exam_score es
+ left join
+ blade_user bu
+ on
+ bu.id = es.user_id
+ where 1=1 group by bu.dept_id
+ ) b
+ on
+ a.dept_id = b.dept_id
+ left join
+ (
+ select count (*) count, bu.dept_id from
+ exam_score es
+ left join
+ blade_user bu
+ on
+ bu.id = es.user_id
+ where qualified = 0 group by bu.dept_id
+ ) c
+ on a.dept_id = c.dept_id
+ ) d
+ left join
+ sys_information si
+ on
+ si.departmentid = d.dept_id
+ left join
+ sys_jurisdiction sj
+ on
+ sj.id = si.jurisdiction
+ where d.num1!=0
+ and (stats = 2 or stats=4)
+ ) e
+ where e.num3 < 50
+ group by e.id
+ ) f
+ on
+ g.id = f.parent_id
+ union all
+ (
+ 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 e.id, e.parent_id, count(*) count
+ from (
+ select d.*, ifnull(FORMAT((num2/num1)*100, 2), 0) num3, sj.* from (
+ select a.dept_id, ifnull(b.count, 0) num1, ifnull(c.count, 0) num2 from
+ (
+ select
+ bu.dept_id, ifnull(count (*), 0) count
+ from blade_user bu
+ left join blade_role br
+ on bu.role_id = br.id
+ where
+ role_alias = "安保人员"
+ and bu.is_deleted = 0
+ and bu.`status` = 1
+ group by dept_id
+ ) a
+ left join
+ (
+ select count (*) count, bu.dept_id from
+ exam_score es
+ left join
+ blade_user bu
+ on
+ bu.id = es.user_id
+ where 1=1 group by bu.dept_id
+ ) b
+ on
+ a.dept_id = b.dept_id
+ left join
+ (
+ select count (*) count, bu.dept_id from
+ exam_score es
+ left join
+ blade_user bu
+ on
+ bu.id = es.user_id
+ where qualified = 0 group by bu.dept_id
+ ) c
+ on a.dept_id = c.dept_id
+ ) d
+ left join
+ sys_information si
+ on
+ si.departmentid = d.dept_id
+ left join
+ sys_jurisdiction sj
+ on
+ sj.id = si.jurisdiction
+ where d.num1!=0
+ and (stats = 2 or stats=4)
+ ) e
+ where e.num3 < 50
+ group by e.id
+ ) f
+ on
+ g.id = f.id
+ )
+ </select>
+
+ <!--持证率低于50%,社保缴纳率低于50%,派遣率低于50%-->
+ <!-- <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 e.id,e.parent_id,count(*) count from (-->
+ <!-- select d.*,ifnull(FORMAT((num2/num1)*100,2),0) num3,sj.* from (-->
+ <!-- select a.dept_id,ifnull(a.count,0) num1,ifnull(b.count,0) num2 from-->
+ <!-- (-->
+ <!-- select-->
+ <!-- bu.dept_id,ifnull(count(*),0) count-->
+ <!-- from blade_user bu-->
+ <!-- left join blade_role br-->
+ <!-- on bu.role_id = br.id-->
+ <!-- where-->
+ <!-- role_alias = "安保人员"-->
+ <!-- and bu.is_deleted = 0-->
+ <!-- and bu.`status` = 1-->
+ <!-- group by dept_id-->
+ <!-- ) a-->
+
+ <!-- left join-->
+ <!-- (-->
+ <!-- select-->
+ <!-- bu.dept_id,ifnull(count(*),0) count-->
+ <!-- from blade_user bu-->
+ <!-- left join blade_role br-->
+ <!-- on bu.role_id = br.id-->
+ <!-- where-->
+ <!-- role_alias = "安保人员"-->
+ <!-- and bu.is_deleted = 0-->
+ <!-- and bu.`status` = 1-->
+ <!-- <if test="type==1">-->
+ <!-- and bu.hold = 1-->
+ <!-- </if>-->
+ <!-- <if test="type==2">-->
+ <!-- and bu.dispatch = 0-->
+ <!-- </if>-->
+ <!-- <if test="type==3">-->
+ <!-- and bu.soil = 0-->
+ <!-- </if>-->
+ <!-- group by dept_id-->
+ <!-- ) b-->
+ <!-- on-->
+ <!-- a.dept_id = b.dept_id-->
+ <!-- )d-->
+ <!-- left join-->
+ <!-- sys_information si-->
+ <!-- on-->
+ <!-- si.departmentid = d.dept_id-->
+ <!-- left join-->
+ <!-- sys_jurisdiction sj-->
+ <!-- on-->
+ <!-- sj.id = si.jurisdiction-->
+ <!-- and (stats = 2 or stats=4)-->
+ <!-- )e-->
+ <!-- where e.num3 < 50-->
+ <!-- group by e.id-->
+ <!-- ) f-->
+ <!-- on-->
+ <!-- g.id = f.parent_id-->
+ <!-- </select>-->
+
+
+ <!--持证率低于50%,社保缴纳率低于50%,派遣率低于50%-->
+ <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
+ bu.dept_id,ifnull(count(*),0) count
+ from blade_user bu
+ left join blade_role br
+ on bu.role_id = br.id
+ where
+ role_alias = "安保人员"
+ and bu.is_deleted = 0
+ and bu.`status` = 1
+ group by dept_id
+ ) a
+ left join
+ (
+ select
+ bu.dept_id,ifnull(count(*),0) count
+ from blade_user bu
+ left join blade_role br
+ on bu.role_id = br.id
+ where
+ role_alias = "安保人员"
+ and bu.is_deleted = 0
+ and bu.`status` = 1
+ <if test="type==1">
+ and bu.hold = 1
+ </if>
+ <if test="type==2">
+ and bu.dispatch = 0
+ </if>
+ <if test="type==3">
+ and bu.soil = 0
+ </if>
+ group by dept_id
+ ) b
+ on
+ a.dept_id = b.dept_id
+ left join
+ sys_information si
+ on
+ a.dept_id = si.departmentid
+ left join
+ sys_jurisdiction sj
+ on
+ sj.id = si.jurisdiction
+ where 1=1
+ and (stats = 2 or stats=4)
+ )c
+ where c.num3 < 50
+ group by c.id
+ ) f
+ on
+ g.id = f.parent_id
+
+ union all
+ (
+ 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
+ bu.dept_id,ifnull(count(*),0) count
+ from blade_user bu
+ left join blade_role br
+ on bu.role_id = br.id
+ where
+ role_alias = "安保人员"
+ and bu.is_deleted = 0
+ and bu.`status` = 1
+ group by dept_id
+ ) a
+ left join
+ (
+ select
+ bu.dept_id,ifnull(count(*),0) count
+ from blade_user bu
+ left join blade_role br
+ on bu.role_id = br.id
+ where
+ role_alias = "安保人员"
+ and bu.is_deleted = 0
+ and bu.`status` = 1
+ <if test="type==1">
+ and bu.hold = 1
+ </if>
+ <if test="type==2">
+ and bu.dispatch = 0
+ </if>
+ <if test="type==3">
+ and bu.soil = 0
+ </if>
+ group by dept_id
+ ) b
+ on
+ a.dept_id = b.dept_id
+ left join
+ sys_information si
+ on
+ a.dept_id = si.departmentid
+ left join
+ sys_jurisdiction sj
+ on
+ sj.id = si.jurisdiction
+ where 1=1
+ and (stats = 2 or stats=4)
+ )c
+ where c.num3 < 50
+ group by c.id
+ ) f
+ on
+ g.id = f.id
+ )
+ </select>
+
+ <select id="selectBxc" resultType="java.util.HashMap">
+ SELECT u.real_name as realName,
+ d.dept_name as deptName,
+ u.sex,
+ u.cardid,
+ ifnull(DATE_FORMAT(NOW(), '%Y') - SUBSTRING(u.cardid, 7, 4), 0) AS age,
+ u.securitynumber,
+ u.phone,
+ p.score
+ FROM sys_performance p
+ LEFT JOIN blade_user u ON p.securityId = u.id
+ LEFT JOIN blade_dept d ON d.id = p.departmentid
+ LEFT JOIN sys_jurisdiction j ON j.id = p.jurisdiction
+ WHERE 1 =1
+ <if test="jurisdiction!=null and jurisdiction!='' and jurisdiction!='1372091709474910209'">
+ and (j.id = #{jurisdiction} or j.parent_id = #{jurisdiction})
+ </if>
+ <if test="type!=null and type=='1'.toString()">
+ and to_days(p.time) = to_days(now())
+ </if>
+ <if test="type!=null and type=='2'.toString()">
+ and DATE_FORMAT(p.time, '%Y%m' ) = DATE_FORMAT( CURDATE( ) , '%Y%m' )
+ </if>
+ and p.score = 3
+ </select>
+
</mapper>
--
Gitblit v1.9.3