package com.bs.df.domain;

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

import com.bs.cm.domain.CmAttach;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.bs.common.annotation.Excel;
import com.bs.common.core.domain.BaseEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModelProperty;

/**
 * 产品文章对象 df_product_article
 *
 * @author bs
 * @date 2024-04-06
 */
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
@TableName("df_product_article")
@Data
public class DfProductArticle extends BaseEntity{
    private static final long serialVersionUID = 1L;

    /** 文章id */
    @TableId(value = "id",type = IdType.ASSIGN_UUID)
    @ApiModelProperty(value = "文章id")
    private String id;

    /** 文章分类0产品文章1经纪文章 */

    @Excel(name = "文章分类",dictType = "product_classify")
    @ApiModelProperty(value = "文章分类0产品文章1经纪文章")
    private String articleType;

    /** 文章类型 */

    @Excel(name = "文章类型",dictType = "article_kind")
    @ApiModelProperty(value = "文章类型")
    private String articleKind;

    /** 文章标题 */

    @Excel(name = "文章标题")
    @ApiModelProperty(value = "文章标题")
    private String articleTitle;

    /** 发布时间 */

    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "发布时间", width = 30, dateFormat = "yyyy-MM-dd")
    @ApiModelProperty(value = "发布时间")
    private Date publishTime;

    /** 文章正文 */

    @Excel(name = "文章正文")
    @ApiModelProperty(value = "文章正文")
    private String articleContent;

    /** 状态0草稿1上架 */

    @Excel(name = "状态",dictType = "product_status")
    @ApiModelProperty(value = "状态0草稿1上架")
    private String status;

    /** 备注 */

    @Excel(name = "备注")
    @ApiModelProperty(value = "备注")
    private String remark;

    @Excel(name = "序号")
    @ApiModelProperty(value = "序号")
    private String serialNumber;

    @TableField(exist = false)
    private String publishTimeBegin;

    @TableField(exist = false)
    private String publishTimeEnd;

    @TableField(exist = false)
    private String[] ids;

    @TableField(exist = false)
    private List<CmAttach> files;

    @TableField(exist = false)
    private String orderByColumn;

}
