package com.lutao.cloud.oil.pojo.entity;

import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

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

@Data
@TableName("typhoon_point_info")
@ApiModel(value = "台风点位信息")
public class TyphoonPointInfo implements Serializable {

    private static final long serialVersionUID = -8245483793448434599L;

    /**
     * 真实点位
     */
    public static final Integer REALLY_TYPE = 1;

    /**
     * 预测点位
     */
    public static final Integer FORECAST_TYPE = 2;

    /**
     * 台风ID
     */
    @TableField("typhoon_id")
    @ApiModelProperty(value = "台风ID")
    private String typhoonId;

    /**
     * 编码
     */
    @TableField("code")
    @ApiModelProperty(value = "编码")
    private String code;

    /**
     * 经度
     */
    @TableField("lon")
    @ApiModelProperty(value = "经度")
    private Double lon;

    /**
     * 纬度
     */
    @TableField("lat")
    @ApiModelProperty(value = "纬度")
    private Double lat;

    /**
     * 移动速度
     */
    @TableField("move_speed")
    @ApiModelProperty(value = "移动速度")
    private String moveSpeed;

    /**
     * 移动方向
     */
    @TableField("move_dir")
    @ApiModelProperty(value = "移动方向")
    private String moveDir;

    /**
     * 风力
     */
    @TableField("power")
    @ApiModelProperty(value = "风力")
    private Double power;

    /**
     * 气压
     */
    @TableField("pressure")
    @ApiModelProperty(value = "气压")
    private Double pressure;

    /**
     * 7级风力影响半径
     */
    @TableField("radius7")
    @ApiModelProperty(value = "7级风力影响半径")
    private String radius7;

    /**
     * 10级风力影响半径
     */
    @TableField("radius10")
    @ApiModelProperty(value = "10级风力影响半径")
    private String radius10;

    /**
     * 12级风力影响半径
     */
    @ApiModelProperty(value = "12级风力影响半径")
    @TableField("radius12")
    private String radius12;

    /**
     * 风速
     */
    @TableField("speed")
    @ApiModelProperty(value = "风速")
    private Double speed;

    /**
     * 强度
     */
    @TableField("strong")
    @ApiModelProperty(value = "强度")
    private String strong;

    /**
     * 时间
     */
    @TableField("time")
    @ApiModelProperty(value = "时间")
    private String time;

    /**
     * 点位类型  1:真实点位  2:预测点位
     */
    @ApiModelProperty(value = "点位类型  1:真实点位  2:预测点位")
    @TableField("type")
    private Integer type;

    @ApiModelProperty(value = "创建时间")
    @TableField(fill = FieldFill.INSERT)
    private LocalDateTime createTime;

    @ApiModelProperty(value = "更新时间")
    @TableField(fill = FieldFill.INSERT_UPDATE)
    private LocalDateTime updateTime;
}