package com.nanri.aiimage.modules.brand.model.dto;

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

@Data
@Schema(description = "品牌任务源文件。由 OSS 文件链接和文件元信息组成。")
public class BrandSourceFileDto {

    @NotBlank(message = "fileUrl 不能为空")
    @Schema(description = "OSS 文件下载链接，Java 将先下载文件再读取内容。", example = "https://example.oss-cn-hangzhou.aliyuncs.com/source/brand.xlsx")
    private String fileUrl;

    @Schema(description = "原始文件名，用于生成任务描述和结果文件名。", example = "品牌样例.xlsx")
    private String originalFilename;

    @Schema(description = "相对路径。文件夹上传场景下可传，用于最终 zip 结果保持目录结构。", example = "店铺A/品牌样例.xlsx")
    private String relativePath;
}
