package space.anyi.vo; import io.swagger.v3.oas.annotations.media.Schema; @Schema(description = "File upload response payload") public class FileVO { @Schema(description = "Original file name", example = "report.pdf") private String originalFileName; @Schema(description = "Stored file name on disk", example = "1f2a3c4d-8e90-4a5b-9c7d-0e1f2a3c4d5e.pdf") private String storedFileName; @Schema(description = "File size in bytes", example = "2048") private Long size; @Schema(description = "MIME content type", example = "application/pdf") private String contentType; @Schema(description = "Relative storage path", example = "uploads/1f2a3c4d-8e90-4a5b-9c7d-0e1f2a3c4d5e.pdf") private String storagePath; public FileVO() { } public FileVO(String originalFileName, String storedFileName, Long size, String contentType, String storagePath) { this.originalFileName = originalFileName; this.storedFileName = storedFileName; this.size = size; this.contentType = contentType; this.storagePath = storagePath; } public String getOriginalFileName() { return originalFileName; } public void setOriginalFileName(String originalFileName) { this.originalFileName = originalFileName; } public String getStoredFileName() { return storedFileName; } public void setStoredFileName(String storedFileName) { this.storedFileName = storedFileName; } public Long getSize() { return size; } public void setSize(Long size) { this.size = size; } public String getContentType() { return contentType; } public void setContentType(String contentType) { this.contentType = contentType; } public String getStoragePath() { return storagePath; } public void setStoragePath(String storagePath) { this.storagePath = storagePath; } }