package com.zt.plat.module.qms.business.reportdoc.controller.vo;

import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.NotNull;
import lombok.Data;

@Schema(description = "管理后台 - 检测报告明细新增/修改 Request VO")
@Data
public class ReportDocumentDataSaveReqVO {

    @Schema(description = "ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "3054")
    private Long id;

    @Schema(description = "报告ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "13627")
    @NotNull(message = "报告ID不能为空")
    private Long mainId;

    @Schema(description = "原始数据ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "19655")
    @NotNull(message = "原始数据ID不能为空")
    private Long sourceId;

    @Schema(description = "数据内容")
    private String documentContent;

    @Schema(description = "所属部门")
    private String systemDepartmentCode;

    @Schema(description = "备注")
    private String remark;

    @Schema(description = "附加内容")
    private String externalContent;

    @Schema(description = "样品编号")
    private String sampleCode;

    @Schema(description = "样品名称")
    private String sampleName;

    @Schema(description = "样品大类名称")
    private String baseSampleName;

    @Schema(description = "样品类型key")
    private String sampleTypeKey;

    @Schema(description = "委托样品名称")
    private String entrustSampleName;

    @Schema(description = "委托样品编号")
    private String entrustSampleCode;

    @Schema(description = "排序")
    private Integer sort;

}