package com.ard.sample.annotation.model.entity; import com.baomidou.mybatisplus.annotation.*; import lombok.AllArgsConstructor; import lombok.Builder; import lombok.Data; import lombok.NoArgsConstructor; import java.io.Serializable; @Data @Builder @NoArgsConstructor @AllArgsConstructor @TableName(value = "annotation") public class AnnotationEntity implements Serializable { /** * 主键UUID */ @TableId(type = IdType.ASSIGN_UUID) // 自动生成UUID private String id; /** * 关联目录ID(UUID) */ @TableField(value = "directory_id") private String directoryId; /** * 标注名称 */ @TableField(value = "name") private String name; /** * 标注颜色 */ @TableField(value = "color") private String color; /** * 标注类型(point/line/polygon/circle),1-点 2-线 3-面 4-圆 */ @TableField(value = "annotation_type") private String annotationType; /** * 坐标信息 */ @TableField(value = "coordinate_info") private byte[] coordinateInfo; /** * 关联图片URL */ @TableField(value = "image_url") private String imageUrl; /** * 绘制人 */ @TableField(value = "drawer") private String drawer; /** * 是否可见:true(1)=可见,false(0)=不可见(默认true) */ @TableField(value = "is_true") private Boolean isTrue = true; // 显式设置默认值,避免空值 /** * 是否透明:true(1)=透明,false(0)=不透明 */ @TableField(value = "is_transparent") private Boolean isTransparent; /** * 标注简介 */ @TableField(value = "description") private String description; /** * 创建时间 */ @TableField(value = "create_time", fill = FieldFill.INSERT) private Long createTime; /** * 更新时间 */ @TableField(value = "update_time", fill = FieldFill.INSERT_UPDATE) private Long updateTime; }