jl-jjsp-service/securityControl-modules/securityControl-proteam/target/classes/mapper/dutyTask/DailyDutyReportMapper.xml

181 lines
9.2 KiB
XML
Raw Permalink Normal View History

2025-09-24 11:10:04 +08:00
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
<mapper namespace="com.sercurityControl.proteam.dutyTask.mapper.DailyDutyReportMapper">
<!--安全质量检查总体情况1.风险复测变化 2.新进班组 3.当日无施工班组 4.人数变化大的班组 5.存在工法(序)变化-->
<select id="getOneData" resultType="java.util.Map">
SELECT IFNULL(MAX(num),0) AS num
FROM t_daily_ticket_count
WHERE query_type = '2' AND create_date = #{currentDay}
UNION ALL
SELECT COUNT(*) AS num
FROM t_daily_team_count
WHERE query_type = '2' AND create_day = #{currentDay}
UNION ALL
SELECT COUNT(*) AS num
FROM t_daily_team_count
WHERE query_type = '3' AND create_day = #{currentDay}
UNION ALL
SELECT COUNT(*) AS num
FROM t_daily_team_count
WHERE query_type = '4' AND create_day = #{currentDay}
UNION ALL
SELECT IFNULL(MAX(num),0) AS num
FROM t_daily_ticket_count
WHERE query_type = '3' AND create_date = #{currentDay}
</select>
<!--进行中作业票,站班会,考勤人员-->
<select id="getTwoData" resultType="java.util.Map">
SELECT IFNULL(MAX(num),0) AS num
FROM t_daily_ticket_count
WHERE create_date = #{currentDay} AND query_type = '1'
UNION ALL
SELECT COUNT(*) AS num
FROM jj_class_meetting
WHERE current_constr_date = #{currentDay} AND delete_flag = '0'
UNION ALL
SELECT IFNULL(MAX(num),0) AS num
FROM t_daily_ticket_count
WHERE create_date = #{currentDay} AND query_type = '4'
</select>
<!--作业计划执行情况-日计划实施-->
<select id="getThreeData" resultType="java.util.Map">
SELECT
COUNT(*) AS totalRiskNum,
COUNT(IF(tcm.re_assessment_risk_level = '2',1,NULL)) AS twoRiskNum,
COUNT(IF(tcm.re_assessment_risk_level = '3',1,NULL)) AS threeRiskNum,
COUNT(IF(tcm.re_assessment_risk_level = '4' OR tcm.re_assessment_risk_level = '5',1,NULL)) AS fourAboveRiskNum
FROM jj_class_meetting tcm
WHERE tcm.current_constr_date = #{currentDay} AND tcm.delete_flag = '0'
</select>
<!--作业计划执行情况-今日视频监控接入情况-->
<select id="getFourData" resultType="java.util.Map">
SELECT
COUNT(IF(tcm.re_assessment_risk_level = '2' OR tcm.re_assessment_risk_level = '3',1,NULL)) AS threeAccessNum,
COUNT(IF(tcm.re_assessment_risk_level = '4' OR tcm.re_assessment_risk_level = '5',1,NULL)) AS fourAboveAccessNum,
COUNT(IF(tcm.re_assessment_risk_level = '4' AND (LOCATE('起重机立塔',jcmi.work_content) > 0 OR LOCATE('跨越架',jcmi.work_content) > 0),1,NULL)) AS importFourNum
FROM jj_class_meetting tcm
left join jj_class_metting_info jcmi on jcmi.class_id=tcm.id
WHERE tcm.current_constr_date = #{currentDay} AND tcm.delete_flag = '0'
</select>
<!--督查情况-总体情况-->
<select id="getFiveData" resultType="java.util.Map">
SELECT
COUNT(*) AS totalRiskNum,
COUNT(IF(tcm.re_assessment_risk_level = '2',1,NULL)) AS twoRiskNum,
COUNT(IF(tcm.re_assessment_risk_level = '3',1,NULL)) AS threeRiskNum,
COUNT(IF(tcm.re_assessment_risk_level = '4',1,NULL)) AS fourRiskNum,
COUNT(IF(tcm.re_assessment_risk_level = '4' AND (LOCATE('起重机立塔',jcmi.work_content) > 0 OR LOCATE('跨越架',jcmi.work_content) > 0),1,NULL)) AS importFourNum
FROM jj_class_meetting tcm
left join jj_class_metting_info jcmi on jcmi.class_id=tcm.id
WHERE tcm.current_constr_date = #{currentDay} AND tcm.delete_flag = '0'
</select>
<!--关键措施照片上传和日报评价情况-->
<select id="getSixData" resultType="java.util.Map">
SELECT so.city_name AS `name` ,IFNULL(a.num,0) AS num,'100%' AS rate, '优' AS eval
FROM sys_org so
LEFT JOIN (
SELECT tcm.build_unit_code org,COUNT(tcm.build_unit_code) AS num
FROM jj_class_meetting tcm
WHERE tcm.current_constr_date = #{currentDay} AND tcm.delete_flag = '0'
GROUP BY tcm.build_unit_code
)a ON a.org = so.org_id
ORDER BY num DESC
</select>
<!--新进班组风险提示-->
<select id="getSevenData" resultType="java.util.Map">
SELECT bid_name AS bidName,org_name AS orgName,work_manager AS workManager
FROM t_daily_team_count
WHERE query_type = '2' AND create_day = #{currentDay}
</select>
<!--无作业班组核查-->
<select id="getEightData" resultType="java.util.Map">
SELECT bid_name AS bidName,org_name AS orgName,work_manager AS workManager
FROM t_daily_team_count
WHERE query_type = '3' AND create_day = #{currentDay}
</select>
<!--班组人员较大变化核查-->
<select id="getNineData" resultType="java.util.Map">
SELECT bid_name AS bidName,org_name AS orgName,work_manager AS workManager
FROM t_daily_team_count
WHERE query_type = '4' AND create_day = #{currentDay}
</select>
<!--二级风险到岗到位抽查情况-->
<select id="getTenData" resultType="java.util.Map">
SELECT jcm.id,
ANY_VALUE(CONCAT(IFNULL(jcm.bidding_section_name,''),IF(jcmi.work_manage IS NULL,'',CONCAT('',jcmi.work_manage,'班组)')))) AS bidName,
ANY_VALUE(COUNT(IF(jod.onduty_hierarchy='30',1,NULL))) AS yzNum,
ANY_VALUE(COUNT(IF(jod.onduty_hierarchy='20',1,NULL))) AS jlNum,
ANY_VALUE(COUNT(IF(jod.onduty_hierarchy='10',1,NULL))) AS sgNum
from jj_class_meetting jcm
left join jj_on_duty jod on jcm.id =jod.tool_box_talk_id and jod.delete_flag=0
left join jj_class_metting_info jcmi on jcm.id=jcmi.class_id
WHERE jcm.re_assessment_risk_level = '2' AND jcm.delete_flag = '0'
AND jcm.current_constr_date = #{currentDay}
GROUP BY jcm.id
</select>
<!--督查情况-违章数据-->
<select id="getVoiData" resultType="java.util.Map">
SELECT CONCAT(tnv.pro_name,'',tnv.team_name,'') AS proName,
tnv.content,
tnv.voi_yj AS voiYj,
a.imgPath AS imgPath,
tnv.level_id AS levelId
FROM t_notice_voi tnv
LEFT JOIN (
SELECT tnvp.noti_id,ANY_VALUE(GROUP_CONCAT(tnvp.image_path)) AS imgPath
FROM t_notice_voi_photo tnvp
LEFT JOIN t_notice_voi tnv ON tnv.id = tnvp.noti_id
WHERE tnvp.image_type = '1'
GROUP BY tnvp.noti_id
)a ON a.noti_id = tnv.id
WHERE tnv.create_time = #{aesCurrentDay} AND tnv.`status` NOT IN ('6','7','8') AND (tnv.sup_type IS NULL OR tnv.sup_type = '1')
</select>
<!--地市公司自查违章情况-->
<select id="getCityVoiData" resultType="java.util.Map">
SELECT so.city_name AS orgName,
IFNULL(a.yzNum,0) AS yzNum,
IFNULL(a.ybNum,0) AS ybNum,
IFNULL(b.num,0) AS num
FROM sys_org so
LEFT JOIN (
SELECT tnv.org,
COUNT(IF(tnv.level_id = '严重违章',1,NULL)) AS yzNum,
COUNT(IF(tnv.level_id = '一般违章',1,NULL)) AS ybNum
FROM t_notice_voi tnv
WHERE tnv.create_time = #{aesCurrentDay} AND tnv.sup_type = '2'
GROUP BY tnv.org
) a ON a.org = so.org_id
LEFT JOIN (
SELECT tcm.build_unit_code org,COUNT(tcm.build_unit_code) AS num
FROM jj_class_meetting tcm
WHERE tcm.current_constr_date = #{aesCurrentDay} AND tcm.delete_flag = '0'
GROUP BY tcm.build_unit_code
) b ON b.org = so.org_id
</select>
<!--违章数量-->
<select id="getVoiNum" resultType="java.util.Map">
SELECT COUNT(DISTINCT tnv.class_id) AS num
FROM t_notice_voi tnv
WHERE tnv.create_time = #{aesCurrentDay} AND tnv.`status` NOT IN ('6','7','8') AND (tnv.sup_type IS NULL OR tnv.sup_type = '1')
UNION ALL
SELECT COUNT(*) AS num
FROM t_notice_voi tnv
WHERE tnv.create_time = #{aesCurrentDay} AND tnv.`status` NOT IN ('6','7','8') AND (tnv.sup_type IS NULL OR tnv.sup_type = '1') AND tnv.level_id = '严重违章'
UNION ALL
SELECT COUNT(*) AS num
FROM t_notice_voi tnv
WHERE tnv.create_time = #{aesCurrentDay} AND tnv.`status` NOT IN ('6','7','8') AND (tnv.sup_type IS NULL OR tnv.sup_type = '1') AND tnv.level_id = '一般违章'
UNION ALL
SELECT COUNT(*) AS num
FROM t_notice_voi tnv
WHERE tnv.create_time = #{aesCurrentDay} AND tnv.sup_type = '2'
UNION ALL
SELECT COUNT(*) AS num
FROM t_notice_voi tnv
WHERE tnv.create_time = #{aesCurrentDay} AND tnv.sup_type = '2' AND tnv.level_id = '严重违章'
UNION ALL
SELECT COUNT(*) AS num
FROM t_notice_voi tnv
WHERE tnv.create_time = #{aesCurrentDay} AND tnv.sup_type = '2' AND tnv.level_id = '一般违章'
</select>
</mapper>