Zxd.Core/code/Zxd.Crm.WebApi/Workers/EmployeeSyncWorker.cs

33 lines
1.0 KiB
C#

using Zxd.Crm.Domain.Impl;
namespace Zxd.WebApi.Workers
{
public class EmployeeSyncWorker : BackgroundService
{
private readonly IServiceProvider _serviceProvider;
public EmployeeSyncWorker(IServiceProvider serviceProvider)
{
_serviceProvider = serviceProvider;
}
protected override async Task ExecuteAsync(CancellationToken stoppingToken)
{
try
{
//await ssoemployeedomain.clearzxdempolyee();
while (true)
{
using var scope = _serviceProvider.CreateAsyncScope();
var sSOEmployeeDomain = scope.ServiceProvider.GetRequiredService<ISSOEmployeeDomain>();
await sSOEmployeeDomain.AsyncEmplyeeData();
await Task.Delay(2 * 60 * 1000); // 2分钟
}
}
catch (Exception ex)
{
Log.Error(ex, "员工数据同步任务报错!");
}
}
}
}