Forráskód Böngészése

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

tangjiang 1 hónapja
szülő
commit
84b189c610
45 módosított fájl, 163 hozzáadás és 156 törlés
  1. 1 1
      src/Hotline.Api/Controllers/AiController.cs
  2. 48 1
      src/Hotline.Api/Controllers/Bi/BiOrderController.cs
  3. 1 1
      src/Hotline.Api/Controllers/FwThirdController.cs
  4. 1 0
      src/Hotline.Api/Controllers/IdentityController.cs
  5. 1 1
      src/Hotline.Api/Controllers/OrderApi/OrderCarbonCopyController.cs
  6. 1 1
      src/Hotline.Api/Controllers/OrderController.cs
  7. 1 1
      src/Hotline.Api/Controllers/OrderTerminateController.cs
  8. 0 1
      src/Hotline.Api/Controllers/Snapshot/SnapshotController.cs
  9. 1 1
      src/Hotline.Api/Controllers/Snapshot/SnapshotOrderController.cs
  10. 1 1
      src/Hotline.Api/Controllers/TestController.cs
  11. 1 1
      src/Hotline.Api/Controllers/WebPortalController.cs
  12. 0 1
      src/Hotline.Api/StartupHelper.cs
  13. 1 1
      src/Hotline.Application/Handlers/FlowEngine/WorkflowEndHandler.cs
  14. 1 8
      src/Hotline.Application/OrderApp/AiOrderVisitApplication.cs
  15. 1 1
      src/Hotline.Application/OrderApp/Handlers/OrderHandler/AddOrderPushMessageNotifyHandler.cs
  16. 1 1
      src/Hotline.Application/OrderApp/Handlers/OrderHandler/GetOrderDetailNotifyHandler.cs
  17. 1 1
      src/Hotline.Application/OrderApp/Handlers/OrderHandler/OrderRelateCallHandler.cs
  18. 1 1
      src/Hotline.Application/OrderApp/Handlers/OrderHandler/OrderVisitSmsHandler.cs
  19. 1 1
      src/Hotline.Application/OrderApp/Handlers/OrderHandler/TranspondCityNotifyHandler.cs
  20. 1 1
      src/Hotline.Application/OrderApp/Handlers/OrderHandler/UpdateOrderPushMessageNotifyHandler.cs
  21. 1 1
      src/Hotline.Application/OrderApp/Handlers/OrderScreenHandler/OrderScreenEndWorkflowHandler.cs
  22. 1 2
      src/Hotline.Application/OrderApp/Handlers/OrderScreenHandler/OrderScreenNextWorkflowHandler.cs
  23. 1 1
      src/Hotline.Application/OrderApp/Handlers/OrderScreenHandler/OrderScreenStartWorkflowHandler.cs
  24. 1 1
      src/Hotline.Application/OrderApp/Handlers/SnapshotHandler/GuiderSystemTimeoutHandler.cs
  25. 1 6
      src/Hotline.Application/OrderApp/IAiOrderVisitApplication.cs
  26. 3 8
      src/Hotline.Application/OrderApp/IOrderAnalysisApplication.cs
  27. 1 6
      src/Hotline.Application/OrderApp/IOrderApplication.cs
  28. 2 7
      src/Hotline.Application/OrderApp/IOrderCarbonCopyApplication.cs
  29. 1 6
      src/Hotline.Application/OrderApp/IOrderSecondaryHandlingApplication.cs
  30. 1 6
      src/Hotline.Application/OrderApp/IOrderSendBackAuditApplication.cs
  31. 1 1
      src/Hotline.Application/OrderApp/IOrderVisitApplication.cs
  32. 2 10
      src/Hotline.Application/OrderApp/OrderAnalysisApplication.cs
  33. 13 22
      src/Hotline.Application/OrderApp/OrderApplication.cs
  34. 1 1
      src/Hotline.Application/OrderApp/OrderCarbonCopyApplication.cs
  35. 10 21
      src/Hotline.Application/OrderApp/OrderSecondaryHandlingApplication.cs
  36. 1 3
      src/Hotline.Application/OrderApp/OrderSendBackAuditApplication.cs
  37. 1 2
      src/Hotline.Application/OrderApp/OrderVisitApplication.cs
  38. 1 1
      src/Hotline.Application/Snapshot/Notifications/SnapshotHandler.cs
  39. 7 0
      src/Hotline.Application/StatisticalReport/IOrderReportApplication.cs
  40. 24 3
      src/Hotline.Application/StatisticalReport/OrderReportApplication.cs
  41. 5 4
      src/Hotline.Application/Subscribers/DatasharingSubscriber.cs
  42. 1 1
      src/Hotline.Application/Subscribers/InternalCapSubscriber.cs
  43. 16 15
      src/Hotline/FlowEngine/Workflows/WorkflowDomainService.cs
  44. 1 1
      test/Hotline.Tests/Application/OrderApplicationTest.cs
  45. 1 1
      test/Hotline.Tests/Application/OrderVisitApplicationTest.cs

+ 1 - 1
src/Hotline.Api/Controllers/AiController.cs

@@ -4,7 +4,6 @@ using DotNetCore.CAP;
 using Hotline.Ai.CallOut;
 using Hotline.Ai.Jths;
 using Hotline.Ai.Visit;
-using Hotline.Application.Orders;
 using Hotline.Application.Quality;
 using Hotline.Caching.Interfaces;
 using Hotline.Caching.Services;
@@ -28,6 +27,7 @@ using Org.BouncyCastle.Utilities;
 using SqlSugar;
 using System.Runtime.CompilerServices;
 using System.Threading;
+using Hotline.Application.OrderApp;
 using XF.Domain.Authentications;
 using XF.Domain.Constants;
 using XF.Domain.Exceptions;

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

