This commit is contained in:
2021-12-23 19:16:11 +00:00
parent d8fdd08741
commit 9c6b6e52c8
31 changed files with 71 additions and 20 deletions

View File

@@ -5,7 +5,6 @@ using Microsoft.AspNetCore.Mvc;
using Microsoft.AspNetCore.Routing; using Microsoft.AspNetCore.Routing;
using Microsoft.AspNetCore.Authorization; using Microsoft.AspNetCore.Authorization;
using Microsoft.Extensions.Logging; using Microsoft.Extensions.Logging;
using Microsoft.EntityFrameworkCore;
using AyaNova.Models; using AyaNova.Models;
using AyaNova.Api.ControllerHelpers; using AyaNova.Api.ControllerHelpers;
using AyaNova.Biz; using AyaNova.Biz;

View File

@@ -486,6 +486,7 @@ MULTIPLE discount / markup ITEMS
JArray ReportData = new JArray(); JArray ReportData = new JArray();
while (idList.Any()) while (idList.Any())
{ {
var batch = idList.Take(IReportAbleObject.REPORT_DATA_BATCH_SIZE); var batch = idList.Take(IReportAbleObject.REPORT_DATA_BATCH_SIZE);
idList = idList.Skip(IReportAbleObject.REPORT_DATA_BATCH_SIZE).ToArray(); idList = idList.Skip(IReportAbleObject.REPORT_DATA_BATCH_SIZE).ToArray();
//query for this batch, comes back in db natural order unfortunately //query for this batch, comes back in db natural order unfortunately
@@ -509,6 +510,8 @@ MULTIPLE discount / markup ITEMS
var PreTrans = await TranslationBiz.GetSubsetStaticAsync(new List<string> { "TimeSpanDays", "TimeSpanHours", "TimeSpanMinutes", "TimeSpanSeconds" }, UserTranslationId); var PreTrans = await TranslationBiz.GetSubsetStaticAsync(new List<string> { "TimeSpanDays", "TimeSpanHours", "TimeSpanMinutes", "TimeSpanSeconds" }, UserTranslationId);
foreach (Contract w in orderedList) foreach (Contract w in orderedList)
{ {
if (DateTime.UtcNow > renderTimeOutExpiry)
throw new ReportRenderTimeOutException();
await PopulateVizFields(w, ContractOverrideTypeEnumList, PreTrans); await PopulateVizFields(w, ContractOverrideTypeEnumList, PreTrans);
var jo = JObject.FromObject(w); var jo = JObject.FromObject(w);
if (!JsonUtil.JTokenIsNullOrEmpty(jo["CustomFields"])) if (!JsonUtil.JTokenIsNullOrEmpty(jo["CustomFields"]))
@@ -662,7 +665,7 @@ MULTIPLE discount / markup ITEMS
public async Task HandlePotentialNotificationEvent(AyaEvent ayaEvent, ICoreBizObjectModel proposedObj, ICoreBizObjectModel currentObj = null) public async Task HandlePotentialNotificationEvent(AyaEvent ayaEvent, ICoreBizObjectModel proposedObj, ICoreBizObjectModel currentObj = null)
{ {
ILogger log = AyaNova.Util.ApplicationLogging.CreateLogger<CustomerBiz>(); ILogger log = AyaNova.Util.ApplicationLogging.CreateLogger<CustomerBiz>();
if(ServerBootConfig.SEEDING || ServerBootConfig.MIGRATING) return; if (ServerBootConfig.SEEDING || ServerBootConfig.MIGRATING) return;
log.LogDebug($"HandlePotentialNotificationEvent processing: [AyaType:{this.BizType}, AyaEvent:{ayaEvent}]"); log.LogDebug($"HandlePotentialNotificationEvent processing: [AyaType:{this.BizType}, AyaEvent:{ayaEvent}]");
bool isNew = currentObj == null; bool isNew = currentObj == null;

View File

@@ -354,6 +354,8 @@ namespace AyaNova.Biz
foreach (Customer w in orderedList) foreach (Customer w in orderedList)
{ {
if (DateTime.UtcNow > renderTimeOutExpiry)
throw new ReportRenderTimeOutException();
await PopulateVizFields(w); await PopulateVizFields(w);
var jo = JObject.FromObject(w); var jo = JObject.FromObject(w);
if (!JsonUtil.JTokenIsNullOrEmpty(jo["CustomFields"])) if (!JsonUtil.JTokenIsNullOrEmpty(jo["CustomFields"]))

View File

@@ -194,6 +194,8 @@ namespace AyaNova.Biz
var orderedList = from id in batch join z in batchResults on id equals z.Id select z; var orderedList = from id in batch join z in batchResults on id equals z.Id select z;
foreach (CustomerNote w in orderedList) foreach (CustomerNote w in orderedList)
{ {
if (DateTime.UtcNow > renderTimeOutExpiry)
throw new ReportRenderTimeOutException();
await PopulateVizFields(w); await PopulateVizFields(w);
var jo = JObject.FromObject(w); var jo = JObject.FromObject(w);
ReportData.Add(jo); ReportData.Add(jo);
@@ -258,7 +260,7 @@ namespace AyaNova.Biz
// //
public async Task HandlePotentialNotificationEvent(AyaEvent ayaEvent, ICoreBizObjectModel proposedObj, ICoreBizObjectModel currentObj = null) public async Task HandlePotentialNotificationEvent(AyaEvent ayaEvent, ICoreBizObjectModel proposedObj, ICoreBizObjectModel currentObj = null)
{ {
if(ServerBootConfig.SEEDING || ServerBootConfig.MIGRATING) return; if (ServerBootConfig.SEEDING || ServerBootConfig.MIGRATING) return;
ILogger log = AyaNova.Util.ApplicationLogging.CreateLogger<ProjectBiz>(); ILogger log = AyaNova.Util.ApplicationLogging.CreateLogger<ProjectBiz>();
log.LogDebug($"HandlePotentialNotificationEvent processing: [AyaType:{this.BizType}, AyaEvent:{ayaEvent}]"); log.LogDebug($"HandlePotentialNotificationEvent processing: [AyaType:{this.BizType}, AyaEvent:{ayaEvent}]");

View File

@@ -317,6 +317,8 @@ namespace AyaNova.Biz
foreach (CustomerServiceRequest w in orderedList) foreach (CustomerServiceRequest w in orderedList)
{ {
if (DateTime.UtcNow > renderTimeOutExpiry)
throw new ReportRenderTimeOutException();
await PopulateVizFields(w, CustomerServiceRequestStatusEnumList, CustomerServiceRequestPriorityEnumList); await PopulateVizFields(w, CustomerServiceRequestStatusEnumList, CustomerServiceRequestPriorityEnumList);
var jo = JObject.FromObject(w); var jo = JObject.FromObject(w);
if (!JsonUtil.JTokenIsNullOrEmpty(jo["CustomFields"])) if (!JsonUtil.JTokenIsNullOrEmpty(jo["CustomFields"]))

View File

@@ -300,6 +300,8 @@ namespace AyaNova.Biz
var orderedList = from id in batch join z in batchResults on id equals z.Id select z; var orderedList = from id in batch join z in batchResults on id equals z.Id select z;
foreach (HeadOffice w in orderedList) foreach (HeadOffice w in orderedList)
{ {
if (DateTime.UtcNow > renderTimeOutExpiry)
throw new ReportRenderTimeOutException();
await PopulateVizFields(w); await PopulateVizFields(w);
var jo = JObject.FromObject(w); var jo = JObject.FromObject(w);
if (!JsonUtil.JTokenIsNullOrEmpty(jo["CustomFields"])) if (!JsonUtil.JTokenIsNullOrEmpty(jo["CustomFields"]))

View File

@@ -287,6 +287,8 @@ namespace AyaNova.Biz
var orderedList = from id in batch join z in batchResults on id equals z.Id select z; var orderedList = from id in batch join z in batchResults on id equals z.Id select z;
foreach (LoanUnit w in orderedList) foreach (LoanUnit w in orderedList)
{ {
if (DateTime.UtcNow > renderTimeOutExpiry)
throw new ReportRenderTimeOutException();
await PopulateVizFields(w); await PopulateVizFields(w);
var jo = JObject.FromObject(w); var jo = JObject.FromObject(w);
if (!JsonUtil.JTokenIsNullOrEmpty(jo["CustomFields"])) if (!JsonUtil.JTokenIsNullOrEmpty(jo["CustomFields"]))

View File

@@ -292,6 +292,8 @@ namespace AyaNova.Biz
var orderedList = from id in batch join z in batchResults on id equals z.Id select z; var orderedList = from id in batch join z in batchResults on id equals z.Id select z;
foreach (Memo w in orderedList) foreach (Memo w in orderedList)
{ {
if (DateTime.UtcNow > renderTimeOutExpiry)
throw new ReportRenderTimeOutException();
await PopulateVizFields(w); await PopulateVizFields(w);
var jo = JObject.FromObject(w); var jo = JObject.FromObject(w);
if (!JsonUtil.JTokenIsNullOrEmpty(jo["CustomFields"])) if (!JsonUtil.JTokenIsNullOrEmpty(jo["CustomFields"]))

View File

@@ -465,9 +465,9 @@ namespace AyaNova.Biz
private async Task AutoSetAddressAsync(PM newObj) private async Task AutoSetAddressAsync(PM newObj)
{ {
if(!string.IsNullOrWhiteSpace(newObj.PostAddress) || !string.IsNullOrWhiteSpace(newObj.Address)) if (!string.IsNullOrWhiteSpace(newObj.PostAddress) || !string.IsNullOrWhiteSpace(newObj.Address))
return; return;
if (newObj.CustomerId == 0) if (newObj.CustomerId == 0)
return; return;
@@ -831,6 +831,8 @@ namespace AyaNova.Biz
foreach (PM w in batchResults) foreach (PM w in batchResults)
{ {
if (DateTime.UtcNow > renderTimeOutExpiry)
throw new ReportRenderTimeOutException();
var jo = JObject.FromObject(w); var jo = JObject.FromObject(w);
//PM header custom fields //PM header custom fields
@@ -1348,7 +1350,7 @@ namespace AyaNova.Biz
// //
private async Task ItemPopulateVizFields(PMItem o, bool populateForReporting) private async Task ItemPopulateVizFields(PMItem o, bool populateForReporting)
{ {
if (o.WorkOrderItemStatusId != null) if (o.WorkOrderItemStatusId != null)
{ {
var StatusInfo = await ct.WorkOrderItemStatus.AsNoTracking().FirstOrDefaultAsync(x => x.Id == o.WorkOrderItemStatusId); var StatusInfo = await ct.WorkOrderItemStatus.AsNoTracking().FirstOrDefaultAsync(x => x.Id == o.WorkOrderItemStatusId);
o.WorkOrderItemStatusNameViz = StatusInfo.Name; o.WorkOrderItemStatusNameViz = StatusInfo.Name;

View File

@@ -340,6 +340,8 @@ namespace AyaNova.Biz
var orderedList = from id in batch join z in batchResults on id equals z.Id select z; var orderedList = from id in batch join z in batchResults on id equals z.Id select z;
foreach (PartAssembly w in orderedList) foreach (PartAssembly w in orderedList)
{ {
if (DateTime.UtcNow > renderTimeOutExpiry)
throw new ReportRenderTimeOutException();
await PopulateVizFields(w); await PopulateVizFields(w);
var jo = JObject.FromObject(w); var jo = JObject.FromObject(w);
if (!JsonUtil.JTokenIsNullOrEmpty(jo["CustomFields"])) if (!JsonUtil.JTokenIsNullOrEmpty(jo["CustomFields"]))

View File

@@ -514,6 +514,8 @@ namespace AyaNova.Biz
var orderedList = from id in batch join z in batchResults on id equals z.Id select z; var orderedList = from id in batch join z in batchResults on id equals z.Id select z;
foreach (Part w in orderedList) foreach (Part w in orderedList)
{ {
if (DateTime.UtcNow > renderTimeOutExpiry)
throw new ReportRenderTimeOutException();
await PopulateVizFields(w); await PopulateVizFields(w);
var jo = JObject.FromObject(w); var jo = JObject.FromObject(w);
if (!JsonUtil.JTokenIsNullOrEmpty(jo["CustomFields"])) if (!JsonUtil.JTokenIsNullOrEmpty(jo["CustomFields"]))

View File

@@ -279,6 +279,8 @@ namespace AyaNova.Biz
foreach (PartInventory w in orderedList) foreach (PartInventory w in orderedList)
{ {
if (DateTime.UtcNow > renderTimeOutExpiry)
throw new ReportRenderTimeOutException();
await PopulateVizFields(w, AyaTypesEnumList, command); await PopulateVizFields(w, AyaTypesEnumList, command);
var jo = JObject.FromObject(w); var jo = JObject.FromObject(w);
if (!JsonUtil.JTokenIsNullOrEmpty(jo["CustomFields"])) if (!JsonUtil.JTokenIsNullOrEmpty(jo["CustomFields"]))

View File

@@ -53,22 +53,19 @@ namespace AyaNova.Biz
StringUtil.TrimTypeName(typeof(AyaType).ToString()), StringUtil.TrimTypeName(typeof(AyaType).ToString()),
UserTranslationId, UserTranslationId,
CurrentUserRoles); CurrentUserRoles);
// using (var command = ct.Database.GetDbConnection().CreateCommand())
// {
// ct.Database.OpenConnection();
foreach (ViewPartInventoryList w in orderedList) foreach (ViewPartInventoryList w in orderedList)
{ {
//await PopulateVizFields(w, AyaTypesEnumList, command); if (DateTime.UtcNow > renderTimeOutExpiry)
throw new ReportRenderTimeOutException();
var jo = JObject.FromObject(w); var jo = JObject.FromObject(w);
ReportData.Add(jo); ReportData.Add(jo);
} }
//}
} }
return ReportData; return ReportData;
} }
//////////////////////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////////////////////////
// IMPORT EXPORT // IMPORT EXPORT

View File

@@ -53,17 +53,16 @@ namespace AyaNova.Biz
StringUtil.TrimTypeName(typeof(AyaType).ToString()), StringUtil.TrimTypeName(typeof(AyaType).ToString()),
UserTranslationId, UserTranslationId,
CurrentUserRoles); CurrentUserRoles);
// using (var command = ct.Database.GetDbConnection().CreateCommand())
// {
// ct.Database.OpenConnection();
foreach (ViewPartInventoryRequestList w in orderedList) foreach (ViewPartInventoryRequestList w in orderedList)
{ {
//await PopulateVizFields(w, AyaTypesEnumList, command); if (DateTime.UtcNow > renderTimeOutExpiry)
throw new ReportRenderTimeOutException();
var jo = JObject.FromObject(w); var jo = JObject.FromObject(w);
ReportData.Add(jo); ReportData.Add(jo);
} }
//}
} }
return ReportData; return ReportData;
} }

View File

@@ -299,6 +299,8 @@ namespace AyaNova.Biz
var orderedList = from id in batch join z in batchResults on id equals z.Id select z; var orderedList = from id in batch join z in batchResults on id equals z.Id select z;
foreach (PartWarehouse w in orderedList) foreach (PartWarehouse w in orderedList)
{ {
if (DateTime.UtcNow > renderTimeOutExpiry)
throw new ReportRenderTimeOutException();
var jo = JObject.FromObject(w); var jo = JObject.FromObject(w);
if (!JsonUtil.JTokenIsNullOrEmpty(jo["CustomFields"])) if (!JsonUtil.JTokenIsNullOrEmpty(jo["CustomFields"]))
jo["CustomFields"] = JObject.Parse((string)jo["CustomFields"]); jo["CustomFields"] = JObject.Parse((string)jo["CustomFields"]);

View File

@@ -288,6 +288,8 @@ namespace AyaNova.Biz
var orderedList = from id in batch join z in batchResults on id equals z.Id select z; var orderedList = from id in batch join z in batchResults on id equals z.Id select z;
foreach (Project w in orderedList) foreach (Project w in orderedList)
{ {
if (DateTime.UtcNow > renderTimeOutExpiry)
throw new ReportRenderTimeOutException();
await PopulateVizFields(w); await PopulateVizFields(w);
var jo = JObject.FromObject(w); var jo = JObject.FromObject(w);
if (!JsonUtil.JTokenIsNullOrEmpty(jo["CustomFields"])) if (!JsonUtil.JTokenIsNullOrEmpty(jo["CustomFields"]))

View File

@@ -792,6 +792,8 @@ namespace AyaNova.Biz
var orderedList = from id in batch join z in batchResults on id equals z.Id select z; var orderedList = from id in batch join z in batchResults on id equals z.Id select z;
foreach (PurchaseOrder w in orderedList) foreach (PurchaseOrder w in orderedList)
{ {
if (DateTime.UtcNow > renderTimeOutExpiry)
throw new ReportRenderTimeOutException();
await SetDisplayFields(w, true); await SetDisplayFields(w, true);
var jo = JObject.FromObject(w); var jo = JObject.FromObject(w);
if (!JsonUtil.JTokenIsNullOrEmpty(jo["CustomFields"])) if (!JsonUtil.JTokenIsNullOrEmpty(jo["CustomFields"]))

View File

@@ -806,6 +806,8 @@ namespace AyaNova.Biz
foreach (Quote w in batchResults) foreach (Quote w in batchResults)
{ {
if (DateTime.UtcNow > renderTimeOutExpiry)
throw new ReportRenderTimeOutException();
var jo = JObject.FromObject(w); var jo = JObject.FromObject(w);
//Quote header custom fields //Quote header custom fields

View File

@@ -291,6 +291,8 @@ namespace AyaNova.Biz
var orderedList = from id in batch join z in batchResults on id equals z.Id select z; var orderedList = from id in batch join z in batchResults on id equals z.Id select z;
foreach (Reminder w in orderedList) foreach (Reminder w in orderedList)
{ {
if (DateTime.UtcNow > renderTimeOutExpiry)
throw new ReportRenderTimeOutException();
await PopulateVizFields(w); await PopulateVizFields(w);
var jo = JObject.FromObject(w); var jo = JObject.FromObject(w);
if (!JsonUtil.JTokenIsNullOrEmpty(jo["CustomFields"])) if (!JsonUtil.JTokenIsNullOrEmpty(jo["CustomFields"]))

View File

@@ -349,6 +349,8 @@ namespace AyaNova.Biz
var orderedList = from id in batch join z in batchResults on id equals z.Id select z; var orderedList = from id in batch join z in batchResults on id equals z.Id select z;
foreach (Review w in orderedList) foreach (Review w in orderedList)
{ {
if (DateTime.UtcNow > renderTimeOutExpiry)
throw new ReportRenderTimeOutException();
await PopulateVizFields(w); await PopulateVizFields(w);
var jo = JObject.FromObject(w); var jo = JObject.FromObject(w);
if (!JsonUtil.JTokenIsNullOrEmpty(jo["CustomFields"])) if (!JsonUtil.JTokenIsNullOrEmpty(jo["CustomFields"]))

View File

@@ -277,6 +277,8 @@
// var orderedList = from id in batch join z in batchResults on id equals z.Id select z; // var orderedList = from id in batch join z in batchResults on id equals z.Id select z;
// foreach (ServiceBank w in orderedList) // foreach (ServiceBank w in orderedList)
// { // {
// if (DateTime.UtcNow > renderTimeOutExpiry)
// throw new ReportRenderTimeOutException();
// var jo = JObject.FromObject(w); // var jo = JObject.FromObject(w);
// if (!JsonUtil.JTokenIsNullOrEmpty(jo["CustomFields"])) // if (!JsonUtil.JTokenIsNullOrEmpty(jo["CustomFields"]))
// jo["CustomFields"] = JObject.Parse((string)jo["CustomFields"]); // jo["CustomFields"] = JObject.Parse((string)jo["CustomFields"]);

View File

@@ -316,6 +316,8 @@ namespace AyaNova.Biz
var orderedList = from id in batch join z in batchResults on id equals z.Id select z; var orderedList = from id in batch join z in batchResults on id equals z.Id select z;
foreach (ServiceRate w in orderedList) foreach (ServiceRate w in orderedList)
{ {
if (DateTime.UtcNow > renderTimeOutExpiry)
throw new ReportRenderTimeOutException();
var jo = JObject.FromObject(w); var jo = JObject.FromObject(w);
if (!JsonUtil.JTokenIsNullOrEmpty(jo["CustomFields"])) if (!JsonUtil.JTokenIsNullOrEmpty(jo["CustomFields"]))
jo["CustomFields"] = JObject.Parse((string)jo["CustomFields"]); jo["CustomFields"] = JObject.Parse((string)jo["CustomFields"]);

View File

@@ -168,7 +168,7 @@ namespace AyaNova.Biz
ValidateCanDelete(dbObject); ValidateCanDelete(dbObject);
if (HasErrors) if (HasErrors)
return false; return false;
{ {
var IDList = await ct.Review.AsNoTracking().Where(x => x.AType == AyaType.TaskGroup && x.ObjectId == id).Select(x => x.Id).ToListAsync(); var IDList = await ct.Review.AsNoTracking().Where(x => x.AType == AyaType.TaskGroup && x.ObjectId == id).Select(x => x.Id).ToListAsync();
if (IDList.Count() > 0) if (IDList.Count() > 0)
{ {
@@ -300,7 +300,8 @@ namespace AyaNova.Biz
var orderedList = from id in batch join z in batchResults on id equals z.Id select z; var orderedList = from id in batch join z in batchResults on id equals z.Id select z;
foreach (TaskGroup w in orderedList) foreach (TaskGroup w in orderedList)
{ {
// await PopulateVizFields(w); if (DateTime.UtcNow > renderTimeOutExpiry)
throw new ReportRenderTimeOutException();
var jo = JObject.FromObject(w); var jo = JObject.FromObject(w);
if (!JsonUtil.JTokenIsNullOrEmpty(jo["CustomFields"])) if (!JsonUtil.JTokenIsNullOrEmpty(jo["CustomFields"]))
jo["CustomFields"] = JObject.Parse((string)jo["CustomFields"]); jo["CustomFields"] = JObject.Parse((string)jo["CustomFields"]);
@@ -310,7 +311,7 @@ namespace AyaNova.Biz
return ReportData; return ReportData;
} }
//////////////////////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////////////////////////
// IMPORT EXPORT // IMPORT EXPORT

View File

@@ -345,6 +345,8 @@ namespace AyaNova.Biz
var orderedList = from id in batch join z in batchResults on id equals z.Id select z; var orderedList = from id in batch join z in batchResults on id equals z.Id select z;
foreach (TaxCode w in orderedList) foreach (TaxCode w in orderedList)
{ {
if (DateTime.UtcNow > renderTimeOutExpiry)
throw new ReportRenderTimeOutException();
var jo = JObject.FromObject(w); var jo = JObject.FromObject(w);
if (!JsonUtil.JTokenIsNullOrEmpty(jo["CustomFields"])) if (!JsonUtil.JTokenIsNullOrEmpty(jo["CustomFields"]))
jo["CustomFields"] = JObject.Parse((string)jo["CustomFields"]); jo["CustomFields"] = JObject.Parse((string)jo["CustomFields"]);

View File

@@ -312,6 +312,8 @@ namespace AyaNova.Biz
var orderedList = from id in batch join z in batchResults on id equals z.Id select z; var orderedList = from id in batch join z in batchResults on id equals z.Id select z;
foreach (TravelRate w in orderedList) foreach (TravelRate w in orderedList)
{ {
if (DateTime.UtcNow > renderTimeOutExpiry)
throw new ReportRenderTimeOutException();
var jo = JObject.FromObject(w); var jo = JObject.FromObject(w);
if (!JsonUtil.JTokenIsNullOrEmpty(jo["CustomFields"])) if (!JsonUtil.JTokenIsNullOrEmpty(jo["CustomFields"]))
jo["CustomFields"] = JObject.Parse((string)jo["CustomFields"]); jo["CustomFields"] = JObject.Parse((string)jo["CustomFields"]);

View File

@@ -307,6 +307,8 @@ namespace AyaNova.Biz
var orderedList = from id in batch join z in batchResults on id equals z.Id select z; var orderedList = from id in batch join z in batchResults on id equals z.Id select z;
foreach (Unit w in orderedList) foreach (Unit w in orderedList)
{ {
if (DateTime.UtcNow > renderTimeOutExpiry)
throw new ReportRenderTimeOutException();
await PopulateVizFields(w); await PopulateVizFields(w);
var jo = JObject.FromObject(w); var jo = JObject.FromObject(w);
if (!JsonUtil.JTokenIsNullOrEmpty(jo["CustomFields"])) if (!JsonUtil.JTokenIsNullOrEmpty(jo["CustomFields"]))

View File

@@ -156,6 +156,8 @@ namespace AyaNova.Biz
var orderedList = from id in batch join z in batchResults on id equals z.Id select z; var orderedList = from id in batch join z in batchResults on id equals z.Id select z;
foreach (UnitMeterReading w in orderedList) foreach (UnitMeterReading w in orderedList)
{ {
if (DateTime.UtcNow > renderTimeOutExpiry)
throw new ReportRenderTimeOutException();
await PopulateVizFields(w); await PopulateVizFields(w);
var jo = JObject.FromObject(w); var jo = JObject.FromObject(w);
ReportData.Add(jo); ReportData.Add(jo);

View File

@@ -290,6 +290,8 @@ namespace AyaNova.Biz
var orderedList = from id in batch join z in batchResults on id equals z.Id select z; var orderedList = from id in batch join z in batchResults on id equals z.Id select z;
foreach (UnitModel w in orderedList) foreach (UnitModel w in orderedList)
{ {
if (DateTime.UtcNow > renderTimeOutExpiry)
throw new ReportRenderTimeOutException();
await PopulateVizFields(w); await PopulateVizFields(w);
var jo = JObject.FromObject(w); var jo = JObject.FromObject(w);
if (!JsonUtil.JTokenIsNullOrEmpty(jo["CustomFields"])) if (!JsonUtil.JTokenIsNullOrEmpty(jo["CustomFields"]))

View File

@@ -1045,6 +1045,8 @@ namespace AyaNova.Biz
//foreach (User w in orderedList) //foreach (User w in orderedList)
foreach (var w in orderedList) foreach (var w in orderedList)
{ {
if (DateTime.UtcNow > renderTimeOutExpiry)
throw new ReportRenderTimeOutException();
await PopulateVizFields(w, UserTypesEnumList); await PopulateVizFields(w, UserTypesEnumList);
var jo = JObject.FromObject(w); var jo = JObject.FromObject(w);
if (!JsonUtil.JTokenIsNullOrEmpty(jo["CustomFields"])) if (!JsonUtil.JTokenIsNullOrEmpty(jo["CustomFields"]))

View File

@@ -329,6 +329,8 @@ namespace AyaNova.Biz
var orderedList = from id in batch join z in batchResults on id equals z.Id select z; var orderedList = from id in batch join z in batchResults on id equals z.Id select z;
foreach (Vendor w in orderedList) foreach (Vendor w in orderedList)
{ {
if (DateTime.UtcNow > renderTimeOutExpiry)
throw new ReportRenderTimeOutException();
var jo = JObject.FromObject(w); var jo = JObject.FromObject(w);
if (!JsonUtil.JTokenIsNullOrEmpty(jo["CustomFields"])) if (!JsonUtil.JTokenIsNullOrEmpty(jo["CustomFields"]))
jo["CustomFields"] = JObject.Parse((string)jo["CustomFields"]); jo["CustomFields"] = JObject.Parse((string)jo["CustomFields"]);

View File

@@ -962,6 +962,8 @@ namespace AyaNova.Biz
foreach (WorkOrder w in batchResults) foreach (WorkOrder w in batchResults)
{ {
if (DateTime.UtcNow > renderTimeOutExpiry)
throw new ReportRenderTimeOutException();
if (DateTime.UtcNow > renderTimeOutExpiry) if (DateTime.UtcNow > renderTimeOutExpiry)
throw new ReportRenderTimeOutException(); throw new ReportRenderTimeOutException();
var jo = JObject.FromObject(w); var jo = JObject.FromObject(w);