package cn.iocoder.yudao.module.vehicle.controller.admin.application.vo;
|
|
import io.swagger.v3.oas.annotations.media.Schema;
|
import jakarta.validation.constraints.Min;
|
import jakarta.validation.constraints.NotBlank;
|
import jakarta.validation.constraints.NotNull;
|
import jakarta.validation.constraints.Size;
|
import lombok.Data;
|
|
import java.time.LocalDateTime;
|
|
@Schema(description = "管理后台 - 用车申请新增/修改 Request VO")
|
@Data
|
public class VehicleApplicationSaveReqVO {
|
|
@Schema(description = "编号(修改时必填)", example = "1")
|
private Long id;
|
|
@Schema(description = "用车开始时间", requiredMode = Schema.RequiredMode.REQUIRED)
|
@NotNull(message = "用车开始时间不能为空")
|
private LocalDateTime useStartTime;
|
|
@Schema(description = "用车结束时间", requiredMode = Schema.RequiredMode.REQUIRED)
|
@NotNull(message = "用车结束时间不能为空")
|
private LocalDateTime useEndTime;
|
|
@Schema(description = "出发地", requiredMode = Schema.RequiredMode.REQUIRED, example = "学院行政楼")
|
@NotBlank(message = "出发地不能为空")
|
@Size(max = 128, message = "出发地不能超过 128 个字符")
|
private String departure;
|
|
@Schema(description = "目的地", requiredMode = Schema.RequiredMode.REQUIRED, example = "南通市政务中心")
|
@NotBlank(message = "目的地不能为空")
|
@Size(max = 128, message = "目的地不能超过 128 个字符")
|
private String destination;
|
|
@Schema(description = "随行人数", example = "3")
|
@Min(value = 1, message = "随行人数必须大于 0")
|
private Integer passengers;
|
|
@Schema(description = "用车事由", requiredMode = Schema.RequiredMode.REQUIRED, example = "参加产教融合项目对接会")
|
@NotBlank(message = "用车事由不能为空")
|
@Size(max = 512, message = "用车事由不能超过 512 个字符")
|
private String reason;
|
|
@Schema(description = "车牌号(可选)", example = "苏F12345")
|
@Size(max = 32, message = "车牌号不能超过 32 个字符")
|
private String vehicleNo;
|
|
@Schema(description = "备注")
|
@Size(max = 512, message = "备注不能超过 512 个字符")
|
private String remark;
|
|
}
|