package com.ltgk.system.domain.vo;


import com.fasterxml.jackson.annotation.JsonProperty;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.experimental.Accessors;

import java.math.BigDecimal;
import java.util.Date;

@Data
@Accessors(chain = true)
public class DsDynamicRadarVO {
    @ApiModelProperty("目标来源 1雷达，2ais")
    public Integer source;

    @ApiModelProperty("目标源id 目标在设备端的唯一标识")
    public String targetSourceId;

    @ApiModelProperty("DPL_ID 站点编号0~255")
    public Integer stationNumber;
    @ApiModelProperty("设备id 设备唯一ID号")
    public Integer deviceId;
    @ApiModelProperty("当前系统时间，格式：yyyy-MM-dd hh:mm:ss.ms")
    public String time;
    @ApiModelProperty("时间 当前系统时间，格式：yyyy-MM-dd hh:mm:ss.ms")
    public Date locationTime;
    @ApiModelProperty("存在标识 0：目标消失1：目标存在 2：外推")
    public Integer exist;
    @ApiModelProperty("目标类型 -1:未知其他,0:大船,1:中型船,2:小船,10:行人,20:无人机,30:汽车")
    public Integer type;
    @ApiModelProperty("目标名：船名")
    public String name;
    @ApiModelProperty("长度 目标长度，单位：米(m)")
    public Double length;
    @ApiModelProperty("宽度 目标宽度，单位：米(m)")
    public Double width;
    @ApiModelProperty(" 质量等级 默认无，1~255，质量等级由低到高。")
    public Integer level;
    @ApiModelProperty("方位 目标所在方位（相对设备），单位：度(°)")
    public Double azimuth;
    @ApiModelProperty("距离 目标和设备之间的距离，单位：米(m)")
    public Double distance;
    @ApiModelProperty("纬度 目标所在的纬度，单位：度(°)")
    public Double latitude;
    @ApiModelProperty("经度 目标所在的经度，单位：度(°)")
    public Double longitude;
    @ApiModelProperty("径向速度 目标相对设备的径向速度，单位：米/秒(m/s)。")
    public Double radialVelocity;
    @ApiModelProperty("仰角 目标相对设备的仰角，单位：度(°)")
    public Double elevation;
    @ApiModelProperty("航向 目标的绝对航向（0-360°），单位：度(°)")
    public Double course;
    @ApiModelProperty("航速 目标的实际速度（m/s）")
    public Double speed;
    @ApiModelProperty(" 高度 目标相对设备的高度，单位：米(m)")
    public Double altitude;
    @ApiModelProperty(" 幅度目标幅度，单位：分贝（dB）")
    public Double amplitude;
    @ApiModelProperty(" 噪声 目标噪声，单位:分贝(dB)")
    public Double noise;
    @ApiModelProperty(value = "船舶id")
    private String boatId;
    @ApiModelProperty(value = "船名")
    private String boatName;
    @ApiModelProperty(value = "设备类型")
    private String deviceType;
    @ApiModelProperty(value = "AIS设备号")
    private String mmsi;
    @ApiModelProperty(value = "船舶类型")
    private String boatType;
    @ApiModelProperty(value = "是不是本地渔船")
    private Integer idLocal;
    /**
     * 船舶所有人名称
     */
    @ApiModelProperty(value = "船舶所有人名称")
    private String holderName;

    /**
     * 船舶所有人地址
     */
    @ApiModelProperty(value = "船舶所有人地址")
    private String holderAddress;
    @ApiModelProperty(value = "主机总功率")
    private BigDecimal mainPower;
    /**
     * 船舶所有人电话
     */
    @ApiModelProperty(value = "船舶所有人电话")
    private String holderPhone;
    @ApiModelProperty(value = "船港籍")
    private String homePort;
    @ApiModelProperty(value = "船舶照片")
    private String boatImage;
    @ApiModelProperty(value = "船长")
    private BigDecimal boatLength;
    /**
     * 型宽
     */
    @ApiModelProperty(value = "型宽")
    private BigDecimal boatWidth;
    /**
     * 型深
     */
    @ApiModelProperty(value = "型深")
    private BigDecimal height;
    /**
     * 总吨位
     */
    @ApiModelProperty(value = "总吨位")
    private BigDecimal tonnage;

    /**
     * 净吨位
     */
    @ApiModelProperty(value = "净吨位")
    private BigDecimal netTonnage;
    /**
     * 是不是黑白名单
     */
    @ApiModelProperty(value = "是不是黑白名单 0都不是 1白名单 2黑名单")
    private Integer isBlack = 0;

    @ApiModelProperty(value = "风速")
    @JsonProperty(value = "wind")
    private String wind;

    @ApiModelProperty(value = "浪高")
    @JsonProperty(value = "wave")
    private String wave;
}
