Quellcode durchsuchen

Merge branch 'test' of http://110.188.24.182:10023/Fengwo/hotline into test

xf vor 4 Monaten
Ursprung
Commit
9aae4e217c

+ 3 - 0
src/Hotline.Api/Controllers/Bi/BiOrderController.cs

@@ -3858,6 +3858,8 @@ namespace Hotline.Api.Controllers.Bi
             else
                 items = await _systemOrganizeRepository.GetOrgJsonForUser(_sessionContext.RequiredOrgId); ;
 
+            var wfModule = await _workflowApplication.GetWorkflowModuleAsync(WorkflowModuleConsts.OrderHandle, HttpContext.RequestAborted);
+            var definition = wfModule.Definition;
             return new Dictionary<string, dynamic>
             {
                 { "visitSatisfaction", _systemDicDataCacheManager.GetVisitSatisfaction() },
@@ -3867,6 +3869,7 @@ namespace Hotline.Api.Controllers.Bi
                 { "channelOptions",_sysDicDataCacheManager.GetSysDicDataCache(TimeLimitBaseDataConsts.SourceChannel) },
                 { "acceptTypeOptions",_sysDicDataCacheManager.GetSysDicDataCache(SysDicTypeConsts.AcceptType)},
                 { "orderStatusOptions", EnumExts.GetDescriptions<EOrderStatus>()},
+                { "currentStepOptions",definition?.Steps.Select(x => new Kv(x.Code, x.Name))}
             };
         }
 

+ 2 - 1
src/Hotline.Api/Controllers/OrderController.cs

@@ -1058,7 +1058,8 @@ public class OrderController : BaseController
             { "visitSatisfaction", _sysDicDataCacheManager.GetVisitSatisfaction().Where(m => m.DicDataValue != "-1").ToList() },
             { "visitMananer", _sysDicDataCacheManager.VisitMananer.Where(x => x.DicDataValue != "-1").ToList() },
             { "visitStateQuery", EnumExts.GetDescriptions<EVisitStateQuery>() },
-            { "sourceChannel", _sysDicDataCacheManager.SourceChannel }
+            { "sourceChannel", _sysDicDataCacheManager.SourceChannel },
+            { "aiVisitResult", EnumExts.GetDescriptions<EAiVisitResult>() }
         };
 
     /// <summary>

+ 2 - 1
src/Hotline.Application/Orders/OrderApplication.cs

@@ -2986,8 +2986,9 @@ public class OrderApplication : IOrderApplication, IScopeDependency
             .WhereIF(!string.IsNullOrEmpty(dto.ActualHandleOrgName), d => d.Order.ActualHandleOrgName.Contains(dto.ActualHandleOrgName)) //接办部门
             .WhereIF(!string.IsNullOrEmpty(dto.OrgLevelOneName), d => d.Order.OrgLevelOneName.Contains(dto.OrgLevelOneName)) //一级部门
             .WhereIF(dto.IdentityType != null, d => d.Order.IdentityType == dto.IdentityType) //来电主体
-           .WhereIF(dto.CreationTimeStart.HasValue, d => d.Order.CreationTime >= dto.CreationTimeStart)
+            .WhereIF(dto.CreationTimeStart.HasValue, d => d.Order.CreationTime >= dto.CreationTimeStart)
             .WhereIF(dto.CreationTimeEnd.HasValue, d => d.Order.CreationTime <= dto.CreationTimeEnd)
+            .WhereIF(dto.AiVisitResult.HasValue && dto.AiVisitResult == EAiVisitResult.OrgProcessingResultsNoSatisfied, d=> d.VisitState == EVisitState.WaitForVisit && d.VisitType == EVisitType.ChipVoiceVisit && d.OrderVisitDetails.Any(m => SqlFunc.JsonField(m.OrgProcessingResults, "Key")=="2"))
             .OrderByDescending(x => x.PublishTime)
             .WhereIF(!string.IsNullOrEmpty(dto.Channel), d => d.Order.SourceChannelCode == dto.Channel)
             .OrderByDescending(d => d.PublishTime);

+ 5 - 0
src/Hotline.Share/Dtos/Order/OrderVisitDto.cs

@@ -132,6 +132,11 @@ namespace Hotline.Share.Dtos.Order
         public DateTime? CreationTimeStart { get; set; }
         public DateTime? CreationTimeEnd { get; set; }
 
+        /// <summary>
+        /// 智能回访结果
+        /// </summary>
+        public EAiVisitResult? AiVisitResult { get; set; }
+
     }
 
     public record QueryOrderPublishStatisticsAllDto : PagedRequest

+ 9 - 0
src/Hotline.Share/Enums/Order/EVisitType.cs

@@ -57,4 +57,13 @@ namespace Hotline.Share.Enums.Order
         [Description("其他")]
         OtherVisit = 100,
     }
+
+    public enum EAiVisitResult
+    {
+        /// <summary>
+        /// 部门办件不满意
+        /// </summary>
+        [Description("部门办件不满意")]
+        OrgProcessingResultsNoSatisfied = 1,
+    }
 }