|
|
@ -0,0 +1,40 @@ |
|
|
|
package com.my.graphiteDigesterBg.diframe.model; |
|
|
|
import com.my.graphiteDigesterBg.diframe.ActiveRecordField; |
|
|
|
import com.my.graphiteDigesterBg.diframe.DiActiveRecord; |
|
|
|
import com.my.graphiteDigesterBg.diframe.DiTask; |
|
|
|
import com.my.graphiteDigesterBg.diframe.util.DiJsonHelper; |
|
|
|
import java.util.Map; |
|
|
|
public class DiMdbNotification extends DiActiveRecord { |
|
|
|
@ActiveRecordField |
|
|
|
public Integer id; |
|
|
|
@ActiveRecordField |
|
|
|
public String type; |
|
|
|
@ActiveRecordField |
|
|
|
public String data; |
|
|
|
@ActiveRecordField |
|
|
|
public String status; |
|
|
|
|
|
|
|
// get table name |
|
|
|
public static String getTableName() { |
|
|
|
return "app_notifications"; |
|
|
|
} |
|
|
|
|
|
|
|
// notify action |
|
|
|
public static void taskAction(DiTask task, String action ) { |
|
|
|
DiMdbNotification.taskAction(task, action, ""); |
|
|
|
} |
|
|
|
|
|
|
|
// notify action |
|
|
|
public static void taskAction( DiTask task, String action, Object data ) { |
|
|
|
Map<String, Object> notifyData = Map.of( |
|
|
|
"action", action, |
|
|
|
"data", data, |
|
|
|
"task", task.getUUID() |
|
|
|
); |
|
|
|
var notification = new DiMdbNotification(); |
|
|
|
notification.type = "task-action"; |
|
|
|
notification.data = DiJsonHelper.objectToJson(notifyData); |
|
|
|
notification.status = "new"; |
|
|
|
notification.save(); |
|
|
|
} |
|
|
|
} |