package com.zcloud.primeport.dto;

import com.alibaba.cola.dto.Command;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;

import javax.validation.constraints.*;

/**
 * web-client
 *
 * @Author dearLin
 * @Date 2026-04-23 10:04:33
 */
@EqualsAndHashCode(callSuper = true)
@Data
@NoArgsConstructor
@AllArgsConstructor
public class EVehicleBasicInfoUpdateCmd extends Command {
    @ApiModelProperty(value = "id", name = "id", required = true)
   //   @NotNull(message = "id不能为空")
    private Long id;
    @ApiModelProperty(value = "车辆ID", name = "vehicleRecordId", required = true)
   //    @NotEmpty(message = "车辆ID不能为空")
    private String vehicleRecordId;
    @ApiModelProperty(value = "车辆备案信息录入单位", name = "vehicleFilingInfoRecordingOrg", required = true)
   //    @NotEmpty(message = "车辆备案信息录入单位不能为空")
    private String vehicleFilingInfoRecordingOrg;
    @ApiModelProperty(value = "车辆归属单位", name = "vehicleOwningEntity", required = true)
   //    @NotEmpty(message = "车辆归属单位不能为空")
    private String vehicleOwningEntity;
    @ApiModelProperty(value = "车辆牌照号码", name = "vehiclePlateNumber", required = true)
   //    @NotEmpty(message = "车辆牌照号码不能为空")
    private String vehiclePlateNumber;
    @ApiModelProperty(value = "车辆行驶证号码", name = "vehicleRegistrationNumber", required = true)
   //    @NotEmpty(message = "车辆行驶证号码不能为空")
    private String vehicleRegistrationNumber;
    @ApiModelProperty(value = "车辆类型名称", name = "vehicleCategoryName", required = true)
   //    @NotEmpty(message = "车辆类型名称不能为空")
    private String vehicleCategoryName;
    @ApiModelProperty(value = "车辆牌照颜色名称", name = "vehiclePlateColorName", required = true)
   //    @NotEmpty(message = "车辆牌照颜色名称不能为空")
    private String vehiclePlateColorName;
    @ApiModelProperty(value = "车辆备案时间", name = "vehicleFilingTime", required = true)
   //    @NotEmpty(message = "车辆备案时间不能为空")
    private String vehicleFilingTime;
    @ApiModelProperty(value = "车辆联系人姓名", name = "vehicleContactName", required = true)
   //    @NotEmpty(message = "车辆联系人姓名不能为空")
    private String vehicleContactName;
    @ApiModelProperty(value = "车辆联系人电话", name = "vehicleContactPhoneNumber", required = true)
   //    @NotEmpty(message = "车辆联系人电话不能为空")
    private String vehicleContactPhoneNumber;
    @ApiModelProperty(value = "车辆备案分类（1, 长期车辆,2, 一次性备案,3, 内部车辆, 4, 临时车辆）", name = "vehicleFilingMethod", required = true)
   //    @NotEmpty(message = "车辆备案分类（1, 长期车辆,2, 一次性备案,3, 内部车辆, 4, 临时车辆）不能为空")
    private String vehicleFilingMethod;
    @ApiModelProperty(value = "有效标识", name = "edwValidFlag", required = true)
   //    @NotEmpty(message = "有效标识不能为空")
    private String edwValidFlag;
    @ApiModelProperty(value = "数据源头", name = "edwDataSource", required = true)
   //    @NotEmpty(message = "数据源头不能为空")
    private String edwDataSource;
    @ApiModelProperty(value = "创建时间", name = "edwCreateDate", required = true)
   //    @NotEmpty(message = "创建时间不能为空")
    private String edwCreateDate;
    @ApiModelProperty(value = "更新时间", name = "edwLastUpdate", required = true)
   //    @NotEmpty(message = "更新时间不能为空")
    private String edwLastUpdate;
    @ApiModelProperty(value = "分区列", name = "dataVersion", required = true)
   //   @NotNull(message = "分区列不能为空")
    private Long dataVersion;
    @ApiModelProperty(value = "同步时间", name = "accLastUpdateDate", required = true)
   //   @NotNull(message = "同步时间不能为空")
    private String accLastUpdateDate;
    @ApiModelProperty(value = "${column.comment}", name = "idSequence", required = true)
   //   @NotNull(message = "${column.comment}不能为空")
    private Long idSequence;
}

