aktueller stand
This commit is contained in:
File diff suppressed because it is too large
Load Diff
@@ -229,7 +229,10 @@ namespace FasdDesktopUi.Basics.Models
|
||||
{
|
||||
Dispatcher.CurrentDispatcher.Invoke(() => splashScreen?.SetStatusText(cMultiLanguageSupport.GetItem("StartUp.SplashScreen.AuthenticateUser")));
|
||||
ApiConnectionStatus = enumOnlineStatus.unauthorized;
|
||||
const string cockpitUserRole = "Cockpit.User";
|
||||
const string cockpitUserRole = "Cockpit.User";
|
||||
#if isNewFeature
|
||||
const string cockpitTicketAgentRole = "Cockpit.TicketAgent";
|
||||
#endif
|
||||
userInfo = await cFasdCockpitCommunicationBase.Instance.WinLogon();
|
||||
lock (cFasdCockpitCommunicationBase.CockpitUserInfoLock)
|
||||
{
|
||||
@@ -244,6 +247,10 @@ namespace FasdDesktopUi.Basics.Models
|
||||
{
|
||||
await Task.Run(async () => await cFasdCockpitConfig.Instance.InstantiateAnalyticsAsync(cFasdCockpitConfig.SessionId));
|
||||
ApiConnectionStatus = enumOnlineStatus.online;
|
||||
#if isNewFeature
|
||||
if (userInfo.Roles.Contains(cockpitTicketAgentRole))
|
||||
cCockpitConfiguration.Instance.ticketSupport.EditTicket = true;
|
||||
#endif
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -22,6 +22,9 @@ namespace FasdDesktopUi.Basics.Models
|
||||
[JsonConverter(typeof(StringEnumConverter))]
|
||||
public enumHighlightColor? HighlightColor { get; set; }
|
||||
|
||||
[JsonIgnore]
|
||||
public enumHistoryTitleType? PresentationStyle { get; set; } = enumHistoryTitleType.none;
|
||||
|
||||
[JsonIgnore]
|
||||
public cUiActionBase UiAction { get; set; }
|
||||
|
||||
|
||||
@@ -35,8 +35,7 @@ namespace FasdDesktopUi.Basics.Services.ProtocollService
|
||||
quickActionCopyData.Name = quickActionDefinition.Names.GetValue();
|
||||
quickActionCopyData.ExecutionTime = DateTime.UtcNow;
|
||||
|
||||
if (dataProvider.HealthCardDataHelper.HeadingData.TryGetValue(enumFasdInformationClass.Computer, out var computerHeadingData))
|
||||
quickActionCopyData.AffectedDeviceName = computerHeadingData.HeadingText;
|
||||
quickActionCopyData.AffectedDeviceName = dataProvider.HealthCardDataHelper.GetInformationObjectHeadingName(enumFasdInformationClass.Computer);
|
||||
|
||||
quickActionCopyData.WasRunningOnAffectedDevice = wasRunningOnAffectedDevice;
|
||||
quickActionCopyData.QuickActionOutput = quickActionOutput;
|
||||
|
||||
@@ -432,7 +432,7 @@ namespace FasdDesktopUi.Basics
|
||||
{
|
||||
try
|
||||
{
|
||||
var couldGetHealthCard = HealthCardDataHelper.TryGetHealthcard(requiredInformationClasses);
|
||||
var couldGetHealthCard = HealthCardDataHelper.TrySetSelectedHealthcard(requiredInformationClasses);
|
||||
|
||||
if (!couldGetHealthCard)
|
||||
{
|
||||
@@ -452,7 +452,7 @@ namespace FasdDesktopUi.Basics
|
||||
}
|
||||
}
|
||||
|
||||
var isOk = await HealthCardDataHelper.GetHealthCardRawDataAsync(new cF4sdHealthCardRawDataRequest()
|
||||
var isOk = await HealthCardDataHelper.LoadingHelper.GetHealthCardRawDataAsync(new cF4sdHealthCardRawDataRequest()
|
||||
{
|
||||
Identities = Identities,
|
||||
Tables = requiredTables.ToList(),
|
||||
@@ -460,7 +460,7 @@ namespace FasdDesktopUi.Basics
|
||||
});
|
||||
|
||||
if (isNewCase)
|
||||
HealthCardDataHelper.LastDataRequest = DateTime.Now;
|
||||
HealthCardDataHelper.LoadingHelper.LastDataRequest = DateTime.Now;
|
||||
|
||||
if (isOk == false)
|
||||
{
|
||||
|
||||
@@ -39,7 +39,7 @@ namespace FasdDesktopUi.Basics.UiActions
|
||||
return null;
|
||||
|
||||
if (cF4SDCustomDialogConfig.Instance.CustomDialogContainers.TryGetValue(name, out var containerConfig))
|
||||
output = dataProvider.HealthCardDataHelper.GetContainerDataFromConfig(containerConfig);
|
||||
output = dataProvider.HealthCardDataHelper.CustomizableSectionHelper.GetContainerDataFromConfig(containerConfig);
|
||||
}
|
||||
catch (Exception E)
|
||||
{
|
||||
|
||||
@@ -55,7 +55,7 @@ namespace FasdDesktopUi.Basics.UiActions
|
||||
return false;
|
||||
|
||||
DataProvider = dataProvider;
|
||||
DataProvider.HealthCardDataHelper.DataRefreshed += (s, e) => CachedDetails.Clear();
|
||||
DataProvider.HealthCardDataHelper.LoadingHelper.DataRefreshed += (s, e) => CachedDetails.Clear();
|
||||
|
||||
Mouse.OverrideCursor = Cursors.Wait;
|
||||
|
||||
|
||||
@@ -204,7 +204,7 @@
|
||||
DropDownClosed="ComboBoxControl_DropDownClosed"
|
||||
Background="{Binding ElementName=ComboBoxPagableUc, Path=ComboBoxBackground}"
|
||||
BorderBrush="{Binding ElementName=ComboBoxPagableUc, Path=BorderBrush}"
|
||||
BorderThickness="0"
|
||||
BorderThickness="{Binding ElementName=ComboBoxPagableUc, Path=BorderThickness}"
|
||||
ItemsSource="{Binding ElementName=ComboBoxPagableUc, Path=ItemData}"
|
||||
SelectedItem="{Binding RelativeSource={RelativeSource AncestorType={x:Type local:ComboBoxPageable}}, Path=SelectedItem, Mode=TwoWay}"
|
||||
DisplayMemberPath="Key"
|
||||
|
||||
@@ -33,8 +33,8 @@ namespace FasdDesktopUi.Basics.UserControls
|
||||
if (DataCanvasData.GetDetailedDataAsync != null)
|
||||
{
|
||||
if (dataProvider != null)
|
||||
dataProvider.HealthCardDataHelper.DataRefreshed -= HealthCardDataHelper_DataRefreshed;
|
||||
value.HealthCardDataHelper.DataRefreshed += HealthCardDataHelper_DataRefreshed;
|
||||
dataProvider.HealthCardDataHelper.LoadingHelper.DataRefreshed -= HealthCardDataHelper_DataRefreshed;
|
||||
value.HealthCardDataHelper.LoadingHelper.DataRefreshed += HealthCardDataHelper_DataRefreshed;
|
||||
}
|
||||
|
||||
dataProvider = value;
|
||||
@@ -57,10 +57,10 @@ namespace FasdDesktopUi.Basics.UserControls
|
||||
if (_me.dataProvider != null)
|
||||
{
|
||||
if (oldData.GetDetailedDataAsync != null)
|
||||
_me.dataProvider.HealthCardDataHelper.DataRefreshed -= _me.HealthCardDataHelper_DataRefreshed;
|
||||
_me.dataProvider.HealthCardDataHelper.LoadingHelper.DataRefreshed -= _me.HealthCardDataHelper_DataRefreshed;
|
||||
|
||||
if (newData.GetDetailedDataAsync != null)
|
||||
_me.dataProvider.HealthCardDataHelper.DataRefreshed += _me.HealthCardDataHelper_DataRefreshed;
|
||||
_me.dataProvider.HealthCardDataHelper.LoadingHelper.DataRefreshed += _me.HealthCardDataHelper_DataRefreshed;
|
||||
}
|
||||
|
||||
_me.QuickActionStatusUc.CancelQuickAction();
|
||||
|
||||
@@ -181,7 +181,8 @@
|
||||
<Grid>
|
||||
<ComboBox x:Name="ComboBoxControl"
|
||||
Background="{Binding ElementName=HierarchySelector, Path=ComboBoxBackground}"
|
||||
BorderBrush="{Binding ElementName=HierarchySelector, Path=BorderBrush}"
|
||||
BorderBrush="Transparent"
|
||||
BorderThickness="0"
|
||||
Foreground="{DynamicResource FontColor.Menu.Categories}"
|
||||
ItemsSource="{Binding VisibleItems, ElementName=HierarchySelector}"
|
||||
DisplayMemberPath="FullPath"
|
||||
|
||||
@@ -5,7 +5,6 @@ using FasdDesktopUi.Basics.CustomEvents;
|
||||
using FasdDesktopUi.Basics.Models;
|
||||
using FasdDesktopUi.Basics.UserControls.AdaptableIcon;
|
||||
using FasdDesktopUi.Pages.AdvancedSearchPage;
|
||||
using Microsoft.Internal.VisualStudio.PlatformUI;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
|
||||
@@ -181,6 +181,7 @@
|
||||
SelectedItem="{Binding SelectedCategory, ElementName=CloseCaseDialogUc, Mode=TwoWay}"
|
||||
ComboBoxBackground="{DynamicResource BackgroundColor.DetailsPage.DataHistory.ValueColumn}"
|
||||
BorderBrush="Transparent"
|
||||
BorderThickness="0"
|
||||
SearchPlaceholderText="{Binding Converter={StaticResource LanguageConverter}, ConverterParameter=Searchbar.Placeholder}"
|
||||
DropDownOpened="DropDownOpened"
|
||||
DropDownClosed="DropDownClosed"
|
||||
|
||||
@@ -25,7 +25,8 @@
|
||||
<local:ComboBoxPageable x:Name="RoleSelectionControl"
|
||||
SelectedItem="{Binding ElementName=ForwardTicketDialogUc, Path=SelectedRole, Mode=TwoWay}"
|
||||
ComboBoxBackground="{DynamicResource BackgroundColor.DetailsPage.DataHistory.ValueColumn}"
|
||||
BorderBrush="Transparent" />
|
||||
BorderBrush="Transparent"
|
||||
BorderThickness="0" />
|
||||
</Border>
|
||||
|
||||
<TextBlock Text="{Binding Converter={StaticResource LanguageConverter}, ConverterParameter=Dialog.CloseCase.ForwardTicket.ResponsiblePerson}"
|
||||
@@ -38,7 +39,8 @@
|
||||
<local:ComboBoxPageable x:Name="PersonSelectionControl"
|
||||
SelectedItem="{Binding ElementName=ForwardTicketDialogUc, Path=SelectedPerson, Mode=TwoWay}"
|
||||
ComboBoxBackground="{DynamicResource BackgroundColor.DetailsPage.DataHistory.ValueColumn}"
|
||||
BorderBrush="Transparent" />
|
||||
BorderBrush="Transparent"
|
||||
BorderThickness="0" />
|
||||
</Border>
|
||||
|
||||
<TextBlock Text="{Binding Converter={StaticResource LanguageConverter}, ConverterParameter=Dialog.CloseCase.ForwardTicket.Comment}"
|
||||
|
||||
@@ -386,221 +386,6 @@ namespace FasdDesktopUi.Basics
|
||||
return false;
|
||||
}
|
||||
|
||||
#region Ascii
|
||||
|
||||
public static string GetQuickActionAsciiString(cQuickActionCopyData copyData, cFasdQuickAction quickActionDefinition)
|
||||
{
|
||||
string output = string.Empty;
|
||||
|
||||
try
|
||||
{
|
||||
output += GetQuickActionAsciiDescriptionString(copyData.Name, copyData.AffectedDeviceName, copyData.WasRunningOnAffectedDevice, copyData.ExecutionTime, copyData.QuickActionOutput?.ResultCode);
|
||||
output += GetQuickActionAsciiErrorString(copyData.QuickActionOutput?.ErrorDescription);
|
||||
output += GetQuickActionAsciiOutputString(copyData.QuickActionOutput, quickActionDefinition);
|
||||
output += GetQuickActionAsciiValueComparisonString(copyData.MeasureValues);
|
||||
}
|
||||
catch (Exception E)
|
||||
{
|
||||
LogException(E);
|
||||
}
|
||||
|
||||
return output;
|
||||
}
|
||||
|
||||
private static string GetQuickActionAsciiDescriptionString(string quickActionName, string deviceName, bool wasRunningOnAffectedDevice, DateTime executionTime, enumQuickActionSuccess? quickActionStatus)
|
||||
{
|
||||
string output = string.Empty;
|
||||
try
|
||||
{
|
||||
var quickActionStatusString = string.Empty;
|
||||
|
||||
switch (quickActionStatus)
|
||||
{
|
||||
case null:
|
||||
case enumQuickActionSuccess.successfull:
|
||||
quickActionStatusString = cMultiLanguageSupport.GetItem("QuickAction.Copy.RevisionStatus.Successfull");
|
||||
break;
|
||||
case enumQuickActionSuccess.error:
|
||||
quickActionStatusString = cMultiLanguageSupport.GetItem("QuickAction.Copy.RevisionStatus.Error");
|
||||
break;
|
||||
}
|
||||
|
||||
var rawDescription = wasRunningOnAffectedDevice ? cMultiLanguageSupport.GetItem("QuickAction.Remote.Copy.Description") : cMultiLanguageSupport.GetItem("QuickAction.Local.Copy.Description");
|
||||
output = string.Format(rawDescription, quickActionName, deviceName, executionTime.ToString("g", new CultureInfo(cFasdCockpitConfig.Instance.SelectedLanguage)), quickActionStatusString);
|
||||
}
|
||||
catch (Exception E)
|
||||
{
|
||||
LogException(E);
|
||||
}
|
||||
|
||||
return output;
|
||||
}
|
||||
|
||||
private static string GetQuickActionAsciiErrorString(string errorMessage)
|
||||
{
|
||||
string output = string.Empty;
|
||||
try
|
||||
{
|
||||
if (!string.IsNullOrWhiteSpace(errorMessage))
|
||||
output = "\n\n" + errorMessage;
|
||||
}
|
||||
catch (Exception E)
|
||||
{
|
||||
LogException(E);
|
||||
}
|
||||
|
||||
return output;
|
||||
}
|
||||
|
||||
private static string GetQuickActionAsciiOutputString(QuickActionStatusMonitor.cQuickActionOutput quickActionOutput, cFasdQuickAction quickActionDefinition)
|
||||
{
|
||||
string output = string.Empty;
|
||||
|
||||
try
|
||||
{
|
||||
if (!string.IsNullOrWhiteSpace(quickActionOutput?.ErrorDescription))
|
||||
return output;
|
||||
|
||||
|
||||
switch (quickActionOutput)
|
||||
{
|
||||
case QuickActionStatusMonitor.cQuickActionOutputSingle singleOutput:
|
||||
{
|
||||
if (singleOutput.Value is null)
|
||||
return output;
|
||||
|
||||
output += "\n\n";
|
||||
output += cMultiLanguageSupport.GetItem("QuickAction.Copy.Output") + " ";
|
||||
output += singleOutput.GetDisplayValue(quickActionDefinition.ColumnOutputFormattings);
|
||||
|
||||
break;
|
||||
}
|
||||
case QuickActionStatusMonitor.cQuickActionOutputList listOutput:
|
||||
{
|
||||
output += "\n\n";
|
||||
output += cMultiLanguageSupport.GetItem("QuickAction.Copy.Output") + "\n";
|
||||
|
||||
|
||||
foreach (var value in listOutput.Values[0])
|
||||
{
|
||||
if (ShouldHideQuickActionOutput(value.Key, quickActionDefinition))
|
||||
continue;
|
||||
|
||||
if (quickActionDefinition.ColumnOutputFormattings?.TryGetValue(value.Key, out var outputFormatting) ?? false)
|
||||
output += outputFormatting.Names.GetValue();
|
||||
else
|
||||
output += value.Key;
|
||||
|
||||
output += " | ";
|
||||
}
|
||||
|
||||
for (int i = 0; i < listOutput.Values.Count; i++)
|
||||
{
|
||||
output += "\n";
|
||||
|
||||
for (int j = 0; j < listOutput.Values[i].Count; j++)
|
||||
{
|
||||
string valueKey = listOutput.Values[0][j].Key;
|
||||
|
||||
if (ShouldHideQuickActionOutput(valueKey, quickActionDefinition))
|
||||
continue;
|
||||
|
||||
string displayValue = listOutput.GetDisplayValue(i, j, quickActionDefinition.ColumnOutputFormattings);
|
||||
|
||||
if (string.IsNullOrWhiteSpace(displayValue))
|
||||
continue;
|
||||
|
||||
output += displayValue;
|
||||
output += " | ";
|
||||
}
|
||||
}
|
||||
|
||||
break;
|
||||
}
|
||||
case QuickActionStatusMonitor.cQuickActionOutputObject objectOutput:
|
||||
{
|
||||
output += "\n\n";
|
||||
output += cMultiLanguageSupport.GetItem("QuickAction.Copy.Output") + "\n";
|
||||
|
||||
for (int i = 0; i < objectOutput.Values.Count; i++)
|
||||
{
|
||||
var value = objectOutput.Values[i];
|
||||
|
||||
if (ShouldHideQuickActionOutput(value.Key, quickActionDefinition))
|
||||
continue;
|
||||
|
||||
string columnTitle = string.Empty;
|
||||
|
||||
if (quickActionDefinition.ColumnOutputFormattings?.TryGetValue(value.Key, out var outputFormatting) ?? false)
|
||||
columnTitle = outputFormatting.Names.GetValue();
|
||||
else
|
||||
columnTitle = value.Key;
|
||||
|
||||
if (!string.IsNullOrEmpty(columnTitle))
|
||||
output += $"{columnTitle}: ";
|
||||
|
||||
string displayValue = objectOutput.GetDisplayValue(i, quickActionDefinition.ColumnOutputFormattings);
|
||||
output += !string.IsNullOrWhiteSpace(displayValue) ? displayValue : null;
|
||||
|
||||
output += "\n";
|
||||
}
|
||||
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
catch (Exception E)
|
||||
{
|
||||
LogException(E);
|
||||
}
|
||||
|
||||
return output;
|
||||
}
|
||||
|
||||
private static string GetQuickActionAsciiValueComparisonString(List<QuickActionStatusMonitor.cQuickActionMeasureValue> measureValues)
|
||||
{
|
||||
string output = string.Empty;
|
||||
|
||||
try
|
||||
{
|
||||
if (measureValues is null || measureValues.Count <= 0)
|
||||
return output;
|
||||
|
||||
output += "\n\n" + cMultiLanguageSupport.GetItem("QuickAction.Copy.Measure");
|
||||
|
||||
RawValueFormatter.SetDefaultCulture(new System.Globalization.CultureInfo(cFasdCockpitConfig.Instance.SelectedLanguage));
|
||||
|
||||
foreach (var measureValue in measureValues)
|
||||
{
|
||||
try
|
||||
{
|
||||
string value = RawValueFormatter.GetDisplayValue(measureValue.Value, measureValue.Display);
|
||||
string postValue = RawValueFormatter.GetDisplayValue(measureValue.PostValue, measureValue.Display);
|
||||
string difference = string.Empty;
|
||||
|
||||
if (measureValue.Difference != null)
|
||||
difference = $" (∆ {RawValueFormatter.GetDisplayValue(measureValue.Difference, measureValue.Display)})";
|
||||
|
||||
output += "\n" + measureValue.Names.GetValue(cF4SDCockpitXmlConfig.Instance.HealthCardConfig.ProtocollLanguage) + ": " + value + " ➜ " + postValue + difference;
|
||||
}
|
||||
catch (Exception E)
|
||||
{
|
||||
LogException(E);
|
||||
}
|
||||
}
|
||||
}
|
||||
catch (Exception E)
|
||||
{
|
||||
LogException(E);
|
||||
}
|
||||
|
||||
return output;
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
#region Html
|
||||
|
||||
public static string GetHtmlFrame(string Content)
|
||||
{
|
||||
var strLen1 = (Content.Length + 142).ToString("D10");
|
||||
@@ -618,229 +403,6 @@ namespace FasdDesktopUi.Basics
|
||||
return RetVal;
|
||||
}
|
||||
|
||||
public static string GetQuickActionHtmlString(cQuickActionCopyData copyData, cFasdQuickAction quickActionDefinition)
|
||||
{
|
||||
string output = string.Empty;
|
||||
|
||||
try
|
||||
{
|
||||
output += GetQuickActionHtmlDescriptionString(copyData.Name, copyData.AffectedDeviceName, copyData.WasRunningOnAffectedDevice, copyData.ExecutionTime, copyData.QuickActionOutput?.ResultCode);
|
||||
output += GetQuickActionHtmlErrorString(copyData.QuickActionOutput?.ErrorDescription);
|
||||
output += GetQuickActionHtmlOutputString(copyData.QuickActionOutput, quickActionDefinition);
|
||||
output += GetQuickActionHtmlValueComparisonString(copyData.MeasureValues);
|
||||
}
|
||||
catch (Exception E)
|
||||
{
|
||||
LogException(E);
|
||||
}
|
||||
|
||||
return output;
|
||||
}
|
||||
|
||||
private static string GetQuickActionHtmlDescriptionString(string quickActionName, string deviceName, bool wasRunningOnAffectedDevice, DateTime executionTime, enumQuickActionSuccess? quickActionStatus)
|
||||
{
|
||||
string output = string.Empty;
|
||||
try
|
||||
{
|
||||
var quickActionStatusString = string.Empty;
|
||||
|
||||
switch (quickActionStatus)
|
||||
{
|
||||
case null:
|
||||
case enumQuickActionSuccess.successfull:
|
||||
quickActionStatusString = cMultiLanguageSupport.GetItem("QuickAction.Copy.RevisionStatus.Successfull");
|
||||
break;
|
||||
case enumQuickActionSuccess.error:
|
||||
quickActionStatusString = cMultiLanguageSupport.GetItem("QuickAction.Copy.RevisionStatus.Error");
|
||||
break;
|
||||
}
|
||||
|
||||
var rawDescription = wasRunningOnAffectedDevice ? cMultiLanguageSupport.GetItem("QuickAction.Remote.Copy.Description.Html") : cMultiLanguageSupport.GetItem("QuickAction.Local.Copy.Description.Html");
|
||||
output = string.Format(rawDescription, quickActionName, deviceName, executionTime.ToString("g", new CultureInfo(cFasdCockpitConfig.Instance.SelectedLanguage)), quickActionStatusString);
|
||||
}
|
||||
catch (Exception E)
|
||||
{
|
||||
LogException(E);
|
||||
}
|
||||
|
||||
return output;
|
||||
}
|
||||
|
||||
private static string GetQuickActionHtmlErrorString(string errorMessage)
|
||||
{
|
||||
string output = string.Empty;
|
||||
try
|
||||
{
|
||||
if (!string.IsNullOrWhiteSpace(errorMessage))
|
||||
output = "<br/><p style=\"color:red\">" + errorMessage + "</p>";
|
||||
}
|
||||
catch (Exception E)
|
||||
{
|
||||
LogException(E);
|
||||
}
|
||||
|
||||
return output;
|
||||
}
|
||||
|
||||
public static string GetQuickActionHtmlOutputString(QuickActionStatusMonitor.cQuickActionOutput quickActionOutput, cFasdQuickAction quickActionDefinition)
|
||||
{
|
||||
string output = string.Empty;
|
||||
|
||||
try
|
||||
{
|
||||
if (!string.IsNullOrWhiteSpace(quickActionOutput?.ErrorDescription))
|
||||
return output;
|
||||
|
||||
output += "<br/>";
|
||||
|
||||
switch (quickActionOutput)
|
||||
{
|
||||
case QuickActionStatusMonitor.cQuickActionOutputSingle singleOutput:
|
||||
{
|
||||
if (singleOutput.Value is null)
|
||||
return output;
|
||||
|
||||
var displayValue = singleOutput.GetDisplayValue(quickActionDefinition?.ColumnOutputFormattings);
|
||||
output += "<p>" + cMultiLanguageSupport.GetItem("QuickAction.Copy.Output.Html") + " " + displayValue + "</p>";
|
||||
break;
|
||||
}
|
||||
case QuickActionStatusMonitor.cQuickActionOutputList listOutput:
|
||||
{
|
||||
output += "<p>" + cMultiLanguageSupport.GetItem("QuickAction.Copy.Output.Html") + "</p>";
|
||||
|
||||
output += "<table border=\"1\">";
|
||||
output += "<tr>";
|
||||
|
||||
foreach (var value in listOutput.Values[0])
|
||||
{
|
||||
if (ShouldHideQuickActionOutput(value.Key, quickActionDefinition))
|
||||
continue;
|
||||
|
||||
string headingValue = value.Key;
|
||||
if (quickActionDefinition.ColumnOutputFormattings?.TryGetValue(value.Key, out var outputFormatting) ?? false)
|
||||
headingValue = outputFormatting.Names.GetValue();
|
||||
|
||||
output += "<th align=\"left\">";
|
||||
output += headingValue;
|
||||
output += "</th>";
|
||||
}
|
||||
|
||||
output += "</tr>";
|
||||
|
||||
for (int i = 0; i < listOutput.Values.Count; i++)
|
||||
{
|
||||
output += "<tr>";
|
||||
|
||||
for (int j = 0; j < listOutput.Values[i].Count; j++)
|
||||
{
|
||||
string valueKey = listOutput.Values[0][j].Key;
|
||||
if (ShouldHideQuickActionOutput(valueKey, quickActionDefinition))
|
||||
continue;
|
||||
|
||||
string displayValue = listOutput.GetDisplayValue(i, j, quickActionDefinition.ColumnOutputFormattings);
|
||||
|
||||
if (string.IsNullOrWhiteSpace(displayValue))
|
||||
continue;
|
||||
|
||||
output += "<td>";
|
||||
output += displayValue;
|
||||
output += "</td>";
|
||||
}
|
||||
|
||||
output += "</tr>";
|
||||
}
|
||||
|
||||
output += "</table>";
|
||||
break;
|
||||
}
|
||||
case QuickActionStatusMonitor.cQuickActionOutputObject objectOutput:
|
||||
{
|
||||
output += "<p>" + cMultiLanguageSupport.GetItem("QuickAction.Copy.Output.Html") + "</p>";
|
||||
|
||||
output += "<table border=\"1\">";
|
||||
|
||||
for (int i = 0; i < objectOutput.Values.Count; i++)
|
||||
{
|
||||
var value = objectOutput.Values[i];
|
||||
|
||||
if (ShouldHideQuickActionOutput(value.Key, quickActionDefinition))
|
||||
continue;
|
||||
|
||||
string headingValue = value.Key;
|
||||
if (quickActionDefinition.ColumnOutputFormattings?.TryGetValue(value.Key, out var outputFormatting) ?? false)
|
||||
headingValue = outputFormatting.Names.GetValue();
|
||||
|
||||
output += "<tr>";
|
||||
output += "<td>";
|
||||
output += headingValue;
|
||||
output += "</td>";
|
||||
|
||||
output += "<td>";
|
||||
string displayValue = objectOutput.GetDisplayValue(i, quickActionDefinition.ColumnOutputFormattings);
|
||||
output += !string.IsNullOrWhiteSpace(displayValue) ? displayValue : null;
|
||||
output += "</td>";
|
||||
|
||||
output += "</tr>";
|
||||
}
|
||||
|
||||
output += "</table>";
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
catch (Exception E)
|
||||
{
|
||||
LogException(E);
|
||||
}
|
||||
|
||||
return output;
|
||||
}
|
||||
|
||||
public static string GetQuickActionHtmlValueComparisonString(List<QuickActionStatusMonitor.cQuickActionMeasureValue> measureValues)
|
||||
{
|
||||
string output = string.Empty;
|
||||
|
||||
try
|
||||
{
|
||||
if (measureValues is null || measureValues.Count <= 0)
|
||||
return output;
|
||||
|
||||
output += "<p>" + cMultiLanguageSupport.GetItem("QuickAction.Copy.Measure.Html") + "</p>";
|
||||
|
||||
RawValueFormatter.SetDefaultCulture(new System.Globalization.CultureInfo(cFasdCockpitConfig.Instance.SelectedLanguage));
|
||||
|
||||
foreach (var measureValue in measureValues)
|
||||
{
|
||||
try
|
||||
{
|
||||
string value = RawValueFormatter.GetDisplayValue(measureValue.Value, measureValue.Display);
|
||||
string postValue = RawValueFormatter.GetDisplayValue(measureValue.PostValue, measureValue.Display);
|
||||
string difference = string.Empty;
|
||||
|
||||
if (measureValue.Difference != null)
|
||||
difference = $" (∆ {RawValueFormatter.GetDisplayValue(measureValue.Difference, measureValue.Display)})";
|
||||
|
||||
output += "<p>";
|
||||
output += "<b>" + measureValue.Names.GetValue(cF4SDCockpitXmlConfig.Instance.HealthCardConfig.ProtocollLanguage) + ": </b>" + value + " ➜ " + postValue + difference;
|
||||
output += "</p>";
|
||||
}
|
||||
catch (Exception E)
|
||||
{
|
||||
LogException(E);
|
||||
}
|
||||
}
|
||||
}
|
||||
catch (Exception E)
|
||||
{
|
||||
LogException(E);
|
||||
}
|
||||
|
||||
return output;
|
||||
}
|
||||
|
||||
|
||||
#endregion
|
||||
|
||||
#endregion
|
||||
|
||||
#region ToolTipHandling
|
||||
|
||||
Reference in New Issue
Block a user