package cn.iocoder.yudao.module.mes.controller.admin.qc.retentionsample.vo; import io.swagger.v3.oas.annotations.media.Schema; import jakarta.validation.constraints.Min; import jakarta.validation.constraints.NotNull; import lombok.Data; import java.time.LocalDateTime; @Schema(description = "管理后台 - MES 留样记录新增/修改 Request VO") @Data public class MesQcRetentionSampleSaveReqVO { @Schema(description = "编号", example = "1024") private Long id; @Schema(description = "生产工单ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "1024") @NotNull(message = "生产工单不能为空") private Long workOrderId; @Schema(description = "销售订单ID", example = "2048") private Long saleOrderId; @Schema(description = "留样数量", requiredMode = Schema.RequiredMode.REQUIRED, example = "2") @NotNull(message = "留样数量不能为空") @Min(value = 1, message = "留样数量必须大于 0") private Integer sampleQuantity; @Schema(description = "留样日期", requiredMode = Schema.RequiredMode.REQUIRED) @NotNull(message = "留样日期不能为空") private LocalDateTime sampleDate; @Schema(description = "留样到期日期(为空时按留样日期 + 6 个月自动计算)") private LocalDateTime expiryDate; @Schema(description = "留样人用户ID", example = "1") private Long keeperUserId; @Schema(description = "备注", example = "留样 2 件,常温保存") private String remark; }