namespace Deal.Infrastructure.Persistence.Entities; /// /// Лимит ИИ-бюджета тенанта в системной схеме public. /// public sealed class TenantLimitEntity { /// /// Тенант, которому принадлежит лимит (первичный ключ). /// public Guid TenantId { get; set; } /// /// Бюджет периода в токенах. /// public long BudgetTokens { get; set; } /// /// Тип периода: month|day. /// public string Period { get; set; } = "month"; /// /// Начало текущего периода (отсчёт от него — срок и ленивый reset). /// public DateTimeOffset PeriodStart { get; set; } /// /// Использовано токенов с начала периода. /// public long UsedTokens { get; set; } /// /// Флаг: тост о расходе 80% бюджета уже отправлен (один на период). /// public bool Warned80 { get; set; } /// /// Флаг: тост об исчерпании бюджета уже отправлен (один на период). /// public bool NotifiedExhausted { get; set; } public DateTimeOffset UpdatedAt { get; set; } }