@@ -1,7 +1,6 @@
 using Amazon.Runtime.Internal.Transform;
 using Hotline.Application.ExportExcel;
 using Hotline.Application.FlowEngine;
-using Hotline.Application.Orders;
 using Hotline.Application.StatisticalReport;
 using Hotline.Application.Systems;
 using Hotline.Caching.Interfaces;
@@ -48,6 +47,7 @@ using Hotline.Share.Dtos.File;
 using Hotline.File;
 using Hotline.KnowledgeBase;
 using DocumentFormat.OpenXml.Vml.Spreadsheet;
+using Hotline.Application.OrderApp;
 using Hotline.Share.Tools;
 using MediatR;
 using static Hotline.AppDefaults;
@@ -3441,6 +3441,53 @@ namespace Hotline.Api.Controllers.Bi
             return ExcelStreamResult(stream, "部门受理类型统计数据");
         }
 
+        /// <summary>
+        /// 部门受理类型统计(宜宾功能)--明细列表
+        /// </summary>
+        /// <param name="dto"></param>
+        /// <returns></returns>
+        [HttpGet("department_acceptance_type_order_list_v1")]
+        public async Task<PagedDto<OrderDto>> DepartmentAcceptanceTypeOrderListV1([FromQuery] DepartmentKeyWordRequest dto)
+        {
+            var (total, items) = await _orderReportApplication.DepartmentAcceptanceTypeOrderListV1(dto)
+                .ToPagedListAsync(dto, HttpContext.RequestAborted);
+            return new PagedDto<OrderDto>(total, _mapper.Map<IReadOnlyList<OrderDto>>(items));
+        }
+
+        /// <summary>
+        /// 部门受理类型统计(宜宾功能)--明细列表---导出
+        /// </summary>
+        /// <param name="dto"></param>
+        /// <returns></returns>
+        [HttpPost("department_acceptance_type_order_list_export_v1")]
+        public async Task<FileStreamResult> ExportDepartmentAcceptanceTypeOrderListV1([FromBody] ExportExcelDto<DepartmentKeyWordRequest> dto)
+        {
+            var query = _orderReportApplication.DepartmentAcceptanceTypeOrderListV1(dto.QueryDto);
+            List<Order> list;
+            if (dto.IsExportAll)
+            {
+                list = await query.ToListAsync(HttpContext.RequestAborted);
+            }
+            else
+            {
+                var (_, items) = await query.ToPagedListAsync(dto.QueryDto, HttpContext.RequestAborted);
+                list = items;
+            }
+
+            var orderDtos = _mapper.Map<ICollection<OrderDto>>(list);
+
+            dynamic? dynamicClass = DynamicClassHelper.CreateDynamicClass<OrderDto>(dto.ColumnInfos);
+
+            var dtos = orderDtos
+                .Select(stu => _mapper.Map(stu, typeof(OrderDto), dynamicClass))
+                .Cast<object>()
+                .ToList();
+
+            var stream = ExcelHelper.CreateStream(dtos);
+
+            return ExcelStreamResult(stream, "部门受理类型统计数据");
+        }
+
         /// <summary>
         /// 部门办件统计表
         /// </summary>

+ 1 - 1
src/Hotline.Api/Controllers/FwThirdController.cs

@@ -1,7 +1,7 @@
 using DocumentFormat.OpenXml.Office.CoverPageProps;
 using Hotline.Application.Bulletin;
 using Hotline.Application.Identity;
-using Hotline.Application.Orders;
+using Hotline.Application.OrderApp;
 using Hotline.Article;
 using Hotline.Caching.Interfaces;
 using Hotline.Configurations;

+ 1 - 0
src/Hotline.Api/Controllers/IdentityController.cs

@@ -157,6 +157,7 @@ jxrWXHbT1FB6DqkdOnBbQqS1Azqz5HxLlSyEK3F60e3SgB5iZsDZ
             MenuLogoImageMini = menuLogoImageMini,
             IsLoginMessageCode = IsLoginMessageCode,
             AppScope = _appOptions.Value.AppScope,
+            CallCenterSocketUrl = _systemSettingCacheManager.GetSetting(SettingConstants.CallCenterSocketUrl).SettingValue?.FirstOrDefault(),
         };
     }
 

+ 1 - 1
src/Hotline.Api/Controllers/OrderApi/OrderCarbonCopyController.cs

@@ -1,4 +1,4 @@
-using Hotline.Application.Orders;
+using Hotline.Application.OrderApp;
 using Hotline.Caching.Interfaces;
 using Hotline.Repository.SqlSugar.Extensions;
 using Hotline.Settings;

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

@@ -5,7 +5,6 @@ using Hotline.Api.Filter;
 using Hotline.Application.CallCenter;
 using Hotline.Application.ExportExcel;
 using Hotline.Application.FlowEngine;
-using Hotline.Application.Orders;
 using Hotline.Application.Quality;
 using Hotline.Application.Snapshot;
 using Hotline.Application.Systems;
@@ -76,6 +75,7 @@ using SqlSugar;
 using System.Text;
 using System.Text.Json;
 using System.Threading;
+using Hotline.Application.OrderApp;
 using XF.Domain.Authentications;
 using XF.Domain.Cache;
 using XF.Domain.Exceptions;

+ 1 - 1
src/Hotline.Api/Controllers/OrderTerminateController.cs

@@ -22,9 +22,9 @@ using XF.Utility.EnumExtensions;
 using MapsterMapper;
 using Hotline.File;
 using Hotline.Application.FlowEngine;
+using Hotline.Application.OrderApp;
 using Hotline.FlowEngine.Workflows;
 using Hotline.Repository.SqlSugar.Extensions;
-using Hotline.Application.Orders;
 using Hotline.Share.Dtos.FlowEngine.Workflow;
 using Hotline.Share.Requests;
 using Hotline.Tools;

