package com.ruoyi.basic.dto; import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; import com.ruoyi.basic.pojo.StorageBlob; import lombok.Data; @Data public class StorageBlobDTO extends StorageBlob { /** * 预览地址 */ private String previewURL; /** * 下载地址 */ private String downloadURL; /** * 文件类型 */ private String application; /** * 支持从数字ID反序列化(前端可能只传ID) */ @JsonCreator public static StorageBlobDTO from(Object value) { if (value instanceof Number) { StorageBlobDTO dto = new StorageBlobDTO(); dto.setId(((Number) value).longValue()); return dto; } throw new IllegalArgumentException("无法反序列化 StorageBlobDTO: " + value); } }