package jnpf.model.notice.dto;

import lombok.Data;

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

/**
 * 公告
 */
@Data
public class FtbNoticeAnnouncementsDetailDto implements Serializable {
    /**
     * 主键
     */
    private String id;

    /**
     * 分类ID，必填字段
     */
    private String categoryId;
    /**
     * 层级分类ID列表
     */
    private List<String> categoryIdList;

    /**
     * 分类名称
     */
    private String categoryName;

    /**
     * 标题，不超过50个字，必填
     */
    private String title;

    /**
     * 公告内容短内容
     */

    private String shortContent;

    /**
     * 公告内容，富文本
     */

    private String content;

    /**
     * 是否必读，1：非必读，2：必读
     */

    private Integer needRead;

    /**
     * 是否定时发送，0立即发送 1定时发送
     */
    private Integer isScheduled;

    /**
     * 定时发送时间，选择是时必填且大于等于当前时间
     */
    private Date scheduledTime;


    /**
     * 发布时间
     */
    private Date publishTime;

    /**
     * 状态：1、草稿、2、待发布、3、已发布 4、已撤回
     */
    private Integer status;


    /**
     * 创建用户
     */

    private String creatorUserId;
    /**
     * 创建时间
     */
    private Date creatorTime;

    /**
     * 修改用户
     */
    private String lastModifyUserId;

    /**
     * 修改时间
     */
    private Date lastModifyTime;
    /**
     * 接受人员类型，0、全部 1、指定
     */
    private Integer receiveUserType;
    /**
     * 接收用户ID列表
     */

    private List<String> userIdList;

    /**
     * 接收用户列表
     */
    private List<NoticeUserDto> userList;

    /**
     * 附件列表
     */
    private List<FtbNoticeFilesDto> filesList;

    /**
     * 创建人信息
     */
    private NoticeUserDto createUserInfo;
    /**
     * 发布人ID
     */
    private String publishUserId;

    /**
     * 发布人信息
     */
    private NoticeUserDto publishUserInfo;

    /**
     * 已读人员数据量
     */
    private Long readCount;
    /**
     * 未读人员数据量
     */
    private Long noReadCount;

}