|
@@ -7,6 +7,7 @@ import json
|
|
|
import traceback
|
|
|
from datetime import datetime, timezone, timedelta
|
|
|
|
|
|
+import common.sys_comm as sys_comm
|
|
|
from common.sys_comm import (
|
|
|
LOGDBG, LOGINFO, LOGWARN, LOGERR,
|
|
|
get_utc_time_ms, get_utc_time_s, get_bj_time_ms, get_bj_time_s,
|
|
@@ -161,19 +162,11 @@ class EventAttr_TargetAbsence(EventAttr_Base):
|
|
|
self.absence_time_ = -1
|
|
|
|
|
|
# 事件属性 清理过期事件(无用)
|
|
|
-class EventAttr_CleanExpiredEvents(EventAttr_Base):
|
|
|
+class EventAttr_CleanExpireEvents(EventAttr_Base):
|
|
|
def __init__(self, event_type):
|
|
|
self.event_type_ = event_type
|
|
|
- self.leave_ts_: int = -1 # 离开时间(ms)
|
|
|
- self.enter_ts_: int = -1 # 进入时间(ms)
|
|
|
- self.absence_time_: int = -1 # 消失时长(ms)
|
|
|
- self.time_threshold_: int = 300 # 触发消失时间阈值(ms)
|
|
|
- return
|
|
|
+ self.expire_range_ = 90
|
|
|
|
|
|
- def reset(self):
|
|
|
- self.leave_ts_ = -1
|
|
|
- self.enter_ts_ = -1
|
|
|
- self.absen
|
|
|
|
|
|
# 事件属性表
|
|
|
event_attr_map = {
|
|
@@ -187,7 +180,7 @@ event_attr_map = {
|
|
|
EventType.BATHROOM_STAY_FREQUENCY.value : EventAttr_BathroomStayFrequency,
|
|
|
EventType.TARGET_ABSENCE.value : EventAttr_TargetAbsence,
|
|
|
|
|
|
- EventType.CLEAN_EXPIRED_EVENTS.value : EventAttr_CleanExpiredEvents,
|
|
|
+ EventType.CLEAN_EXPIRE_EVENTS.value : EventAttr_CleanExpireEvents,
|
|
|
}
|
|
|
|
|
|
class Cron:
|
|
@@ -258,8 +251,10 @@ class AlarmPlan:
|
|
|
if ((self.event_type_ == EventType.TOILETING_FREQUENCY_ABNORMAL.value) or
|
|
|
(self.event_type_ == EventType.NIGHT_TOILETING_FREQUENCY_ABNORMAL.value)):
|
|
|
event_attr.threshold_count_ = int(self.param_.get("count", 0))
|
|
|
- if ((self.event_type_ == EventType.TARGET_ABSENCE.value)):
|
|
|
+ elif ((self.event_type_ == EventType.TARGET_ABSENCE.value)):
|
|
|
event_attr.time_threshold_ = int(self.param_.get("time_threshold", 0))
|
|
|
+ elif ((self.event_type_ == EventType.CLEAN_EXPIRE_EVENTS.value)):
|
|
|
+ event_attr.expire_range_ = 90
|
|
|
|
|
|
return event_attr
|
|
|
|
|
@@ -819,9 +814,12 @@ class AlarmPlan:
|
|
|
|
|
|
|
|
|
# 清理过期事件
|
|
|
- def handle_clear_expired_events(self):
|
|
|
+ def handle_clear_expire_events(self):
|
|
|
try:
|
|
|
- db_execute_async(sqls.sql_delete_expired_events)
|
|
|
+ params = {
|
|
|
+ "save_days": self.event_attr_.expire_range_
|
|
|
+ }
|
|
|
+ db_execute_async(sqls.sql_delete_expire_events, params=params)
|
|
|
|
|
|
except json.JSONDecodeError as e:
|
|
|
tb_info = traceback.extract_tb(e.__traceback__)
|