All checks were successful
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Successful in 8m26s
25 lines
1.7 KiB
Go
25 lines
1.7 KiB
Go
package dto
|
||
|
||
type GetUploadURLRequest struct {
|
||
FileName string `json:"file_name" validate:"required,min=1,max=255" required:"true" minLength:"1" maxLength:"255" description:"文件名(如:cards.csv)"`
|
||
ContentType string `json:"content_type" validate:"omitempty,max=100" maxLength:"100" description:"文件 MIME 类型(如:text/csv),留空则自动推断"`
|
||
Purpose string `json:"purpose" validate:"required,oneof=iot_import export attachment batch_purchase device_batch_allocation" required:"true" enum:"iot_import,export,attachment,batch_purchase,device_batch_allocation" description:"文件用途 (iot_import:ICCID导入, export:数据导出, attachment:附件, batch_purchase:资产套餐批量订购CSV, device_batch_allocation:设备批量分配CSV)"`
|
||
}
|
||
|
||
type GetUploadURLResponse struct {
|
||
UploadURL string `json:"upload_url" description:"预签名上传 URL,使用 PUT 方法上传文件"`
|
||
FileKey string `json:"file_key" description:"文件路径标识,上传成功后用于调用业务接口"`
|
||
ExpiresIn int `json:"expires_in" description:"URL 有效期(秒)"`
|
||
}
|
||
|
||
// GetBatchDownloadURLsRequest 批量获取文件下载预签名 URL 请求
|
||
type GetBatchDownloadURLsRequest struct {
|
||
FileKeys []string `json:"file_keys" validate:"required,min=1,max=50,dive,required" required:"true" minLength:"1" description:"文件路径标识列表,最多 50 个"`
|
||
}
|
||
|
||
// GetBatchDownloadURLsResponse 批量获取文件下载预签名 URL 响应
|
||
type GetBatchDownloadURLsResponse struct {
|
||
URLs map[string]string `json:"urls" description:"file_key 到预签名下载 URL 的映射"`
|
||
ExpiresIn int `json:"expires_in" description:"URL 有效期(秒)"`
|
||
}
|