瀏覽代碼

fixed: 发起延期、甄别更新flowUserIds

xf 1 年之前
父節點
當前提交
3bd9ff434a

+ 8 - 8
src/Hotline.Api/Controllers/OrderController.cs

@@ -1164,8 +1164,8 @@ public class OrderController : BaseController
             startDto.Title = model.DelayReason;
             string workFlowId = await _workflowApplication.StartWorkflowAsync(startDto, model.Id,
                     cancellationToken: HttpContext.RequestAborted);
-            model.WorkflowId = workFlowId;
-            await _orderDelayRepository.UpdateAsync(model, HttpContext.RequestAborted);
+            //model.WorkflowId = workFlowId;
+            //await _orderDelayRepository.UpdateAsync(model, HttpContext.RequestAborted);
         }
         catch (Exception ex)
         {
@@ -1414,12 +1414,12 @@ public class OrderController : BaseController
             startDto.Title = dto.Data.Content;
             workflowId = await _workflowApplication.StartWorkflowAsync(startDto, model.Id,
                     cancellationToken: HttpContext.RequestAborted);
-            var screen = await _orderScreenRepository.GetAsync(model.Id, HttpContext.RequestAborted);
-            if (screen != null)
-            {
-                screen.WorkflowId = workflowId;
-                await _orderScreenRepository.UpdateAsync(screen, HttpContext.RequestAborted);
-            }
+            //var screen = await _orderScreenRepository.GetAsync(model.Id, HttpContext.RequestAborted);
+            //if (screen != null)
+            //{
+            //    screen.WorkflowId = workflowId;
+            //    await _orderScreenRepository.UpdateAsync(screen, HttpContext.RequestAborted);
+            //}
         }
         catch (Exception e)
         {

+ 2 - 0
src/Hotline.Application/Handlers/FlowEngine/WorkflowStartHandler.cs

@@ -111,6 +111,7 @@ namespace Hotline.Application.Handlers.FlowEngine
                         .Where(x => x.Id == workflow.ExternalId).FirstAsync(cancellationToken);
                     if (screen != null)
                     {
+                        screen.WorkflowId = workflow.Id;
                         screen.Assign(workflow.FlowedOrgIds, workflow.FlowedUserIds);
                         await _orderScreenRepository.UpdateAsync(screen, cancellationToken);
                     }
@@ -120,6 +121,7 @@ namespace Hotline.Application.Handlers.FlowEngine
                         .Where(x => x.Id == workflow.ExternalId).FirstAsync(cancellationToken);
                     if (orderDelay != null)
                     {
+                        orderDelay.WorkflowId = workflow.Id;
                         orderDelay.Assign(workflow.FlowedOrgIds, workflow.FlowedUserIds);
                         await _orderDelayRepository.UpdateAsync(orderDelay, cancellationToken);
                     }