Explorar o código

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

tangjiang hai 9 meses
pai
achega
3baf002d21

+ 41 - 61
src/Hotline.Api/Controllers/OrderController.cs

@@ -4189,27 +4189,7 @@ public class OrderController : BaseController
                 cancellationToken: HttpContext.RequestAborted);
             //}
             await _workflowApplication.RecallAsync(recall, expiredTime.ExpiredTime, order.Status >= EOrderStatus.Filed, HttpContext.RequestAborted);
-            var publish = await _orderPublishRepository.GetAsync(x => x.OrderId == dto.OrderId);
-            if (publish != null)
-            {
-                var publishHistory = _mapper.Map<OrderPublishHistory>(publish);
-                publishHistory.OrderPublishId = publish.Id;
-                publishHistory.ArrangeTitleAfter = publish.ArrangeTitle;
-                publishHistory.ArrangeTitleBefor = publish.ArrangeTitle;
-                publishHistory.ArrangeContentAfter = publish.ArrangeContent;
-                publishHistory.ArrangeContentBefor = publish.ArrangeContent;
-                publishHistory.ArrangeOpinionAfter = publish.ArrangeOpinion;
-                publishHistory.ArrangeOpinionBefor = publish.ArrangeOpinion;
-                await _orderPublishHistoryRepository.AddAsync(publishHistory, HttpContext.RequestAborted);
-                await _orderPublishRepository.RemoveAsync(publish, false, HttpContext.RequestAborted);
-            }
-
-            var visit = await _orderVisitRepository.GetAsync(x => x.OrderId == dto.OrderId && x.VisitState != EVisitState.None);
-            if (visit != null)
-            {
-                visit.VisitState = EVisitState.None;
-                await _orderVisitRepository.UpdateAsync(visit, HttpContext.RequestAborted);
-            }
+           
 
             if (order != null && ("001171".Equals(model.OrgId) ||
                                   "001178".Equals(model.OrgId) ||
@@ -4332,32 +4312,32 @@ public class OrderController : BaseController
                 ? EProcessType.Zhiban
                 : EProcessType.Jiaoban;
             await _workflowApplication.RecallAsync(recall, endTime, order.Status >= EOrderStatus.Filed, HttpContext.RequestAborted);
-            var publish = await _orderPublishRepository.GetAsync(x => x.OrderId == dto.OrderId);
-            if (publish != null)
-            {
-                var publishHistory = _mapper.Map<OrderPublishHistory>(publish);
-                publishHistory.OrderPublishId = publish.Id;
-                publishHistory.ArrangeTitleAfter = publish.ArrangeTitle;
-                publishHistory.ArrangeTitleBefor = publish.ArrangeTitle;
-                publishHistory.ArrangeContentAfter = publish.ArrangeContent;
-                publishHistory.ArrangeContentBefor = publish.ArrangeContent;
-                publishHistory.ArrangeOpinionAfter = publish.ArrangeOpinion;
-                publishHistory.ArrangeOpinionBefor = publish.ArrangeOpinion;
-                await _orderPublishHistoryRepository.AddAsync(publishHistory, HttpContext.RequestAborted);
-                await _orderPublishRepository.RemoveAsync(publish, false, HttpContext.RequestAborted);
-            }
+            //var publish = await _orderPublishRepository.GetAsync(x => x.OrderId == dto.OrderId);
+            //if (publish != null)
+            //{
+            //    var publishHistory = _mapper.Map<OrderPublishHistory>(publish);
+            //    publishHistory.OrderPublishId = publish.Id;
+            //    publishHistory.ArrangeTitleAfter = publish.ArrangeTitle;
+            //    publishHistory.ArrangeTitleBefor = publish.ArrangeTitle;
+            //    publishHistory.ArrangeContentAfter = publish.ArrangeContent;
+            //    publishHistory.ArrangeContentBefor = publish.ArrangeContent;
+            //    publishHistory.ArrangeOpinionAfter = publish.ArrangeOpinion;
+            //    publishHistory.ArrangeOpinionBefor = publish.ArrangeOpinion;
+            //    await _orderPublishHistoryRepository.AddAsync(publishHistory, HttpContext.RequestAborted);
+            //    await _orderPublishRepository.RemoveAsync(publish, false, HttpContext.RequestAborted);
+            //}
 
             var reTransactNum = order.ReTransactNum.HasValue ? order.ReTransactNum.Value + 1 : 1;
             var Status = model.StepType == EStepType.Start ? EOrderStatus.BackToUnAccept : EOrderStatus.SendBack;
 			await _orderRepository.Updateable().SetColumns(o => new Orders.Order() { ProcessType = processType, ReTransactNum = reTransactNum, Status = Status }).Where(o => o.Id == order.Id)
                 .ExecuteCommandAsync(HttpContext.RequestAborted);
 
-            var visit = await _orderVisitRepository.GetAsync(x => x.OrderId == dto.OrderId && x.VisitState != EVisitState.None);
-            if (visit != null)
-            {
-                visit.VisitState = EVisitState.None;
-                await _orderVisitRepository.UpdateAsync(visit, HttpContext.RequestAborted);
-            }
+            //var visit = await _orderVisitRepository.GetAsync(x => x.OrderId == dto.OrderId && x.VisitState != EVisitState.None);
+            //if (visit != null)
+            //{
+            //    visit.VisitState = EVisitState.None;
+            //    await _orderVisitRepository.UpdateAsync(visit, HttpContext.RequestAborted);
+            //}
         }
     }
 
