Browse Source

Merge branch 'master' of http://110.188.24.182:10023/Fengwo/hotline

xf 1 year ago
parent
commit
c9717f531c

+ 3 - 3
src/Hotline.Ai.Jths/AiVisitService.cs

@@ -86,13 +86,13 @@ namespace Hotline.Ai.Jths
             }
             requestData.TaskDataList = taskDataList;
             var response = await ExecuteAsync<AiVisitServiceRequest, AiVisitServiceResponse>(_baseUrl + "/edas/batchTask",Method.Post, requestData,cancellationToken);
-            if (response.TaskInfoList!=null && !string.IsNullOrEmpty(response.BatchUid))
+            if (response.Result.TaskInfoList!=null && !string.IsNullOrEmpty(response.Result.BatchUid))
             {
                 //拼对象
-                aiOrderVisit.BatchUid = response.BatchUid;
+                aiOrderVisit.BatchUid = response.Result.BatchUid;
                 for (int i = 0; i < aiOrderVisit.AiOrderVisitDetails.Count; i++)
                 {
-                    var taskInfo = response.TaskInfoList.FirstOrDefault(x => x.CalledNumber == aiOrderVisit.AiOrderVisitDetails[i].OuterNo);
+                    var taskInfo = response.Result.TaskInfoList.FirstOrDefault(x => x.CalledNumber == aiOrderVisit.AiOrderVisitDetails[i].OuterNo);
                     if (taskInfo != null)
                     {
                         aiOrderVisit.AiOrderVisitDetails[i].AiOrderVisitState = Share.Enums.Ai.EAiOrderVisitState.NoStarted;

+ 11 - 0
src/Hotline.Ai.Jths/OrderVisits/AiVisitServiceResponse.cs

@@ -1,7 +1,18 @@
 
+using System.Text.Json.Serialization;
+
 namespace Hotline.Ai.Jths.OrderVisits
 {
     public class AiVisitServiceResponse
+    {
+        public int Code { get; set; }
+
+        public string Msg { get; set; }
+
+        public BatchResult Result { get; set; }
+    }
+
+    public class BatchResult
     {
         public string BatchUid { get; set; }
 

+ 2 - 2
src/Hotline.Api/config/appsettings.Development.json

@@ -212,8 +212,8 @@
     "RuleUid": "MTAwMDAxSGdDJryoQUgoDeiKlsTEyc", //现有规则ID
     "VisitFromNameKey": "OC_SCENE_VAR_FIELD11", //来电名称       //开发环境 :OC_SCENE_VAR_FIELD11   //生产环境:OC_SCENE_VAR_FIELD12
     "VisitFromGenderKey": "OC_SCENE_VAR_FIELD14", //来电性别     //开发环境: OC_SCENE_VAR_FIELD14   //生产环境:OC_SCENE_VAR_FIELD14
-    "VisitCreationTimeKey": "OC_SCENE_VAR_FIELD19", //来电时间   //开发环境:OC_SCENE_VAR_FIELD17    //生产环境:OC_SCENE_VAR_FIELD19
-    "VisitOrderTitleKey": "OC_SCENE_VAR_FIELD20", //工单标题      //开发环境:OC_SCENE_VAR_FIELD18    //生产环境:OC_SCENE_VAR_FIELD20
+    "VisitCreationTimeKey": "OC_SCENE_VAR_FIELD17", //来电时间   //开发环境:OC_SCENE_VAR_FIELD17    //生产环境:OC_SCENE_VAR_FIELD19
+    "VisitOrderTitleKey": "OC_SCENE_VAR_FIELD18", //工单标题      //开发环境:OC_SCENE_VAR_FIELD18    //生产环境:OC_SCENE_VAR_FIELD20
     "QuestionIdOne": "MTAwMDAxK1F9Qnu-QXYolr9JoOI8fM", //服务过程满意度 //开发环境:MTAwMDAxK1F9Qnu-QXYolr9JoOI8fM  //生产环境:MTAwMDAxvgT-2PoYRR8pxyL4p8AJsM
     "QuestionIdTwo": "MTAwMDAxWQWym04VSRwn4dmWKnYEsQ", //办件结果满意度 //开发环境:MTAwMDAxWQWym04VSRwn4dmWKnYEsQ  //生产环境:MTAwMDAxhIyRJzpwTskpsiXPD-uwl0
     "VisitContentId": "NotSat2" //不满意原因 // 开发环境:NotSat2   //生产环境:NotSat2

+ 16 - 6
src/Hotline.Application/Handlers/FlowEngine/WorkflowEndHandler.cs

@@ -1,6 +1,7 @@
 using DotNetCore.CAP;
 using Hotline.Application.Orders;
 using Hotline.Article;
+using Hotline.CallCenter.Calls;
 using Hotline.CallCenter.Tels;
 using Hotline.FlowEngine.Notifications;
 using Hotline.FlowEngine.WorkflowModules;
@@ -11,6 +12,7 @@ using Hotline.Settings.TimeLimits;
 using Hotline.Share.Dtos;
 using Hotline.Share.Dtos.FlowEngine.Workflow;
 using Hotline.Share.Dtos.Order;
+using Hotline.Share.Dtos.TrCallCenter;
 using Hotline.Share.Enums.Order;
 using MapsterMapper;
 using MediatR;
@@ -46,8 +48,9 @@ public class WorkflowEndHandler : INotificationHandler<EndWorkflowNotify>
     private readonly ILogger<WorkflowEndHandler> _logger;
     private readonly IKnowledgeRepository _knowledgeRepository;
     private readonly IKnowledgeWorkFlowRepository _knowledgeWorkFlowRepository;
+    private readonly IRepository<TrCallRecord> _trCallRecordRepository;
 
-	public WorkflowEndHandler(
+    public WorkflowEndHandler(
         IKnowledgeDomainService knowledgeDomainService,
         IOrderDomainService orderDomainService,
         IOrderApplication orderApplication,
@@ -69,7 +72,8 @@ public class WorkflowEndHandler : INotificationHandler<EndWorkflowNotify>
         IMediator mediator,
         IKnowledgeRepository knowledgeRepository,
         IKnowledgeWorkFlowRepository knowledgeWorkFlowRepository,
-		ILogger<WorkflowEndHandler> logger)
+		ILogger<WorkflowEndHandler> logger,
+        IRepository<TrCallRecord> trCallRecordRepository)
     {
         _knowledgeDomainService = knowledgeDomainService;
         _orderDomainService = orderDomainService;
@@ -92,7 +96,8 @@ public class WorkflowEndHandler : INotificationHandler<EndWorkflowNotify>
         _logger = logger;
         _knowledgeRepository = knowledgeRepository;
         _knowledgeWorkFlowRepository = knowledgeWorkFlowRepository;
-	}
+        _trCallRecordRepository = trCallRecordRepository;
+    }
 
     /// <summary>Handles a notification</summary>
     /// <param name="notification">The notification</param>
@@ -144,12 +149,17 @@ public class WorkflowEndHandler : INotificationHandler<EndWorkflowNotify>
                     :0;
                 order.File(now, handleDuration, fileDuration, allDuration);
                 await _orderRepository.UpdateAsync(order, cancellationToken);
-
-                await _capPublisher.PublishAsync(Hotline.Share.Mq.EventNames.HotlineOrderFiled, new OrderFlowDto
+                var callRecord = await _trCallRecordRepository.GetAsync(p => p.CallAccept == order.CallId, cancellationToken);
+                var orderFlowDto = new OrderFlowDto
                 {
                     Order = _mapper.Map<OrderDto>(order),
                     WorkflowTrace = _mapper.Map<WorkflowTraceDto>(notification.Trace)
-                }, cancellationToken: cancellationToken);
+                };
+                if (callRecord!=null)
+                {
+                    orderFlowDto.TrCallRecordDto  = _mapper.Map<TrCallDto>(callRecord);
+                }
+                await _capPublisher.PublishAsync(Hotline.Share.Mq.EventNames.HotlineOrderFiled, orderFlowDto, cancellationToken: cancellationToken);
 
                 break;
             case WorkflowModuleConsts.OrderScreen:

+ 3 - 0
src/Hotline.Share/Dtos/Order/OrderFlowDto.cs

@@ -4,6 +4,7 @@ using System.Linq;
 using System.Text;
 using System.Threading.Tasks;
 using Hotline.Share.Dtos.FlowEngine.Workflow;
+using Hotline.Share.Dtos.TrCallCenter;
 
 namespace Hotline.Share.Dtos.Order
 {
@@ -31,5 +32,7 @@ namespace Hotline.Share.Dtos.Order
         /// 办理人部门等级
         /// </summary>
         public int HandlerOrgLevel { get; set; }
+
+        public TrCallDto? TrCallRecordDto { get; set; }
     }
 }

+ 1 - 1
src/Hotline.Share/Hotline.Share.csproj

@@ -7,7 +7,7 @@
     <GenerateDocumentationFile>True</GenerateDocumentationFile>
     <NoWarn>$(NoWarn);1591;8618;</NoWarn>
     <GeneratePackageOnBuild>True</GeneratePackageOnBuild>
-    <Version>1.0.61</Version>
+    <Version>1.0.62</Version>
   </PropertyGroup>
 
   <ItemGroup>