Explorar el Código

泸州部门办件统计表

tangjiang hace 2 semanas
padre
commit
255ecd6db7
Se han modificado 1 ficheros con 105 adiciones y 0 borrados
  1. 105 0
      src/Hotline.Application/StatisticalReport/OrderReportApplication.cs

+ 105 - 0
src/Hotline.Application/StatisticalReport/OrderReportApplication.cs

@@ -1055,6 +1055,13 @@ namespace Hotline.Application.StatisticalReport
             if (string.IsNullOrEmpty(dto.ParentOrgCode) && dto.OrgCode == _sessionContext.RequiredOrgId)
                 dto.ParentOrgCode = _sessionContext.RequiredOrgId;
 
+            bool isEmpy = false;
+            if (string.IsNullOrEmpty(dto.ParentOrgCode))
+                isEmpy = true;
+
+            if (string.IsNullOrEmpty(dto.ParentOrgCode) && string.IsNullOrEmpty(dto.OrgCode))
+                dto.ParentOrgCode = _sessionContext.RequiredOrgId;
+
             switch (dto.StatisticsType)
             {
                 case EStatisticsType.YBOrderCountNum:
@@ -1067,6 +1074,11 @@ namespace Hotline.Application.StatisticalReport
                                .WhereIF(dto.OrgCode == "001", o => o.ActualHandleOrgCode == dto.OrgCode)
                                .WhereIF(dto.OrgCode != "001" && dto.OrgCode != dto.ParentOrgCode, o => o.ActualHandleOrgCode.StartsWith(dto.OrgCode))
                                .WhereIF(dto.OrgCode != "001" && dto.OrgCode == dto.ParentOrgCode, o => o.ActualHandleOrgCode == dto.OrgCode)
+
+                            .WhereIF(dto.ParentOrgCode == "001" && isEmpy == false && string.IsNullOrEmpty(dto.OrgCode) && !string.IsNullOrEmpty(dto.ParentOrgCode),
+                            o => o.ActualHandleOrgCode == dto.ParentOrgCode)
+                            .WhereIF(dto.ParentOrgCode != "001" && string.IsNullOrEmpty(dto.OrgCode) && !string.IsNullOrEmpty(dto.ParentOrgCode),
+                            o => o.ActualHandleOrgCode.StartsWith(dto.ParentOrgCode))
                                .Select(o => new SelectOrderId { Id = o.Id })
                              .MergeTable()
                              .GroupBy(p => p.Id).MergeTable();
@@ -1081,6 +1093,11 @@ namespace Hotline.Application.StatisticalReport
                               .WhereIF(dto.OrgCode == "001", o => o.CurrentHandleOrgId == dto.OrgCode)
                               .WhereIF(dto.OrgCode != "001" && dto.OrgCode != dto.ParentOrgCode, o => o.CurrentHandleOrgId.StartsWith(dto.OrgCode))
                               .WhereIF(dto.OrgCode != "001" && dto.OrgCode == dto.ParentOrgCode, o => o.CurrentHandleOrgId == dto.OrgCode)
+                              .WhereIF(dto.ParentOrgCode == "001" && isEmpy == false && string.IsNullOrEmpty(dto.OrgCode) && !string.IsNullOrEmpty(dto.ParentOrgCode),
+                            o => o.CurrentHandleOrgId == dto.ParentOrgCode)
+                            .WhereIF(dto.ParentOrgCode != "001" && string.IsNullOrEmpty(dto.OrgCode) && !string.IsNullOrEmpty(dto.ParentOrgCode),
+                            o => o.CurrentHandleOrgId.StartsWith(dto.ParentOrgCode))
+
                                .Select(o => new SelectOrderId { Id = o.Id })
                             .MergeTable();
                     //会签在办
@@ -1109,6 +1126,11 @@ namespace Hotline.Application.StatisticalReport
                         .WhereIF(dto.OrgCode == "001", (d, o) => d.ApplyOrgCode == dto.OrgCode)
                         .WhereIF(dto.OrgCode != "001" && dto.OrgCode != dto.ParentOrgCode, (d, o) => d.ApplyOrgCode.StartsWith(dto.OrgCode))
                         .WhereIF(dto.OrgCode != "001" && dto.OrgCode == dto.ParentOrgCode, (d, o) => d.ApplyOrgCode == dto.OrgCode)
+
+                         .WhereIF(dto.ParentOrgCode == "001" && isEmpy == false && string.IsNullOrEmpty(dto.OrgCode) && !string.IsNullOrEmpty(dto.ParentOrgCode),
+                            (d, o) => d.ApplyOrgCode == dto.ParentOrgCode)
+                            .WhereIF(dto.ParentOrgCode != "001" && string.IsNullOrEmpty(dto.OrgCode) && !string.IsNullOrEmpty(dto.ParentOrgCode),
+                            (d, o) => d.ApplyOrgCode.StartsWith(dto.ParentOrgCode))
                         .OrderByDescending((d, o) => o.CreationTime)
                         .Select((d, o) => new SelectOrderId { Id = o.Id })
                        .MergeTable();
@@ -1122,6 +1144,11 @@ namespace Hotline.Application.StatisticalReport
                           .WhereIF(dto.OrgCode == "001", o => o.ActualHandleOrgCode == dto.OrgCode)
                           .WhereIF(dto.OrgCode != "001" && dto.OrgCode != dto.ParentOrgCode, o => o.ActualHandleOrgCode.StartsWith(dto.OrgCode))
                           .WhereIF(dto.OrgCode != "001" && dto.OrgCode == dto.ParentOrgCode, o => o.ActualHandleOrgCode == dto.OrgCode)
+
+                          .WhereIF(dto.ParentOrgCode == "001" && isEmpy == false && string.IsNullOrEmpty(dto.OrgCode) && !string.IsNullOrEmpty(dto.ParentOrgCode),
+                            o => o.ActualHandleOrgCode == dto.ParentOrgCode)
+                            .WhereIF(dto.ParentOrgCode != "001" && string.IsNullOrEmpty(dto.OrgCode) && !string.IsNullOrEmpty(dto.ParentOrgCode),
+                             o => o.ActualHandleOrgCode.StartsWith(dto.ParentOrgCode))
                            .Select(o => new SelectOrderId { Id = o.Id })
                         .MergeTable();
                     break;
@@ -1134,6 +1161,11 @@ namespace Hotline.Application.StatisticalReport
                            .WhereIF(dto.OrgCode == "001", o => o.CurrentHandleOrgId == dto.OrgCode)
                            .WhereIF(dto.OrgCode != "001" && dto.OrgCode != dto.ParentOrgCode, o => o.CurrentHandleOrgId.StartsWith(dto.OrgCode))
                            .WhereIF(dto.OrgCode != "001" && dto.OrgCode == dto.ParentOrgCode, o => o.CurrentHandleOrgId == dto.OrgCode)
+                            .WhereIF(dto.ParentOrgCode == "001" && isEmpy == false && string.IsNullOrEmpty(dto.OrgCode) && !string.IsNullOrEmpty(dto.ParentOrgCode),
+                            o => o.CurrentHandleOrgId == dto.ParentOrgCode)
+                            .WhereIF(dto.ParentOrgCode != "001" && string.IsNullOrEmpty(dto.OrgCode) && !string.IsNullOrEmpty(dto.ParentOrgCode),
+                             o => o.CurrentHandleOrgId.StartsWith(dto.ParentOrgCode))
+
                             .Select(o => new SelectOrderId { Id = o.Id })
                          .MergeTable();
                     break;
@@ -1149,6 +1181,10 @@ namespace Hotline.Application.StatisticalReport
                          .WhereIF(dto.OrgCode == "001", (t, o) => t.HandlerOrgId == dto.OrgCode)
                          .WhereIF(dto.OrgCode != "001" && dto.OrgCode != dto.ParentOrgCode, (t, o) => t.HandlerOrgId.StartsWith(dto.OrgCode))
                          .WhereIF(dto.OrgCode != "001" && dto.OrgCode == dto.ParentOrgCode, (t, o) => t.HandlerOrgId == dto.OrgCode)
+                         .WhereIF(dto.ParentOrgCode == "001" && isEmpy == false && string.IsNullOrEmpty(dto.OrgCode) && !string.IsNullOrEmpty(dto.ParentOrgCode),
+                          (t, o) => t.HandlerOrgId == dto.ParentOrgCode)
+                            .WhereIF(dto.ParentOrgCode != "001" && string.IsNullOrEmpty(dto.OrgCode) && !string.IsNullOrEmpty(dto.ParentOrgCode),
+                             (t, o) => t.HandlerOrgId.StartsWith(dto.ParentOrgCode))
                          .GroupBy((t, o) => o.Id)
                          .Select((t, o) => new SelectOrderId { Id = o.Id })
                          .MergeTable();
@@ -1164,6 +1200,10 @@ namespace Hotline.Application.StatisticalReport
                          .WhereIF(dto.OrgCode == "001", (t, o) => t.HandlerOrgId == dto.OrgCode)
                          .WhereIF(dto.OrgCode != "001" && dto.OrgCode != dto.ParentOrgCode, (t, o) => t.HandlerOrgId.StartsWith(dto.OrgCode))
                          .WhereIF(dto.OrgCode != "001" && dto.OrgCode == dto.ParentOrgCode, (t, o) => t.HandlerOrgId == dto.OrgCode)
+                           .WhereIF(dto.ParentOrgCode == "001" && isEmpy == false && string.IsNullOrEmpty(dto.OrgCode) && !string.IsNullOrEmpty(dto.ParentOrgCode),
+                          (t, o) => t.HandlerOrgId == dto.ParentOrgCode)
+                            .WhereIF(dto.ParentOrgCode != "001" && string.IsNullOrEmpty(dto.OrgCode) && !string.IsNullOrEmpty(dto.ParentOrgCode),
+                             (t, o) => t.HandlerOrgId.StartsWith(dto.ParentOrgCode))
                          .GroupBy((t, o) => o.Id)
                          .Select((t, o) => new SelectOrderId { Id = o.Id })
                          .MergeTable();
@@ -1178,6 +1218,11 @@ namespace Hotline.Application.StatisticalReport
                          .WhereIF(dto.OrgCode == "001", o => o.ActualHandleOrgCode == dto.OrgCode)
                          .WhereIF(dto.OrgCode != "001" && dto.OrgCode != dto.ParentOrgCode, o => o.ActualHandleOrgCode.StartsWith(dto.OrgCode))
                          .WhereIF(dto.OrgCode != "001" && dto.OrgCode == dto.ParentOrgCode, o => o.ActualHandleOrgCode == dto.OrgCode)
+                      .WhereIF(dto.ParentOrgCode == "001" && isEmpy == false && string.IsNullOrEmpty(dto.OrgCode) && !string.IsNullOrEmpty(dto.ParentOrgCode),
+                            o => o.ActualHandleOrgCode == dto.ParentOrgCode)
+                            .WhereIF(dto.ParentOrgCode != "001" && string.IsNullOrEmpty(dto.OrgCode) && !string.IsNullOrEmpty(dto.ParentOrgCode),
+                             o => o.ActualHandleOrgCode.StartsWith(dto.ParentOrgCode))
+
                           .Select(o => new SelectOrderId { Id = o.Id })
                           .MergeTable();
                     //待办超期
@@ -1189,6 +1234,11 @@ namespace Hotline.Application.StatisticalReport
                            .WhereIF(dto.OrgCode == "001", o => o.CurrentHandleOrgId == dto.OrgCode)
                            .WhereIF(dto.OrgCode != "001" && dto.OrgCode != dto.ParentOrgCode, o => o.CurrentHandleOrgId.StartsWith(dto.OrgCode))
                            .WhereIF(dto.OrgCode != "001" && dto.OrgCode == dto.ParentOrgCode, o => o.CurrentHandleOrgId == dto.OrgCode)
+                     .WhereIF(dto.ParentOrgCode == "001" && isEmpy == false && string.IsNullOrEmpty(dto.OrgCode) && !string.IsNullOrEmpty(dto.ParentOrgCode),
+                            o => o.CurrentHandleOrgId == dto.ParentOrgCode)
+                            .WhereIF(dto.ParentOrgCode != "001" && string.IsNullOrEmpty(dto.OrgCode) && !string.IsNullOrEmpty(dto.ParentOrgCode),
+                             o => o.CurrentHandleOrgId.StartsWith(dto.ParentOrgCode))
+
                             .Select(o => new SelectOrderId { Id = o.Id })
                          .MergeTable();
                     //会签已办超期
@@ -1203,6 +1253,10 @@ namespace Hotline.Application.StatisticalReport
                          .WhereIF(dto.OrgCode == "001", (t, o) => t.HandlerOrgId == dto.OrgCode)
                          .WhereIF(dto.OrgCode != "001" && dto.OrgCode != dto.ParentOrgCode, (t, o) => t.HandlerOrgId.StartsWith(dto.OrgCode))
                          .WhereIF(dto.OrgCode != "001" && dto.OrgCode == dto.ParentOrgCode, (t, o) => t.HandlerOrgId == dto.OrgCode)
+                                .WhereIF(dto.ParentOrgCode == "001" && isEmpy == false && string.IsNullOrEmpty(dto.OrgCode) && !string.IsNullOrEmpty(dto.ParentOrgCode),
+                            (t, o) => t.HandlerOrgId == dto.ParentOrgCode)
+                            .WhereIF(dto.ParentOrgCode != "001" && string.IsNullOrEmpty(dto.OrgCode) && !string.IsNullOrEmpty(dto.ParentOrgCode),
+                             (t, o) => t.HandlerOrgId.StartsWith(dto.ParentOrgCode))
                          .GroupBy((t, o) => o.Id)
                          .Select((t, o) => new SelectOrderId { Id = o.Id })
                          .MergeTable();
@@ -1216,6 +1270,11 @@ namespace Hotline.Application.StatisticalReport
                           .WhereIF(dto.OrgCode == "001", (t, o) => t.HandlerOrgId == dto.OrgCode)
                           .WhereIF(dto.OrgCode != "001" && dto.OrgCode != dto.ParentOrgCode, (t, o) => t.HandlerOrgId.StartsWith(dto.OrgCode))
                           .WhereIF(dto.OrgCode != "001" && dto.OrgCode == dto.ParentOrgCode, (t, o) => t.HandlerOrgId == dto.OrgCode)
+
+                          .WhereIF(dto.ParentOrgCode == "001" && isEmpy == false && string.IsNullOrEmpty(dto.OrgCode) && !string.IsNullOrEmpty(dto.ParentOrgCode),
+                            (t, o) => t.HandlerOrgId == dto.ParentOrgCode)
+                            .WhereIF(dto.ParentOrgCode != "001" && string.IsNullOrEmpty(dto.OrgCode) && !string.IsNullOrEmpty(dto.ParentOrgCode),
+                             (t, o) => t.HandlerOrgId.StartsWith(dto.ParentOrgCode))
                           .GroupBy((t, o) => o.Id)
                           .Select((t, o) => new SelectOrderId { Id = o.Id })
                           .MergeTable();
@@ -1233,6 +1292,10 @@ namespace Hotline.Application.StatisticalReport
                             .WhereIF(dto.OrgCode == "001", (t, o) => t.HandlerOrgId == dto.OrgCode)
                          .WhereIF(dto.OrgCode != "001" && dto.OrgCode != dto.ParentOrgCode, (t, o) => t.HandlerOrgId.StartsWith(dto.OrgCode))
                          .WhereIF(dto.OrgCode != "001" && dto.OrgCode == dto.ParentOrgCode, (t, o) => t.HandlerOrgId == dto.OrgCode)
+                          .WhereIF(dto.ParentOrgCode == "001" && isEmpy == false && string.IsNullOrEmpty(dto.OrgCode) && !string.IsNullOrEmpty(dto.ParentOrgCode),
+                            (t, o) => t.HandlerOrgId == dto.ParentOrgCode)
+                            .WhereIF(dto.ParentOrgCode != "001" && string.IsNullOrEmpty(dto.OrgCode) && !string.IsNullOrEmpty(dto.ParentOrgCode),
+                             (t, o) => t.HandlerOrgId.StartsWith(dto.ParentOrgCode))
                             .GroupBy((t, o) => o.Id)
                             .Select((t, o) => new SelectOrderId { Id = o.Id })
                             .MergeTable();
@@ -1248,6 +1311,11 @@ namespace Hotline.Application.StatisticalReport
                              .WhereIF(dto.OrgCode == "001", (t, o) => t.HandlerOrgId == dto.OrgCode)
                          .WhereIF(dto.OrgCode != "001" && dto.OrgCode != dto.ParentOrgCode, (t, o) => t.HandlerOrgId.StartsWith(dto.OrgCode))
                          .WhereIF(dto.OrgCode != "001" && dto.OrgCode == dto.ParentOrgCode, (t, o) => t.HandlerOrgId == dto.OrgCode)
+                          .WhereIF(dto.ParentOrgCode == "001" && isEmpy == false && string.IsNullOrEmpty(dto.OrgCode) && !string.IsNullOrEmpty(dto.ParentOrgCode),
+                            (t, o) => t.HandlerOrgId == dto.ParentOrgCode)
+                            .WhereIF(dto.ParentOrgCode != "001" && string.IsNullOrEmpty(dto.OrgCode) && !string.IsNullOrEmpty(dto.ParentOrgCode),
+                             (t, o) => t.HandlerOrgId.StartsWith(dto.ParentOrgCode))
+
                              .GroupBy((t, o) => o.Id)
                              .Select((t, o) => new SelectOrderId { Id = o.Id })
                              .MergeTable();
@@ -1261,6 +1329,10 @@ namespace Hotline.Application.StatisticalReport
                             .WhereIF(dto.OrgCode == "001", o => o.ActualHandleOrgCode == dto.OrgCode)
                             .WhereIF(dto.OrgCode != "001" && dto.OrgCode != dto.ParentOrgCode, o => o.ActualHandleOrgCode.StartsWith(dto.OrgCode))
                             .WhereIF(dto.OrgCode != "001" && dto.OrgCode == dto.ParentOrgCode, o => o.ActualHandleOrgCode == dto.OrgCode)
+                            .WhereIF(dto.ParentOrgCode == "001" && isEmpy == false && string.IsNullOrEmpty(dto.OrgCode) && !string.IsNullOrEmpty(dto.ParentOrgCode),
+                          o => o.ActualHandleOrgCode == dto.ParentOrgCode)
+                            .WhereIF(dto.ParentOrgCode != "001" && string.IsNullOrEmpty(dto.OrgCode) && !string.IsNullOrEmpty(dto.ParentOrgCode),
+                            o => o.ActualHandleOrgCode.StartsWith(dto.ParentOrgCode))
                              .Select(o => new SelectOrderId { Id = o.Id })
                           .MergeTable();
                     break;
@@ -1273,6 +1345,10 @@ namespace Hotline.Application.StatisticalReport
                           .WhereIF(dto.OrgCode == "001", o => o.ActualHandleOrgCode == dto.OrgCode)
                             .WhereIF(dto.OrgCode != "001" && dto.OrgCode != dto.ParentOrgCode, o => o.ActualHandleOrgCode.StartsWith(dto.OrgCode))
                             .WhereIF(dto.OrgCode != "001" && dto.OrgCode == dto.ParentOrgCode, o => o.ActualHandleOrgCode == dto.OrgCode)
+                            .WhereIF(dto.ParentOrgCode == "001" && isEmpy == false && string.IsNullOrEmpty(dto.OrgCode) && !string.IsNullOrEmpty(dto.ParentOrgCode),
+                          o => o.ActualHandleOrgCode == dto.ParentOrgCode)
+                            .WhereIF(dto.ParentOrgCode != "001" && string.IsNullOrEmpty(dto.OrgCode) && !string.IsNullOrEmpty(dto.ParentOrgCode),
+                            o => o.ActualHandleOrgCode.StartsWith(dto.ParentOrgCode))
                            .Select(o => new SelectOrderId { Id = o.Id })
                         .MergeTable();
                     break;
@@ -1285,6 +1361,10 @@ namespace Hotline.Application.StatisticalReport
                          .WhereIF(dto.OrgCode == "001", o => o.ActualHandleOrgCode == dto.OrgCode)
                             .WhereIF(dto.OrgCode != "001" && dto.OrgCode != dto.ParentOrgCode, o => o.ActualHandleOrgCode.StartsWith(dto.OrgCode))
                             .WhereIF(dto.OrgCode != "001" && dto.OrgCode == dto.ParentOrgCode, o => o.ActualHandleOrgCode == dto.OrgCode)
+                            .WhereIF(dto.ParentOrgCode == "001" && isEmpy == false && string.IsNullOrEmpty(dto.OrgCode) && !string.IsNullOrEmpty(dto.ParentOrgCode),
+                          o => o.ActualHandleOrgCode == dto.ParentOrgCode)
+                            .WhereIF(dto.ParentOrgCode != "001" && string.IsNullOrEmpty(dto.OrgCode) && !string.IsNullOrEmpty(dto.ParentOrgCode),
+                            o => o.ActualHandleOrgCode.StartsWith(dto.ParentOrgCode))
                           .Select(o => new SelectOrderId { Id = o.Id })
                        .MergeTable();
                     break;
@@ -1297,6 +1377,10 @@ namespace Hotline.Application.StatisticalReport
                          .WhereIF(dto.OrgCode == "001", o => o.ActualHandleOrgCode == dto.OrgCode)
                             .WhereIF(dto.OrgCode != "001" && dto.OrgCode != dto.ParentOrgCode, o => o.ActualHandleOrgCode.StartsWith(dto.OrgCode))
                             .WhereIF(dto.OrgCode != "001" && dto.OrgCode == dto.ParentOrgCode, o => o.ActualHandleOrgCode == dto.OrgCode)
+                            .WhereIF(dto.ParentOrgCode == "001" && isEmpy == false && string.IsNullOrEmpty(dto.OrgCode) && !string.IsNullOrEmpty(dto.ParentOrgCode),
+                          o => o.ActualHandleOrgCode == dto.ParentOrgCode)
+                            .WhereIF(dto.ParentOrgCode != "001" && string.IsNullOrEmpty(dto.OrgCode) && !string.IsNullOrEmpty(dto.ParentOrgCode),
+                            o => o.ActualHandleOrgCode.StartsWith(dto.ParentOrgCode))
                           .Select(o => new SelectOrderId { Id = o.Id })
                        .MergeTable();
                     break;
@@ -1309,6 +1393,11 @@ namespace Hotline.Application.StatisticalReport
                         .WhereIF(dto.OrgCode == "001", o => o.ActualHandleOrgCode == dto.OrgCode)
                             .WhereIF(dto.OrgCode != "001" && dto.OrgCode != dto.ParentOrgCode, o => o.ActualHandleOrgCode.StartsWith(dto.OrgCode))
                             .WhereIF(dto.OrgCode != "001" && dto.OrgCode == dto.ParentOrgCode, o => o.ActualHandleOrgCode == dto.OrgCode)
+                            .WhereIF(dto.ParentOrgCode == "001" && isEmpy == false && string.IsNullOrEmpty(dto.OrgCode) && !string.IsNullOrEmpty(dto.ParentOrgCode),
+                          o => o.ActualHandleOrgCode == dto.ParentOrgCode)
+                            .WhereIF(dto.ParentOrgCode != "001" && string.IsNullOrEmpty(dto.OrgCode) && !string.IsNullOrEmpty(dto.ParentOrgCode),
+                            o => o.ActualHandleOrgCode.StartsWith(dto.ParentOrgCode))
+
                          .Select(o => new SelectOrderId { Id = o.Id })
                       .MergeTable();
                     break;
@@ -1322,6 +1411,10 @@ namespace Hotline.Application.StatisticalReport
                        .WhereIF(dto.OrgCode == "001", (d, o) => d.CreatorOrgId == dto.OrgCode)
                        .WhereIF(dto.OrgCode != "001" && dto.OrgCode != dto.ParentOrgCode, (d, o) => d.CreatorOrgId.StartsWith(dto.OrgCode))
                        .WhereIF(dto.OrgCode != "001" && dto.OrgCode == dto.ParentOrgCode, (d, o) => d.CreatorOrgId == dto.OrgCode)
+                        .WhereIF(dto.ParentOrgCode == "001" && isEmpy == false && string.IsNullOrEmpty(dto.OrgCode) && !string.IsNullOrEmpty(dto.ParentOrgCode),
+                         (d, o) => d.CreatorOrgId == dto.ParentOrgCode)
+                            .WhereIF(dto.ParentOrgCode != "001" && string.IsNullOrEmpty(dto.OrgCode) && !string.IsNullOrEmpty(dto.ParentOrgCode),
+                           (d, o) => d.CreatorOrgId.StartsWith(dto.ParentOrgCode))
                         .Select((d, o) => new SelectOrderId { Id = o.Id })
                        .MergeTable();
                     break;
@@ -1335,6 +1428,10 @@ namespace Hotline.Application.StatisticalReport
                        .WhereIF(dto.OrgCode == "001", (d, o) => d.CreatorOrgId == dto.OrgCode)
                        .WhereIF(dto.OrgCode != "001" && dto.OrgCode != dto.ParentOrgCode, (d, o) => d.CreatorOrgId.StartsWith(dto.OrgCode))
                        .WhereIF(dto.OrgCode != "001" && dto.OrgCode == dto.ParentOrgCode, (d, o) => d.CreatorOrgId == dto.OrgCode)
+                        .WhereIF(dto.ParentOrgCode == "001" && isEmpy == false && string.IsNullOrEmpty(dto.OrgCode) && !string.IsNullOrEmpty(dto.ParentOrgCode),
+                         (d, o) => d.CreatorOrgId == dto.ParentOrgCode)
+                            .WhereIF(dto.ParentOrgCode != "001" && string.IsNullOrEmpty(dto.OrgCode) && !string.IsNullOrEmpty(dto.ParentOrgCode),
+                           (d, o) => d.CreatorOrgId.StartsWith(dto.ParentOrgCode))
                         .Select((d, o) => new SelectOrderId { Id = o.Id })
                        .MergeTable();
                     break;
@@ -1348,6 +1445,10 @@ namespace Hotline.Application.StatisticalReport
                        .WhereIF(dto.OrgCode == "001", (d, o) => d.CreatorOrgId == dto.OrgCode)
                        .WhereIF(dto.OrgCode != "001" && dto.OrgCode != dto.ParentOrgCode, (d, o) => d.CreatorOrgId.StartsWith(dto.OrgCode))
                        .WhereIF(dto.OrgCode != "001" && dto.OrgCode == dto.ParentOrgCode, (d, o) => d.CreatorOrgId == dto.OrgCode)
+                        .WhereIF(dto.ParentOrgCode == "001" && isEmpy == false && string.IsNullOrEmpty(dto.OrgCode) && !string.IsNullOrEmpty(dto.ParentOrgCode),
+                         (d, o) => d.CreatorOrgId == dto.ParentOrgCode)
+                            .WhereIF(dto.ParentOrgCode != "001" && string.IsNullOrEmpty(dto.OrgCode) && !string.IsNullOrEmpty(dto.ParentOrgCode),
+                           (d, o) => d.CreatorOrgId.StartsWith(dto.ParentOrgCode))
                         .Select((d, o) => new SelectOrderId { Id = o.Id })
                        .MergeTable();
                     break;
@@ -1361,6 +1462,10 @@ namespace Hotline.Application.StatisticalReport
                       .WhereIF(dto.OrgCode == "001", (d, o) => d.CreatorOrgId == dto.OrgCode)
                        .WhereIF(dto.OrgCode != "001" && dto.OrgCode != dto.ParentOrgCode, (d, o) => d.CreatorOrgId.StartsWith(dto.OrgCode))
                        .WhereIF(dto.OrgCode != "001" && dto.OrgCode == dto.ParentOrgCode, (d, o) => d.CreatorOrgId == dto.OrgCode)
+                        .WhereIF(dto.ParentOrgCode == "001" && isEmpy == false && string.IsNullOrEmpty(dto.OrgCode) && !string.IsNullOrEmpty(dto.ParentOrgCode),
+                         (d, o) => d.CreatorOrgId == dto.ParentOrgCode)
+                            .WhereIF(dto.ParentOrgCode != "001" && string.IsNullOrEmpty(dto.OrgCode) && !string.IsNullOrEmpty(dto.ParentOrgCode),
+                           (d, o) => d.CreatorOrgId.StartsWith(dto.ParentOrgCode))
                         .Select((d, o) => new SelectOrderId { Id = o.Id })
                        .MergeTable();
                     break;