package com.muyu.domain;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.v3.oas.annotations.media.Schema;
import io.swagger.v3.oas.annotations.tags.Tag;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.util.Date;

/**
 * 车辆信息实体类
 *  * @className: CarInformation  ️✈️
 *  * @author: Yang 鹏  🦅
 *  * @date: 2024/9/30 12:40 ⏰
 *  * @Version: 1.0
 *  * @description:
 */

@Data
@AllArgsConstructor
@NoArgsConstructor
@Tag(name = "车辆信息")
@TableName("car_information")
public class CarInformation {
    /**
     * 车辆ID
     */
    @TableId(value = "car_information_id" , type = IdType.AUTO)
    @Schema(name = "车辆ID")
    private Long carInformationId;
    /**
     * 车辆唯一VIN
     */
    @Schema(name = "车辆唯一VIN")
    private String CarInformationVIN;
    /**
     * 车牌号
     */
    @Schema(name = "车牌号")
    private String carInformationLicensePlate;
    /**
     * 车辆品牌
     */
    @Schema(name = "车辆品牌")
    private String carInformationBrand;
    /**
     * 车辆颜色
     */
    @Schema(name = "车辆颜色")
    private String carInformationColor;
    /**
     * 车辆驾驶员
     */
    @Schema(name = "车辆驾驶员")
    private String carInformationDriver;
    /**
     * 车检到期日期
     */
//    @DateTimeFormat(fallbackPatterns = "yyyy-MM-dd hh:mm:ss")
//    @JsonFormat(pattern = "yyyy-MM-dd hh:mm:ss")
//    @Schema(name = "车检到期日期")
    private Date carInformationExamineEnddata;
    /**
     * 车辆电机厂商
     */
    @Schema(name = "车辆电机厂商")
    private String carInformationMotorManufacturer;
    /**
     * 车辆电机型号
     */
    @Schema(name = "车辆电机型号")
    private String carInformationMotorModel;
    /**
     * 车辆电池厂商
     */
    @Schema(name = "车辆电池厂商")
    private String carInformationBatteryManufacturer;
    /**
     * 车辆电池型号
     */
    @Schema(name = "车辆电池型号")
    private String carInformationBatteryModel;
    /**
     * 车辆电子围栏外键ID
     */
    @Schema(name = "车辆电子围栏外键ID")
    private Long carInformationFence;
    /**
     * 车辆类型外键ID
     */
    @Schema(name = "车辆类型外键ID")
    private Long carInformationType;
    /**
     * 是否重点车辆 (0否默认 1是 )
     */
    @Schema(name = "是否重点车辆 (0否默认 1是 )")
    private Long carInformationFocus;
    /**
     * 车辆策略id
     */
    @Schema(name = "车辆策略id")
    private Long carStrategyId;
    /**
     * 启用状态(1.在线 2.离线 3.已断开 4.待连接 5.维修中)
     */
    @Schema(name = "启用状态(1.在线 2.离线 3.已断开 4.待连接 5.维修中)")
    private Long carInformationState;


}
