package com.dora.dto;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import jakarta.validation.constraints.NotBlank;

/**
 * 管理端OSS上传请求DTO
 */
@Data
@Schema(description = "管理端OSS上传请求")
public class AdminOssUploadRequest {

    @Schema(description = "文件名", example = "banner.jpg", required = true)
    @NotBlank(message = "文件名不能为空")
    private String fileName;

    @Schema(description = "上传目录", example = "admin/banners", required = false)
    private String directory;

    @Schema(description = "文件描述", example = "Banner图片", required = false)
    private String description;

    @Schema(description = "文件类型分类", example = "image", required = false, 
            allowableValues = {"image", "document", "compressed", "video", "audio", "other"})
    private String fileCategory;

    @Schema(description = "最大文件大小(MB)", example = "50", required = false)
    private Integer maxSizeMB;
}
