Kaynağa Gözat

修改平均派单bug

tangjiang 1 hafta önce
ebeveyn
işleme
1927decba8

+ 8 - 0
src/Hotline/FlowEngine/Workflows/WorkflowDomainService.cs

@@ -402,6 +402,12 @@ namespace Hotline.FlowEngine.Workflows
                     }
                     else
                     {
+                        var orgid = nextStepDefine.BusinessType == EBusinessType.Seat ||
+                                    nextStepDefine.BusinessType == EBusinessType.Send ||
+                                    nextStepDefine.BusinessType == EBusinessType.CenterMonitor ||
+                                    nextStepDefine.BusinessType == EBusinessType.CenterLeader
+                            ? OrgSeedData.CenterId
+                            : null;
                         //todo 指派给配置的角色
                         //dto.FlowAssignType = EFlowAssignType.Role;
                         dto.NextHandlers.Add(new StepAssignInfo
@@ -410,8 +416,10 @@ namespace Hotline.FlowEngine.Workflows
                             Value = handler.Value,
                             RoleId = handler.Key,
                             RoleName = handler.Value,
+                            OrgId = orgid,
                             FlowAssignType = EFlowAssignType.Role
                         });
+
                     }
                 }
             }

+ 12 - 11
src/Hotline/Orders/OrderDomainService.cs

@@ -565,19 +565,20 @@ public class OrderDomainService : IOrderDomainService, IScopeDependency
 
     #region 平均派单
 
-    public async Task<bool> SchedulingAtWork(string UserId) 
+    public async Task<bool> SchedulingAtWork(string UserId)
     {
-        var atWork =  await _schedulingRepository.Queryable()
-			.Includes(x => x.SchedulingUser)
-			.Where(x => x.SchedulingUser.UserId == UserId && x.WorkingTime <= DateTime.Now.TimeOfDay && x.OffDutyTime >= DateTime.Now.TimeOfDay && x.AtWork == true)
-			.AnyAsync();
+        var time = DateTime.Parse(DateTime.Now.ToString("yyyy-MM-dd"));
+        var atWork = await _schedulingRepository.Queryable()
+            .Includes(x => x.SchedulingUser)
+            .Where(x => x.SchedulingUser.UserId == UserId && x.SchedulingTime == time && x.WorkingTime <= DateTime.Now.TimeOfDay && x.OffDutyTime >= DateTime.Now.TimeOfDay && x.AtWork == true)
+            .AnyAsync();
         return atWork;
-	}
-	/// <summary>
-	/// 平均派单
-	/// </summary>
-	/// <returns></returns>
-	public async Task<StepAssignInfo> AverageOrder(CancellationToken cancellationToken)
+    }
+    /// <summary>
+    /// 平均派单
+    /// </summary>
+    /// <returns></returns>
+    public async Task<StepAssignInfo> AverageOrder(CancellationToken cancellationToken)
     {
         var time = DateTime.Parse(DateTime.Now.ToString("yyyy-MM-dd"));
         var scheduling = await _schedulingRepository.Queryable().Includes(x => x.SchedulingUser)