feat: Introduce MediaAssetVariant for better asset management
- Added MediaAssetVariant enum with values 'main' and 'preview'. - Updated media asset service logic to utilize MediaAssetVariant for variant handling. - Refactored database models and queries to include variant and source_asset_id fields. - Enhanced validation for asset variants in upload and processing functions. - Updated Swagger documentation to reflect new variant structure and descriptions. - Implemented necessary database migrations to support the new variant constraints.
This commit is contained in:
@@ -1,6 +1,10 @@
|
||||
package dto
|
||||
|
||||
import "time"
|
||||
import (
|
||||
"time"
|
||||
|
||||
"quyun/v2/pkg/consts"
|
||||
)
|
||||
|
||||
// AdminMediaAssetUploadInitForm defines payload for tenant-admin to initialize a media asset upload.
|
||||
type AdminMediaAssetUploadInitForm struct {
|
||||
@@ -10,7 +14,7 @@ type AdminMediaAssetUploadInitForm struct {
|
||||
|
||||
// Variant indicates whether this asset is a main or preview product.
|
||||
// Allowed: main/preview; default is main.
|
||||
Variant string `json:"variant,omitempty"`
|
||||
Variant *consts.MediaAssetVariant `json:"variant,omitempty"`
|
||||
|
||||
// SourceAssetID links a preview product to its main asset; only meaningful when variant=preview.
|
||||
SourceAssetID *int64 `json:"source_asset_id,omitempty"`
|
||||
|
||||
Reference in New Issue
Block a user