package com.hotwj.platform.reportStatistics.domain.vo;

import cn.idev.excel.annotation.ExcelProperty;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;

import java.util.Date;

/**
 * 车辆信息台账VO类
 *
 * @author shihongwei
 * @date 2026-01-06
 */
@Data
public class VehicleInfoLedgerVo {

    @ExcelProperty(value = "序号", index = 0)
    private Integer index;

    @ExcelProperty("车牌号")
    private String plateNumber;

    @ExcelProperty("车辆注册登记日期")
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date firstRegisterDate;

    @ExcelProperty(value = {"行驶证", "注册日期"})
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date vehicleLicenseRegisterDate;

    @ExcelProperty(value = {"行驶证", "有效期"})
    private String vehicleLicenseValidEndDate;

    @ExcelProperty(value = {"道路运输证", "发证日期"})
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date roadTransportCertIssueDate;

    @ExcelProperty(value = {"道路运输证", "有效期"})
    private String roadTransportCertValidEndDate;

    @ExcelProperty(value = {"车辆检测", "车辆技术等级"})
    private String technicalLevel;

    @ExcelProperty(value = {"车辆检测", "检测时间"})
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date inspectionDate;

    @ExcelProperty(value = {"车辆检测", "检测有效期"})
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date inspectionValidDate;

    @ExcelProperty(value = {"二级维护", "维护周期"})
    private String maintenanceCycle;

    @ExcelProperty(value = {"二级维护", "维护时间"})
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date maintenanceDate;

    @ExcelProperty("备注")
    private String remark;
}
