diff --git a/PARR.Core/Services/Workload/Implementations/WorkloadCacheService.cs b/PARR.Core/Services/Workload/Implementations/WorkloadCacheService.cs new file mode 100644 index 00000000..61d7dc95 --- /dev/null +++ b/PARR.Core/Services/Workload/Implementations/WorkloadCacheService.cs @@ -0,0 +1,53 @@ +using Microsoft.Extensions.Logging; +using PARR.Core.Common.Interfaces; + +namespace PARR.Core.Services.Workload.Implementations +{ + /// + /// Класс управления КЭШем для workload + /// + internal class WorkloadCacheService + { + private readonly ILogger logger; + private readonly IRedisCacheService redisCacheService; + + public WorkloadCacheService( + ILogger logger, + IRedisCacheService redisCacheService + //IShortcodeService + ) + { + this.logger = logger; + this.redisCacheService = redisCacheService; + } + + + /// + /// Создать КЭШ шаблонов. + /// КЭШ рабочих групп и зон ответственности + /// + /// + public async System.Threading.Tasks.Task CreateTemplateCacheAsync() + { + await DeleteTemplateCacheAsync(); + + //1. Получить из БД все шаблоны - НЕТ РЕПЫ + //2. Получить по каждому шаблону ЗО и РГ + //3. Сохранить в Redis + + //redisCacheService + } + + /// + /// Удалить КЭШ шаблонов. + /// + /// + private async System.Threading.Tasks.Task DeleteTemplateCacheAsync() + { + + } + + + + } +} diff --git a/PARR.Core/Services/Workload/Interfaces/IWorkloadCacheBuilderService.cs b/PARR.Core/Services/Workload/Interfaces/IWorkloadCacheBuilderService.cs index 0d658045..5b0e2e02 100644 --- a/PARR.Core/Services/Workload/Interfaces/IWorkloadCacheBuilderService.cs +++ b/PARR.Core/Services/Workload/Interfaces/IWorkloadCacheBuilderService.cs @@ -2,6 +2,9 @@ namespace PARR.Core.Services.Workload.Interfaces { + /// + /// Вызывается в воркере, формирование КЭШ для workload + /// public interface IWorkloadCacheBuilderService : IMessageConsumer {