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 | 110 +++++++++++++++++++++++++++++++++++++++++++++++++++++-
1 files changed, 107 insertions(+), 3 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 9da404b..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
@@ -197,7 +197,8 @@
</foreach>
</if>
GROUP BY
- DATE_FORMAT( a.gmt_create, '%Y-%m-%d' )
+ DATE_FORMAT( a.gmt_create, '%Y-%m-%d' ),
+ DATE_FORMAT( a.gmt_create, '%d' )
</select>
<select id="selectByMonthAndDeptForIntegerMonth" resultMap="emergencyDrillExecuteCountRPC">
@@ -218,7 +219,8 @@
</foreach>
</if>
GROUP BY
- DATE_FORMAT( a.gmt_create, '%Y-%m' )
+ DATE_FORMAT( a.gmt_create, '%Y-%m' ),
+ DATE_FORMAT( a.gmt_create, '%m' )
</select>
@@ -230,5 +232,107 @@
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