package com.evobms.project.vehicledata.domain;

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

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.evobms.framework.aspectj.lang.annotation.Excel;
import com.evobms.framework.web.domain.BaseEntity;

/**
 * 车辆位置数据对象 vehicle_location
 *
 * @author ruoyi
 * @date 2025-11-15
 */
@ApiModel(description = "车辆位置数据对象")
@Data
@EqualsAndHashCode(callSuper = false)
public class VehicleLocation extends BaseEntity {
    private static final long serialVersionUID = 1L;

    /**
     * 主键ID
     */
    @ApiModelProperty(value = "主键ID")
    private Long id;

    /**
     * 设备ID
     */
    @ApiModelProperty(value = "设备ID")
    @Excel(name = "设备ID")
    private String deviceId;

    /**
     * 数据时间戳
     */
    @ApiModelProperty(value = "数据时间戳")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "数据时间戳", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date timestamp;

    /**
     * 定位状态 (0:无效 1:有效)
     */
    @ApiModelProperty(value = "定位状态 (0:无效 1:有效)")
    @Excel(name = "定位状态 (0:无效 1:有效)")
    private Integer positioningStatus;

    /**
     * 经度
     */
    @ApiModelProperty(value = "经度")
    @Excel(name = "经度")
    private BigDecimal longitude;

    /**
     * 纬度
     */
    @ApiModelProperty(value = "纬度")
    @Excel(name = "纬度")
    private BigDecimal latitude;
}
