package com.lingyue.extract.dto.request;

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

import java.util.Map;

/**
 * 添加来源文档请求
 * 
 * @author lingyue
 * @since 2026-01-22
 */
@Data
@Schema(description = "添加来源文档请求")
public class AddSourceDocumentRequest {
    
    @NotBlank(message = "文档ID不能为空")
    @Schema(description = "关联的 Document ID", requiredMode = Schema.RequiredMode.REQUIRED)
    private String documentId;
    
    @Size(max = 100, message = "别名最多100字符")
    @Schema(description = "文档别名，如'可研批复'")
    private String alias;
    
    @Schema(description = "文档类型: pdf/docx/xlsx")
    private String docType;
    
    @Schema(description = "显示顺序（不填则追加到最后）")
    private Integer displayOrder;
    
    @Schema(description = "元数据")
    private Map<String, Object> metadata;
}
