package cn.iocoder.yudao.module.qcreport.controller.admin.instance.vo; import io.swagger.v3.oas.annotations.media.Schema; import jakarta.validation.constraints.NotNull; import lombok.Data; /** * 由质检单生成报告的入参。 *

* 与 {@link QcReportInstanceGenerateReqVO} 的区别:那个收的是已经拼好的报告上下文, * 这个只收「哪张质检单 + 用哪个模板」,数据由服务端从 MES 取。 * 人工选模板是既定口径 —— 同一张质检单可以用不同模板出不同用途的报告(内部版 / 客户版)。 */ @Schema(description = "管理后台 - 由质检单生成报告 Request VO") @Data public class QcReportInstanceGenerateFromQcReqVO { @Schema(description = "质检类型:1 来料 2 过程 3 出货 4 退货", requiredMode = Schema.RequiredMode.REQUIRED, example = "1") @NotNull(message = "质检类型不能为空") private Integer qcType; @Schema(description = "质检单编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "1024") @NotNull(message = "质检单编号不能为空") private Long qcId; @Schema(description = "报告模板编号,由用户选择", requiredMode = Schema.RequiredMode.REQUIRED, example = "1") @NotNull(message = "报告模板编号不能为空") private Long templateId; @Schema(description = "报告模板版本号。不传则用模板当前已发布的版本", example = "v1.0") private String version; @Schema(description = "报告编号。不传则按 QR+日期+流水 自动生成", example = "QR20260919-0001") private String reportNo; }