using AsbCloudApp.Data;
using AsbCloudApp.Data.DetectedOperation;
using AsbCloudApp.Data.SAUB;
using AsbCloudApp.Repositories;
using AsbCloudApp.Requests;
using AsbCloudApp.Services;
using AsbCloudDb.Model;
using AsbCloudInfrastructure.Services.DetectOperations;
using Microsoft.Extensions.DependencyInjection;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading;
using System.Threading.Tasks;
namespace AsbCloudInfrastructure.Background.PeriodicWorks;
///
/// задача по добавлению данных в таблицу DataSaubStat, которая используется для построения РТК-отчета
///
internal class WorkDataSaubStat : Work
{
private int Gap = 60;
public WorkDataSaubStat() : base("Generate DataSaubStat entries and save them into Db")
{
Timeout = TimeSpan.FromMinutes(10);
}
protected override async Task Action(string id, IServiceProvider services, Action onProgressCallback, CancellationToken token)
{
var dataSaubStatService = services.GetRequiredService();
if (dataSaubStatService != null )
await dataSaubStatService.CreateStatAsync(Gap, onProgressCallback, token);
}
}