1
0
mirror of https://github.com/FatttSnake/Pinnacle-OA.git synced 2026-04-05 06:51:23 +08:00
Files
Pinnacle-OA/Pinnacle/src/main/java/com/cfive/pinnacle/entity/Notice.java
2023-05-06 04:00:51 +08:00

147 lines
3.1 KiB
Java

package com.cfive.pinnacle.entity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.Version;
import java.io.Serial;
import java.io.Serializable;
import java.time.LocalDateTime;
import java.util.List;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import lombok.Data;
import lombok.experimental.Accessors;
/**
* <p>
* 公告
* </p>
*
* @author FatttSnake
* @since 2023-04-30
*/
@Data
@Accessors(chain = true)
@TableName("t_notice")
public class Notice implements Serializable {
@Serial
private static final long serialVersionUID = 1L;
@TableId("id")
@JsonSerialize(using = ToStringSerializer.class)
private Long id;
/**
* 公告标题
*/
@TableField("title")
private String title;
/**
* 公告内容
*/
@TableField("content")
private String content;
/**
* 公告类型Id
*/
@TableField("type_id")
@JsonSerialize(using = ToStringSerializer.class)
private Long typeId;
/**
* 公告类型
*/
@TableField(exist = false)
private NoticeType noticeType;
/**
* 发布者id
*/
@TableField("sender_id")
@JsonSerialize(using = ToStringSerializer.class)
private Long senderId;
/**
* 发布者
*/
@TableField(exist = false)
private User sender;
/**
* 创建时间
*/
@TableField("create_time")
@JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd'T'HH:mm:ss.SSS'Z'", timezone = "UTC")
private LocalDateTime createTime;
/**
* 发送时间
*/
@TableField("send_time")
@JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd'T'HH:mm:ss.SSS'Z'", timezone = "UTC")
private LocalDateTime sendTime;
/**
* 失效时间
*/
@TableField("end_time")
@JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd'T'HH:mm:ss.SSS'Z'", timezone = "UTC")
private LocalDateTime endTime;
/**
* 优先级
*/
@TableField("priority")
private Integer priority;
/**
* 置顶
*/
@TableField("top")
private Integer top;
/**
* 修改时间
*/
@TableField("modify_time")
@JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd'T'HH:mm:ss.SSS'Z'", timezone = "UTC")
private LocalDateTime modifyTime;
/**
* 源ID
*/
@TableField("origin_id")
@JsonSerialize(using = ToStringSerializer.class)
private Long originId;
/**
* 已修改
*/
@TableField("old")
private Integer old;
@TableField("deleted")
@TableLogic
private Integer deleted;
@TableField("version")
@Version
private Integer version;
/**
* 公告接收者
*/
@TableField(exist = false)
@JsonSerialize(using = ToStringSerializer.class)
private List<Long> receivers;
}