Browse Source

设备启动时清空未处理通知

master
sige 1 year ago
parent
commit
1fc5ada74a
  1. 4
      src/main/java/com/iflytop/digester/DigesterApplicationRunner.java
  2. 9
      src/main/java/com/iflytop/digester/underframework/dao/model/UfMdbNotification.java

4
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();
}
}

9
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();
}
}
}
Loading…
Cancel
Save