package com.sckw.fleet.model.reponse;

import com.alibaba.excel.annotation.ExcelIgnore;
import com.alibaba.excel.annotation.ExcelProperty;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.sckw.excel.annotation.ExcelContext;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.experimental.Accessors;

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

/**
 * @author zk
 * @desc 车辆信息
 * @date 2023/7/11 0011
 */
@Data
@ExcelContext(fileName = "车辆信息", sheetName = "车辆信息")
public class TruckResp implements Serializable {

    @Serial
    private static final long serialVersionUID = 1964578088223686164L;

    /**
     * 车辆主键id
     */
    @Schema(description = "车辆主键id")
    private Long id;

    /**
     * 车牌号
     */
    @Schema(description = "车牌号")
    private String truckNo;

    /**
     * 车辆类别(牵引车、货车)
     */
    @Schema(description = "车辆类别(牵引车、货车)")
    private Integer type;

    /**
     * 车辆类别描述
     */
    @Schema(description = "车辆类别描述")
    private String typeDesc;

    /**
     * 轴数（1-二轴、2-三轴、3-四轴、5-六轴）
     */
    @Schema(description = "轴数（1-二轴、2-三轴、3-四轴、5-六轴）")
    private String carAxis;

    /**
     * 轴数名称
     */
    @Schema(description = "轴数名称")
    private String carAxisName;

    /**
     * 品牌
     */
    @Schema(description = "品牌")
    private String brand;

    /**
     * 状态(0-正常、1-停用、2-待审核、3-审核驳回、4-黑名单)
     */
    @Schema(description = "状态(0-正常、1-停用、2-待审核、3-审核驳回、4-黑名单)")
    private int status;

    /**
     * 状态描述
     */
    @Schema(description = "状态描述")
    private String statusDesc;

    /**
     * 关联司机
     */
    @Schema(description = "关联司机")
    private String driverName;

    /**
     * 黑名单
     */
    @Schema(description = "目标状态: 0-正常、1-黑名单")
    private Integer blacklist;

    /**
     * 年审到期时间
     */
    @Schema(description = "年审到期时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date annualInspectionTime;

    /**
     * 创建时间
     */
    @Schema(description = "创建时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date createTime;

    /**
     * 审核驳回理由
     */
    @Schema(description = "审核驳回理由")
    private String remark;



}
