diff --git a/src/main/java/com/iflytop/digester/DigesterApplicationRunner.java b/src/main/java/com/iflytop/digester/DigesterApplicationRunner.java index 48bd29a..1552e99 100644 --- a/src/main/java/com/iflytop/digester/DigesterApplicationRunner.java +++ b/src/main/java/com/iflytop/digester/DigesterApplicationRunner.java @@ -1,6 +1,7 @@ package com.iflytop.digester; import com.iflytop.digester.deviceinstance.Device; import com.iflytop.digester.underframework.UfApplication; +import com.iflytop.digester.underframework.dao.model.UfMdbNotification; import jakarta.annotation.Resource; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -37,5 +38,8 @@ public class DigesterApplicationRunner implements ApplicationRunner { UfApplication.getApp().connections.setup(); this.device.liquidAddition.setup(); + + LOG.info("[APP] expire all new messages"); + UfMdbNotification.expireAllNewMessages(); } } diff --git a/src/main/java/com/iflytop/digester/underframework/dao/model/UfMdbNotification.java b/src/main/java/com/iflytop/digester/underframework/dao/model/UfMdbNotification.java index 318167f..9a7104c 100644 --- a/src/main/java/com/iflytop/digester/underframework/dao/model/UfMdbNotification.java +++ b/src/main/java/com/iflytop/digester/underframework/dao/model/UfMdbNotification.java @@ -56,4 +56,13 @@ public class UfMdbNotification extends UfActiveRecord { var dataJson = UfJsonHelper.objectToJson(data); createNotification("action", dataJson); } + + // expire all new messages + public static void expireAllNewMessages() { + var list = UfActiveRecord.find(UfMdbNotification.class, Map.of("status", "new")); + for ( var n : list ) { + n.status = "expired"; + n.save(); + } + } }