package com.zsc.edu.gateway.modules.message.vo;

import com.fasterxml.jackson.annotation.JsonInclude;
import com.zsc.edu.gateway.modules.attachment.entity.Attachment;
import com.zsc.edu.gateway.modules.message.entity.Bulletin;
import lombok.Data;

import java.time.LocalDateTime;
import java.util.List;

/**
 * @author zhuang
 */
@Data
@JsonInclude
public class BulletinVo {
    /**
     * 公告id
     */
    private Long id;
    /**
     * 公告标题
     */
    private String title;
    /**
     * 公告属性
     */
    private Bulletin.State state = Bulletin.State.edit;
    /**
     * 公告置顶状态
     */
    private Boolean top;
    /**
     * 公告编辑者ID
     */
    private Long editUserId;
    /**
     * 公告编辑者名称
     */
    private String editUsername;
    /**
     * 公告编辑时间
     */
    private LocalDateTime editTime;
    /**
     * 公告发布者ID
     */
    private Long publishUserId;
    /**
     * 公告发布者名称
     */
    private String publishUsername;
    /**
     * 公告发布时间
     */
    private LocalDateTime publishTime;
    /**
     * 公告关闭者ID
     */
    private Long closeUserId;
    /**
     * 公告关闭者名称
     */
    private String closeUsername;
    /**
     * 公告关闭时间
     */
    private LocalDateTime closeTime;
    /**
     * 公告内容
     */
    private String content;
    /**
     * 创建时间
     */
    private LocalDateTime createTime;
    /**
     * 创建者
     */
    private String createBy;
    /**
     * 更新时间
     */
    private LocalDateTime updateTime;
    /**
     * 更新者
     */
    private String updateBy;
    /**
     * 备注
     */
    private String remark;
    /**
     * 附件
     */
    List<Attachment> attachments;

}
