package com.ningdatech.carapi.industry.model.vo;

import com.alibaba.excel.annotation.ExcelProperty;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

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

/**
 * <p>
 * 驾驶员合格证
 * </p>
 *
 * @author PoffyZhang
 * @since 2022-11-03
 */
@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
@ApiModel(value = "DriverTrainingCertificate", description = "驾驶员合格证VO")
public class DriverTrainingCertificateVO implements Serializable {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty("id")
    @ExcelProperty("id")
    private Long id;

    @ApiModelProperty("创建时间")
    @ExcelProperty("创建时间")
    private LocalDateTime createOn;

    @ApiModelProperty("创建人")
    @ExcelProperty("创建人")
    private Long createBy;

    @ApiModelProperty("最后修改时间")
    @ExcelProperty("最后修改时间")
    private LocalDateTime updateOn;

    @ApiModelProperty("最后修改人")
    @ExcelProperty("最后修改人")
    private Long updateBy;

    @ApiModelProperty("区域ID")
    @ExcelProperty("区域ID")
    private Long regionId;

    @ApiModelProperty("区域名")
    @ExcelProperty("区域名")
    private String regionName;

    @ApiModelProperty("驾驶员ID")
    @ExcelProperty("驾驶员ID")
    private Long driverId;

    @ApiModelProperty("驾驶员名")
    @ExcelProperty("驾驶员名")
    private String driverName;

    @ApiModelProperty("身份证号")
    @ExcelProperty("身份证号")
    private String idCard;

    @ApiModelProperty("证书编号")
    private String certificateNo;

    @ApiModelProperty("发证单位")
    private String issuedBy;

    @ApiModelProperty("发证日期")
    private LocalDateTime issueDate;

    @ApiModelProperty("驾驶员证号")
    private String driverLicenseNo;

    @ApiModelProperty("有效期至")
    private LocalDateTime expiryDate;

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

    @ApiModelProperty("企业名")
    @ExcelProperty("企业名")
    private String companyName;

    @ApiModelProperty("备注")
    private String remark;

    @ApiModelProperty("培训时间")
    @ExcelProperty("培训时间")
    private LocalDateTime trainingTime;

    @ApiModelProperty("培训结果 合格")
    @ExcelProperty("培训结果 合格")
    private String trainingResult;

    @ApiModelProperty("有效时间")
    @ExcelProperty("有效时间")
    private LocalDateTime effectiveTime;

    @ApiModelProperty("培训项目")
    @ExcelProperty("培训项目")
    private String trainingProgram;

    @ApiModelProperty("类型")
    @ExcelProperty("类型")
    private Integer certificateType;

    @ApiModelProperty("类型")
    @ExcelProperty("类型")
    private String certificateTypeName;
}
