ソースを参照

修改统计调度

suntianwu 3 年 前
コミット
bc4e04816e

+ 9 - 9
src/main/java/com/care/client/schedule/HealthDataStaSchedule.java

@@ -41,10 +41,10 @@ public class HealthDataStaSchedule {
 
     /**
      * 每小时卧室在床统计
-     * 1小时调用一次
+     * 1分钟调用一次
      */
     @Async
-    @Scheduled(cron = "0 0 0/1 * * ?")
+    @Scheduled(cron = "0 0/1 * * * ?")
     public void exeBedroomInbedHourSta() {
         careBedroomInbedHourStaService.exeBedroomInbedHourSta();
     }
@@ -54,37 +54,37 @@ public class HealthDataStaSchedule {
      * 1小时调用一次
      */
     @Async
-    @Scheduled(cron = "0 0 0/1 * * ?")
+    @Scheduled(cron = "0 0/1 * * * ?")
     public void exeToiletInoutHourSta() {
         careToiletInoutHourStaService.exeToiletInoutHourSta();
     }
 
     /**
      * 每小时行走距离统计
-     * 1小时调用一次
+     * 1分钟调用一次
      */
     @Async
-    @Scheduled(cron = "0 0 0/1 * * ?")
+    @Scheduled(cron = "0 0/1 * * * ?")
     public void exeWalkingDistanceHourSta() {
         careWalkingDistanceHourStaService.exeWalkingDistanceHourSta();
     }
 
     /**
      * 每日安全事件统计
-     * 1调用一次
+     * 1分钟调用一次
      */
     @Async
-    @Scheduled(cron = "0 1 0 * * ?")
+    @Scheduled(cron = "0 0/1 * * * ?")
     public void exeDevEventDaySta() {
         careDevEventDayStaService.exeDevEventDaySta();
     }
 
     /**
      * 每小时心率呼吸统计
-     * 1小时调用一次
+     * 1分钟调用一次
      */
     @Async
-    @Scheduled(cron = "0 0 0/1 * * ?")
+    @Scheduled(cron = "0 0/1 * * * ?")
     public void exeHeartBreathHourSta() {
         careHeartBreathHourStaService.exeHeartBreathHourSta();
     }

+ 5 - 3
src/main/resources/mybatis/CareBedroomInbedHourStaMapper.xml

@@ -3,9 +3,11 @@
 <mapper namespace="com.care.common.mapper.CareBedroomInbedHourStaMapper">
 
     <insert id="exeBedroomInbedHourSta">
-      insert into care_bedroom_inbed_hour_sta(data_hour,dev_id,duration)
-       select DATE_FORMAT(t.create_time,'%Y%m%d%H') data_hour,t.dev_id,convert(sum(t.duration)/60,decimal(20,0)) duration from care_bedroom_inbed_detail t
-        where DATE_FORMAT(t.create_time,'%Y%m%d%H') = DATE_FORMAT(DATE_SUB(now(), INTERVAL 1 HOUR), '%Y%m%d%H')
+        insert into care_bedroom_inbed_hour_sta(data_hour,dev_id,duration)
+        select DATE_FORMAT(t.create_time,'%Y%m%d%H') data_hour,t.dev_id,convert(sum(t.duration)/60,decimal(20,0)) duration from care_bedroom_inbed_detail t
+         where DATE_FORMAT(t.create_time,'%Y%m%d%H') >= DATE_FORMAT(DATE_SUB(now(), INTERVAL 1 HOUR), '%Y%m%d%H')
          group by data_hour,dev_id
+          on duplicate key update
+         duration = values(duration)
     </insert>
 </mapper>

+ 3 - 1
src/main/resources/mybatis/CareDevEventDayStaMapper.xml

@@ -4,8 +4,10 @@
 <insert id="exeDevEventDaySta">
      insert into care_dev_event_day_sta(data_date,dev_id,event_type,frequency)
       select DATE_FORMAT(t.create_time,'%Y%m%d') data_date,t.dev_id,t.order_type, count(1) frequency from care_event_order t
-      where DATE_FORMAT(t.create_time,'%Y%m%d') = DATE_FORMAT(DATE_SUB(now(), INTERVAL 1 DAY), '%Y%m%d')
+      where DATE_FORMAT(t.create_time,'%Y%m%d') >= DATE_FORMAT(DATE_SUB(now(), INTERVAL 1 DAY), '%Y%m%d')
       group by data_date,t.dev_id,t.order_type
+      on duplicate key update
+      frequency = values(frequency)
 </insert>
 
 </mapper>

+ 4 - 1
src/main/resources/mybatis/CareHeartBreathHourStaMapper.xml

@@ -5,8 +5,11 @@
     <insert id = "exeHeartBreathHourSta">
         insert into care_heart_breath_hour_sta(data_hour,dev_id,heart_rate,breath_rate)
        select DATE_FORMAT(t.create_time,'%Y%m%d%H') data_hour,t.dev_id,convert(sum(t.heart_rate)/count(1),decimal(20,0)) heart_rate,convert(sum(t.breath_rate)/count(1) ,decimal(20,0)) breath_rate from care_heart_breath_detail t
-        where DATE_FORMAT(t.create_time,'%Y%m%d%H') = DATE_FORMAT(DATE_SUB(now(), INTERVAL 1 HOUR), '%Y%m%d%H')
+         where DATE_FORMAT(t.create_time,'%Y%m%d%H') >= DATE_FORMAT(DATE_SUB(now(), INTERVAL 1 HOUR), '%Y%m%d%H')
          group by data_hour,dev_id
+         on duplicate key update
+        heart_rate=values(heart_rate),
+        breath_rate=values(breath_rate)
     </insert>
 
 </mapper>

+ 4 - 1
src/main/resources/mybatis/CareToiletInoutHourStaMapper.xml

@@ -4,8 +4,11 @@
     <insert id="exeToiletInoutHourSta">
         insert into care_toilet_inout_hour_sta(data_hour,dev_id,frequency,duration)
         select DATE_FORMAT(t.create_time,'%Y%m%d%H') data_hour,t.dev_id,COUNT(1) frequency, convert(sum(t.duration)/60,decimal(20,0)) duration from care_toilet_inout_detail t
-        where DATE_FORMAT(t.create_time,'%Y%m%d%H') = DATE_FORMAT(DATE_SUB(now(), INTERVAL 1 HOUR), '%Y%m%d%H')
+        where DATE_FORMAT(t.create_time,'%Y%m%d%H') >= DATE_FORMAT(DATE_SUB(now(), INTERVAL 1 HOUR), '%Y%m%d%H')
         group by data_hour,t.dev_id
+          on duplicate key update
+        frequency=values(frequency),
+        duration=values(duration)
     </insert>
 
 </mapper>

+ 3 - 1
src/main/resources/mybatis/CareWalkingDistanceHourStaMapper.xml

@@ -5,7 +5,9 @@
   <insert id="exeWalkingDistanceHourSta">
           insert into care_walking_distance_hour_sta(data_hour,dev_id,dev_scene,walking_distance)
       select DATE_FORMAT(t.create_time,'%Y%m%d%H') data_hour,t.dev_id,t.dev_scene, sum(walking_distance) walking_distance from care_walking_distance_detail t
-      where DATE_FORMAT(t.create_time,'%Y%m%d%H') = DATE_FORMAT(DATE_SUB(now(), INTERVAL 1 HOUR), '%Y%m%d%H')
+      where DATE_FORMAT(t.create_time,'%Y%m%d%H') >= DATE_FORMAT(DATE_SUB(now(), INTERVAL 1 HOUR), '%Y%m%d%H')
       group by data_hour,t.dev_id,t.dev_scene
+        on duplicate key update
+        walking_distance=values(walking_distance)
   </insert>
 </mapper>