package com.huatek.busi.entity;

import com.huatek.busi.common.annotation.ExcelAnnotation;
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;

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

@Data
@EqualsAndHashCode(callSuper = false)
@TableName("x_calculate_basic_data")
public class CalculateBasicData extends Pojo implements Serializable {

    private static final long serialVersionUID = 1L;

    @Id("id")
    @ApiModelProperty(value = "id", name = "唯一主键标识", required = true)
    private String id;

    @FieldName("main_file_name")
    @ApiModelProperty(value = "mainFileName", name = "主文件名")
    private String mainFileName;

    @ExcelAnnotation(exportName = "数值1", align = 2, sort = 10)
    @FieldName("value_one")
    @ApiModelProperty(value = "valueOne", name = "数值1")
    private String valueOne;

    @ExcelAnnotation(exportName = "数值2", align = 2, sort = 10)
    @FieldName("value_two")
    @ApiModelProperty(value = "valueTwo", name = "数值2")
    private String valueTwo;

    @ExcelAnnotation(exportName = "数值3", align = 2, sort = 10)
    @FieldName("value_three")
    @ApiModelProperty(value = "valueThree", name = "数值3")
    private String valueThree;

    @ExcelAnnotation(exportName = "数值4", align = 2, sort = 10)
    @FieldName("value_four")
    @ApiModelProperty(value = "valueFour", name = "数值4")
    private String valueFour;

    @ExcelAnnotation(exportName = "数值5", align = 2, sort = 10)
    @FieldName("value_five")
    @ApiModelProperty(value = "valueFive", name = "数值5")
    private String valueFive;

    @FieldName("status")
    @ApiModelProperty(value = "status", name = "分闸合闸状态")
    private Integer status;

    @FieldName("flag")
    @ApiModelProperty(value = "flag", name = "状态")
    private Integer flag;

    @FieldName("child_file_name")
    @ApiModelProperty(value = "childFileName", name = "子文件名")
    private String childFileName;

    @FieldName("sort")
    @ApiModelProperty(value = "sort", name = "排序字段")
    private Integer sort;

    @FieldName("create_time")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(name = "createTime", value = "创建时间")
    private LocalDateTime createTime;
}
