package com.storlead.message.pojo.vo;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.experimental.Accessors;

import java.io.Serializable;
import java.util.Date;

/**
 * 站内消息列表/详情 VO（关联 inside_message_send_log + inside_message_record）
 */
@Data
@Accessors(chain = true)
@ApiModel(value = "站内消息", description = "站内消息")
public class MessageDetailVO implements Serializable {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty(value = "发送记录主键")
    private Long id;

    @ApiModelProperty(value = "消息 id")
    private Long messageId;

    @ApiModelProperty(value = "接收人")
    private Long receiverUserId;

    @ApiModelProperty(value = "消息类型")
    private Integer messageType;

    @ApiModelProperty(value = "细分消息类型")
    private Integer messageSubType;

    @ApiModelProperty(value = "0:未读,1:已读")
    private Integer isRead;

    @ApiModelProperty(value = "接收状态")
    private Integer status;

    @ApiModelProperty(value = "归属人员")
    private Long ownerBy;

    @ApiModelProperty(value = "创建人")
    private Long createBy;

    @ApiModelProperty(value = "更新人")
    private Long updateBy;

    @ApiModelProperty(value = "创建时间")
    private Date createTime;

    @ApiModelProperty(value = "更新时间")
    private Date updateTime;

    @ApiModelProperty(value = "是否删除")
    private Integer isDelete;

    @ApiModelProperty(value = "是否启用")
    private Boolean enabled;

    @ApiModelProperty(value = "排序")
    private Integer sort;

    @ApiModelProperty(value = "消息标题")
    private String title;

    @ApiModelProperty(value = "消息内容")
    private String content;

    @ApiModelProperty(value = "图标")
    private String messageIcon;

    @ApiModelProperty(value = "标签")
    private String messageTag;

    @ApiModelProperty(value = "回调地址")
    private String callbackUrl;

    @ApiModelProperty(value = "发送人 id")
    private Long sendUserId;

    @ApiModelProperty(value = "发送人")
    private String sendUserName;

    @ApiModelProperty(value = "发送头像图片")
    private String photo;

    @ApiModelProperty(value = "应用 ID，对应 inside_message_record.app_id")
    private Long appId;
}
