using CMS.Plugin.HIAWms.Abstractions;
|
using CMS.Plugin.HIAWms.Domain.WmsPlaces;
|
using Microsoft.Extensions.DependencyInjection;
|
using Microsoft.Extensions.Logging;
|
using SYC.Flow.Kernel;
|
using Volo.Abp.DependencyInjection;
|
using Volo.Abp.Uow;
|
|
namespace CMS.Plugin.HIAWms.Services
|
{
|
/// <inheritdoc />
|
public class HIAWmsFlowService : IHIAWmsFlowService, ITransientDependency
|
{
|
private readonly ILogger<HIAWmsFlowService> _logger;
|
private readonly IServiceProvider _serviceProvider;
|
|
/// <summary>
|
/// Initializes a new instance of the <see cref="HIAWmsFlowService"/> class.
|
/// </summary>
|
/// <param name="logger">The logger.</param>
|
public HIAWmsFlowService(ILogger<HIAWmsFlowService> logger, IServiceProvider serviceProvider)
|
{
|
_logger = logger;
|
_serviceProvider = serviceProvider;
|
}
|
|
/// <inheritdoc />
|
public async Task ProcessAsync(ProcessflowEventArgs args)
|
{
|
using var scope = _serviceProvider.CreateScope();
|
var unitOfWorkManager = scope.ServiceProvider.GetRequiredService<IUnitOfWorkManager>();
|
using var uow = unitOfWorkManager.Begin(requiresNew: true);
|
var wmsplaceRepository = scope.ServiceProvider.GetRequiredService<IWmsPlaceRepository>();
|
var count = await wmsplaceRepository.GetCountAsync();
|
|
// 如果有更新数据库操作,需提交保存
|
// await uow.SaveChangesAsync();
|
|
// 输出日志
|
_logger.LogInformation($"HIAWmsFlowService:ProcessAsync()");
|
}
|
}
|
}
|