package com.ningdatech.carapi.car.equipment.model.vo;

import java.io.Serializable;
import java.time.LocalDateTime;

import com.baomidou.mybatisplus.annotation.TableField;
import com.ningdatech.carapi.common.base.BaseEntity;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.ToString;
import lombok.experimental.Accessors;

/**
 * <p>
 * 
 * </p>
 *
 * @author PoffyZhang
 * @since 2022-10-09
 */
@Data
@ApiModel(value = "VehicleEquipmentVO", description = "车辆档案-车辆信息VO")
@NoArgsConstructor
@ToString(callSuper = true)
@Accessors(chain = true)
@AllArgsConstructor
public class VehicleEquipmentVO extends BaseEntity implements Serializable {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty("ID")
    private Long id;

    private String name;

    @ApiModelProperty("车牌号")
    private String carPlate;

    @ApiModelProperty("所属企业ID")
    private Long companyId;

    @ApiModelProperty("所属企业名称")
    private String companyName;

    @ApiModelProperty("行政区域id")
    private Long regionId;

    @ApiModelProperty("行政区域名称")
    private String regionName;

    @ApiModelProperty("车辆类型")
    private Integer vehicleType;

    @ApiModelProperty("车辆类型名")
    private String vehicleTypeName;

    @ApiModelProperty("运营商ID")
    private Long operatorId;

    @ApiModelProperty("运营商名")
    private String operatorName;

    @ApiModelProperty("设备ID")
    private Long equipmentId;

    /**
     * SIM卡号
     */
    @ApiModelProperty("SIM卡号")
    @TableField(value = "sim_card_no")
    private String simCardNo;

    /**
     * 终端号
     */
    @ApiModelProperty("终端号")
    @TableField(value = "end_point")
    private String endPoint;

    /**
     * 设备号
     */
    @ApiModelProperty("设备号")
    @TableField(value = "equipment_no")
    private String equipmentNo;

    /**
     * 设备功能
     */
    @ApiModelProperty("设备功能")
    @TableField(value = "equipment_function")
    private String equipmentFunction;

    /**
     * 终端类型
     */
    @ApiModelProperty("终端类型")
    @TableField(value = "end_type")
    private String endType;

    /**
     * 下级平台
     */
    @ApiModelProperty("下级平台")
    @TableField(value = "subordinate_platform")
    private String subordinatePlatform;

    @ApiModelProperty("车辆状态")
    private Integer vehicleStatus;

    @ApiModelProperty("车辆状态名称")
    private String vehicleStatusName;

    @ApiModelProperty("车辆最后上线时间")
    private LocalDateTime lastOnlineTime;

}
