package com.huatek.frame.base.entity;

import java.time.LocalDateTime;
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 org.springframework.format.annotation.DateTimeFormat;

/**
 * <p>
 *      模型装置信息表
 *  </p>
 *
 * @author Leo
 * @since 2023-03-03
 */
@Data
@TableName("model_component_data")
public class ModelComponentData extends Pojo implements Serializable {

    private static final long serialVersionUID = 1L;
    /**
     * 主键
     */
    @ApiModelProperty(value = "主键",  name="id")
    @Id("id")
    private String id;

    /**
     * 模型id
     */
    @ApiModelProperty(value = "模型id",  name="modelId")
    @FieldName("model_id")
    private String modelId;

    /**
     * 部件标识
     */
    @ApiModelProperty(value = "部件标识",  name="componentId")
    @FieldName("component_id")
    private String componentId;

    /**
     * 装置类型编码
     */
    @ApiModelProperty(value = "装置类型编码",  name="deviceCode")
    @FieldName("device_code")
    private String deviceCode;

    /**
     * 外挂主设备id
     */
    @ApiModelProperty(value = "外挂主设备id",  name="mainTreeId")
    @FieldName("main_tree_id")
    private String mainTreeId;

//    private String mainTreeName;

    /**
     * 外挂主设备id
     */
    @ApiModelProperty(value = "外挂主设备id",  name="sensorId")
    @FieldName("sensor_id")
    private String sensorId;

    private String sensorNameDetail;

    /**
     * 安装位置
     */
    @ApiModelProperty(value = "安装位置",  name="installPosition")
    @FieldName("install_position")
    private String installPosition;

    /**
     * 数据项
     */
    @ApiModelProperty(value = "数据项",  name="dataItems")
    @FieldName("data_items")
    private String dataItems;

    /**
     * xyz轴坐标
     */
    @ApiModelProperty(value = "x轴坐标", name = "positionX")
    private String positionX;

    @ApiModelProperty(value = "y轴坐标", name = "positionY")
    private String positionY;

    @ApiModelProperty(value = "z轴坐标", name = "positionZ")
    private String positionZ;

    /**
     * 启用状态（0未启用， 1启用）
     */
    @ApiModelProperty(value = "启用状态（0未启用， 1启用）",  name="status")
    @FieldName("status")
    private String status;

    /**
     * 创建日期
     */
    @ApiModelProperty(value = "创建日期",  name="createTime")
    @FieldName("create_time")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime createTime;

    /**
     * 更新时间
     */
    @ApiModelProperty(value = "更新时间",  name="updateTime")
    @FieldName("update_time")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime updateTime;

    /**
     * 备注
     */
    @ApiModelProperty(value = "备注",  name="remark")
    @FieldName("remark")
    private String remark;

    /**
     *
     */
    @FieldName(value = "del_flag")
    private String delFlag;
}
