using CMS.Plugin.PipeLineLems.Domain.MyTestEntityNames;
using Microsoft.Extensions.Logging;
using Volo.Abp.BackgroundJobs;
using Volo.Abp.DependencyInjection;
using Volo.Abp.Uow;
namespace CMS.Plugin.PipeLineLems.Jobs
{
///
/// PipeLineLems 后台作业
///
public class PipeLineLemsJob : BackgroundJob, ITransientDependency
{
private readonly ILogger _logger;
private readonly IUnitOfWorkManager _unitOfWorkManager;
private readonly IMyTestEntityNameRepository _mytestentitynameRepository;
///
/// Initializes a new instance of the class.
///
/// The logger.
/// The unit of work manager.
/// My entity name repository.
public PipeLineLemsJob(ILogger logger, IUnitOfWorkManager unitOfWorkManager, IMyTestEntityNameRepository mytestentitynameRepository)
{
_logger = logger;
_unitOfWorkManager = unitOfWorkManager;
_mytestentitynameRepository = mytestentitynameRepository;
}
///
public override void Execute(PipeLineLemsArgs args)
{
using var uow = _unitOfWorkManager.Begin(requiresNew: true);
var count = _mytestentitynameRepository.GetCountAsync().GetAwaiter().GetResult();
// 如果有更新数据库操作,需提交保存
// uow.SaveChangesAsync().GetAwaiter().GetResult();
_logger.LogInformation($"PipeLineLemsJob Execute,Subject={args.Subject},Body={args.Body},Count={count}");
}
}
}