package cn.iocoder.yudao.server.controller.admin.vo.crm;

import cn.idev.excel.annotation.ExcelIgnoreUnannotated;
import cn.idev.excel.annotation.ExcelProperty;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;

import java.time.LocalDateTime;

@Schema(description = "管理后台 - CRM消息通知 Response VO")
@Data
@ExcelIgnoreUnannotated
public class CrmNoticeRespVO {

    @Schema(description = "主键id", requiredMode = Schema.RequiredMode.REQUIRED, example = "14994")
    @ExcelProperty("主键id")
    private Long id;

    @Schema(description = "发起通知人ID", example = "1264")
    @ExcelProperty("发起通知人ID")
    private String sourceId;

    @Schema(description = "新旧通知标识（0、null表示旧，表示是新）")
    @ExcelProperty("新旧通知标识（0、null表示旧，表示是新）")
    private String typeFlg;

    @Schema(description = "接收通知ID", example = "2766")
    @ExcelProperty("接收通知ID")
    private String targetId;

    @Schema(description = "对象下条目ID", example = "1905")
    @ExcelProperty("对象下条目ID")
    private String operateId;

    @Schema(description = "通知类型", example = "2")
    @ExcelProperty("通知类型")
    private String noticeType;

    @Schema(description = "列表通知条目")
    @ExcelProperty("列表通知条目")
    private String content;

    @Schema(description = "列表通知条目的title")
    @ExcelProperty("列表通知条目的title")
    private String contentMajor;

    @Schema(description = "创建人")
    @ExcelProperty("创建人")
    private String createdAt;

    @Schema(description = "来自应用通知类型", example = "2")
    @ExcelProperty("来自应用通知类型")
    private String appType;

    @Schema(description = "关联业务ID", example = "5663")
    @ExcelProperty("关联业务ID")
    private String belongId;

    @Schema(description = "通知状态", example = "2")
    @ExcelProperty("通知状态")
    private String status;

    @Schema(description = "创建时间")
    @ExcelProperty("创建时间")
    private LocalDateTime createTime;

    private String workCode;

    private String crmNoticeId;
}