package cn.iocoder.yudao.module.system.controller.admin.storage.vo; import io.swagger.v3.oas.annotations.media.Schema; import jakarta.validation.Valid; import jakarta.validation.constraints.NotEmpty; import jakarta.validation.constraints.NotNull; import lombok.Data; import java.util.List; @Schema(description = "管理后台 - 附件绑定 Request VO") @Data public class SystemStorageAttachmentSaveReqVO { @Schema(description = "文件用途", requiredMode = Schema.RequiredMode.REQUIRED, example = "file") private String application; @Schema(description = "关联记录类型", requiredMode = Schema.RequiredMode.REQUIRED, example = "common_file") @NotEmpty(message = "关联记录类型不能为空") private String recordType; @Schema(description = "关联记录ID", requiredMode = Schema.RequiredMode.REQUIRED) @NotNull(message = "关联记录ID不能为空") private Long recordId; @Schema(description = "待绑定的文件列表") @Valid private List blobItems; @Schema(description = "文件项") @Data public static class BlobItem { @Schema(description = "文件ID", requiredMode = Schema.RequiredMode.REQUIRED) @NotNull(message = "文件ID不能为空") private Long blobId; @Schema(description = "文件用途(可覆盖外层)") private String application; } }