aktueller Stand

This commit is contained in:
Meik
2026-01-28 12:08:39 +01:00
parent 1283750829
commit ee1f54675e
104 changed files with 6797 additions and 1867 deletions

View File

@@ -268,7 +268,41 @@ namespace C4IT.FASD.Cockpit.Communication
return ticket;
}
public override async Task<List<cF4sdApiSearchResultRelation>> GetTicketOverviewRelations(string key, bool useRoleScope, int count)
public override Task<Dictionary<string, int>> GetTicketOverviewCounts(IEnumerable<string> keys, bool useRoleScope)
{
var scopeKey = useRoleScope ? "Role" : "Personal";
var comparer = StringComparer.OrdinalIgnoreCase;
var result = new Dictionary<string, int>(comparer);
var requestedKeys = keys == null
? TicketOverviewRelations.Keys.ToList()
: keys.Where(k => !string.IsNullOrWhiteSpace(k)).Distinct(comparer).ToList();
if (requestedKeys.Count == 0)
requestedKeys.AddRange(TicketOverviewRelations.Keys);
foreach (var key in requestedKeys)
{
if (string.IsNullOrWhiteSpace(key))
continue;
if (TicketOverviewRelations.TryGetValue(key, out var scopeDictionary) &&
scopeDictionary != null &&
scopeDictionary.TryGetValue(scopeKey, out var definitions) &&
definitions != null)
{
result[key] = definitions.Count;
}
else
{
result[key] = 0;
}
}
return Task.FromResult(result);
}
public override async Task<List<cF4sdApiSearchResultRelation>> GetTicketOverviewRelations(string key, bool useRoleScope, int count)
{
var CM = MethodBase.GetCurrentMethod();
LogMethodBegin(CM);
@@ -821,14 +855,14 @@ namespace C4IT.FASD.Cockpit.Communication
output.Add(new cF4sdApiSearchResultRelation() { id = Guid.NewGuid(), Name = "C4-CK007", DisplayName = "C4-CK007", LastUsed = DateTime.UtcNow, Type = enumF4sdSearchResultClass.Computer, UsingLevel = 1, Identities = new cF4sdIdentityList() { new cF4sdIdentityEntry() { Class = enumFasdInformationClass.User, Id = resultIds.First() }, new cF4sdIdentityEntry() { Class = enumFasdInformationClass.Computer, Id = Guid.NewGuid() } } });
break;
case constGuidTimoTicket:
output.Add(new cF4sdApiSearchResultRelation() { id = Guid.Parse(constGuidTimoTicketComputer), Name = "C4-TT007", DisplayName = "C4-TT007", LastUsed = DateTime.UtcNow.AddSeconds(-31), Type = enumF4sdSearchResultClass.Computer, UsingLevel = 1, Identities = new cF4sdIdentityList() { new cF4sdIdentityEntry() { Class = enumFasdInformationClass.User, Id = Guid.Parse(constGuidTimoTicket) }, new cF4sdIdentityEntry() { Class = enumFasdInformationClass.Computer, Id = Guid.Parse(constGuidTimoTicketComputer) } } });
output.Add(new cF4sdApiSearchResultRelation() { id = Guid.NewGuid(), Name = "C4-NB00015", DisplayName = "C4-NB00015", LastUsed = DateTime.UtcNow.AddHours(-10), Type = enumF4sdSearchResultClass.Computer, UsingLevel = 0.6, Identities = new cF4sdIdentityList() { new cF4sdIdentityEntry() { Class = enumFasdInformationClass.User, Id = Guid.Parse(constGuidTimoTicket) }, new cF4sdIdentityEntry() { Class = enumFasdInformationClass.Computer, Id = Guid.NewGuid() } } });
output.Add(new cF4sdApiSearchResultRelation() { id = Guid.Parse(constGuidTimoTicketComputer), Name = "C4-TT007", DisplayName = "C4-TT007", LastUsed = DateTime.UtcNow.AddSeconds(-31), Type = enumF4sdSearchResultClass.Computer, UsingLevel = 1, Identities = new cF4sdIdentityList() { new cF4sdIdentityEntry() { Class = enumFasdInformationClass.User, Id = Guid.Parse(constGuidTimoTicket) }, new cF4sdIdentityEntry() { Class = enumFasdInformationClass.Computer, Id = Guid.Parse(constGuidTimoTicketComputer) } }, Infos = new Dictionary<string, string>() });
output.Add(new cF4sdApiSearchResultRelation() { id = Guid.NewGuid(), Name = "C4-NB00015", DisplayName = "C4-NB00015", LastUsed = DateTime.UtcNow.AddHours(-10), Type = enumF4sdSearchResultClass.Computer, UsingLevel = 0.6, Identities = new cF4sdIdentityList() { new cF4sdIdentityEntry() { Class = enumFasdInformationClass.User, Id = Guid.Parse(constGuidTimoTicket) }, new cF4sdIdentityEntry() { Class = enumFasdInformationClass.Computer, Id = Guid.NewGuid() } }, Infos = new Dictionary<string, string>() });
var demoTickets = await GetDemoTicketData(new cF4sdHealthCardRawDataRequest() { Identities = new cF4sdIdentityList() { new cF4sdIdentityEntry() { Class = enumFasdInformationClass.User, Id = Guid.Parse(constGuidTimoTicket) }, new cF4sdIdentityEntry() { Class = enumFasdInformationClass.Computer, Id = Guid.NewGuid() } } });
foreach (var demoTicket in demoTickets)
{
output.Add(new cF4sdApiSearchResultRelation() { id = demoTicket.Id, Name = demoTicket.Name, DisplayName = demoTicket.Name, Infos = new Dictionary<string, string>() { ["Summary"] = demoTicket.Summary, ["StatusId"] = ((int)demoTicket.Status).ToString(), ["Asset"] = demoTicket.Asset }, Type = enumF4sdSearchResultClass.Ticket, Identities = new cF4sdIdentityList() { new cF4sdIdentityEntry() { Class = enumFasdInformationClass.User, Id = Guid.Parse(constGuidTimoTicket) }, new cF4sdIdentityEntry() { Class = enumFasdInformationClass.Ticket, Id = demoTicket.Id } } });
output.Add(new cF4sdApiSearchResultRelation() { id = demoTicket.Id, Name = demoTicket.Name, DisplayName = demoTicket.Name, Infos = new Dictionary<string, string>() { ["Summary"] = demoTicket.Summary, ["Status"] = demoTicket.Status.ToString(), ["StatusId"] = ((int)demoTicket.Status).ToString(), ["Asset"] = demoTicket.Asset }, Type = enumF4sdSearchResultClass.Ticket, Identities = new cF4sdIdentityList() { new cF4sdIdentityEntry() { Class = enumFasdInformationClass.User, Id = Guid.Parse(constGuidTimoTicket) }, new cF4sdIdentityEntry() { Class = enumFasdInformationClass.Ticket, Id = demoTicket.Id } } });
}
break;
@@ -855,6 +889,7 @@ namespace C4IT.FASD.Cockpit.Communication
LogMethodBegin(CM);
var output = new cF4SDHealthCardRawData();
cF4SDHealthCardRawData.cHealthCardTable outputTable;
try
{
@@ -890,47 +925,52 @@ namespace C4IT.FASD.Cockpit.Communication
}
output.Tables["M42Wpm-Tickets"] = new cF4SDHealthCardRawData.cHealthCardTable()
outputTable = new cF4SDHealthCardRawData.cHealthCardTable()
{
Name = "M42Wpm-Tickets",
InformationClass = enumFasdInformationClass.Ticket,
IsStatic = true,
Columns = new Dictionary<string, cF4SDHealthCardRawData.cHealthCardTableColumn>()
{
["name"] = new cF4SDHealthCardRawData.cHealthCardTableColumn() { Values = new List<object>() { selectedTicket.Name } },
["Status"] = new cF4SDHealthCardRawData.cHealthCardTableColumn() { Values = new List<object>() { ticketStatusString } },
["Priority"] = new cF4SDHealthCardRawData.cHealthCardTableColumn() { Values = new List<object>() { selectedTicket.Priority } },
["AffectedUser"] = new cF4SDHealthCardRawData.cHealthCardTableColumn() { Values = new List<object>() { selectedTicket.AffectedUser } },
["AssetName"] = new cF4SDHealthCardRawData.cHealthCardTableColumn() { Values = new List<object>() { selectedTicket.Asset } },
["CreationDaysSinceNow"] = new cF4SDHealthCardRawData.cHealthCardTableColumn() { Values = new List<object>() { selectedTicket.CreationDaysSinceNow } },
["CreationDate"] = new cF4SDHealthCardRawData.cHealthCardTableColumn() { Values = new List<object>() { selectedTicket.CreationDate.ToUniversalTime() } },
["ClosingDaysSinceNow"] = new cF4SDHealthCardRawData.cHealthCardTableColumn() { Values = new List<object>() { selectedTicket.ClosingDaysSinceNow } },
["ClosingDate"] = new cF4SDHealthCardRawData.cHealthCardTableColumn() { Values = new List<object>() { selectedTicket.ClosingDate } },
["Category"] = new cF4SDHealthCardRawData.cHealthCardTableColumn() { Values = new List<object>() { selectedTicket.Category } },
["CreationSource"] = new cF4SDHealthCardRawData.cHealthCardTableColumn() { Values = new List<object>() { selectedTicket.CreationSource.ToString() } },
["Description"] = new cF4SDHealthCardRawData.cHealthCardTableColumn() { Values = new List<object>() { selectedTicket.Description?.ToString() } },
["DescriptionHtml"] = new cF4SDHealthCardRawData.cHealthCardTableColumn() { Values = new List<object>() { selectedTicket.DescriptionHtml?.ToString() } },
["Summary"] = new cF4SDHealthCardRawData.cHealthCardTableColumn() { Values = new List<object>() { selectedTicket.Summary.ToString() } },
["Solution"] = new cF4SDHealthCardRawData.cHealthCardTableColumn() { Values = new List<object>() { selectedTicket.Solution?.ToString() } },
["SolutionHtml"] = new cF4SDHealthCardRawData.cHealthCardTableColumn() { Values = new List<object>() { selectedTicket.SolutionHtml?.ToString() } },
}
};
output.Tables["M42Wpm-Ticket-History"] = new cF4SDHealthCardRawData.cHealthCardTable()
outputTable.Columns = new Dictionary<string, cF4SDHealthCardRawData.cHealthCardTableColumn>()
{
["name"] = new cF4SDHealthCardRawData.cHealthCardTableColumn(outputTable) { Values = new List<object>() { selectedTicket.Name } },
["Status"] = new cF4SDHealthCardRawData.cHealthCardTableColumn(outputTable) { Values = new List<object>() { ticketStatusString } },
["Priority"] = new cF4SDHealthCardRawData.cHealthCardTableColumn(outputTable) { Values = new List<object>() { selectedTicket.Priority } },
["AffectedUser"] = new cF4SDHealthCardRawData.cHealthCardTableColumn(outputTable) { Values = new List<object>() { selectedTicket.AffectedUser } },
["AssetName"] = new cF4SDHealthCardRawData.cHealthCardTableColumn(outputTable) { Values = new List<object>() { selectedTicket.Asset } },
["CreationDaysSinceNow"] = new cF4SDHealthCardRawData.cHealthCardTableColumn(outputTable) { Values = new List<object>() { selectedTicket.CreationDaysSinceNow } },
["CreationDate"] = new cF4SDHealthCardRawData.cHealthCardTableColumn(outputTable) { Values = new List<object>() { selectedTicket.CreationDate.ToUniversalTime() } },
["ClosingDaysSinceNow"] = new cF4SDHealthCardRawData.cHealthCardTableColumn(outputTable) { Values = new List<object>() { selectedTicket.ClosingDaysSinceNow } },
["ClosingDate"] = new cF4SDHealthCardRawData.cHealthCardTableColumn(outputTable) { Values = new List<object>() { selectedTicket.ClosingDate } },
["Category"] = new cF4SDHealthCardRawData.cHealthCardTableColumn(outputTable) { Values = new List<object>() { selectedTicket.Category } },
["CreationSource"] = new cF4SDHealthCardRawData.cHealthCardTableColumn(outputTable) { Values = new List<object>() { selectedTicket.CreationSource.ToString() } },
["Description"] = new cF4SDHealthCardRawData.cHealthCardTableColumn(outputTable) { Values = new List<object>() { selectedTicket.Description?.ToString() } },
["DescriptionHtml"] = new cF4SDHealthCardRawData.cHealthCardTableColumn(outputTable) { Values = new List<object>() { selectedTicket.DescriptionHtml?.ToString() } },
["Summary"] = new cF4SDHealthCardRawData.cHealthCardTableColumn(outputTable) { Values = new List<object>() { selectedTicket.Summary.ToString() } },
["Solution"] = new cF4SDHealthCardRawData.cHealthCardTableColumn(outputTable) { Values = new List<object>() { selectedTicket.Solution?.ToString() } },
["SolutionHtml"] = new cF4SDHealthCardRawData.cHealthCardTableColumn(outputTable) { Values = new List<object>() { selectedTicket.SolutionHtml?.ToString() } },
};
output.Tables["M42Wpm-Tickets"] = outputTable;
outputTable = new cF4SDHealthCardRawData.cHealthCardTable()
{
Name = "M42Wpm-Ticket-History",
InformationClass = enumFasdInformationClass.Ticket,
IsStatic = false,
Columns = new Dictionary<string, cF4SDHealthCardRawData.cHealthCardTableColumn>()
{
["Header"] = new cF4SDHealthCardRawData.cHealthCardTableColumn(),
["IsVisibleForUser"] = new cF4SDHealthCardRawData.cHealthCardTableColumn(),
["CreationDaysSinceNow"] = new cF4SDHealthCardRawData.cHealthCardTableColumn(),
["time"] = new cF4SDHealthCardRawData.cHealthCardTableColumn(),
["Description"] = new cF4SDHealthCardRawData.cHealthCardTableColumn(),
["DescriptionHtml"] = new cF4SDHealthCardRawData.cHealthCardTableColumn()
}
IsStatic = false
};
outputTable.Columns = new Dictionary<string, cF4SDHealthCardRawData.cHealthCardTableColumn>()
{
["Header"] = new cF4SDHealthCardRawData.cHealthCardTableColumn(outputTable),
["IsVisibleForUser"] = new cF4SDHealthCardRawData.cHealthCardTableColumn(outputTable),
["CreationDaysSinceNow"] = new cF4SDHealthCardRawData.cHealthCardTableColumn(outputTable),
["time"] = new cF4SDHealthCardRawData.cHealthCardTableColumn(outputTable),
["Description"] = new cF4SDHealthCardRawData.cHealthCardTableColumn(outputTable),
["DescriptionHtml"] = new cF4SDHealthCardRawData.cHealthCardTableColumn(outputTable)
};
output.Tables["M42Wpm-Ticket-History"] = outputTable;
foreach (var journalItem in selectedTicket.JournalItems)
{
@@ -944,55 +984,63 @@ namespace C4IT.FASD.Cockpit.Communication
foreach (var directLink in selectedTicket.DirectLinks)
{
output.Tables["M42Wpm-Tickets"].Columns[directLink.Key] = new cF4SDHealthCardRawData.cHealthCardTableColumn() { ColumnName = directLink.Key, IsIncomplete = false, Values = new List<object>() { directLink.Value } };
outputTable = output.Tables["M42Wpm-Tickets"];
if (outputTable?.Columns != null)
outputTable.Columns[directLink.Key] = new cF4SDHealthCardRawData.cHealthCardTableColumn(outputTable) { ColumnName = directLink.Key, IsIncomplete = false, Values = new List<object>() { directLink.Value } };
}
}
}
output.Tables.Add("sequenceTable", new cF4SDHealthCardRawData.cHealthCardTable()
outputTable = new cF4SDHealthCardRawData.cHealthCardTable()
{
IsIncomplete = true,
IsStatic = false,
StartingIndex = 7,
Columns = new Dictionary<string, cF4SDHealthCardRawData.cHealthCardTableColumn>()
StartingIndex = 7
};
outputTable.Columns = new Dictionary<string, cF4SDHealthCardRawData.cHealthCardTableColumn>()
{
["sequenceColumn"] = new cF4SDHealthCardRawData.cHealthCardTableColumn(outputTable)
{
["sequenceColumn"] = new cF4SDHealthCardRawData.cHealthCardTableColumn()
{
ColumnName = "sequenceColumn",
Values = new List<object>() { 1, 0 }
}
ColumnName = "sequenceColumn",
Values = new List<object>() { 1, 0 }
}
});
};
output.Tables.Add("sequenceTable2", new cF4SDHealthCardRawData.cHealthCardTable()
output.Tables.Add("sequenceTable", outputTable);
outputTable = new cF4SDHealthCardRawData.cHealthCardTable()
{
IsIncomplete = true,
IsStatic = false,
StartingIndex = 7,
Columns = new Dictionary<string, cF4SDHealthCardRawData.cHealthCardTableColumn>()
StartingIndex = 7
};
outputTable.Columns = new Dictionary<string, cF4SDHealthCardRawData.cHealthCardTableColumn>()
{
["sequenceColumn"] = new cF4SDHealthCardRawData.cHealthCardTableColumn(outputTable)
{
["sequenceColumn"] = new cF4SDHealthCardRawData.cHealthCardTableColumn()
{
ColumnName = "sequenceColumn",
Values = new List<object>() { 8, 1, 0 }
}
ColumnName = "sequenceColumn",
Values = new List<object>() { 8, 1, 0 }
}
});
};
output.Tables.Add("sequenceTable3", new cF4SDHealthCardRawData.cHealthCardTable()
output.Tables.Add("sequenceTable2", outputTable);
outputTable = new cF4SDHealthCardRawData.cHealthCardTable()
{
IsIncomplete = false,
StartingIndex = 0,
IsStatic = true,
Columns = new Dictionary<string, cF4SDHealthCardRawData.cHealthCardTableColumn>()
IsStatic = true
};
outputTable.Columns = new Dictionary<string, cF4SDHealthCardRawData.cHealthCardTableColumn>()
{
["sequenceColumn"] = new cF4SDHealthCardRawData.cHealthCardTableColumn(outputTable)
{
["sequenceColumn"] = new cF4SDHealthCardRawData.cHealthCardTableColumn()
{
ColumnName = "sequenceColumn",
Values = new List<object>() { "Static" }
}
ColumnName = "sequenceColumn",
Values = new List<object>() { "Static" }
}
});
};
output.Tables.Add("sequenceTable3", outputTable);
output.Id = Guid.NewGuid();
@@ -1041,49 +1089,61 @@ namespace C4IT.FASD.Cockpit.Communication
await Task.Delay(250);
lock (CachedHealthCardRawData)
{
if (!CachedHealthCardRawData.ContainsKey(Id))
CachedHealthCardRawData[Id] = new cF4SDHealthCardRawData() { Id = Id, Tables = new Dictionary<string, cF4SDHealthCardRawData.cHealthCardTable>() };
if (!CachedHealthCardRawData.TryGetValue(Id, out var _rawData))
{
_rawData = new cF4SDHealthCardRawData() { Id = Id, Tables = new Dictionary<string, cF4SDHealthCardRawData.cHealthCardTable>() };
CachedHealthCardRawData[Id] = _rawData;
}
if (CachedHealthCardRawData[Id].Tables is null)
CachedHealthCardRawData[Id].Tables = new Dictionary<string, cF4SDHealthCardRawData.cHealthCardTable>();
if (_rawData.Tables is null)
_rawData.Tables = new Dictionary<string, cF4SDHealthCardRawData.cHealthCardTable>();
if (!CachedHealthCardRawData[Id].Tables.ContainsKey(tableOne))
CachedHealthCardRawData[Id].Tables[tableOne] = new cF4SDHealthCardRawData.cHealthCardTable() { Columns = new Dictionary<string, cF4SDHealthCardRawData.cHealthCardTableColumn>() };
if (!_rawData.Tables.TryGetValue(tableOne, out var _table))
{
_table = new cF4SDHealthCardRawData.cHealthCardTable() { Name = tableOne, Columns = new Dictionary<string, cF4SDHealthCardRawData.cHealthCardTableColumn>() };
_rawData.Tables[tableOne] = _table;
}
if (!CachedHealthCardRawData[Id].Tables[tableOne].Columns.ContainsKey(columnName))
CachedHealthCardRawData[Id].Tables[tableOne].Columns[columnName] = new cF4SDHealthCardRawData.cHealthCardTableColumn();
if (!_table.Columns.ContainsKey(columnName))
_table.Columns[columnName] = new cF4SDHealthCardRawData.cHealthCardTableColumn(_table);
CachedHealthCardRawData[Id].Tables[tableOne].StartingIndex = 3;
CachedHealthCardRawData[Id].Tables[tableOne].IsIncomplete = true;
_table.StartingIndex = 3;
_table.IsIncomplete = true;
if (CachedHealthCardRawData[Id].Tables[tableOne].Columns[columnName].Values.Count < 3)
CachedHealthCardRawData[Id].Tables[tableOne].Columns[columnName].Values.AddRange(new List<object>() { 5, 4, 3, 2, 1, 0 });
if (_table.Columns[columnName].Values.Count < 3)
_table.Columns[columnName].Values.AddRange(new List<object>() { 5, 4, 3, 2, 1, 0 });
else
CachedHealthCardRawData[Id].Tables[tableOne].Columns[columnName].Values.InsertRange(3, new List<object>() { 5, 4, 3, 2, 1, 0 });
_table.Columns[columnName].Values.InsertRange(3, new List<object>() { 5, 4, 3, 2, 1, 0 });
}
await Task.Delay(250);
lock (CachedHealthCardRawData)
{
if (!CachedHealthCardRawData.ContainsKey(Id))
CachedHealthCardRawData[Id] = new cF4SDHealthCardRawData() { Id = Id, Tables = new Dictionary<string, cF4SDHealthCardRawData.cHealthCardTable>() };
if (!CachedHealthCardRawData.TryGetValue(Id, out var _rawData))
{
_rawData = new cF4SDHealthCardRawData() { Id = Id, Tables = new Dictionary<string, cF4SDHealthCardRawData.cHealthCardTable>() };
CachedHealthCardRawData[Id] = _rawData;
}
if (CachedHealthCardRawData[Id].Tables is null)
CachedHealthCardRawData[Id].Tables = new Dictionary<string, cF4SDHealthCardRawData.cHealthCardTable>();
if (_rawData.Tables is null)
_rawData.Tables = new Dictionary<string, cF4SDHealthCardRawData.cHealthCardTable>();
if (!CachedHealthCardRawData[Id].Tables.ContainsKey(tableTwo))
CachedHealthCardRawData[Id].Tables[tableTwo] = new cF4SDHealthCardRawData.cHealthCardTable() { Columns = new Dictionary<string, cF4SDHealthCardRawData.cHealthCardTableColumn>() };
if (!_rawData.Tables.TryGetValue(tableTwo, out var _table))
{
_table = new cF4SDHealthCardRawData.cHealthCardTable() { Name = tableTwo, Columns = new Dictionary<string, cF4SDHealthCardRawData.cHealthCardTableColumn>() };
_rawData.Tables[tableTwo] = _table;
}
if (!CachedHealthCardRawData[Id].Tables[tableTwo].Columns.ContainsKey(columnName))
CachedHealthCardRawData[Id].Tables[tableTwo].Columns[columnName] = new cF4SDHealthCardRawData.cHealthCardTableColumn();
if (!_table.Columns.ContainsKey(columnName))
_table.Columns[columnName] = new cF4SDHealthCardRawData.cHealthCardTableColumn(_table);
CachedHealthCardRawData[Id].Tables[tableTwo].StartingIndex = 2;
CachedHealthCardRawData[Id].Tables[tableTwo].IsIncomplete = true;
_table.StartingIndex = 2;
_table.IsIncomplete = true;
if (CachedHealthCardRawData[Id].Tables[tableTwo].Columns[columnName].Values.Count < 2)
CachedHealthCardRawData[Id].Tables[tableTwo].Columns[columnName].Values.AddRange(new List<object>() { 0, 3, 1, 2, 3, 8, 1, 0 });
if (_table.Columns[columnName].Values.Count < 2)
_table.Columns[columnName].Values.AddRange(new List<object>() { 0, 3, 1, 2, 3, 8, 1, 0 });
else
CachedHealthCardRawData[Id].Tables[tableTwo].Columns[columnName].Values.InsertRange(2, new List<object>() { 0, 3, 1, 2, 3, 8, 1, 0 });
_table.Columns[columnName].Values.InsertRange(2, new List<object>() { 0, 3, 1, 2, 3, 8, 1, 0 });
}
await Task.Delay(500);
@@ -1092,61 +1152,79 @@ namespace C4IT.FASD.Cockpit.Communication
const string numericalTable = "agnt-computer-event-numerical";
const string processorColumn = "ProcessorUsage";
if (!CachedHealthCardRawData.ContainsKey(Id))
CachedHealthCardRawData[Id] = new cF4SDHealthCardRawData() { Id = Id, Tables = new Dictionary<string, cF4SDHealthCardRawData.cHealthCardTable>() };
if (!CachedHealthCardRawData.TryGetValue(Id, out var _rawData))
{
_rawData = new cF4SDHealthCardRawData() { Id = Id, Tables = new Dictionary<string, cF4SDHealthCardRawData.cHealthCardTable>() };
CachedHealthCardRawData[Id] = _rawData;
}
if (CachedHealthCardRawData[Id].Tables is null)
CachedHealthCardRawData[Id].Tables = new Dictionary<string, cF4SDHealthCardRawData.cHealthCardTable>();
if (_rawData.Tables is null)
_rawData.Tables = new Dictionary<string, cF4SDHealthCardRawData.cHealthCardTable>();
if (!CachedHealthCardRawData[Id].Tables.ContainsKey(numericalTable))
CachedHealthCardRawData[Id].Tables[numericalTable] = new cF4SDHealthCardRawData.cHealthCardTable() { Columns = new Dictionary<string, cF4SDHealthCardRawData.cHealthCardTableColumn>() };
if (!_rawData.Tables.TryGetValue(numericalTable, out var _table))
{
_table = new cF4SDHealthCardRawData.cHealthCardTable() { Name = numericalTable, Columns = new Dictionary<string, cF4SDHealthCardRawData.cHealthCardTableColumn>() };
_rawData.Tables[numericalTable] = _table;
}
if (!CachedHealthCardRawData[Id].Tables[numericalTable].Columns.ContainsKey(processorColumn))
CachedHealthCardRawData[Id].Tables[numericalTable].Columns[processorColumn] = new cF4SDHealthCardRawData.cHealthCardTableColumn();
if (!_table.Columns.ContainsKey(processorColumn))
_table.Columns[processorColumn] = new cF4SDHealthCardRawData.cHealthCardTableColumn(_table);
CachedHealthCardRawData[Id].Tables[numericalTable].IsIncomplete = false;
CachedHealthCardRawData[Id].Tables[numericalTable].Columns[processorColumn].IsIncomplete = false;
CachedHealthCardRawData[Id].Tables[numericalTable].Columns[processorColumn].Values = new List<object>() { 12.0, 20.0, 18.0, 15.0, 18.0, 19.0, 20.0, 26.0, 17.0, 11.0, 18.0, 16.0, 16.0, 14.0, 15.0 };
_table.IsIncomplete = false;
_table.Columns[processorColumn].IsIncomplete = false;
_table.Columns[processorColumn].Values = new List<object>() { 12.0, 20.0, 18.0, 15.0, 18.0, 19.0, 20.0, 26.0, 17.0, 11.0, 18.0, 16.0, 16.0, 14.0, 15.0 };
}
await Task.Delay(250);
lock (CachedHealthCardRawData)
{
if (!CachedHealthCardRawData.ContainsKey(Id))
CachedHealthCardRawData[Id] = new cF4SDHealthCardRawData() { Id = Id, Tables = new Dictionary<string, cF4SDHealthCardRawData.cHealthCardTable>() };
if (!CachedHealthCardRawData.TryGetValue(Id, out var _rawData))
{
_rawData = new cF4SDHealthCardRawData() { Id = Id, Tables = new Dictionary<string, cF4SDHealthCardRawData.cHealthCardTable>() };
CachedHealthCardRawData[Id] = _rawData;
}
if (CachedHealthCardRawData[Id].Tables is null)
CachedHealthCardRawData[Id].Tables = new Dictionary<string, cF4SDHealthCardRawData.cHealthCardTable>();
if (_rawData.Tables is null)
_rawData.Tables = new Dictionary<string, cF4SDHealthCardRawData.cHealthCardTable>();
if (!CachedHealthCardRawData[Id].Tables.ContainsKey(tableOne))
CachedHealthCardRawData[Id].Tables[tableOne] = new cF4SDHealthCardRawData.cHealthCardTable() { Columns = new Dictionary<string, cF4SDHealthCardRawData.cHealthCardTableColumn>() };
if (!_rawData.Tables.TryGetValue(tableOne, out var _table))
{
_table = new cF4SDHealthCardRawData.cHealthCardTable() { Name = tableOne, Columns = new Dictionary<string, cF4SDHealthCardRawData.cHealthCardTableColumn>() };
_rawData.Tables[tableOne] = _table;
}
if (!CachedHealthCardRawData[Id].Tables[tableOne].Columns.ContainsKey(columnName))
CachedHealthCardRawData[Id].Tables[tableOne].Columns[columnName] = new cF4SDHealthCardRawData.cHealthCardTableColumn();
if (!_table.Columns.TryGetValue(columnName, out var _column))
{
_column = new cF4SDHealthCardRawData.cHealthCardTableColumn(_table);
_table.Columns[columnName] = _column;
}
CachedHealthCardRawData[Id].Tables[tableOne].StartingIndex = 0;
CachedHealthCardRawData[Id].Tables[tableOne].IsIncomplete = false;
_table.StartingIndex = 0;
_table.IsIncomplete = false;
if (CachedHealthCardRawData[Id].Tables[tableOne].Columns[columnName].Values.Count < 0)
CachedHealthCardRawData[Id].Tables[tableOne].Columns[columnName].Values.AddRange(new List<object>() { 8, 7, 6 });
if (_column.Values.Count < 0)
_column.Values.AddRange(new List<object>() { 8, 7, 6 });
else
CachedHealthCardRawData[Id].Tables[tableOne].Columns[columnName].Values.InsertRange(0, new List<object>() { 8, 7, 6 });
_column.Values.InsertRange(0, new List<object>() { 8, 7, 6 });
if (!CachedHealthCardRawData[Id].Tables.ContainsKey(tableTwo))
CachedHealthCardRawData[Id].Tables[tableTwo] = new cF4SDHealthCardRawData.cHealthCardTable() { Columns = new Dictionary<string, cF4SDHealthCardRawData.cHealthCardTableColumn>() };
if (!_rawData.Tables.TryGetValue(tableTwo, out var _table2))
{
_table2 = new cF4SDHealthCardRawData.cHealthCardTable() { Name = tableTwo, Columns = new Dictionary<string, cF4SDHealthCardRawData.cHealthCardTableColumn>() };
_rawData.Tables[tableTwo] = _table2;
}
if (!CachedHealthCardRawData[Id].Tables[tableTwo].Columns.ContainsKey(columnName))
CachedHealthCardRawData[Id].Tables[tableTwo].Columns[columnName] = new cF4SDHealthCardRawData.cHealthCardTableColumn();
if (!_rawData.Tables[tableTwo].Columns.ContainsKey(columnName))
CachedHealthCardRawData[Id].Tables[tableTwo].Columns[columnName] = new cF4SDHealthCardRawData.cHealthCardTableColumn(_table2);
CachedHealthCardRawData[Id].Tables[tableTwo].StartingIndex = 1;
CachedHealthCardRawData[Id].Tables[tableTwo].IsIncomplete = false;
_table2.StartingIndex = 1;
_table2.IsIncomplete = false;
if (CachedHealthCardRawData[Id].Tables[tableTwo].Columns[columnName].Values.Count < 1)
CachedHealthCardRawData[Id].Tables[tableTwo].Columns[columnName].Values.AddRange(new List<object>() { 1 });
if (_table2.Columns[columnName].Values.Count < 1)
_table2.Columns[columnName].Values.AddRange(new List<object>() { 1 });
else
CachedHealthCardRawData[Id].Tables[tableTwo].Columns[columnName].Values.InsertRange(1, new List<object>() { 1 });
_table2.Columns[columnName].Values.InsertRange(1, new List<object>() { 1 });
}