From e8e36c1b932376dee691fbba3ac3fbfbc3e37bfb Mon Sep 17 00:00:00 2001 From: zhangfeng <1603559716@qq.com> Date: 星期三, 12 十月 2022 14:42:27 +0800 Subject: [PATCH] 增加应急演练查询接口 --- incident-manage/incident-manage-service/src/main/resources/config/mapper/incidentManage/AccidentReportInfoMapper.xml | 118 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++-- 1 files changed, 113 insertions(+), 5 deletions(-) diff --git a/incident-manage/incident-manage-service/src/main/resources/config/mapper/incidentManage/AccidentReportInfoMapper.xml b/incident-manage/incident-manage-service/src/main/resources/config/mapper/incidentManage/AccidentReportInfoMapper.xml index 3a9ba3d..fde785e 100644 --- a/incident-manage/incident-manage-service/src/main/resources/config/mapper/incidentManage/AccidentReportInfoMapper.xml +++ b/incident-manage/incident-manage-service/src/main/resources/config/mapper/incidentManage/AccidentReportInfoMapper.xml @@ -203,20 +203,128 @@ </resultMap> <select id="selectByTimeAndType" resultMap="emergencyDrillExecuteCountChart"> SELECT - a.accident_level AS `name`, + accident_level AS `name`, count( 0 ) AS num, sum( economic_loss ) AS economicLoss, sum( minor_injury_num ) AS minorInjuryNum, sum( serious_injury_num ) AS seriousInjuryNum, sum( death_num ) AS deathNum FROM - `accident_report` a + `accident_report` WHERE del_flag = 0 - AND a.gmt_create <![CDATA[ >= ]]> #{query.startTime} - AND a.gmt_create <![CDATA[ <= ]]> #{query.endTime} - <if test="query.level != null and query.level != ''" >and b.drill_level = #{query.level}</if> + AND gmt_create <![CDATA[ >= ]]> #{query.startTime} + AND gmt_create <![CDATA[ <= ]]> #{query.endTime} + <if test="query.level != null and query.level != ''" >and accident_level = #{query.level}</if> GROUP BY accident_level </select> + + <resultMap type="com.gkhy.safePlatform.incidentManage.entity.AccidentReportCountRPC" + id="accidentReportCountRPC"> + <result column="time" property="time"/> + <result column="num" property="num"/> + <result column="level" property="level"/> + <result column="minorInjuryNum" property="minorInjuryNum"/> + <result column="seriousInjuryNum" property="seriousInjuryNum"/> + <result column="deathNum" property="deathNum"/> + <result column="economicLoss" property="economicLoss"/> + </resultMap> + <select id="getCountForRPCByDeptIdAndMonth" resultMap="accidentReportCountRPC"> + SELECT + DATE_FORMAT( a.gmt_create, '%m' ) as time, + a.accident_level AS `level`, + count( 0 ) AS num, + sum( a.economic_loss ) AS economicLoss, + sum( a.minor_injury_num ) AS minorInjuryNum, + sum( a.serious_injury_num ) AS seriousInjuryNum, + sum( a.death_num ) AS deathNum + FROM + `accident_report` a + INNER JOIN `accident_express` b ON a.accident_express_id = b.id + AND b.accident_department_id = #{deptId} + WHERE + a.del_flag = 0 + AND a.gmt_create <![CDATA[ >= ]]> #{startTime} + AND a.gmt_create <![CDATA[ <= ]]> #{endTime} + GROUP BY + DATE_FORMAT( a.gmt_create, '%Y-%m' ), + a.accident_level, + DATE_FORMAT( a.gmt_create, '%m' ) + </select> + + <select id="getCountForRPCByDeptIdAndDay" resultMap="accidentReportCountRPC"> + SELECT + DATE_FORMAT( a.gmt_create, '%d' ) as time, + a.accident_level AS `level`, + count( 0 ) AS num, + sum( a.economic_loss ) AS economicLoss, + sum( a.minor_injury_num ) AS minorInjuryNum, + sum( a.serious_injury_num ) AS seriousInjuryNum, + sum( a.death_num ) AS deathNum + FROM + `accident_report` a + INNER JOIN `accident_express` b ON a.accident_express_id = b.id + AND b.accident_department_id = #{deptId} + WHERE + a.del_flag = 0 + AND a.gmt_create <![CDATA[ >= ]]> #{startTime} + AND a.gmt_create <![CDATA[ <= ]]> #{endTime} + GROUP BY + DATE_FORMAT( a.gmt_create, '%Y-%m-%d' ), + a.accident_level, + DATE_FORMAT( a.gmt_create, '%d' ) + </select> + + <select id="getAccidentCountByDeptIdsAndTime" resultType="com.gkhy.safePlatform.incidentManage.entity.AccidentResultCountDO"> + SELECT + count( 0 ) AS accidentCount, + sum( a.economic_loss ) AS economicLoss, + sum( a.minor_injury_num ) AS minorInjuryCount, + sum( a.serious_injury_num ) AS seriousInjuryCount, + sum( a.death_num ) AS deathCount, + a.accident_level AS accidentLevel, + DATE_FORMAT( a.gmt_create, '%m' ) AS month, + DATE_FORMAT( a.gmt_create, '%Y' ) AS year, + b.accident_department_id AS deptId + FROM + `accident_report` a + INNER JOIN `accident_express` b ON a.accident_express_id = b.id + WHERE + a.del_flag = 0 + AND b.accident_department_id IN + <foreach collection="deptIds" item="deptId" open="(" close=")" separator=","> + #{deptId} + </foreach> + AND DATE( a.gmt_create ) BETWEEN #{startTime} + AND #{endTime} + GROUP BY + a.accident_level, + DATE_FORMAT( a.gmt_create, '%Y-%m' ), + DATE_FORMAT( a.gmt_create, '%m' ), + DATE_FORMAT( a.gmt_create, '%Y' ), + b.accident_department_id + </select> + <select id="getAccidentCountByDeptIdAndTime" resultType="com.gkhy.safePlatform.incidentManage.entity.AccidentResultCountDO"> + SELECT + count( 0 ) AS accidentCount, + sum( a.economic_loss ) AS economicLoss, + sum( a.minor_injury_num ) AS minorInjuryCount, + sum( a.serious_injury_num ) AS seriousInjuryCount, + sum( a.death_num ) AS deathCount, + a.accident_level AS accidentLevel, + DATE_FORMAT( a.gmt_create, '%m' ) AS month + FROM + `accident_report` a + INNER JOIN `accident_express` b ON a.accident_express_id = b.id + WHERE + a.del_flag = 0 + AND b.accident_department_id = #{deptId} + AND DATE( a.gmt_create ) BETWEEN #{startTime} + AND #{endTime} + GROUP BY + a.accident_level, + DATE_FORMAT( a.gmt_create, '%Y-%m' ), + DATE_FORMAT( a.gmt_create, '%m' ) + </select> </mapper> -- Gitblit v1.9.2