feat(master): Подкготовка расписания

This commit is contained in:
Mikhail Trubnikov
2023-10-24 12:14:22 +10:00
parent 7991121f07
commit 1d515e46c1
14 changed files with 2882 additions and 22 deletions

45
PARR.Master/Master.cs Normal file
View File

@@ -0,0 +1,45 @@
using Microsoft.Extensions.Logging;
using PARR.Master.Settings;
namespace PARR.Master
{
internal class Master : IMaster
{
private readonly WorkerSettings settings;
private readonly ILogger<Master> logger;
public Master(
WorkerSettings settings,
ILogger<Master> logger
)
{
this.settings = settings;
this.logger = logger;
}
public async Task StartAsync()
{
logger.LogInformation("Запуск сервиса.");
var nextStart = DateTime.Now;
while (true)
{
if (nextStart.Hour == DateTime.Now.Hour && nextStart.Minute == DateTime.Now.Minute)
{
logger.LogInformation("Запуск по расписанию.");
//todo:
// await Tratata();
nextStart = DateTime.Now.Add(settings.RepeatEvery);
logger.LogInformation($"Следующая дата запуска: {nextStart}");
}
// Каждую минуту
await Task.Delay(60 * 1000);
}
}
}
}