tangjiang 4 months ago
parent
commit
38f6f3a606

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

@@ -4792,11 +4792,16 @@ namespace Hotline.Api.Controllers.Bi
 
             var wfModule = await _workflowApplication.GetWorkflowModuleAsync(WorkflowModuleConsts.OrderHandle, HttpContext.RequestAborted);
             var definition = wfModule.Definition;
+            var attitudeType = EnumExts.GetDescriptions<EAttitudeType>();
+            if (_appOptions.Value.IsZiGong == false)
+            {
+                attitudeType = attitudeType.Where(m => new int[] { 2 }.Contains(m.Key) == false).ToList();
+            }
             return new Dictionary<string, dynamic>
             {
                 { "visitSatisfaction", _systemDicDataCacheManager.GetVisitSatisfaction() },
                 { "orgsOptions", items },
-                { "attitudeType", EnumExts.GetDescriptions<EAttitudeType>() },
+                { "attitudeType", attitudeType},
                 { "visitType",EnumExts.GetDescriptions<EVisitType>() },
                 { "channelOptions",_sysDicDataCacheManager.GetSysDicDataCache(TimeLimitBaseDataConsts.SourceChannel) },
                 { "acceptTypeOptions",_sysDicDataCacheManager.GetSysDicDataCache(SysDicTypeConsts.AcceptType)},

+ 4 - 0
src/Hotline.Api/Controllers/OrderController.cs

@@ -3357,6 +3357,10 @@ public class OrderController : BaseController
         var delayModel = order.OrderDelays.MaxBy(x => x.CreationTime);
         if (delayModel != null)
         {
+            //if (delayModel.IsProDelay)
+            //{
+            //    dto.ProvinceDelayString = "该工单已向省平台发送延期申请!延期状态:";
+            //}
             var workFlow = await _workflowRepository.GetAsync(delayModel.WorkflowId);
             switch (delayModel.DelayState)
             {

+ 16 - 8
src/Hotline.Repository.SqlSugar/Orders/OrderRepository.cs

@@ -1762,10 +1762,14 @@ namespace Hotline.Repository.SqlSugar.Orders
                 .WhereIF(dto.Keyword.NotNullOrEmpty(), x => x.OrderVisit.Order.Title.Contains(dto.Keyword)) // 根据关键字匹配
                 .WhereIF(dto.TypeCode != 0, x => x.OrderVisit.Order.IdentityType == (EIdentityType)dto.TypeCode)
                 //任务 218 市州通用-部门满意度明细:办件结果查询优化为多选
+                //.WhereIF(dto.OrgProcessingResults != null && dto.OrgProcessingResults.Any(),
+                //      x => dto.OrgProcessingResults.Contains(SqlFunc.JsonField(x.OrgProcessingResults, "Key")))
+                //.WhereIF(dto.OrgHandledAttitude != null && dto.OrgHandledAttitude.Any(),
+                //     x => dto.OrgHandledAttitude.Contains(SqlFunc.JsonField(x.OrgHandledAttitude, "Key")))
                 .WhereIF(dto.OrgProcessingResults != null && dto.OrgProcessingResults.Any(),
-                      x => dto.OrgProcessingResults.Contains(SqlFunc.JsonField(x.OrgProcessingResults, "Key")))
-                .WhereIF(dto.OrgHandledAttitude != null && dto.OrgHandledAttitude.Any(),
-                     x => dto.OrgHandledAttitude.Contains(SqlFunc.JsonField(x.OrgHandledAttitude, "Key")))
+                    dto.AttitudeType == EAttitudeType.ProcessingResult ?
+                    x => dto.OrgProcessingResults.Contains(SqlFunc.JsonField(x.OrgProcessingResults, "Key")) :
+                    x => dto.OrgProcessingResults.Contains(SqlFunc.JsonField(x.OrgHandledAttitude, "Key")))
                 .WhereIF(!string.IsNullOrEmpty(dto.VisitUser), x => x.OrderVisit.Employee.Name.Contains(dto.VisitUser))
                 .WhereIF(!string.IsNullOrEmpty(dto.No), x => x.OrderVisit.Order.No == dto.No)
                 .WhereIF(!string.IsNullOrEmpty(dto.Title), x => x.OrderVisit.Order.Title.Contains(dto.Title))
@@ -1893,11 +1897,15 @@ namespace Hotline.Repository.SqlSugar.Orders
                 .WhereIF(dto.OrgVisitStatisticsType.HasValue, x => x.OrderVisit.Order.FileOrgIsCenter == (dto.OrgVisitStatisticsType == EOrgVisitStatisticsType.CallCenter))
                 .WhereIF(dto.Keyword.NotNullOrEmpty(), x => x.OrderVisit.Order.Title.Contains(dto.Keyword)) // 根据关键字匹配
                 .WhereIF(dto.TypeCode != 0, x => x.OrderVisit.Order.IdentityType == (EIdentityType)dto.TypeCode)
-                //任务 218 市州通用-部门满意度明细:办件结果查询优化为多选
-                .WhereIF(dto.OrgProcessingResults != null && dto.OrgProcessingResults.Any(),
-                      x => dto.OrgProcessingResults.Contains(SqlFunc.JsonField(x.OrgProcessingResults, "Key")))
-                .WhereIF(dto.OrgHandledAttitude != null && dto.OrgHandledAttitude.Any(),
-                     x => dto.OrgHandledAttitude.Contains(SqlFunc.JsonField(x.OrgHandledAttitude, "Key")))
+                  //任务 218 市州通用-部门满意度明细:办件结果查询优化为多选
+                  //.WhereIF(dto.OrgProcessingResults != null && dto.OrgProcessingResults.Any(),
+                  //      x => dto.OrgProcessingResults.Contains(SqlFunc.JsonField(x.OrgProcessingResults, "Key")))
+                  //.WhereIF(dto.OrgHandledAttitude != null && dto.OrgHandledAttitude.Any(),
+                  //     x => dto.OrgHandledAttitude.Contains(SqlFunc.JsonField(x.OrgHandledAttitude, "Key")))
+                  .WhereIF(dto.OrgProcessingResults != null && dto.OrgProcessingResults.Any(),
+                    dto.AttitudeType == EAttitudeType.ProcessingResult ?
+                    x => dto.OrgProcessingResults.Contains(SqlFunc.JsonField(x.OrgProcessingResults, "Key")) :
+                    x => dto.OrgProcessingResults.Contains(SqlFunc.JsonField(x.OrgHandledAttitude, "Key")))
 
                 .WhereIF(!string.IsNullOrEmpty(dto.VisitUser), x => x.OrderVisit.Employee.Name.Contains(dto.VisitUser))
                 .WhereIF(!string.IsNullOrEmpty(dto.No), x => x.OrderVisit.Order.No == dto.No)

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

@@ -531,6 +531,11 @@ namespace Hotline.Share.Dtos.Order
         /// </summary>
         public string? DelayString { get; set; }
 
+        /// <summary>
+        /// 省延期
+        /// </summary>
+        public string? ProvinceDelayString { get; set; }
+
         /// <summary>
         /// 是否可退回
         /// </summary>