package cn.iocoder.yudao.module.shop.entity;

import java.util.Date;

import cn.iocoder.yudao.framework.tenant.core.db.TenantBaseDO;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import cn.iocoder.yudao.annotation.Excel;

/**
 * 用户车辆对象 shop_user_car
 *
 * @author ruoyi
 * @date 2023-07-10
 */
@Data
public class ShopUserCar extends TenantBaseDO
{
    private static final long serialVersionUID = 1L;

    @TableId(type = IdType.AUTO)
    /** 用户车id */
    private Long carId;

    /** 用户id */
    @Excel(name = "用户id")
    private Long userId;

    @TableField(exist = false)
    private String realName;
    @TableField(exist = false)
    private String phonenumber;
    /** 车辆型号 */
    @Excel(name = "车辆型号")
    private String carModel;

    /** 车牌号码 */
    @Excel(name = "车牌号码")
    private String carNo;

    /** 保养日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "保养日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date maintenanceDate;

    /** 保养里程 */
    @Excel(name = "保养里程")
    private Long maintenanceMileage;

    /** 年检日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "年检日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date inspectionDate;

    /** 保险日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "保险日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date insuranceDate;

    /** 下次保养日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "下次保养日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date nextMaintenanceDate;

    /** 下次保养里程 */
    @Excel(name = "下次保养里程")
    private Long nextMaintenanceMileage;

    /** 下次年检日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "下次年检日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date nextInspectionDate;

    /** 保险到期日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "保险到期日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date insuranceExpiryDate;

    private String carBrand;
    //车辆性质
    private String carNature;
    @JsonFormat(pattern = "yyyy-MM-dd")
    //行驶证注册日期
    private Date carRegisterDate;
    //行驶证照片
    private String carLicenseImg;
    //二级维护时间
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date checkDate;
    @JsonFormat(pattern = "yyyy-MM-dd")
    //下次二级维护时间
    private Date nextCheckDate;

}
