feat: expand cockpit integrations and support workflows
Add Phoenix remote desktop, action connector, documentation engine, and gamification support. Refactor support-case processing and search/action UI, and update installer assets and dependencies.
This commit is contained in:
@@ -15,18 +15,18 @@ namespace FasdDesktopUi.Basics.UserControls
|
||||
|
||||
public event EventHandler<EventArgs> OnPauseStarted;
|
||||
|
||||
private static List<DateTime> startTimes = new List<DateTime>();
|
||||
private static List<DateTime> endTimes = new List<DateTime>();
|
||||
private static List<DateTime> pausedTimesStart = new List<DateTime>();
|
||||
private static List<DateTime> pausedTimesEnd = new List<DateTime>();
|
||||
private static readonly List<DateTime> _startTimes = new List<DateTime>();
|
||||
private static readonly List<DateTime> _endTimes = new List<DateTime>();
|
||||
private static readonly List<DateTime> _pausedTimesStart = new List<DateTime>();
|
||||
private static readonly List<DateTime> _pausedTimesEnd = new List<DateTime>();
|
||||
|
||||
public static List<cF4SDCaseTime> caseTimes = new List<cF4SDCaseTime>();
|
||||
private static Dictionary<string, object> finalWorkingTimes = new Dictionary<string, object>();
|
||||
public static List<cF4SDCaseTime> CaseTimes = new List<cF4SDCaseTime>();
|
||||
private static Dictionary<string, object> _finalWorkingTimes = new Dictionary<string, object>();
|
||||
|
||||
private static DispatcherTimer timer;
|
||||
private static TimeSpan elapsedTime;
|
||||
private static TimeSpan totalPausedTime = TimeSpan.Zero;
|
||||
private static TimeSpan pauseDuration;
|
||||
private static DispatcherTimer _timer;
|
||||
private static TimeSpan _elapsedTime;
|
||||
private static TimeSpan _totalPausedTime = TimeSpan.Zero;
|
||||
private static TimeSpan _pauseDuration;
|
||||
|
||||
#endregion
|
||||
|
||||
@@ -39,13 +39,13 @@ namespace FasdDesktopUi.Basics.UserControls
|
||||
|
||||
public static void ResetTimer()
|
||||
{
|
||||
startTimes.Clear();
|
||||
endTimes.Clear();
|
||||
pausedTimesEnd.Clear();
|
||||
pausedTimesStart.Clear();
|
||||
finalWorkingTimes.Clear();
|
||||
elapsedTime = TimeSpan.Zero;
|
||||
caseTimes.Clear();
|
||||
_startTimes.Clear();
|
||||
_endTimes.Clear();
|
||||
_pausedTimesEnd.Clear();
|
||||
_pausedTimesStart.Clear();
|
||||
_finalWorkingTimes.Clear();
|
||||
_elapsedTime = TimeSpan.Zero;
|
||||
CaseTimes.Clear();
|
||||
|
||||
StartTimer();
|
||||
}
|
||||
@@ -54,8 +54,8 @@ namespace FasdDesktopUi.Basics.UserControls
|
||||
{
|
||||
try
|
||||
{
|
||||
startTimes?.Add(DateTime.UtcNow);
|
||||
timer?.Start();
|
||||
_startTimes?.Add(DateTime.UtcNow);
|
||||
_timer?.Start();
|
||||
}
|
||||
catch (Exception E)
|
||||
{
|
||||
@@ -67,8 +67,8 @@ namespace FasdDesktopUi.Basics.UserControls
|
||||
{
|
||||
try
|
||||
{
|
||||
endTimes?.Add(DateTime.UtcNow);
|
||||
timer?.Stop();
|
||||
_endTimes?.Add(DateTime.UtcNow);
|
||||
_timer?.Stop();
|
||||
UpdateTimerControl();
|
||||
}
|
||||
catch (Exception E)
|
||||
@@ -83,7 +83,7 @@ namespace FasdDesktopUi.Basics.UserControls
|
||||
{
|
||||
ResetTimer();
|
||||
|
||||
timer = new DispatcherTimer(TimeSpan.FromSeconds(1.0), DispatcherPriority.Loaded, new EventHandler((s, args) =>
|
||||
_timer = new DispatcherTimer(TimeSpan.FromSeconds(1.0), DispatcherPriority.Loaded, new EventHandler((s, args) =>
|
||||
{
|
||||
try { UpdateTimerControl(); }
|
||||
catch { }
|
||||
@@ -100,8 +100,8 @@ namespace FasdDesktopUi.Basics.UserControls
|
||||
{
|
||||
try
|
||||
{
|
||||
TimerControl.Text = elapsedTime.ToString(@"hh\:mm\:ss");
|
||||
elapsedTime = elapsedTime.Add(TimeSpan.FromSeconds(1.0));
|
||||
TimerControl.Text = _elapsedTime.ToString(@"hh\:mm\:ss");
|
||||
_elapsedTime = _elapsedTime.Add(TimeSpan.FromSeconds(1.0));
|
||||
}
|
||||
catch (Exception E)
|
||||
{
|
||||
@@ -113,44 +113,44 @@ namespace FasdDesktopUi.Basics.UserControls
|
||||
{
|
||||
try
|
||||
{
|
||||
var currentDate = DateTime.Now.Date.ToString("d");
|
||||
var startDateTime = startTimes.First();
|
||||
var currentDate = DateTime.UtcNow.Date.ToString("d");
|
||||
var startDateTime = _startTimes.First();
|
||||
var endDateTime = DateTime.UtcNow;
|
||||
var bruttoWorkingTime = TimeSpan.Zero;
|
||||
var nettoWorkingTime = TimeSpan.Zero;
|
||||
|
||||
if (pausedTimesStart.Count == 0)
|
||||
if (_pausedTimesStart.Count == 0)
|
||||
{
|
||||
totalPausedTime = TimeSpan.Zero;
|
||||
_totalPausedTime = TimeSpan.Zero;
|
||||
}
|
||||
|
||||
if (pausedTimesEnd.Count > 0)
|
||||
if (_pausedTimesEnd.Count > 0)
|
||||
{
|
||||
totalPausedTime = TimeSpan.Zero;
|
||||
_totalPausedTime = TimeSpan.Zero;
|
||||
|
||||
for (int i = 0; i < pausedTimesStart.Count; i++)
|
||||
for (int i = 0; i < _pausedTimesStart.Count; i++)
|
||||
{
|
||||
var start = pausedTimesStart[i];
|
||||
var end = pausedTimesEnd[i];
|
||||
var start = _pausedTimesStart[i];
|
||||
var end = _pausedTimesEnd[i];
|
||||
|
||||
pauseDuration = end - start;
|
||||
_pauseDuration = end - start;
|
||||
|
||||
totalPausedTime += pauseDuration;
|
||||
_totalPausedTime += _pauseDuration;
|
||||
}
|
||||
}
|
||||
|
||||
bruttoWorkingTime = endDateTime - startDateTime;
|
||||
|
||||
nettoWorkingTime = bruttoWorkingTime - totalPausedTime;
|
||||
nettoWorkingTime = bruttoWorkingTime - _totalPausedTime;
|
||||
|
||||
finalWorkingTimes = new Dictionary<string, object>()
|
||||
_finalWorkingTimes = new Dictionary<string, object>()
|
||||
{
|
||||
{"CurrentDate", currentDate},
|
||||
{"StartTime", startTimes.First()},
|
||||
{"StartTime", _startTimes.First()},
|
||||
{"EndTime", endDateTime },
|
||||
{"BruttoWorkingTime", bruttoWorkingTime },
|
||||
{"NettoWorkingTime", nettoWorkingTime.TotalSeconds },
|
||||
{"TotalPausedTime", totalPausedTime }
|
||||
{"TotalPausedTime", _totalPausedTime }
|
||||
};
|
||||
}
|
||||
catch (Exception E)
|
||||
@@ -158,7 +158,7 @@ namespace FasdDesktopUi.Basics.UserControls
|
||||
LogException(E);
|
||||
}
|
||||
|
||||
return finalWorkingTimes;
|
||||
return _finalWorkingTimes;
|
||||
}
|
||||
|
||||
#endregion
|
||||
@@ -169,13 +169,13 @@ namespace FasdDesktopUi.Basics.UserControls
|
||||
{
|
||||
try
|
||||
{
|
||||
if (timer?.IsEnabled == true)
|
||||
if (_timer?.IsEnabled == true)
|
||||
return;
|
||||
|
||||
timer?.Start();
|
||||
pausedTimesEnd?.Add(DateTime.UtcNow);
|
||||
_timer?.Start();
|
||||
_pausedTimesEnd?.Add(DateTime.UtcNow);
|
||||
|
||||
caseTimes.Add(new cF4SDCaseTime()
|
||||
CaseTimes.Add(new cF4SDCaseTime()
|
||||
{
|
||||
StatusId = CaseStatus.InProgress,
|
||||
CaseTime = DateTime.UtcNow
|
||||
@@ -191,10 +191,10 @@ namespace FasdDesktopUi.Basics.UserControls
|
||||
{
|
||||
try
|
||||
{
|
||||
timer?.Stop();
|
||||
pausedTimesStart?.Add(DateTime.UtcNow);
|
||||
_timer?.Stop();
|
||||
_pausedTimesStart?.Add(DateTime.UtcNow);
|
||||
|
||||
caseTimes.Add(new cF4SDCaseTime()
|
||||
CaseTimes.Add(new cF4SDCaseTime()
|
||||
{
|
||||
StatusId = CaseStatus.OnHold,
|
||||
CaseTime = DateTime.UtcNow
|
||||
@@ -209,17 +209,9 @@ namespace FasdDesktopUi.Basics.UserControls
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
private void Border_MouseLeftButtonUp(object sender, MouseButtonEventArgs e)
|
||||
{
|
||||
PauseButton_Click();
|
||||
}
|
||||
private void Border_Click(object sender, InputEventArgs e)
|
||||
=> PauseButton_Click();
|
||||
|
||||
#endregion
|
||||
|
||||
private void Border_TouchDown(object sender, TouchEventArgs e)
|
||||
{
|
||||
PauseButton_Click();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user