diff --git a/securitycontrol-model/securitycontrol-screen/src/main/resources/mapper/AccessMgeMapper.xml b/securitycontrol-model/securitycontrol-screen/src/main/resources/mapper/AccessMgeMapper.xml index deec1d2..8cfbff6 100644 --- a/securitycontrol-model/securitycontrol-screen/src/main/resources/mapper/AccessMgeMapper.xml +++ b/securitycontrol-model/securitycontrol-screen/src/main/resources/mapper/AccessMgeMapper.xml @@ -4,31 +4,62 @@ SELECT - LPAD(SUM(jtrNum), 3, '0') AS jtrNum, - LPAD(SUM(jrcNum), 3, '0') AS jrcNum, - LPAD(SUM(dyrNum), 4, '0') AS dyrNum, - LPAD(SUM(dycNum), 4, '0') AS dycNum - FROM ( - SELECT - sum( case when tua.access_type = '1' then 1 else 0 end ) as jtrNum, - sum( case when tua.access_type = '2' then 1 else 0 end ) as jrcNUm, - 0 as dyrNum, - 0 as dycNUm - FROM tb_work_team twt - LEFT JOIN t_team_people ttp on twt.team_id = ttp.team_id - LEFT JOIN tb_user_access tua ON ttp.user_id = tua.user_id - WHERE twt.bid_code = #{bidCode} and to_days(tua.access_time) = to_days(NOW()) - UNION ALL - SELECT - 0 as jtrNum, - 0 as jrcNUm, - sum( case when tua.access_type = '1' then 1 else 0 end ) as dyrNum, - sum( case when tua.access_type = '2' then 1 else 0 end ) as dycNUm - FROM tb_work_team twt - LEFT JOIN t_team_people ttp on twt.team_id = ttp.team_id - LEFT JOIN tb_user_access tua ON ttp.user_id = tua.user_id - WHERE twt.bid_code = #{bidCode} and DATE_FORMAT(tua.access_time, '%Y%m') = DATE_FORMAT(NOW(), '%Y%m') - )a + LPAD( SUM( jtrNum ), 3, '0' ) AS jtrNum, + LPAD( SUM( jrcNum ), 3, '0' ) AS jrcNum, + LPAD( SUM( dyrNum ), 4, '0' ) AS dyrNum, + LPAD( SUM( dycNum ), 4, '0' ) AS dycNum + FROM + ( + SELECT + sum( CASE WHEN aa.val LIKE '%入%' THEN 1 ELSE 0 END ) jtrNum, + sum( CASE WHEN aa.val LIKE '%出%' THEN 1 ELSE 0 END ) jrcNum, + 0 AS dyrNum, + 0 AS dycNUm + FROM + ( + SELECT + thdv.source_type, + thdv.create_time, + tpb.bid_code, + GROUP_CONCAT( thdv.val ) AS val + FROM + `tb_pro_bd` tpb + LEFT JOIN tb_bd_device tbd ON tpb.id = tbd.bd_id + LEFT JOIN tb_device_detail tdd ON tbd.device_id = tdd.device_id + LEFT JOIN tb_his_device_value thdv ON tdd.id = thdv.attribute_id + WHERE + tpb.bid_code = #{bidCode} + AND tbd.device_code = '1907002' + AND to_days( thdv.create_time ) = to_days( + NOW()) + GROUP BY + thdv.source_type + ) aa UNION ALL + SELECT + 0 AS jtrNum, + 0 AS jrcNUm, + sum( CASE WHEN bb.val LIKE '%入%' THEN 1 ELSE 0 END ) dyrNum, + sum( CASE WHEN bb.val LIKE '%出%' THEN 1 ELSE 0 END ) dycNUm + FROM + ( + SELECT + thdv.source_type, + thdv.create_time, + tpb.bid_code, + GROUP_CONCAT( thdv.val ) AS val + FROM + `tb_pro_bd` tpb + LEFT JOIN tb_bd_device tbd ON tpb.id = tbd.bd_id + LEFT JOIN tb_device_detail tdd ON tbd.device_id = tdd.device_id + LEFT JOIN tb_his_device_value thdv ON tdd.id = thdv.attribute_id + WHERE + tpb.bid_code = #{bidCode} + AND tbd.device_code = '1907002' + AND DATE_FORMAT( thdv.create_time, '%Y%m' ) = DATE_FORMAT( NOW(), '%Y%m' ) + GROUP BY + thdv.source_type + ) bb + ) ab