+ 0 - 1
src/Hotline.Api/Controllers/Snapshot/SnapshotController.cs

@@ -1,7 +1,6 @@
 using AngleSharp.Dom;
 using Fw.Utility.UnifyResponse;
 using Hotline.Api.Filter;
-using Hotline.Application.Orders;
 using Hotline.Application.Snapshot;
 using Hotline.Caching.Interfaces;
 using Hotline.File;

+ 1 - 1
src/Hotline.Api/Controllers/Snapshot/SnapshotOrderController.cs

@@ -1,6 +1,5 @@
 using Amazon.Runtime.Internal.Transform;
 using Hotline.Application.FlowEngine;
-using Hotline.Application.Orders;
 using Hotline.Application.Snapshot;
 using Hotline.Caching.Interfaces;
 using Hotline.Caching.Services;
@@ -24,6 +23,7 @@ using Microsoft.AspNetCore.Mvc;
 using Microsoft.Extensions.Options;
 using System.ComponentModel;
 using System.Text;
+using Hotline.Application.OrderApp;
 using XF.Domain.Authentications;
 using XF.Domain.Exceptions;
 using XF.Domain.Repository;

+ 1 - 1
src/Hotline.Api/Controllers/TestController.cs

@@ -4,7 +4,6 @@ using Hotline.Application.CallCenter;
 using Hotline.Application.ExportExcel;
 using Hotline.Application.FlowEngine;
 using Hotline.Application.JudicialManagement;
-using Hotline.Application.Orders;
 using Hotline.Application.Quality;
 using Hotline.Application.StatisticalReport;
 using Hotline.Caching.Interfaces;
@@ -54,6 +53,7 @@ using NETCore.Encrypt;
 using Senparc.Weixin.MP.AdvancedAPIs.MerChant;
 using SqlSugar;
 using System.Threading;
+using Hotline.Application.OrderApp;
 using XC.RSAUtil;
 using XF.Domain.Authentications;
 using XF.Domain.Cache;

+ 1 - 1
src/Hotline.Api/Controllers/WebPortalController.cs

@@ -1,6 +1,6 @@
 using DocumentFormat.OpenXml.Spreadsheet;
 using Hotline.Application.Bulletin;
-using Hotline.Application.Orders;
+using Hotline.Application.OrderApp;
 using Hotline.Article;
 using Hotline.Caching.Interfaces;
 using Hotline.Configurations;

+ 0 - 1
src/Hotline.Api/StartupHelper.cs

@@ -4,7 +4,6 @@ using System.Reflection;
 using System.Text;
 using Hotline.Application;
 using Hotline.Application.Jobs;
-using Hotline.Application.Orders;
 using Hotline.CallCenter.Configs;
 using Hotline.Configurations;
 using Hotline.DI;

+ 1 - 1
src/Hotline.Application/Handlers/FlowEngine/WorkflowEndHandler.cs

@@ -1,6 +1,6 @@
 using DotNetCore.CAP;
 using Hotline.Application.CallCenter;
-using Hotline.Application.Orders;
+using Hotline.Application.OrderApp;
 using Hotline.Caching.Interfaces;
 using Hotline.CallCenter.Tels;
 using Hotline.Configurations;

+ 1 - 8
src/Hotline.Application/Orders/AiOrderVisitApplication.cs → src/Hotline.Application/OrderApp/AiOrderVisitApplication.cs

@@ -1,17 +1,10 @@
 using Hotline.Orders;
-using Hotline.Share.Dtos;
 using Hotline.Share.Dtos.Ai;
-using Microsoft.AspNetCore.Http;
 using SqlSugar;
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
 using XF.Domain.Dependency;
 using XF.Domain.Repository;
 
