From 29f5825e22f8ed6cc2019511ad75a4939bafb6a8 Mon Sep 17 00:00:00 2001
From: lyfO_o <764716047@qq.com>
Date: 星期六, 06 五月 2023 16:00:35 +0800
Subject: [PATCH] 用户token 过滤链判断限制

---
 emergency/emergency-service/src/main/resources/config/mapper/emergency/EmergencyDrillExecuteInfoMapper.xml |  213 ++++++++++++++++++++++++++++++++++++++++++++++++-----
 1 files changed, 193 insertions(+), 20 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 8e603c8..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
@@ -131,23 +131,7 @@
         <result column="name" property="name"/>
     </resultMap>
 
-    <select id="selectByMouthTimeAndType" resultMap="emergencyDrillExecuteCountChart">
-        SELECT
-        count( 0 ) AS num,
-        DATE_FORMAT( a.gmt_create, '%Y-%m-%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[ >= ]]> #{query.startTime}
-        AND a.gmt_create <![CDATA[ <= ]]> #{query.endTime}
-        <if test="query.level != null and query.level != ''" >and b.drill_level = #{query.level}</if>
-        GROUP BY
-        DATE_FORMAT( a.gmt_create, '%Y-%m-%d' )
-    </select>
-
-    <select id="selectByYearTimeAndType" resultMap="emergencyDrillExecuteCountChart">
+    <select id="selectByMonthAndDept" resultMap="emergencyDrillExecuteCountChart">
         SELECT
         count( 0 ) AS num,
         DATE_FORMAT( a.gmt_create, '%Y-%m' ) AS `name`
@@ -156,10 +140,199 @@
         LEFT JOIN emergency_drill_plan b ON a.drill_plan_id = b.id
         WHERE
         a.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 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' )
     </select>
+
+    <select id="selectByYearAndDept" resultMap="emergencyDrillExecuteCountChart">
+        SELECT
+        count( 0 ) AS num,
+        DATE_FORMAT( a.gmt_create, '%Y' ) 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' )
+    </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 %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