43 lines
1.0 KiB
Java
43 lines
1.0 KiB
Java
package com.dongni.collisionavoidance.common.model;
|
|
|
|
|
|
import com.fasterxml.jackson.annotation.JsonCreator;
|
|
import com.fasterxml.jackson.annotation.JsonProperty;
|
|
import jakarta.validation.constraints.NotBlank;
|
|
import jakarta.validation.constraints.NotNull;
|
|
import lombok.AllArgsConstructor;
|
|
import lombok.Builder;
|
|
import lombok.Data;
|
|
import lombok.NoArgsConstructor;
|
|
|
|
/**
|
|
* 航空器实体类
|
|
*/
|
|
@Data
|
|
@Builder
|
|
@NoArgsConstructor
|
|
@AllArgsConstructor
|
|
public class Aircraft extends MovingObject{
|
|
/**
|
|
* 航班号
|
|
*/
|
|
@NotBlank(message = "航班号不能为空")
|
|
private String flightNo;
|
|
|
|
/**
|
|
* 航迹号
|
|
*/
|
|
private Long trackNumber;
|
|
|
|
@JsonCreator
|
|
public Aircraft(
|
|
@JsonProperty("latitude") double latitude,
|
|
@JsonProperty("longitude") double longitude,
|
|
@JsonProperty("altitude") double altitude,
|
|
@JsonProperty("time") long timestamp
|
|
) {
|
|
this.currentPosition = new GeoPosition(latitude, longitude, altitude);
|
|
this.timestamp = timestamp;
|
|
}
|
|
}
|