package cn.iocoder.yudao.module.qcreport.controller.admin.version.vo; import cn.iocoder.yudao.module.qcreport.dal.dataobject.version.ReportTemplateSchema; import io.swagger.v3.oas.annotations.media.Schema; import jakarta.validation.constraints.NotNull; import jakarta.validation.constraints.Pattern; import jakarta.validation.constraints.Size; import lombok.Data; @Schema(description = "管理后台 - 智能质检报告模板版本 创建 Request VO") @Data public class QcReportTemplateVersionSaveReqVO { @Schema(description = "版本编号", example = "1024") private Long id; @Schema(description = "模板编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "1024") @NotNull(message = "模板编号不能为空") private Long templateId; @Schema(description = "版本号,留空则按最新版本自动递增(如 v1.0 -> v1.1)", example = "v1.0") @Pattern(regexp = "^v\\d+(\\.\\d+)*$", message = "版本号格式必须形如 v1.0") @Size(max = 32, message = "版本号长度不能超过 32 个字符") private String version; @Schema(description = "模板 Schema(设计器产物)") private ReportTemplateSchema schema; @Schema(description = "版本说明", example = "增加抽样检测表格") @Size(max = 512, message = "版本说明长度不能超过 512 个字符") private String description; }