Ver código fonte

Merge branch 'master' of http://git.12345lm.cn/Fengwo/hotline

TANG JIANG 1 ano atrás
pai
commit
ac1d577291

+ 2 - 1
src/Hotline.Api/Controllers/Bi/BiOrderController.cs

@@ -185,6 +185,7 @@ namespace Hotline.Api.Controllers.Bi
                 {
                     UserName = x.AcceptorName,
                     UserId = x.AcceptorId,
+                    //Subtotal = SqlFunc.AggregateCount(x.AcceptorId),
                     CentreArchive = SqlFunc.AggregateSum(SqlFunc.IIF(x.Status >=  EOrderStatus.Filed && x.ProcessType == EProcessType.Zhiban, 1, 0)),
                     CentreCareOf = SqlFunc.AggregateSum(SqlFunc.IIF(x.Status >= EOrderStatus.Filed && x.ProcessType == EProcessType.Jiaoban, 1, 0)),
                     //NoCentreCareOf = SqlFunc.AggregateSum(SqlFunc.IIF((int)x.Status < 300 && x.ExpiredTime > x.FiledTime, 1, 0)),
@@ -209,7 +210,7 @@ namespace Hotline.Api.Controllers.Bi
                     query = dto.SortRule == 0 ? query.OrderBy(x => x.Repeat) : query.OrderByDescending(x => x.Repeat);
                     break;
             }
-            var (total, items) = await query.ToPagedListAsync(dto, HttpContext.RequestAborted);
+            var (total, items) = await query.Where(x=> (x.CentreArchive+x.CentreCareOf+x.Invalid+x.Repeat)!=0).ToPagedListAsync(dto, HttpContext.RequestAborted);
             return new PagedDto<OrderBiCentreDataListVo>(total, items);
         }
 

+ 36 - 32
src/Hotline.Application/Handlers/FlowEngine/WorkflowPreviousHandler.cs

@@ -101,43 +101,47 @@ namespace Hotline.Application.Handlers.FlowEngine
                     //    //        e.Message);
                     //    //}
                     //}
-
-                    var targetStep = notification.TargetStep;
-                    switch (targetStep.HandlerType)
+                    if (notification.Dto.AcceptSms)
                     {
-                        case EHandlerType.Role:
-                        case EHandlerType.AssignedUser:
-                            var users = await _userRepository.Queryable()
-                                .Where(d => targetStep.Handlers.Select(x => x.Key).Contains(d.Id))
-                                .ToListAsync(cancellationToken);
-                            foreach (var user in users)
-                            {
-                                if (!string.IsNullOrEmpty(user.PhoneNo))
+                        var targetStep = notification.TargetStep;
+
+                        switch (targetStep.HandlerType)
+                        {
+                            case EHandlerType.Role:
+                            case EHandlerType.AssignedUser:
+                                var users = await _userRepository.Queryable()
+                                    .Where(d => targetStep.Handlers.Select(x => x.Key).Contains(d.Id))
+                                    .ToListAsync(cancellationToken);
+                                foreach (var user in users)
                                 {
-                                    var messageDto = new MessageDto()
+                                    if (!string.IsNullOrEmpty(user.PhoneNo))
                                     {
-                                        PushBusiness = EPushBusiness.OrderCallback,
-                                        ExternalId = order.Id,
-                                        OrderId = order.Id,
-                                        PushPlatform = EPushPlatform.Sms,
-                                        Remark = order.Title,
-                                        Name = user.PhoneNo,
-                                        TemplateCode = "1004",
-                                        Params = new List<string>() { order.No },
-                                        TelNumber = user.PhoneNo,
-                                    };
-                                    await _mediator.Publish(new PushMessageNotify(messageDto), cancellationToken);
+                                        var messageDto = new MessageDto()
+                                        {
+                                            PushBusiness = EPushBusiness.OrderSendBack,
+                                            ExternalId = order.Id,
+                                            OrderId = order.Id,
+                                            PushPlatform = EPushPlatform.Sms,
+                                            Remark = order.Title,
+                                            Name = user.PhoneNo,
+                                            TemplateCode = "1004",
+                                            Params = new List<string>() { order.No },
+                                            TelNumber = user.PhoneNo,
+                                        };
+                                        await _mediator.Publish(new PushMessageNotify(messageDto), cancellationToken);
+                                    }
                                 }
-                            }
-                            break;
-                        case EHandlerType.OrgLevel:
-                        case EHandlerType.OrgType:
-                        case EHandlerType.AssignedOrg:
-                            //todo 部门经办人联系方式
-                            break;
-                        default:
-                            throw new ArgumentOutOfRangeException();
+                                break;
+                            case EHandlerType.OrgLevel:
+                            case EHandlerType.OrgType:
+                            case EHandlerType.AssignedOrg:
+                                //todo 部门经办人联系方式
+                                break;
+                            default:
+                                throw new ArgumentOutOfRangeException();
+                        }
                     }
+                   
 
                     break;
                 case WorkflowModuleConsts.OrderDelay:

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

@@ -52,18 +52,16 @@ public class WorkflowRecallHandler : INotificationHandler<RecallNotify>
         switch (workflow.ModuleCode)
         {
             case WorkflowModuleConsts.OrderHandle:
-                var order = await _orderDomainService.GetOrderAsync(workflow.ExternalId, withHotspot: true, withAcceptor: true, 
+                var order = await _orderDomainService.GetOrderAsync(workflow.ExternalId, withHotspot: true, withAcceptor: true,
                     withExtension: true, cancellationToken: cancellationToken);
                 _mapper.Map(workflow, order);
                 if (notification.TargetStep.StepType is EStepType.Start)
                 {
                     order.Status = EOrderStatus.SpecialToUnAccept;
-                    order.SignerId = "";
-                    order.SignerName = "";
                     order.BackToUnsign();
                 }
 
-                await _orderRepository.UpdateAsync(order, cancellationToken);
+                await _orderRepository.UpdateAsync(order, false, cancellationToken);
 
                 //if (data.External != null && data.External.TimeLimit.HasValue && data.External.TimeLimitUnit.HasValue)
                 //{

+ 7 - 3
src/Hotline.Share/Dtos/Order/OrderBiDto.cs

@@ -31,7 +31,10 @@ namespace Hotline.Share.Dtos.Order
 		public int CounterNoHandlerExtendedNum { get; set; }
 
 		public int Subtotal => HandlerExtendedNum + CounterHandlerExtendedNum + NoHandlerExtendedNum + CounterNoHandlerExtendedNum;
-	}
+
+		//public int Subtotal { get; set; }
+
+    }
 
 	public class OrderBiCentreDataListVo
 	{
@@ -49,8 +52,9 @@ namespace Hotline.Share.Dtos.Order
 
 		public int Repeat { get; set; }
 
-		public int Subtotal => CentreArchive + CentreCareOf + NoCentreCareOf + Invalid + Repeat;
-	}
+        public int Subtotal => CentreArchive + CentreCareOf + NoCentreCareOf + Invalid + Repeat;
+        //public int Subtotal { get; set; }
+    }
 
 	public class OrderBiSpecialListVo
 	{

+ 3 - 3
src/Hotline.Share/Enums/Push/EPushBusiness.cs

@@ -32,10 +32,10 @@ public enum EPushBusiness
     OrderUrge = 3,
 
     /// <summary>
-    /// 工单回访
+    /// 工单退
     /// </summary>
-    [Description("工单回访")]
-    OrderCallback = 4,
+    [Description("工单退回")]
+    OrderSendBack = 4,
 
     /// <summary>
     /// 验证码