This commit is contained in:
2021-06-23 22:38:06 +00:00
parent 74a0acfb0b
commit 90770082e2

View File

@@ -856,17 +856,56 @@ namespace AyaNova.Biz
var idList = dataListSelectedRequest.SelectedRowIds;
JArray ReportData = new JArray();
while (idList.Any())
{
var batch = idList.Take(IReportAbleObject.REPORT_DATA_BATCH_SIZE);
idList = idList.Skip(IReportAbleObject.REPORT_DATA_BATCH_SIZE).ToArray();
List<WorkOrder> batchResults = new List<WorkOrder>();
foreach (long batchId in batch)
batchResults.Add(await WorkOrderGetPartialAsync(dataListSelectedRequest.AType, batchId));
batchResults.Add(await WorkOrderGetPartialAsync(dataListSelectedRequest.AType, batchId));
//order the results back into original
var orderedList = from id in batch join z in batchResults on id equals z.Id select z;
//order the results back into original
IEnumerable<WorkOrder> orderedList=null;
switch (dataListSelectedRequest.AType)
{
case AyaType.WorkOrder:
orderedList = from id in batch join z in batchResults on id equals z.Id select z;
break;
case AyaType.WorkOrderItem:
orderedList = from id in batch join z in batchResults on id equals z.Items[0].Id select z;
break;
case AyaType.WorkOrderItemExpense:
orderedList = from id in batch join z in batchResults on id equals z.Items[0].Expenses[0].Id select z;
break;
case AyaType.WorkOrderItemLabor:
orderedList = from id in batch join z in batchResults on id equals z.Items[0].Labors[0].Id select z;
break;
case AyaType.WorkOrderItemLoan:
orderedList = from id in batch join z in batchResults on id equals z.Items[0].Loans[0].Id select z;
break;
case AyaType.WorkOrderItemPart:
orderedList = from id in batch join z in batchResults on id equals z.Items[0].Parts[0].Id select z;
break;
case AyaType.WorkOrderItemPartRequest:
orderedList = from id in batch join z in batchResults on id equals z.Items[0].PartRequests[0].Id select z;
break;
case AyaType.WorkOrderItemScheduledUser:
orderedList = from id in batch join z in batchResults on id equals z.Items[0].ScheduledUsers[0].Id select z;
break;
case AyaType.WorkOrderItemTask:
orderedList = from id in batch join z in batchResults on id equals z.Items[0].Tasks[0].Id select z;
break;
case AyaType.WorkOrderItemTravel:
orderedList = from id in batch join z in batchResults on id equals z.Items[0].Travels[0].Id select z;
break;
case AyaType.WorkOrderItemOutsideService:
orderedList = from id in batch join z in batchResults on id equals z.Items[0].OutsideServices[0].Id select z;
break;
case AyaType.WorkOrderItemUnit:
orderedList = from id in batch join z in batchResults on id equals z.Items[0].Units[0].Id select z;
break;
}
foreach (WorkOrder w in orderedList)
{