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

import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.zsc.edu.gateway.modules.attachment.entity.Attachment;
import com.zsc.edu.gateway.modules.notice.entity.Message;
import com.zsc.edu.gateway.modules.notice.entity.MessageType;
import com.zsc.edu.gateway.modules.system.entity.User;
import lombok.Data;

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

/**
 * @author zhuang
 */
@Data
public class UserMessageVo {
    private Long id;
    public Long userId;
    public User user;
    public Long messageId;
    public Message message;
    public Boolean isRead;
    public LocalDateTime readTime;

    public String username;
    public String name;
    public String avatar;
    public String address;

    public MessageType type = MessageType.other;
    public Boolean system;
    public Boolean email;
    public Boolean sms;
    public Boolean html;
    public String title;
    public String content;
    private String remark;
    @TableField(value = "create_time", fill = FieldFill.INSERT)
    private LocalDateTime createTime;
    @TableField(value = "create_by", fill = FieldFill.INSERT)
    private String createBy;
    @TableField(value = "update_time", fill = FieldFill.INSERT_UPDATE)
    private LocalDateTime updateTime;
    @TableField(value = "update_by", fill = FieldFill.INSERT_UPDATE)
    private String updateBy;

    public List<Attachment> attachments;
}
