package com.dongni.collisionavoidance.webSocket.message; import com.fasterxml.jackson.annotation.JsonProperty; import lombok.Data; import lombok.Builder; import lombok.NoArgsConstructor; import lombok.AllArgsConstructor; /** * 位置更新消息负载 * 对应前端JSON格式: position_update */ @Data @Builder @NoArgsConstructor @AllArgsConstructor public class PositionUpdatePayload { /** * 对象ID(车辆ID、航班号等) */ @JsonProperty("object_id") private String objectId; /** * 对象类型(基于MovingObjectType枚举) */ @JsonProperty("object_type") private String objectType; /** * 位置信息 */ @JsonProperty("position") private Position position; /** * 航向角(度) */ @JsonProperty("heading") private Double heading; /** * 速度(米/秒) */ @JsonProperty("speed") private Double speed; /** * 时间戳(微秒级) */ @JsonProperty("timestamp") private Long timestamp; /** * 位置坐标类 */ @Data @Builder @NoArgsConstructor @AllArgsConstructor public static class Position { /** * 纬度 */ @JsonProperty("latitude") private Double latitude; /** * 经度 */ @JsonProperty("longitude") private Double longitude; } }