package com.goldenwater.slgc.domain;

import com.goldenwater.common.annotation.Excel;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import java.util.Date;
import java.util.List;

@Schema(description = "内容文章实体")
@Data
public class CmsArticle {
    @Schema(description = "文章ID")
    private String aid;
    @Schema(description = "业务部门")
    private String bizDept;
    @Excel(name = "分类ID")
    @Schema(description = "分类ID")
    private String cateId;
    @Excel(name = "标题")
    @Schema(description = "标题")
    private String title;
    @Excel(name = "副标题")
    @Schema(description = "副标题")
    private String subtitle;
    @Excel(name = "关键词")
    @Schema(description = "关键词")
    private String keyword;
    @Schema(description = "是否图片新闻")
    private String isImage;
    @Schema(description = "缩略图")
    private String thumbnail;
    @Excel(name = "来源")
    @Schema(description = "来源")
    private String source;
    @Excel(name = "摘要")
    @Schema(description = "摘要")
    private String summary;
    @Excel(name = "状态", readConverterExp = "0=草稿,1=已发布,2=已撤回,3=已删除", combo = {"草稿","已发布","已撤回","已删除"})
    @Schema(description = "状态")
    private String status;
    @Excel(name = "发布人")
    @Schema(description = "发布人")
    private String pubUser;
    @Excel(name = "发布日期", dateFormat = "yyyy-MM-dd")
    @Schema(description = "发布日期")
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date pubDate;
    @Schema(description = "截止日期")
    private Date dueDate;
    @Schema(description = "审核人")
    private String auditUser;
    @Schema(description = "审核日期")
    private Date auditDate;
    @Schema(description = "是否置顶")
    private String isTop;
    @Schema(description = "是否删除")
    private String isDel;
    @Schema(description = "是否允许评论")
    private String isComment;
    @Excel(name = "浏览次数")
    @Schema(description = "浏览次数")
    private Integer viewCount;
    @Schema(description = "评论次数")
    private Integer commentCount;
    @Schema(description = "文章内容")
    private String content;
    @Excel(name = "发布平台", readConverterExp = "1=PC,2=微信,3=PC+微信", combo = {"PC","微信","PC+微信"})
    @Schema(description = "发布平台")
    private String pubPlatform;
    @Schema(description = "标题颜色")
    private String titleColor;
    @Excel(name = "类型", readConverterExp = "article=图文,link=链接", combo = {"图文","链接"})
    @Schema(description = "类型")
    private String type;

    /** 文章文件列表 */
    private List<CmsArticleFile> articleFiles;
}
