using TakeoutSaaS.Domain.Products.Enums;
using TakeoutSaaS.Shared.Abstractions.Entities;

namespace TakeoutSaaS.Domain.Products.Entities;

/// <summary>
/// 商品媒资素材。
/// </summary>
public sealed class ProductMediaAsset : MultiTenantEntityBase
{
    /// <summary>
    /// 商品标识。
    /// </summary>
    public long ProductId { get; set; }

    /// <summary>
    /// 媒体类型。
    /// </summary>
    public MediaAssetType MediaType { get; set; } = MediaAssetType.Image;

    /// <summary>
    /// 媒资链接。
    /// </summary>
    public string Url { get; set; } = string.Empty;

    /// <summary>
    /// 描述或标题。
    /// </summary>
    public string? Caption { get; set; }

    /// <summary>
    /// 排序。
    /// </summary>
    public int SortOrder { get; set; } = 100;
}
