MH: Stundenkonto halbe Tage bei Arbeitszeiten
This commit is contained in:
@@ -2419,15 +2419,19 @@ namespace BeWo.Report.ReportObjects
|
||||
foreach (var at in emp.AbsenceTimes)
|
||||
{
|
||||
|
||||
if ((!at.Start.HasValue || at.Start.Value <= arbeitstagEnde.Date) &&
|
||||
(!at.End.HasValue || at.End.Value >= arbeitstagStart.Date))
|
||||
{
|
||||
if ((!at.Start.HasValue || at.Start.Value <= arbeitstagEnde) && (!at.End.HasValue || at.End.Value >= arbeitstagStart))
|
||||
{
|
||||
var faktor = GetFeiertagsFaktor(arbeitstagStart);
|
||||
|
||||
if (faktor < 1)
|
||||
{
|
||||
var hours = (decimal)arbeitstagEnde.Subtract(arbeitstagStart).TotalHours;
|
||||
if (faktor != 0)
|
||||
|
||||
// Prüfen, ob halber Tag
|
||||
if ((at.Start.HasValue && at.Start.Value.Date != at.Start.Value) || (at.End.HasValue && at.End.Value.Date != at.End.Value))
|
||||
hours /= 2;
|
||||
|
||||
if (faktor != 0)
|
||||
{
|
||||
hours *= faktor;
|
||||
}
|
||||
@@ -2799,10 +2803,10 @@ namespace BeWo.Report.ReportObjects
|
||||
String dateStr1 = String.Format("{0:dd.MM.yyyy} {1}", tag, ae.UhrzeitVon);
|
||||
String dateStr2 = String.Format("{0:dd.MM.yyyy} {1}", tag, ae.UhrzeitBis);
|
||||
|
||||
DateTime date1;
|
||||
DateTime date2;
|
||||
DateTime date1; // Startzeit der AZ
|
||||
DateTime date2; // Endzeit der AZ
|
||||
|
||||
if (DateTime.TryParse(dateStr1, out date1) && DateTime.TryParse(dateStr2, out date2))
|
||||
if (DateTime.TryParse(dateStr1, out date1) && DateTime.TryParse(dateStr2, out date2))
|
||||
{
|
||||
String dayKey = String.Format("{0:dd.MM.yyyy}", date1);
|
||||
if (!daysDict.ContainsKey(dayKey))
|
||||
@@ -2824,16 +2828,19 @@ namespace BeWo.Report.ReportObjects
|
||||
|
||||
foreach (var at in emp.AbsenceTimes)
|
||||
{
|
||||
|
||||
if ((!at.Start.HasValue || at.Start.Value <= arbeitstagEnde.Date) &&
|
||||
(!at.End.HasValue || at.End.Value >= arbeitstagStart.Date))
|
||||
if ((!at.Start.HasValue || at.Start.Value <= arbeitstagEnde) && (!at.End.HasValue || at.End.Value >= arbeitstagStart))
|
||||
{
|
||||
|
||||
var faktor = GetFeiertagsFaktor(arbeitstagStart);
|
||||
|
||||
if (faktor < 1)
|
||||
{
|
||||
var tag = 1m;
|
||||
var tag = 1m;
|
||||
|
||||
// Prüfen, ob halber Tag
|
||||
if ((at.Start.HasValue && at.Start.Value.Date != at.Start.Value) || (at.End.HasValue && at.End.Value.Date != at.End.Value))
|
||||
tag = 0.5m;
|
||||
|
||||
if (faktor != 0)
|
||||
{
|
||||
tag *= faktor;
|
||||
|
||||
Reference in New Issue
Block a user