From 53e7dce8d55487cbac64e4374ec9aa1b52a6c6ed Mon Sep 17 00:00:00 2001
From: SZH <szh_hello@163.com>
Date: 星期四, 09 三月 2023 21:16:43 +0800
Subject: [PATCH] 解决npe问题
---
emergency/emergency-service/src/main/resources/config/mapper/emergency/EmergencyDrillExecuteInfoMapper.xml | 156 +++++++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 154 insertions(+), 2 deletions(-)
diff --git a/emergency/emergency-service/src/main/resources/config/mapper/emergency/EmergencyDrillExecuteInfoMapper.xml b/emergency/emergency-service/src/main/resources/config/mapper/emergency/EmergencyDrillExecuteInfoMapper.xml
index 6a40c03..3d18dba 100644
--- a/emergency/emergency-service/src/main/resources/config/mapper/emergency/EmergencyDrillExecuteInfoMapper.xml
+++ b/emergency/emergency-service/src/main/resources/config/mapper/emergency/EmergencyDrillExecuteInfoMapper.xml
@@ -174,13 +174,165 @@
</select>
+ <resultMap type="com.gkhy.safePlatform.emergency.entity.EmergencyDrillExecuteCountRPC"
+ id="emergencyDrillExecuteCountRPC">
+ <result column="num" property="num"/>
+ <result column="name" property="name"/>
+ </resultMap>
+ <select id="selectByDayAndDept" resultMap="emergencyDrillExecuteCountRPC">
+ SELECT
+ count( 0 ) AS num,
+ DATE_FORMAT( a.gmt_create, '%d' ) AS `name`
+ FROM
+ `emergency_drill_execute` a
+ LEFT JOIN emergency_drill_plan b ON a.drill_plan_id = b.id
+ WHERE
+ a.del_flag = 0
+ AND a.gmt_create <![CDATA[ >= ]]> #{startTime}
+ AND a.gmt_create <![CDATA[ <= ]]> #{endTime}
+ <if test="deptIds != null " >
+ and b.department_id in
+ <foreach item="id" collection="deptIds" open="(" separator="," close=")">
+ #{id}
+ </foreach>
+ </if>
+ GROUP BY
+ DATE_FORMAT( a.gmt_create, '%Y-%m-%d' ),
+ DATE_FORMAT( a.gmt_create, '%d' )
+ </select>
+
+ <select id="selectByMonthAndDeptForIntegerMonth" resultMap="emergencyDrillExecuteCountRPC">
+ SELECT
+ count( 0 ) AS num,
+ DATE_FORMAT( a.gmt_create, '%m' ) AS `name`
+ FROM
+ `emergency_drill_execute` a
+ LEFT JOIN emergency_drill_plan b ON a.drill_plan_id = b.id
+ WHERE
+ a.del_flag = 0
+ AND a.gmt_create <![CDATA[ >= ]]> #{startTime}
+ AND a.gmt_create <![CDATA[ <= ]]> #{endTime}
+ <if test="deptIds != null " >
+ and b.department_id in
+ <foreach item="id" collection="deptIds" open="(" separator="," close=")">
+ #{id}
+ </foreach>
+ </if>
+ GROUP BY
+ DATE_FORMAT( a.gmt_create, '%Y-%m' ),
+ DATE_FORMAT( a.gmt_create, '%m' )
+ </select>
+
+
<select id="selectEmergencyDrillExecuteIntervalTimeByDeptId" resultType="java.lang.String">
SELECT
- DATE_FORMAT( max( a.gmt_create ), '%Y-%m-%d' ) AS lastTime
+ DATE_FORMAT( max( a.gmt_create ), '%Y-%m-%d %H:%i:%s' ) AS lastTime
FROM
`emergency_drill_execute` a
INNER JOIN emergency_drill_plan b ON a.drill_plan_id = b.id
AND b.department_id = #{deptId}
</select>
-
+ <!---->
+ <select id="getLastTimeByDeptId" resultType="java.lang.String">
+ SELECT
+ DATE_FORMAT( max( a.gmt_create ), '%Y-%m-%d %H:%i:%s' ) AS lastTime
+ FROM
+ `emergency_drill_execute` a
+ INNER JOIN emergency_drill_plan b ON a.drill_plan_id = b.id
+ AND a.del_flag = 0 AND b.department_id = #{deptId}
+ </select>
+ <!--根据部门及其子级获取-->
+ <select id="getLastTimeByDeptIds" resultType="com.gkhy.safePlatform.emergency.entity.EmergencyDrillExecuteLastTimeDO">
+ SELECT
+ DATE_FORMAT( max( a.gmt_create ), '%Y-%m-%d %H:%i:%s' ) AS lastTime,
+ b.department_id AS deptId
+ FROM
+ `emergency_drill_execute` a
+ INNER JOIN emergency_drill_plan b ON a.drill_plan_id = b.id
+ AND a.del_flag = 0 AND b.department_id IN
+ <foreach collection="deptIdList" item="deptId" open="(" close=")" separator=",">
+ #{deptId}
+ </foreach>
+ GROUP BY
+ b.department_id
+ </select>
+ <select id="getCountByDeptIdsAndTime" resultType="com.gkhy.safePlatform.emergency.entity.EmergencyExecuteCountDO">
+ SELECT
+ COUNT( 1 ) AS count,
+ b.department_id AS deptId,
+ DATE_FORMAT( a.gmt_create, '%m' ) AS month,
+ DATE_FORMAT( a.gmt_create, '%Y' ) AS year
+ FROM
+ `emergency_drill_execute` a
+ INNER JOIN emergency_drill_plan b ON a.drill_plan_id = b.id
+ WHERE
+ a.del_flag = 0
+ AND b.department_id in
+ <foreach collection="deptIds" item="deptId" open="(" close=")" separator=",">
+ #{deptId}
+ </foreach>
+ AND DATE( a.gmt_create ) BETWEEN #{startTime}
+ AND #{endTime}
+ GROUP BY
+ b.department_id,
+ DATE_FORMAT( a.gmt_create, '%Y-%m' ),
+ DATE_FORMAT(a.gmt_create,'%m'),
+ DATE_FORMAT(a.gmt_create,'%Y')
+ </select>
+ <select id="getCountByDeptIdAndMonth" resultType="com.gkhy.safePlatform.emergency.entity.EmergencyExecuteCountDO">
+ SELECT
+ COUNT( 1 ) AS count,
+ b.department_id AS deptId
+ FROM
+ `emergency_drill_execute` a
+ INNER JOIN emergency_drill_plan b ON a.drill_plan_id = b.id
+ WHERE
+ a.del_flag = 0
+ AND b.department_id = #{deptId}
+ AND YEAR( a.gmt_create ) = #{year}
+ AND MONTH( a.gmt_create) = #{month}
+ </select>
+ <select id="getCountByDeptIdAndYear" resultType="com.gkhy.safePlatform.emergency.entity.EmergencyExecuteCountDO">
+ SELECT
+ COUNT( 1 ) AS count,
+ DATE_FORMAT( a.gmt_create, '%m' ) AS month
+ FROM
+ `emergency_drill_execute` a
+ INNER JOIN emergency_drill_plan b ON a.drill_plan_id = b.id
+ WHERE
+ a.del_flag = 0
+ AND b.department_id = #{deptId}
+ AND YEAR( a.gmt_create ) = #{year}
+ GROUP BY
+ DATE_FORMAT( a.gmt_create, '%Y-%m' ),
+ DATE_FORMAT(a.gmt_create,'%m')
+ </select>
+ <select id="getLastTimeByDeptIdsAndTime" resultType="com.gkhy.safePlatform.emergency.entity.EmergencyDrillExecuteLastTimeDO">
+ SELECT
+ DATE_FORMAT( max( a.gmt_create ), '%Y-%m-%d %H:%i:%s' ) AS lastTime,
+ b.department_id AS deptId
+ FROM
+ `emergency_drill_execute` a
+ INNER JOIN emergency_drill_plan b ON a.drill_plan_id = b.id
+ AND a.del_flag = 0
+ AND DATE( a.gmt_create ) BETWEEN #{startTime}
+ AND #{endTime}
+ AND b.department_id IN
+ <foreach collection="deptIdList" item="deptId" open="(" close=")" separator=",">
+ #{deptId}
+ </foreach>
+ GROUP BY
+ b.department_id
+ </select>
+ <select id="getLastTimeByDeptIdAndTime" resultType="java.lang.String">
+ SELECT
+ DATE_FORMAT( max( a.gmt_create ), '%Y-%m-%d %H:%i:%s' ) AS lastTime
+ FROM
+ `emergency_drill_execute` a
+ INNER JOIN emergency_drill_plan b ON a.drill_plan_id = b.id
+ AND a.del_flag = 0
+ AND DATE( a.gmt_create ) BETWEEN #{startTime}
+ AND #{endTime}
+ AND b.department_id = #{deptId}
+ </select>
</mapper>
--
Gitblit v1.9.2