package top.tqx.demo_1.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler;
import com.fasterxml.jackson.databind.JsonNode;
import lombok.Data;

import java.io.Serializable;
import java.time.LocalDateTime;

@Data
@TableName(value = "file", autoResultMap = true)
public class File implements Serializable {
    
    private static final long serialVersionUID = 1L;
    
    @TableId(type = IdType.AUTO)
    private Long id;
    
    private String fileName;
    
    private String filePath;
    
    private Long fileSize;
    
    private String fileType;
    
    private String extension;

    private String fileMd5;

    private Long uploadUserId;
    
    private Long deptId;
    
    @TableField(value = "dept_ids", typeHandler = JacksonTypeHandler.class)
    private JsonNode deptIds;
    
    private Integer isPublic;
    
    private String fileCategory;
    
    private String description;
    
    private Integer status;
    
    private Integer auditStatus;
    
    private String vectorDbAddress;

    private LocalDateTime createTime;
    
    private LocalDateTime updateTime;
    
    private String processStatus;
    
    private String processMessage;
    
    private String examStatus;
  
  private String processStepStatus;
  
  private String processStepMessage;
}
