xf 1 년 전
부모
커밋
75cc5f5d7a
1개의 변경된 파일11개의 추가작업 그리고 6개의 파일을 삭제
  1. 11 6
      src/Hotline.Application/FlowEngine/WorkflowApplication.cs

+ 11 - 6
src/Hotline.Application/FlowEngine/WorkflowApplication.cs

@@ -27,6 +27,7 @@ using XF.Domain.Extensions;
 using XF.Domain.Repository;
 using XF.Utility.EnumExtensions;
 using Hotline.Share.Dtos.File;
+using Microsoft.Extensions.Logging;
 
 namespace Hotline.Application.FlowEngine;
 
@@ -51,6 +52,7 @@ public class WorkflowApplication : IWorkflowApplication, IScopeDependency
     private readonly ISessionContext _sessionContext;
     private readonly IMapper _mapper;
     private readonly IFileRepository _fileRepository;
+    private readonly ILogger<WorkflowApplication> _logger;
 
     public WorkflowApplication(
         IDefinitionDomainService definitionDomainService,
@@ -69,8 +71,8 @@ public class WorkflowApplication : IWorkflowApplication, IScopeDependency
         ITimeLimitDomainService timeLimitDomainService,
         ISessionContext sessionContext,
         IMapper mapper,
-        IFileRepository fileRepository
-    )
+        IFileRepository fileRepository,
+        ILogger<WorkflowApplication> logger)
     {
         _definitionDomainService = definitionDomainService;
         _workflowDomainService = workflowDomainService;
@@ -89,6 +91,7 @@ public class WorkflowApplication : IWorkflowApplication, IScopeDependency
         _sessionContext = sessionContext;
         _mapper = mapper;
         _fileRepository = fileRepository;
+        _logger = logger;
     }
 
     public async Task<string> StartWorkflowAsync(StartWorkflowDto dto, string externalId,
@@ -138,9 +141,9 @@ public class WorkflowApplication : IWorkflowApplication, IScopeDependency
         }
 
         var workflow = await _workflowDomainService.CreateWorkflowAsync(wfModule, dto.Title,
-            _sessionContext.RequiredUserId, _sessionContext.RequiredOrgId, 
+            _sessionContext.RequiredUserId, _sessionContext.RequiredOrgId,
             externalId, expiredTimeConfig?.TimeText,
-            expiredTimeConfig?.Count, expiredTimeConfig?.TimeType, 
+            expiredTimeConfig?.Count, expiredTimeConfig?.TimeType,
             expiredTimeConfig?.ExpiredTime, expiredTimeConfig?.NearlyExpiredTime, cancellationToken);
 
         var startStep = _workflowDomainService.CreateStartStep(workflow, startStepDefine, dto,
@@ -262,7 +265,7 @@ public class WorkflowApplication : IWorkflowApplication, IScopeDependency
     /// </summary>
     public async Task RecallAsync(RecallDto dto, CancellationToken cancellationToken)
     {
-        var workflow = await _workflowDomainService.GetWorkflowAsync(dto.WorkflowId, withDefine: true, withSteps: true, 
+        var workflow = await _workflowDomainService.GetWorkflowAsync(dto.WorkflowId, withDefine: true, withSteps: true,
                 cancellationToken: cancellationToken);
 
         //await _orderDomainService.ReadyToRecallAsync(workflow.ExternalId, cancellationToken);
@@ -300,7 +303,7 @@ public class WorkflowApplication : IWorkflowApplication, IScopeDependency
         EReviewResult? reviewResult = EReviewResult.Unknown,
         CancellationToken cancellationToken = default)
     {
-        var workflow = await _workflowDomainService.GetWorkflowAsync(workflowId, withDefine: true, withSteps: true, 
+        var workflow = await _workflowDomainService.GetWorkflowAsync(workflowId, withDefine: true, withSteps: true,
                 cancellationToken: cancellationToken);
         var endStepDefine = workflow.WorkflowDefinition.FindEndStepDefine();
         if (endStepDefine is null)
@@ -798,6 +801,7 @@ public class WorkflowApplication : IWorkflowApplication, IScopeDependency
                         x => x.User)
                     .Where(d => stepDefine.HandlerTypeItems.Select(x => x.Key).Contains(d.Name))
                     .ToListAsync(cancellationToken);
+                _logger.LogInformation($"角色: {string.Join(",", roles.Select(d => d.Name))}");
                 var users1 = roles.SelectMany(d => d.Accounts).Select(d => d.User);
 
                 //工单办理:除一级部门选择中心汇总(中心会签流程,返回topCountersignStep场景),其余只能选下级部门
@@ -814,6 +818,7 @@ public class WorkflowApplication : IWorkflowApplication, IScopeDependency
                 //     .Where(d => d.IsEnable && levels.Contains(d.Level))
                 //     .WhereIF(!isCenter, d => d.Id.StartsWith(levelOneOrgId))
                 //     .ToListAsync(cancellationToken);
+                _logger.LogInformation($"部门等级: {string.Join(",", levels)}");
 
                 var query = _organizeRepository.Queryable()
                     .Where(d => d.IsEnable);