package com.huatek.busi.entity;

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_step")
public class CalculateStep extends Pojo implements Serializable {

    private static final long serialVersionUID = 1L;

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

    @FieldName("p_id")
    @ApiModelProperty(value = "pId", name = "关联编号")
    private String pId;

    @FieldName("step_json")
    @ApiModelProperty(value = "stepJson", name = "步骤json格式")
    private String stepJson;

    @FieldName("site_id")
    @ApiModelProperty(value = "siteId", name = "电站编号")
    private String siteId;

    @FieldName("equipment_type")
    @ApiModelProperty(value = "equipmentType", name = "设备类型")
    private String equipmentType;

    @FieldName("main_equipment_id")
    @ApiModelProperty(value = "mainEquipmentId", name = "设备编号")
    private String mainEquipmentId;

    @FieldName("execute_mode")
    @ApiModelProperty(value = "executeMode", name = "执行方式（0 手动 1 定时任务）")
    private Integer executeMode;

    @FieldName("number")
    @ApiModelProperty(value = "number", name = "分析参数number")
    private String number;

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