Files
BeWoPlaner/BeWo/View/Controls/DPCtrlDienstTooltip.xaml.cs

71 lines
2.7 KiB
C#

using System;
using System.Collections.Generic;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Input;
using System.Windows.Media;
using BeWo.View.Detail;
using BeWo.View.Detail.Report;
using BeWo.ViewModel;
using BS.Shared.DataContracts;
namespace BeWo.View.Controls
{
/// <summary>
/// Interaction logic for DienstplanerControl.xaml
/// </summary>
public partial class DPCtrlDienstTooltip : UserControl
{
public DPCtrlDienstTooltip(DienstInfoDC dienst, double dauer, string bemerkung, string[] zeiten, OvertimeDC overtime, AbsenceTimeDC absence)
{
InitializeComponent();
TxtDienst.Text = $"{dienst.DienstName} ({dienst.Kurz})";
TxtEnde.Text = zeiten[1];
TxtEnde.Foreground = dienst.Ende.ToString("HH:mm").Equals(zeiten[1]) ? TxtDienst.Foreground : Brushes.CornflowerBlue;
TxtPausendauer.Text = dienst.Pause.ToString();
TxtStart.Text = zeiten[0];
TxtStart.Foreground = dienst.Start.ToString("HH:mm").Equals(zeiten[0]) ? TxtDienst.Foreground : Brushes.CornflowerBlue;
TxtDauer.Text = string.Format("{0:0.00}", dauer);
TxtBemerkung.Text = bemerkung;
if (overtime != null)
{
TxtUeberstunden.Text = string.Format("{0:0.00}", overtime.Betrag);
TxtAuszahlungsart.Text = overtime.Auszahlungsart != null ? overtime.Auszahlungsart.Name : "-";
TxtUeberstunden.Visibility = Visibility.Visible;
TxtAuszahlungsart.Visibility = Visibility.Visible;
lblUeberstunden.Visibility = Visibility.Visible;
lblAuszahlungsart.Visibility = Visibility.Visible;
sepUeberstunden.Visibility = Visibility.Visible;
}
if (absence != null)
{
string tooltipString = "";
var start = absence.Start.Value;
var end = absence.End.Value;
var startArray = start.ToString().Split(' ');
var endArray = end.ToString().Split(' ');
if (start.Date == end.Date)
{
if (start.TimeOfDay == end.TimeOfDay)
tooltipString = "ganzer Tag";
else
tooltipString = "halber Tag";
}
else
tooltipString = string.Format("{0} - {1}", startArray[0], endArray[0]);
TxtUrlaub.Text = tooltipString;
lblUrlaub.Visibility = Visibility.Visible;
TxtUrlaub.Visibility = Visibility.Visible;
sepUrlaub.Visibility = Visibility.Visible;
}
}
}
}