using CMS.Plugin.HIAWms.Abstractions; using CMS.Plugin.HIAWms.Domain.WmsContainers; 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 { /// public class HIAWmsFlowService : IHIAWmsFlowService, ITransientDependency { private readonly ILogger _logger; private readonly IServiceProvider _serviceProvider; /// /// Initializes a new instance of the class. /// /// The logger. public HIAWmsFlowService(ILogger logger, IServiceProvider serviceProvider) { _logger = logger; _serviceProvider = serviceProvider; } /// public async Task ProcessAsync(ProcessflowEventArgs args) { using var scope = _serviceProvider.CreateScope(); var unitOfWorkManager = scope.ServiceProvider.GetRequiredService(); using var uow = unitOfWorkManager.Begin(requiresNew: true); var wmscontainerRepository = scope.ServiceProvider.GetRequiredService(); var count = await wmscontainerRepository.GetCountAsync(); // 如果有更新数据库操作,需提交保存 // await uow.SaveChangesAsync(); // 输出日志 _logger.LogInformation($"HIAWmsFlowService:ProcessAsync()"); } } }