@@ -4419,27 +4399,27 @@ public class OrderController : BaseController
             //todo 特提重办,按审批通过时间依据中心派至部门的规则计算期满时间,更新order
 
             await _workflowApplication.RecallAsync(recall, expiredTime.ExpiredTime, order.Status >= EOrderStatus.Filed, HttpContext.RequestAborted);
-            var publish = await _orderPublishRepository.GetAsync(x => x.OrderId == special.OrderId);
-            if (publish != null)
-            {
-                var publishHistory = _mapper.Map<OrderPublishHistory>(publish);
-                publishHistory.OrderPublishId = publish.Id;
-                publishHistory.ArrangeTitleAfter = publish.ArrangeTitle;
-                publishHistory.ArrangeTitleBefor = publish.ArrangeTitle;
-                publishHistory.ArrangeContentAfter = publish.ArrangeContent;
-                publishHistory.ArrangeContentBefor = publish.ArrangeContent;
-                publishHistory.ArrangeOpinionAfter = publish.ArrangeOpinion;
-                publishHistory.ArrangeOpinionBefor = publish.ArrangeOpinion;
-                await _orderPublishHistoryRepository.AddAsync(publishHistory, HttpContext.RequestAborted);
-                await _orderPublishRepository.RemoveAsync(publish, false, HttpContext.RequestAborted);
-            }
+            //var publish = await _orderPublishRepository.GetAsync(x => x.OrderId == special.OrderId);
+            //if (publish != null)
+            //{
+            //    var publishHistory = _mapper.Map<OrderPublishHistory>(publish);
+            //    publishHistory.OrderPublishId = publish.Id;
+            //    publishHistory.ArrangeTitleAfter = publish.ArrangeTitle;
+            //    publishHistory.ArrangeTitleBefor = publish.ArrangeTitle;
+            //    publishHistory.ArrangeContentAfter = publish.ArrangeContent;
+            //    publishHistory.ArrangeContentBefor = publish.ArrangeContent;
+            //    publishHistory.ArrangeOpinionAfter = publish.ArrangeOpinion;
+            //    publishHistory.ArrangeOpinionBefor = publish.ArrangeOpinion;
+            //    await _orderPublishHistoryRepository.AddAsync(publishHistory, HttpContext.RequestAborted);
+            //    await _orderPublishRepository.RemoveAsync(publish, false, HttpContext.RequestAborted);
+            //}
 
