using PARR.Domain.Cache.Models.Base;

namespace PARR.Domain.Cache.Models
{
    /// <summary>
    /// Модель кэша для построения отчетности о загруженности.
    /// Шаблон + ЗО + РГ
    /// </summary>
    public record TemplateCache : IBaseCache<TemplateCacheDto>
    {
        public required TemplateCacheDto Data { get; set; }
        public DateTimeOffset Timestamp { get; set; }
        public required string Source { get; set; }
    }

    public record TemplateCacheDto
    {
        public Guid TemplateId { get; init; }
        public required string WorkGroup { get; init; }
        public required string ResponseArea { get; init; }
        public Guid JobId { get; init; }
        public Guid JobGroupId { get; init; }
    }
}