-namespace Hotline.Application.Orders
+namespace Hotline.Application.OrderApp
 {
     public class AiOrderVisitApplication : IAiOrderVisitApplication, IScopeDependency
     {

+ 1 - 1
src/Hotline.Application/Orders/Handlers/OrderHandler/AddOrderPushMessageNotifyHandler.cs → src/Hotline.Application/OrderApp/Handlers/OrderHandler/AddOrderPushMessageNotifyHandler.cs

@@ -6,7 +6,7 @@ using Hotline.Share.Enums.Push;
 using MediatR;
 using Microsoft.Extensions.Logging;
 
-namespace Hotline.Application.Orders.Handlers.OrderHandler
+namespace Hotline.Application.OrderApp.Handlers.OrderHandler
 {
     /// <summary>
     /// 新增工单发送短信

+ 1 - 1
src/Hotline.Application/Orders/Handlers/OrderHandler/GetOrderDetailNotifyHandler.cs → src/Hotline.Application/OrderApp/Handlers/OrderHandler/GetOrderDetailNotifyHandler.cs

@@ -2,7 +2,7 @@
 using Hotline.Orders.Notifications;
 using MediatR;
 
-namespace Hotline.Application.Orders.Handlers.OrderHandler
+namespace Hotline.Application.OrderApp.Handlers.OrderHandler
 {
     public class GetOrderDetailNotifyHandler : INotificationHandler<GetOrderDetailNotify>
     {

+ 1 - 1
src/Hotline.Application/Orders/Handlers/OrderHandler/OrderRelateCallHandler.cs → src/Hotline.Application/OrderApp/Handlers/OrderHandler/OrderRelateCallHandler.cs

@@ -4,7 +4,7 @@ using Hotline.Share.Dtos.Order;
 using Hotline.Share.Mq;
 using XF.Domain.Dependency;
 
-namespace Hotline.Application.Orders.Handlers.OrderHandler
+namespace Hotline.Application.OrderApp.Handlers.OrderHandler
 {
     public class OrderRelateCallHandler : ICapSubscribe, ITransientDependency
     {

+ 1 - 1
src/Hotline.Application/Orders/Handlers/OrderHandler/OrderVisitSmsHandler.cs → src/Hotline.Application/OrderApp/Handlers/OrderHandler/OrderVisitSmsHandler.cs

@@ -9,7 +9,7 @@ using MediatR;
 using XF.Domain.Dependency;
 using XF.Domain.Repository;
 
-namespace Hotline.Application.Orders.Handlers.OrderHandler;
+namespace Hotline.Application.OrderApp.Handlers.OrderHandler;
 public class OrderVisitSmsHandler : INotificationHandler<ReceiveMessageNotify>
 {
     private readonly IOrderVisitDomainService _orderVisitDomainService;

+ 1 - 1
src/Hotline.Application/Orders/Handlers/OrderHandler/TranspondCityNotifyHandler.cs → src/Hotline.Application/OrderApp/Handlers/OrderHandler/TranspondCityNotifyHandler.cs

@@ -9,7 +9,7 @@ using MediatR;
 using Microsoft.Extensions.Logging;
 using XF.Domain.Repository;
 
-namespace Hotline.Application.Orders.Handlers.OrderHandler
+namespace Hotline.Application.OrderApp.Handlers.OrderHandler
 {
     // [Injection(AppScopes = EAppScope.YiBin)]
     public class TranspondCityNotifyHandler : INotificationHandler<OrderStartWorkflowNotify>

+ 1 - 1
src/Hotline.Application/Orders/Handlers/OrderHandler/UpdateOrderPushMessageNotifyHandler.cs → src/Hotline.Application/OrderApp/Handlers/OrderHandler/UpdateOrderPushMessageNotifyHandler.cs

@@ -6,7 +6,7 @@ using Hotline.Share.Enums.Push;
 using MediatR;
 using Microsoft.Extensions.Logging;
 
-namespace Hotline.Application.Orders.Handlers.OrderHandler
+namespace Hotline.Application.OrderApp.Handlers.OrderHandler
 {
     public class UpdateOrderPushMessageNotifyHandler : INotificationHandler<UpdateOrderNotify>
     {

+ 1 - 1
src/Hotline.Application/Orders/Handlers/OrderScreenHandler/OrderScreenEndWorkflowHandler.cs → src/Hotline.Application/OrderApp/Handlers/OrderScreenHandler/OrderScreenEndWorkflowHandler.cs

@@ -16,7 +16,7 @@ using Microsoft.Extensions.Options;
 using XF.Domain.Authentications;
 using XF.Domain.Repository;
 
-namespace Hotline.Application.Orders.Handlers.OrderScreenHandler;
+namespace Hotline.Application.OrderApp.Handlers.OrderScreenHandler;
 public class OrderScreenEndWorkflowHandler : INotificationHandler<EndWorkflowNotify>
 {
     private readonly IOrderRepository _orderRepository;

+ 1 - 2
src/Hotline.Application/Orders/Handlers/OrderScreenHandler/OrderScreenNextWorkflowHandler.cs → src/Hotline.Application/OrderApp/Handlers/OrderScreenHandler/OrderScreenNextWorkflowHandler.cs

@@ -9,13 +9,12 @@ using Hotline.Share.Enums.Order;
 using Hotline.Share.Mq;
 using MapsterMapper;
 using MediatR;
-using Microsoft.AspNetCore.Http;
 using Microsoft.Extensions.Options;
 using XF.Domain.Authentications;
 using XF.Domain.Extensions;
 using XF.Domain.Repository;
 
-namespace Hotline.Application.Orders.Handlers.OrderScreenHandler;
+namespace Hotline.Application.OrderApp.Handlers.OrderScreenHandler;
 public class OrderScreenNextWorkflowHandler : INotificationHandler<NextStepNotify>
 {
     private readonly ICapPublisher _capPublisher;

+ 1 - 1
src/Hotline.Application/Orders/Handlers/OrderScreenHandler/OrderScreenStartWorkflowHandler.cs → src/Hotline.Application/OrderApp/Handlers/OrderScreenHandler/OrderScreenStartWorkflowHandler.cs

@@ -3,7 +3,7 @@ using Hotline.FlowEngine.WorkflowModules;
 using Hotline.Orders;
 using MediatR;
 
-namespace Hotline.Application.Orders.Handlers.OrderScreenHandler;
+namespace Hotline.Application.OrderApp.Handlers.OrderScreenHandler;
 
 public class OrderScreenStartWorkflowHandler : INotificationHandler<StartWorkflowNotify>
 {

+ 1 - 1
src/Hotline.Application/Orders/Handlers/SnapshotHandler/GuiderSystemTimeoutHandler.cs → src/Hotline.Application/OrderApp/Handlers/SnapshotHandler/GuiderSystemTimeoutHandler.cs

@@ -4,7 +4,7 @@ using Hotline.Share.Tools;
 using Hotline.Snapshot.Notifications;
 using MediatR;
 
-namespace Hotline.Application.Orders.Handlers.SnapshotHandler
+namespace Hotline.Application.OrderApp.Handlers.SnapshotHandler
 {
     /// <summary>
     /// 需求:坐席派给网格员的安全隐患工单若未推送成功超过4小时或者网格员超过4小时没回复,则自动流转到标注节点待标注列表

+ 1 - 6
src/Hotline.Application/Orders/IAiOrderVisitApplication.cs → src/Hotline.Application/OrderApp/IAiOrderVisitApplication.cs

@@ -1,13 +1,8 @@
 using Hotline.Orders;
 using Hotline.Share.Dtos.Ai;
 using SqlSugar;
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
 
-namespace Hotline.Application.Orders
+namespace Hotline.Application.OrderApp
 {
     public interface IAiOrderVisitApplication
     {

+ 3 - 8
src/Hotline.Application/Orders/IOrderAnalysisApplication.cs → src/Hotline.Application/OrderApp/IOrderAnalysisApplication.cs

@@ -1,13 +1,8 @@
-using Hotline.Share.Dtos.Order;
+using Hotline.Orders;
+using Hotline.Share.Dtos.Order;
 using SqlSugar;
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using Hotline.Orders;
 
-namespace Hotline.Application.Orders
+namespace Hotline.Application.OrderApp
 {
 	public interface IOrderAnalysisApplication
 	{

+ 1 - 6
src/Hotline.Application/Orders/IOrderApplication.cs → src/Hotline.Application/OrderApp/IOrderApplication.cs

@@ -2,24 +2,19 @@
 using Hotline.FlowEngine.Definitions;
 using Hotline.FlowEngine.Workflows;
 using Hotline.Orders;
-using Hotline.Repository.SqlSugar.Orders;
 using Hotline.Settings;
 using Hotline.Share.Dtos;
 using Hotline.Share.Dtos.DataSharing.PusherHotlineDto;
-using Hotline.Share.Dtos.FlowEngine;
 using Hotline.Share.Dtos.FlowEngine.Workflow;
 using Hotline.Share.Dtos.Order;
 using Hotline.Share.Dtos.Order.Publish;
-using Hotline.Share.Enums.FlowEngine;
-using Hotline.Share.Enums.Order;
 using Hotline.Share.Enums.Settings;
 using Hotline.Share.Requests;
 using Hotline.Users;
 using SqlSugar;
-using XF.Domain.Authentications;
 using XF.Domain.Exceptions;
 
-namespace Hotline.Application.Orders
+namespace Hotline.Application.OrderApp
 {
     public interface IOrderApplication
     {

+ 2 - 7
src/Hotline.Application/Orders/IOrderCarbonCopyApplication.cs → src/Hotline.Application/OrderApp/IOrderCarbonCopyApplication.cs

@@ -1,13 +1,8 @@
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using Hotline.Orders;
+using Hotline.Orders;
 using Hotline.Share.Dtos.Order.CarbonCopy;
 using SqlSugar;
 
-namespace Hotline.Application.Orders
+namespace Hotline.Application.OrderApp
 {
     public interface IOrderCarbonCopyApplication
     {

+ 1 - 6
src/Hotline.Application/Orders/IOrderSecondaryHandlingApplication.cs → src/Hotline.Application/OrderApp/IOrderSecondaryHandlingApplication.cs

@@ -2,13 +2,8 @@
 using Hotline.Share.Dtos.Order;
 using Hotline.Share.Requests;
 using SqlSugar;
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
 
-namespace Hotline.Application.Orders
+namespace Hotline.Application.OrderApp
 {
 	public interface IOrderSecondaryHandlingApplication
 	{

+ 1 - 6
src/Hotline.Application/Orders/IOrderSendBackAuditApplication.cs → src/Hotline.Application/OrderApp/IOrderSendBackAuditApplication.cs

@@ -1,13 +1,8 @@
 using Hotline.Orders;
 using Hotline.Share.Dtos.Order;
 using SqlSugar;
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
 
-namespace Hotline.Application.Orders
+namespace Hotline.Application.OrderApp
 {
 	public interface IOrderSendBackAuditApplication
 	{

+ 1 - 1
src/Hotline.Application/Orders/IOrderVisitApplication.cs → src/Hotline.Application/OrderApp/IOrderVisitApplication.cs

@@ -1,6 +1,6 @@
 using Hotline.Share.Dtos.Order;
 
-namespace Hotline.Application.Orders;
+namespace Hotline.Application.OrderApp;
 
 public interface IOrderVisitApplication
 {

+ 2 - 10
src/Hotline.Application/Orders/OrderAnalysisApplication.cs → src/Hotline.Application/OrderApp/OrderAnalysisApplication.cs

@@ -1,23 +1,15 @@
 using Hotline.Orders;
 using Hotline.Settings;
 using Hotline.Share.Dtos.Order;
+using Hotline.Share.Enums.Order;
 using MapsterMapper;
-using NPOI.SS.Formula.Functions;
 using SqlSugar;
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Net;
-using System.Text;
-using System.Threading.Tasks;
-using Hotline.Share.Enums.Order;
 using XF.Domain.Dependency;
 using XF.Domain.Exceptions;
 using XF.Domain.Repository;
 using XF.Utility.SequentialId;
-using static Hotline.AppDefaults;
 
-namespace Hotline.Application.Orders
+namespace Hotline.Application.OrderApp
 {
 	public class OrderAnalysisApplication : IOrderAnalysisApplication, IScopeDependency
 	{

+ 13 - 22
src/Hotline.Application/Orders/OrderApplication.cs → src/Hotline.Application/OrderApp/OrderApplication.cs

@@ -1,11 +1,20 @@
-using DotNetCore.CAP;
+using System.Data;
+using System.Dynamic;
+using DotNetCore.CAP;
+using ExtendedNumerics.Exceptions;
+using FluentValidation;
+using Hotline.Application.FlowEngine;
 using Hotline.Application.Quality;
+using Hotline.Article;
 using Hotline.Authentications;
 using Hotline.Caching.Interfaces;
 using Hotline.Configurations;
 using Hotline.File;
+using Hotline.FlowEngine.Definitions;
+using Hotline.FlowEngine.Notifications;
 using Hotline.FlowEngine.WorkflowModules;
 using Hotline.FlowEngine.Workflows;
+using Hotline.Identity.Roles;
 using Hotline.KnowledgeBase;
 using Hotline.Orders;
 using Hotline.OrderTranspond;
@@ -21,6 +30,7 @@ using Hotline.Share.Dtos;
 using Hotline.Share.Dtos.DataSharing.PusherHotlineDto;
 using Hotline.Share.Dtos.File;
 using Hotline.Share.Dtos.FlowEngine;
+using Hotline.Share.Dtos.FlowEngine.Workflow;
 using Hotline.Share.Dtos.Order;
 using Hotline.Share.Dtos.Order.Publish;
 using Hotline.Share.Dtos.Push;
@@ -35,39 +45,20 @@ using Hotline.Share.Requests;
 using Hotline.Statistics;
 using Hotline.Tools;
 using Hotline.Users;
+using Hotline.Validators.FlowEngine;
 using Mapster;
 using MapsterMapper;
 using MediatR;
-using Microsoft.AspNetCore.Http;
-using Microsoft.AspNetCore.Mvc;
 using Microsoft.Extensions.Options;
 using PanGu;
 using SqlSugar;
-using System.Data;
-using System.Dynamic;
-using ExtendedNumerics.Exceptions;
-using FluentValidation;
-using Hotline.FlowEngine.Definitions;
-using Hotline.FlowEngine.Notifications;
-using Hotline.Share.Dtos.FlowEngine.Workflow;
-using Hotline.Validators.FlowEngine;
 using XF.Domain.Authentications;
 using XF.Domain.Dependency;
-using XF.Domain.Entities;
 using XF.Domain.Exceptions;
 using XF.Domain.Repository;
 using WordInfo = PanGu.WordInfo;
-using Hotline.Repository.SqlSugar.Orders;
-using Quartz.Simpl;
-using J2N.Text;
-using Hotline.Application.FlowEngine;
-using Hotline.Article;
-using Hotline.Share.Dtos.CallCenter;
-using DocumentFormat.OpenXml.Bibliography;
-using Hotline.Identity.Accounts;
-using Hotline.Identity.Roles;
 
-namespace Hotline.Application.Orders;
+namespace Hotline.Application.OrderApp;
 
 public class OrderApplication : IOrderApplication, IScopeDependency
 {

+ 1 - 1
src/Hotline.Application/Orders/OrderCarbonCopyApplication.cs → src/Hotline.Application/OrderApp/OrderCarbonCopyApplication.cs

@@ -5,7 +5,7 @@ using XF.Domain.Authentications;
 using XF.Domain.Dependency;
 using XF.Domain.Repository;
 
-namespace Hotline.Application.Orders;
+namespace Hotline.Application.OrderApp;
 
 public class OrderCarbonCopyApplication : IOrderCarbonCopyApplication, IScopeDependency
 {

+ 10 - 21
src/Hotline.Application/Orders/OrderSecondaryHandlingApplication.cs → src/Hotline.Application/OrderApp/OrderSecondaryHandlingApplication.cs

@@ -1,39 +1,28 @@
 using DotNetCore.CAP;
+using FluentValidation;
 using Hotline.Application.FlowEngine;
+using Hotline.Configurations;
 using Hotline.File;
 using Hotline.FlowEngine.Workflows;
 using Hotline.Orders;
-using Hotline.Repository.SqlSugar.Orders;
+using Hotline.Settings;
+using Hotline.Settings.TimeLimitDomain;
 using Hotline.Settings.TimeLimits;
-using Hotline.Share.Dtos;
-using Hotline.Share.Dtos.FlowEngine;
+using Hotline.Share.Dtos.FlowEngine.Workflow;
 using Hotline.Share.Dtos.Order;
+using Hotline.Share.Enums.FlowEngine;
 using Hotline.Share.Enums.Order;
+using Hotline.Share.Requests;
+using Hotline.Validators.FlowEngine;
 using MapsterMapper;
-using Microsoft.AspNetCore.Http;
-using Microsoft.AspNetCore.Mvc;
+using Microsoft.Extensions.Options;
 using SqlSugar;
-using System.Threading;
-using Hotline.Configurations;
-using Hotline.FlowEngine;
-using Hotline.Repository.SqlSugar.Extensions;
 using XF.Domain.Authentications;
 using XF.Domain.Dependency;
 using XF.Domain.Exceptions;
 using XF.Domain.Repository;
-using Hotline.Share.Requests;
-using Hotline.Settings;
-using Novacode;
-using Hotline.Share.Enums.FlowEngine;
-using Hotline.Settings.TimeLimitDomain;
-using Microsoft.Extensions.Options;
-using DocumentFormat.OpenXml.Office2010.Excel;
-using Hotline.Share.Dtos.FlowEngine.Workflow;
-using Hotline.Validators.FlowEngine;
-using FluentValidation;
-using Hotline.Authentications;
 
-namespace Hotline.Application.Orders
+namespace Hotline.Application.OrderApp
 {
     public class OrderSecondaryHandlingApplication : IOrderSecondaryHandlingApplication, IScopeDependency
     {

+ 1 - 3
src/Hotline.Application/Orders/OrderSendBackAuditApplication.cs → src/Hotline.Application/OrderApp/OrderSendBackAuditApplication.cs

@@ -1,7 +1,5 @@
 using Hotline.Orders;
 using Hotline.SeedData;
-using Hotline.Share.Dtos;
-using Hotline.Share.Dtos.Bi;
 using Hotline.Share.Dtos.Order;
 using Hotline.Share.Enums.Order;
 using SqlSugar;
@@ -9,7 +7,7 @@ using XF.Domain.Authentications;
 using XF.Domain.Dependency;
 using XF.Domain.Repository;
 
-namespace Hotline.Application.Orders
+namespace Hotline.Application.OrderApp
 {
     public class OrderSendBackAuditApplication : IOrderSendBackAuditApplication, IScopeDependency
     {

+ 1 - 2
src/Hotline.Application/Orders/OrderVisitApplication.cs → src/Hotline.Application/OrderApp/OrderVisitApplication.cs

@@ -9,8 +9,7 @@ using SqlSugar;
 using XF.Domain.Dependency;
 using XF.Domain.Repository;
 
-
-namespace Hotline.Application.Orders;
+namespace Hotline.Application.OrderApp;
 
 /// <summary>
 /// 回访服务

+ 1 - 1
src/Hotline.Application/Snapshot/Notifications/SnapshotHandler.cs

@@ -21,7 +21,7 @@ using System.Collections.Generic;
 using System.Linq;
 using System.Text;
 using System.Threading.Tasks;
-using Hotline.Application.Orders;
+using Hotline.Application.OrderApp;
 using Hotline.FlowEngine.Workflows;
 using XF.Domain.Dependency;
 using XF.Domain.Exceptions;

+ 7 - 0
src/Hotline.Application/StatisticalReport/IOrderReportApplication.cs

@@ -131,6 +131,13 @@ namespace Hotline.Application.StatisticalReport
         /// <returns></returns>
         ISugarQueryable<Order> DepartmentAcceptanceTypeOrderList(DepartmentKeyWordRequest dto);
 
+        /// <summary>
+        /// 部门受理类型统计--明细列表
+        /// </summary>
+        /// <param name="dto"></param>
+        /// <returns></returns>
+        ISugarQueryable<Order> DepartmentAcceptanceTypeOrderListV1(DepartmentKeyWordRequest dto);
+
 
         /// <summary>
         /// 受理类型统计

+ 24 - 3
src/Hotline.Application/StatisticalReport/OrderReportApplication.cs

@@ -1,5 +1,4 @@
-using Hotline.Application.Orders;
-using Hotline.Caching.Interfaces;
+using Hotline.Caching.Interfaces;
 using Hotline.CallCenter.Calls;
 using Hotline.FlowEngine.WorkflowModules;
 using Hotline.FlowEngine.Workflows;
@@ -2307,7 +2306,7 @@ namespace Hotline.Application.StatisticalReport
         }
 
         /// <summary>
-        /// 部门受理类型统计周期(宜宾原始
+        /// 部门受理类型统计周期(宜宾功能
         /// </summary>
         /// <param name="dto"></param>
         /// <returns></returns>
@@ -2395,6 +2394,28 @@ namespace Hotline.Application.StatisticalReport
             return orderData;
         }
 
+        /// <summary>
+        /// 部门受理类型统计(宜宾功能)--明细列表
+        /// </summary>
+        /// <param name="dto"></param>
+        /// <returns></returns>
+        public ISugarQueryable<Order> DepartmentAcceptanceTypeOrderListV1(DepartmentKeyWordRequest dto)
+        {
+            return _orderRepository.Queryable()
+                 .WhereIF(dto.StartTime.HasValue, x => x.StartTime >= dto.StartTime)
+                 .WhereIF(dto.EndTime.HasValue, x => x.StartTime <= dto.EndTime)
+                 .WhereIF(dto.TypeId != null && dto.TypeId == 1, x => x.IdentityType == EIdentityType.Citizen)
+                 .WhereIF(dto.TypeId != null && dto.TypeId == 2, x => x.IdentityType == EIdentityType.Enterprise)
+                 .WhereIF(!string.IsNullOrEmpty(dto.AcceptTypeCode), x => x.AcceptTypeCode == dto.AcceptTypeCode)
+                 .WhereIF(!string.IsNullOrEmpty(dto.OrgCode) && dto.OrgCode == "001", x => x.ActualHandleOrgCode == dto.OrgCode)
+                 .WhereIF(!string.IsNullOrEmpty(dto.OrgCode) && dto.OrgCode != "001" && _sessionContext.RequiredOrgId != dto.OrgCode, x => x.ActualHandleOrgCode.StartsWith(dto.OrgCode))
+                 .WhereIF(!string.IsNullOrEmpty(dto.OrgCode) && dto.OrgCode != "001" && _sessionContext.RequiredOrgId == dto.OrgCode, x => x.ActualHandleOrgCode == dto.OrgCode)
+                 .MergeTable()
+                 .LeftJoin<SystemOrganize>((x, o) => x.ActualHandleOrgCode == o.Id)
+                 .WhereIF(dto.OrgType == 1, (x, o) => o.OrgType != EOrgType.County)
+                 .WhereIF(dto.OrgType == 2, (x, o) => o.OrgType == EOrgType.County)
+                 .OrderByDescending(x => x.CreationTime);
+        }
 
         /// <summary>
         /// 受理类型统计

+ 5 - 4
src/Hotline.Application/Subscribers/DatasharingSubscriber.cs

@@ -2,7 +2,7 @@
 using FluentValidation;
 using Hotline.Application.CallCenter;
 using Hotline.Application.FlowEngine;
-using Hotline.Application.Orders;
+using Hotline.Application.OrderApp;
 using Hotline.Authentications;
 using Hotline.Caching.Interfaces;
 using Hotline.Caching.Services;
@@ -665,7 +665,8 @@ namespace Hotline.Application.Subscribers
                             }
 
                             orderVisit.OrderVisitDetails[i].VisitContent = dto.VisitContent;
-                        }
+							orderVisit.OrderVisitDetails[i].ScreenByEndTime = await _orderDomainService.GetScreenByEndTime();
+						}
 
                         await _orderVisitedDetailRepository.UpdateRangeAsync(orderVisit.OrderVisitDetails, cancellationToken);
                         //工单
@@ -759,9 +760,9 @@ namespace Hotline.Application.Subscribers
                     orgDetail.VisitOrgCode = order.ActualHandleOrgCode;
                     orgDetail.VisitOrgName = order.ActualHandleOrgName;
                     orgDetail.VisitTarget = EVisitTarget.Org;
+					orgDetail.ScreenByEndTime = await _orderDomainService.GetScreenByEndTime();
 
-
-                    orgDetail.OrgProcessingResults = satisfy;
+					orgDetail.OrgProcessingResults = satisfy;
 
                     visitedDetail.Add(orgDetail);
                     //TODO 自贡办件态度

+ 1 - 1
src/Hotline.Application/Subscribers/InternalCapSubscriber.cs

@@ -1,5 +1,5 @@
 using DotNetCore.CAP;
-using Hotline.Application.Orders;
+using Hotline.Application.OrderApp;
 using Hotline.Caching.Interfaces;
 using Hotline.Configurations;
 using Hotline.FlowEngine.Workflows;

+ 16 - 15
src/Hotline/FlowEngine/Workflows/WorkflowDomainService.cs

@@ -284,7 +284,7 @@ namespace Hotline.FlowEngine.Workflows
         /// workflow, currentStep, nextStepDefine, nextSteps
         /// </summary>
         public async Task<(Workflow, WorkflowStep, StepDefine, List<WorkflowStep>)> NextAsync(
-            NextWorkflowDto dto, 
+            NextWorkflowDto dto,
             EHandleMode handleMode = EHandleMode.Normal,
             DateTime? expiredTime = null, bool isAutoFillSummaryOpinion = false,
             Action<Workflow, WorkflowStep, StepDefine>? currentStepConfig = null,
@@ -623,8 +623,8 @@ namespace Hotline.FlowEngine.Workflows
             nextDto.WorkflowId = workflow.Id;
             nextDto.StepId = startStep.Id;
             var (_, _, _, nextSteps) =
-                await NextAsync(nextDto, 
-                    expiredTime: expiredTime, 
+                await NextAsync(nextDto,
+                    expiredTime: expiredTime,
                     isAutoFillSummaryOpinion: true,
                     newStepConfig: newStepConfig, cancellationToken: cancellationToken);
             return nextSteps;
@@ -991,13 +991,13 @@ namespace Hotline.FlowEngine.Workflows
             var newPrevStep = DuplicateStep(workflow, prevStepDefine, prevStep, EWorkflowTraceType.Previous, dto.ExpiredTime);
             newPrevStep.Assign(prevStep, EFlowAssignType.User);
 
-			////甄别退回到最开始节点到部门 todo 重构放在调用处判断  
-			//if (workflow.FlowType == EFlowType.Review && workflow.ModuleCode == WorkflowModuleConsts.OrderScreen)
-			//{
-			//	newPrevStep.FlowAssignType = newPrevStep.StepType == EStepType.Start ? EFlowAssignType.Org : prevStep.FlowAssignType;
-			//}
+            ////甄别退回到最开始节点到部门 todo 重构放在调用处判断  
+            //if (workflow.FlowType == EFlowType.Review && workflow.ModuleCode == WorkflowModuleConsts.OrderScreen)
+            //{
+            //	newPrevStep.FlowAssignType = newPrevStep.StepType == EStepType.Start ? EFlowAssignType.Org : prevStep.FlowAssignType;
+            //}
 
-			if (dto.Handler != null)
+            if (dto.Handler != null)
                 newPrevStep.Assign(dto.Handler);
 
             //await Task.Run(() => newStepConfig?.Invoke(workflow, currentStep, prevStepDefine, prevStep, newPrevStep), cancellationToken);
@@ -1051,10 +1051,10 @@ namespace Hotline.FlowEngine.Workflows
         /// <summary>
         /// 退回
         /// </summary>
-        public async Task<(Workflow workflow, WorkflowStep currentStep, StepDefine prevDefine, 
-                WorkflowStep prevStep, WorkflowStep newStep, EFlowDirection flowDirection)> 
-            PreviousAsync(PreviousWorkflowDto dto, 
-                EHandleMode handleMode = EHandleMode.Previous, 
+        public async Task<(Workflow workflow, WorkflowStep currentStep, StepDefine prevDefine,
+                WorkflowStep prevStep, WorkflowStep newStep, EFlowDirection flowDirection)>
+            PreviousAsync(PreviousWorkflowDto dto,
+                EHandleMode handleMode = EHandleMode.Previous,
                 Action<Workflow, WorkflowStep, StepDefine, WorkflowStep, WorkflowStep>? newStepConfig = null,
             CancellationToken cancellationToken = default)
         {
@@ -1402,11 +1402,12 @@ namespace Hotline.FlowEngine.Workflows
         public StepAssignInfo GetSummaryTargetFlowStepHandler(Workflow workflow, string summaryTargetStepCode)
         {
             //根据汇总对象id找到被汇总节点
-            var summaryTargetStep = workflow.Steps.FirstOrDefault(d =>
+            var summaryTargetStep = workflow.Steps.Where(d =>
                 d.StepType == EStepType.Normal &&
                 d.Code == summaryTargetStepCode &&
                 d.Status == EWorkflowStepStatus.Handled &&
-                d.IsOrigin);
+                d.IsOrigin)
+                .MaxBy(d => d.CreationTime);
             if (summaryTargetStep is null)
                 throw UserFriendlyException.SameMessage("未查询到汇总对象节点");
 

+ 1 - 1
test/Hotline.Tests/Application/OrderApplicationTest.cs

@@ -1,4 +1,4 @@
-using Hotline.Application.Orders;
+using Hotline.Application.OrderApp;
 using Hotline.Caching.Interfaces;
 using Hotline.Orders;
 using Hotline.Push.FWMessage;

+ 1 - 1
test/Hotline.Tests/Application/OrderVisitApplicationTest.cs

@@ -1,4 +1,4 @@
-using Hotline.Application.Orders;
+using Hotline.Application.OrderApp;
 using Hotline.Share.Dtos.Order;
 using Hotline.Share.Tools;
 using Shouldly;