aktueller Stand
This commit is contained in:
@@ -1282,12 +1282,13 @@ namespace FasdDesktopUi.Basics.UserControls
|
||||
if (quickCallsTable == null) return;
|
||||
|
||||
if (!quickCallsTable.Columns.TryGetValue("Name", out var namesColumn) ||
|
||||
!quickCallsTable.Columns.TryGetValue("id", out var idsColumn) ||
|
||||
!quickCallsTable.Columns.TryGetValue("Classification", out var classificationColumn))
|
||||
!quickCallsTable.Columns.TryGetValue("id", out var idsColumn))
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
quickCallsTable.Columns.TryGetValue("Category", out var categoryColumn);
|
||||
|
||||
var quickCallListe = new List<QuickCallEntry>();
|
||||
|
||||
for (int i = 0; i < idsColumn.Values.Count; i++)
|
||||
@@ -1295,17 +1296,19 @@ namespace FasdDesktopUi.Basics.UserControls
|
||||
var id = idsColumn.Values[i].ToString();
|
||||
var name = namesColumn.Values[i].ToString();
|
||||
|
||||
Guid? classification = null;
|
||||
var classificationValue = classificationColumn.Values[i]?.ToString();
|
||||
if (Guid.TryParse(classificationValue, out var parsedClassification))
|
||||
classification = parsedClassification;
|
||||
|
||||
Guid? categoryId = null;
|
||||
if (categoryColumn?.Values != null && i < categoryColumn.Values.Count)
|
||||
{
|
||||
var categoryValue = categoryColumn.Values[i]?.ToString();
|
||||
if (Guid.TryParse(categoryValue, out var parsedCategory))
|
||||
categoryId = parsedCategory;
|
||||
}
|
||||
|
||||
quickCallListe.Add(new QuickCallEntry
|
||||
{
|
||||
ID = id,
|
||||
DisplayName = name,
|
||||
Classification = classification
|
||||
CategoryId = categoryId
|
||||
});
|
||||
}
|
||||
|
||||
@@ -1314,6 +1317,7 @@ namespace FasdDesktopUi.Basics.UserControls
|
||||
QuickTicketSelection.SelectedItem = quickCallListe
|
||||
.FirstOrDefault(x => x.ID == "7bbe64e2-94d0-ee11-4285-00155d010a04");
|
||||
ValidateProperty(ValidationPropertyNames.QuickTicketSelection);
|
||||
ApplyQuickCallCategorySelection();
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
@@ -1325,13 +1329,47 @@ namespace FasdDesktopUi.Basics.UserControls
|
||||
{
|
||||
public string ID { get; set; }
|
||||
public string DisplayName { get; set; }
|
||||
public Guid? Classification { get; set; }
|
||||
public Guid? CategoryId { get; set; }
|
||||
public override string ToString()
|
||||
{
|
||||
return DisplayName.ToString();
|
||||
}
|
||||
}
|
||||
|
||||
private void ApplyQuickCallCategorySelection()
|
||||
{
|
||||
try
|
||||
{
|
||||
if (!NewTicketPillSelected)
|
||||
return;
|
||||
|
||||
if (!(QuickTicketSelection?.SelectedItem is QuickCallEntry quickCall))
|
||||
return;
|
||||
|
||||
if (!quickCall.CategoryId.HasValue || quickCall.CategoryId.Value == Guid.Empty)
|
||||
return;
|
||||
|
||||
var targetTicket = SelectedTicket ?? _selectTicketRelation;
|
||||
if (targetTicket.Infos == null)
|
||||
targetTicket.Infos = new Dictionary<string, string>(StringComparer.OrdinalIgnoreCase);
|
||||
|
||||
targetTicket.Infos[TicketInfoKeys.Category] = quickCall.CategoryId.Value.ToString();
|
||||
|
||||
if (ReferenceEquals(targetTicket, SelectedTicket))
|
||||
{
|
||||
TrySelectTicketCategoryFromTicketInfos();
|
||||
}
|
||||
else if (SelectedTicket == null && ReferenceEquals(targetTicket, _selectTicketRelation))
|
||||
{
|
||||
SelectedTicket = targetTicket;
|
||||
}
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
LogException(ex);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
private void UpdateTicketSelection()
|
||||
{
|
||||
@@ -1467,6 +1505,7 @@ namespace FasdDesktopUi.Basics.UserControls
|
||||
if (selectionPill.IsSelected)
|
||||
{
|
||||
SelectedTicket = _selectTicketRelation;
|
||||
ApplyQuickCallCategorySelection();
|
||||
}
|
||||
ValidateProperty(ValidationPropertyNames.SelectedTicket);
|
||||
ValidateProperty(ValidationPropertyNames.TicketSummaryTextBox);
|
||||
@@ -1695,17 +1734,11 @@ namespace FasdDesktopUi.Basics.UserControls
|
||||
["Priority"] = 2,
|
||||
};
|
||||
Guid quickcallId = Guid.Empty;
|
||||
Guid? quickCallClassificationId = null;
|
||||
if (QuickTicketSelection.SelectedItem is QuickCallEntry selectedQuickTicketItem)
|
||||
{
|
||||
//ticketValues.Add("Category", selectedQuickTicketItem.DisplayName);
|
||||
ticketValues.Add("QuickCallId", selectedQuickTicketItem.ID);
|
||||
Guid.TryParse(selectedQuickTicketItem.ID?.ToString(), out quickcallId);
|
||||
if (selectedQuickTicketItem.Classification.HasValue)
|
||||
{
|
||||
quickCallClassificationId = selectedQuickTicketItem.Classification;
|
||||
ticketValues["Classification"] = quickCallClassificationId.Value;
|
||||
}
|
||||
}
|
||||
var selectedCategoryId = GetSelectedCategoryGuid();
|
||||
if (selectedCategoryId.HasValue)
|
||||
@@ -1974,7 +2007,6 @@ namespace FasdDesktopUi.Basics.UserControls
|
||||
Summary = TicketSummaryTextBox.Text,
|
||||
DescriptionHtml = htmlCaseNotes.ToString(),
|
||||
Quickcall = quickcallId,
|
||||
Classification = quickCallClassificationId,
|
||||
CopyTemplates = string.IsNullOrWhiteSpace(copyStringHtml) ? copyString : copyStringHtml,
|
||||
SolutionHtml = solutionHtmlString,
|
||||
ErrorType = errorType,
|
||||
@@ -2727,6 +2759,7 @@ namespace FasdDesktopUi.Basics.UserControls
|
||||
private void QuickTicketSelection_SelectionChanged(object sender, SelectionChangedEventArgs e)
|
||||
{
|
||||
ValidateProperty(ValidationPropertyNames.QuickTicketSelection);
|
||||
ApplyQuickCallCategorySelection();
|
||||
}
|
||||
|
||||
private void TransferCaseNotesCheck_Unchecked(object sender, RoutedEventArgs e)
|
||||
|
||||
Reference in New Issue
Block a user