// EN: Merchant type enumeration.
// VI: Enumeration loại Merchant.

using MerchantService.Domain.SeedWork;

namespace MerchantService.Domain.AggregatesModel.MerchantAggregate;

/// <summary>
/// EN: Represents the type of merchant (Individual or Company).
/// VI: Đại diện cho loại merchant (Cá nhân hoặc Doanh nghiệp).
/// </summary>
public class MerchantType : Enumeration
{
    /// <summary>
    /// EN: Individual merchant (sole proprietor).
    /// VI: Merchant cá nhân (hộ kinh doanh).
    /// </summary>
    public static readonly MerchantType Individual = new(1, nameof(Individual));
    
    /// <summary>
    /// EN: Company/Business merchant.
    /// VI: Merchant doanh nghiệp.
    /// </summary>
    public static readonly MerchantType Company = new(2, nameof(Company));

    public MerchantType(int id, string name) : base(id, name)
    {
    }
}
