Files
WMS-Api/src/WMS.Web.Domain/QuartzJob/OutStockOrderQuartzJob.cs
2023-11-09 11:14:40 +08:00

65 lines
2.4 KiB
C#

using Microsoft.EntityFrameworkCore.Storage;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Logging;
using Microsoft.Extensions.Options;
using Quartz;
using System;
using System.Collections.Generic;
using System.Text;
using System.Threading.Tasks;
using WMS.Web.Domain.Infrastructure;
using WMS.Web.Domain.IService;
using WMS.Web.Domain.IService.Public;
using WMS.Web.Domain.Options;
namespace WMS.Web.Domain.QuartzJob
{
public class OutStockOrderQuartzJob : IJob
{
private readonly ILogger<OutStockOrderQuartzJob> _logger;
private readonly IServiceScopeFactory _serviceScopeFactory;
private readonly AppOptions _options;
private readonly IOutStockTaskService _outStockTaskService;
private readonly ITransactionRepositories _transactionRepositories;
public OutStockOrderQuartzJob(ILogger<OutStockOrderQuartzJob> logger,
IServiceScopeFactory serviceScopeFactory,
IOptions<AppOptions> options,
IOutStockTaskService inStockTaskService,
ITransactionRepositories transactionRepositories)
{
this._logger = logger;
_serviceScopeFactory = serviceScopeFactory;
this._options = options?.Value;
_outStockTaskService = inStockTaskService;
_transactionRepositories = transactionRepositories;
}
/// <summary>
/// 执行方法
/// </summary>
/// <param name="context"></param>
/// <returns></returns>
public async Task Execute(IJobExecutionContext context)
{
try
{
//2.记录:开始时间
var begindatetime = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss.fff");
_logger.LogInformation($"出库单-同步金蝶入库单数据:执行开始时间->{begindatetime}");
//3.同步数据
var result = await _outStockTaskService.Ssyn(null);
//5.记录:结束时间
var enddatetime = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss.fff");
_logger.LogInformation($"出库单-同步金蝶入库单数据:执行结束时间->{begindatetime}");
}
catch (Exception ex)
{
_logger.LogInformation($"同步金蝶入库单数据:定时任务执行失败->{ex.Message}");
}
}
}
}