package com.sckw.transport.model;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;

import java.io.Serial;
import java.io.Serializable;
import java.util.Date;

/**
 * @author cxf
 * @desc 车辆异常图片表
 * @date 2025-12-01
 */
@Data
@TableName("kwt_vehicle_exception")
public class KwtVehicleException implements Serializable {
    
    @Serial
    private static final long serialVersionUID = 1L;
    
    /**
     * 主键
     */
    @TableField("id")
    private Long id;
    
    /**
     * 企业ID
     */
    @TableField("ent_id")
    private Long entId;
    
    /**
     * 车辆ID
     */
    @TableField("truck_id")
    private Long truckId;
    
    /**
     * 车牌号
     */
    @TableField("truck_no")
    private String truckNo;

    /**
     * 运单ID
     */
    @TableField("w_order_id")
    private Long wOrderId;
    /**
     * 运单号
     */
    @TableField("w_order_no")
    private String wOrderNo;
    
    /**
     * 司机ID
     */
    @TableField("driver_id")
    private Long driverId;
    
    /**
     * 司机姓名
     */
    @TableField("driver_name")
    private String driverName;
    
    /**
     * 司机电话
     */
    @TableField("driver_phone")
    private String driverPhone;
    
    /**
     * 异常类型（1-车辆偏航，2-急刹车，3-超速，4-异常停车）
     */
    @TableField("exception_type")
    private Integer exceptionType;
    
    /**
     * 图片URL
     */
    @TableField("image_url")
    private String imageUrl;
    
    /**
     * 异常时间
     */
    @TableField("exception_time")
    private Date exceptionTime;

    
    /**
     * 经度
     */
    @TableField("longitude")
    private String longitude;
    
    /**
     * 纬度
     */
    @TableField("latitude")
    private String latitude;
    
    /**
     * 位置描述
     */
    @TableField("location")
    private String location;
    
    /**
     * 异常详情描述
     */
    @TableField("description")
    private String description;
    
    /**
     * 创建人
     */
    @TableField("create_by")
    private Long createBy;
    
    /**
     * 创建时间
     */
    @TableField("create_time")
    private Date createTime;
    
    /**
     * 更新人
     */
    @TableField("update_by")
    private Long updateBy;
    
    /**
     * 更新时间
     */
    @TableField("update_time")
    private Date updateTime;
    
    /**
     * 是否删除（0未删除，1删除）
     */
    @TableLogic
    @TableField("del_flag")
    private Integer delFlag;
}
