package cn.axzo.msg.center.service.dto;

import cn.axzo.msg.center.service.enums.MessageCategoryEnum;
import cn.axzo.msg.center.service.enums.PushTerminalEnum;
import com.alibaba.fastjson.JSON;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;

import java.io.Serializable;
import java.util.List;

/**
 * @author cold_blade
 * @date 2023/10/11
 * @version 1.0
 */
@Setter
@Getter
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class MessageBaseTemplateDTO implements Serializable {

    private static final long serialVersionUID = -7079227473990043416L;

    /**
     * 模板名称
     */
    private String name;
    /**
     * 系统自动生成的模板code
     */
    private String code;
    /**
     * 所属消息类型
     */
    private MessageCategoryEnum msgCategory;
    /**
     * 模板标题
     */
    private String title;
    /**
     * 模板类容
     */
    private String content;
    /**
     * 卡片信息标签列表
     */
    private List<MessageCardContentItemDTO> cardContentItems;
    /**
     * 模板icon
     */
    private String icon;
    /**
     * 推送终端配置列表
     */
    private List<PushTerminalEnum> pushTerminals;
    /**
     * 消息模板创建时间戳
     */
    private Long createTimestamp;

    @Override
    public String toString() {
        return JSON.toJSONString(this);
    }
}
