namespace foodmarket.Domain.Common;

public interface ITenantEntity
{
    Guid OrganizationId { get; set; }
}

public abstract class TenantEntity : Entity, ITenantEntity
{
    public Guid OrganizationId { get; set; }
}

/// <summary>Двухуровневый справочник: запись либо системная (OrganizationId=null,
/// видна и читается всеми, мутирует только SuperAdmin), либо tenant'овская
/// (OrganizationId=&lt;orgId&gt;, видна и редактируется этой оргой). Применяется
/// для расширяемых эталонных списков типа единиц измерения и групп товаров.</summary>
public interface IOptionalTenantEntity
{
    Guid? OrganizationId { get; set; }
}