-            var visit = await _orderVisitRepository.GetAsync(x => x.OrderId == special.OrderId && x.VisitState != EVisitState.None);
-            if (visit != null)
-            {
-                visit.VisitState = EVisitState.None;
-                await _orderVisitRepository.UpdateAsync(visit, HttpContext.RequestAborted);
-            }
+            //var visit = await _orderVisitRepository.GetAsync(x => x.OrderId == special.OrderId && x.VisitState != EVisitState.None);
+            //if (visit != null)
+            //{
+            //    visit.VisitState = EVisitState.None;
+            //    await _orderVisitRepository.UpdateAsync(visit, HttpContext.RequestAborted);
+            //}
 
             if (order != null && ("001171".Equals(special.OrgId) ||
                                   "001178".Equals(special.OrgId) ||

+ 39 - 4
src/Hotline.Application/Handlers/FlowEngine/WorkflowRecallHandler.cs

@@ -11,8 +11,10 @@ using Hotline.Share.Enums.FlowEngine;
 using Hotline.Share.Enums.Order;
 using MapsterMapper;
 using MediatR;
+using Microsoft.AspNetCore.Http;
 using Microsoft.Extensions.Logging;
 using XF.Domain.Constants;
+using XF.Domain.Repository;
 
 namespace Hotline.Application.Handlers.FlowEngine;
 
@@ -26,14 +28,22 @@ public class WorkflowRecallHandler : INotificationHandler<RecallNotify>
     private readonly ICapPublisher _capPublisher;
     private readonly IMapper _mapper;
     private readonly ILogger<WorkflowRecallHandler> _logger;
+    private readonly IRepository<OrderPublish> _orderPublishRepository;
+    private readonly IRepository<OrderVisit> _orderVisitRepository;
+    private readonly IRepository<OrderVisitDetail> _orderVisitedDetailRepository;
+    private readonly IRepository<OrderPublishHistory> _orderPublishHistoryRepository;
 
-    public WorkflowRecallHandler(
+	public WorkflowRecallHandler(
         IOrderDomainService orderDomainService,
         IOrderRepository orderRepository,
         IWorkflowDomainService workflowDomainService,
         ITimeLimitDomainService timeLimitDomainService,
         ISystemSettingCacheManager systemSettingCacheManager,
-        ICapPublisher capPublisher,
+        IRepository<OrderPublish> orderPublishRepository,
+        IRepository<OrderVisit> orderVisitRepository,
+        IRepository<OrderVisitDetail> orderVisitedDetailRepository,
+        IRepository<OrderPublishHistory> orderPublishHistoryRepository,
+		ICapPublisher capPublisher,
         IMapper mapper,
         ILogger<WorkflowRecallHandler> logger)
     {
@@ -43,7 +53,11 @@ public class WorkflowRecallHandler : INotificationHandler<RecallNotify>
         _timeLimitDomainService = timeLimitDomainService;
         _systemSettingCacheManager = systemSettingCacheManager;
         _capPublisher = capPublisher;
-        _mapper = mapper;
+        _orderPublishRepository = orderPublishRepository;
+        _orderVisitRepository = orderVisitRepository;
+        _orderVisitedDetailRepository = orderVisitedDetailRepository;
+        _orderPublishHistoryRepository = orderPublishHistoryRepository;
+		_mapper = mapper;
         _logger = logger;
     }
 
@@ -89,7 +103,28 @@ public class WorkflowRecallHandler : INotificationHandler<RecallNotify>
 					//}
 				}
                 await _orderRepository.UpdateAsync(order, false, cancellationToken);
-                break;
+                var publish = await _orderPublishRepository.GetAsync(x => x.OrderId == order.Id);
+                if (publish != null)
+                {
+	                var publishHistory = _mapper.Map<OrderPublishHistory>(publish);
+	                publishHistory.OrderPublishId = publish.Id;
+	                publishHistory.ArrangeTitleAfter = publish.ArrangeTitle;
+	                publishHistory.ArrangeTitleBefor = publish.ArrangeTitle;
+	                publishHistory.ArrangeContentAfter = publish.ArrangeContent;
+	                publishHistory.ArrangeContentBefor = publish.ArrangeContent;
+	                publishHistory.ArrangeOpinionAfter = publish.ArrangeOpinion;
+	                publishHistory.ArrangeOpinionBefor = publish.ArrangeOpinion;
+	                await _orderPublishHistoryRepository.AddAsync(publishHistory);
+	                await _orderPublishRepository.RemoveAsync(publish, false);
+                }
+
+                var visit = await _orderVisitRepository.GetAsync(x => x.OrderId == order.Id && x.VisitState != EVisitState.None);
+                if (visit != null)
+                {
+	                visit.VisitState = EVisitState.None;
+	                await _orderVisitRepository.UpdateAsync(visit);
+                }
+				break;
             case WorkflowModuleConsts.KnowledgeAdd:
             case WorkflowModuleConsts.KnowledgeUpdate:
             case WorkflowModuleConsts.KnowledgeDelete: