package com.huatek.busi.entity;

import java.util.Date;
import java.io.Serializable;

import com.huatek.torch.sql.annotation.FieldName;
import com.huatek.torch.sql.annotation.Id;
import com.huatek.torch.sql.annotation.TableName;
import com.huatek.torch.sql.beans.Pojo;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.springframework.format.annotation.DateTimeFormat;

/**
 * <p>
 *      一次接线图文件存储表
 *  </p>
 *
 * @author vent
 * @since 2023-04-25
 */
@Data
@EqualsAndHashCode(callSuper = false)
@TableName("sys_file_diagram")
public class SysFileDiagram extends Pojo implements Serializable {

    private static final long serialVersionUID = 1L;
    /**
     * 文件路径id
     */
    @Id("id")
    @ApiModelProperty(value = "id", name = "唯一主键标识", required = true)
    private String id;

    /**
     * 业务id
     */
    @FieldName("business_id")
    @ApiModelProperty(value = "businessId", name = "业务id")
    private String businessId;

    /**
     * 类型 0:次接线图 1：模型
     */
    @ApiModelProperty(value = "类型 0:次接线图 1：模型",  name="type")
    @FieldName("type")
    private String type;

    /**
     * 文件名称
     */
    @FieldName("file_name")
    @ApiModelProperty(value = "fileName", name = "文件名称")
    private String fileName;

    /**
     * 上传次数
     */
    @ApiModelProperty(value = "上传次数",  name="count")
    @FieldName("count")
    private Integer count;

    /**
     * 文件路径
     */
    @ApiModelProperty(value = "文件路径",  name="filePath")
    @FieldName("file_path")
    private String filePath;

    /**
     * 后缀名称
     */
    @ApiModelProperty(value = "后缀名称",  name="suffixName")
    @FieldName("suffix_name")
    private String suffixName;

    /**
     * 上传日期(YYYYMMDD)
     */
    @FieldName("date")
    @ApiModelProperty(value = "date", name = "上传日期")
    private String date;

    /**
     * 创建时间
     */
    @ApiModelProperty(value = "创建时间",  name="createDate")
    @FieldName("create_date")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date createDate;

    /**
     * 文件大小
     */
    @ApiModelProperty(value = "文件大小",  name="fileSize")
    @FieldName("file_size")
    private Long fileSize;

    /**
     * 文件类型
     */
    @ApiModelProperty(value = "文件类型",  name="fileType")
    @FieldName("file_type")
    private String fileType;

    /**
     * 删除标识
     */
    @FieldName("deleted")
    @ApiModelProperty(value = "deleted",name = "是否删除 0否 1是")
    private String deleted;

}
