package com.sckw.fleet.model.vo;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import java.io.Serial;
import java.io.Serializable;
import java.sql.Timestamp;
import java.time.LocalDateTime;
import java.util.Date;
import java.util.List;

/**
 * @author PC
 */
@Data
public class QueryTruckRoteVo implements Serializable {
    @Serial
    private static final long serialVersionUID = 2817549090778895464L;
    /**
     * 主键id
     */
    @Schema(description = "主键id")
    private Long id;
    /**
     * 车牌号
     */
    @Schema(description = "车牌号")
    private String truckNo;
    /**
     * 起始点
     */
    @Schema(description = "起始点")
    private String startPoint;
    /**
     * 卸货点
     */
    @Schema(description = "卸货点")
    private String unloadingPoint;
    /**
     * 车队id
     */
    @Schema(description = "车队id")
    private String fleetId;
    /**
     * 车队名称
     */
    @Schema(description = "车队名称")
    private String fleetName;
    /*
    * 司机名称
     */
    @Schema(description = "司机名称")
    private String driverName;
    /**
     * 司机id
     */
    @Schema(description = "司机id")
    private String driverId;
    /**
     * 更新时间
     */
    @Schema(description = "更新时间")
    private String updateTime;
    /**
     * 最快耗时
     */
    @Schema(description = "最快耗时")
    private String sortedTime;
    /**
     * 车辆id
     */
    @Schema(description = "车辆id")
    private String truckId;
    /**
     * 轨迹详情
     */
    @Schema(description = "轨迹详情")
    List<TruckRoteDetail> truckRoteDetails;
    @Data
    public static class TruckRoteDetail implements Serializable{
        @Serial
        private static final long serialVersionUID = -3239327435958023091L;
        /**
         * 定位时间
         */
        @Schema(description = "定位时间")
        private LocalDateTime ts;

        /**
         * 经度
         */
        @Schema(description = "经度")
        private String longitude;

        /**
         * 纬度
         */
        @Schema(description = "纬度")
        private String latitude;
    }
}