增加消息通知接口

This commit is contained in:
menxipeng
2025-08-24 00:24:39 +08:00
parent f30ab86f2d
commit 66dc8ce2bf
13 changed files with 1933 additions and 0 deletions

View File

@@ -0,0 +1,148 @@
package com.ruoyi.common.core.domain.entity;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;
/**
* 【请填写功能名称】对象 notification_records
*
* @author ruoyi
* @date 2025-08-23
*/
public class NotificationRecords extends BaseEntity
{
private static final long serialVersionUID = 1L;
/** $column.columnComment */
private Long id;
/** 关联通知内容ID */
@Excel(name = "关联通知内容ID")
private Long notificationId;
/** 接收用户ID关联您现有用户表 */
@Excel(name = "接收用户ID", readConverterExp = "关=联您现有用户表")
private Long userId;
/** 发送渠道 'push', 'sms', 'email', 'in-app' */
@Excel(name = "发送渠道 'push', 'sms', 'email', 'in-app'")
private String channel;
/** 发送状态 'pending', 'sent', 'delivered', 'read', 'failed' */
@Excel(name = "发送状态 'pending', 'sent', 'delivered', 'read', 'failed'")
private String status;
/** 实际发送时间 */
@JsonFormat(pattern = "yyyy-MM-dd")
@Excel(name = "实际发送时间", width = 30, dateFormat = "yyyy-MM-dd")
private Date sentTime;
/** 用户阅读时间 */
@JsonFormat(pattern = "yyyy-MM-dd")
@Excel(name = "用户阅读时间", width = 30, dateFormat = "yyyy-MM-dd")
private Date readTime;
/** 失败原因 */
@Excel(name = "失败原因")
private String failureReason;
public void setId(Long id)
{
this.id = id;
}
public Long getId()
{
return id;
}
public void setNotificationId(Long notificationId)
{
this.notificationId = notificationId;
}
public Long getNotificationId()
{
return notificationId;
}
public void setUserId(Long userId)
{
this.userId = userId;
}
public Long getUserId()
{
return userId;
}
public void setChannel(String channel)
{
this.channel = channel;
}
public String getChannel()
{
return channel;
}
public void setStatus(String status)
{
this.status = status;
}
public String getStatus()
{
return status;
}
public void setSentTime(Date sentTime)
{
this.sentTime = sentTime;
}
public Date getSentTime()
{
return sentTime;
}
public void setReadTime(Date readTime)
{
this.readTime = readTime;
}
public Date getReadTime()
{
return readTime;
}
public void setFailureReason(String failureReason)
{
this.failureReason = failureReason;
}
public String getFailureReason()
{
return failureReason;
}
@Override
public String toString() {
return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
.append("id", getId())
.append("notificationId", getNotificationId())
.append("userId", getUserId())
.append("channel", getChannel())
.append("status", getStatus())
.append("sentTime", getSentTime())
.append("readTime", getReadTime())
.append("failureReason", getFailureReason())
.append("createTime", getCreateTime())
.append("updateTime", getUpdateTime())
.toString();
}
}

View File

@@ -0,0 +1,56 @@
package com.ruoyi.common.core.domain.entity;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;
import lombok.Data;
import java.util.Date;
import java.util.List;
/**
* 【请填写功能名称】对象 notifications
*
* @author ruoyi
* @date 2025-08-23
*/
@Data
public class Notifications extends BaseEntity
{
private static final long serialVersionUID = 1L;
/** $column.columnComment */
private Long id;
/** 通知标题 */
@Excel(name = "通知标题")
private String title;
/** 通知内容 */
@Excel(name = "通知内容")
private String content;
/** 通知类型 system */
@Excel(name = "通知类型 system")
private String notificationType;
/** 附加数据如跳转链接、图片URL等 预留字段 */
@Excel(name = "附加数据如跳转链接、图片URL等 预留字段")
private String extraData;
/** 创建者用户ID关联您现有用户表 */
@Excel(name = "创建者用户ID", readConverterExp = "关=联您现有用户表")
private String creator;
/** $column.columnComment */
@Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()")
private Date updatedTime;
/** 计划发送时间 */
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@Excel(name = "计划发送时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
private Date sendTime;
private List<ShopUser> shopUsers;
}