package com.nbclass.activity.model;

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

import javax.persistence.*;

import lombok.Data;

@Data
@Table(name = "content")
public class Content implements Serializable {

    private static final long serialVersionUID = -6422276602170816740L;

    /**
     * ID, 主键,自增
     */
    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private Long id;

    /**
     * 创建时间
     */
    private Date createtime;

    /**
     * 创建时间区间
     */
    private Date createtimeSection;

    /**
     * 修改时间
     */
    private Date updatetime;

    /**
     * 创建时间区间
     */
    private Date updatetimeSection;

    /**
     * 案例类型[ppqa:品牌全案, ggqa:公关全案, design:创意设计, video:视频动画, h5:技术开发, ldhd:落地活动, others:其他案例]
     */
    private String type;


    /**
     * 是否有效(1:有效，0:无效)
     */
    private Byte isvalid;

    /**
     * 案例来源ID
     */
    private Integer fromid;
    // 案例来源名称
    @Transient
 	private String fromName;
    @Transient
 	private String fromids; // 案例来源id，多个逗号分隔

    /**
     * 标题
     */
    private String title;

    /**
     * 摘要,描述
     */
    private String desct;

    /**
     * 查看数
     */
    private Integer viewno;

    /**
     * 点赞数
     */
    private Integer praiseno;

    /**
     * 收藏数
     */
    private Integer collectionNumber;

    /**
     * 列表icon图
     */
    private String listicon;

    /**
     * 二维码
     */
    private String qrcode;

    /**
     * 排序值, 值越大越考前
     */
    private Integer sort;

    /**
     * 访问地址
     */
    private String url;

    /**
     * 内容,富文本内容存储在这
     */
    private String content;

    /**
     * 纯Text内容,用于存到ES便于搜索
     */
    private String content_text;

    /**
     * 附件
     */
    private String attachment;

    /**
     * 创建人id
     */
    private Long userId;

    /**
     * 索引标签反馈次数
     */
    private Integer labelFeedback;

    /**
     * 字典数据名称
     */
    private String name;

    /**
     * 上线时间
     */
    private Date onlineTime;

    /**
     * 上线时间区间
     */
    private Date onlineTimeSection;

    /**
     * 可见性
     */
    private Integer visibility;

    /**
     *评论数
     */
    private Integer comments;

    /**
     * 发布状态（1、未发布 2、已发布 4、已下线）
     */
    private Integer release;

    /**
     * 审核状态（1、待审核 2、已上线 3、不通过 4、已下线 5、未提交）
     */
    private Integer status;

    //用户人名称
    private String userName;

    //用户人职位
    private String position;

    //申请单id
    @Transient
    private Long applicationId;

    //审核表案例状态
    private Long checkStatus;

    //申请单
    private Application application;

    //总评分
    private Double TotalScore;

    //评分总人数
    private Integer userTotal;



    // 标签
    @Transient
 	private String tags;
    @Transient
 	private List<ContentTags> tagList = new ArrayList<ContentTags>();

    //案例分类
    private String[] tagLists;

    //反馈次数
    private Integer quantity;

 	// 图片集
 	@Transient
 	private String images;
 	@Transient
 	private List<ContentImages> imgList = new ArrayList<ContentImages>();

 	//评论列表
    private List<Comment> commentators;

    //查询标签个数 控制前端案例列表的查看操作
    private Integer count;

    //用户角色Id
    private String roleId;

}
