MH: vkm hamm stundenkonto
This commit is contained in:
@@ -235,14 +235,9 @@ namespace VkmHamm
|
||||
duration = item.RoundedDuration;
|
||||
}
|
||||
|
||||
if (item.ServiceDescription != null &&
|
||||
item.ServiceDescription.ServiceCategory != null)
|
||||
if (item.ServiceDescription != null && item.ServiceDescription.ServiceCategory != null)
|
||||
{
|
||||
<<<<<<< HEAD
|
||||
if (item.ServiceDescription.ServiceCategory.Name == "Arbeitszeit")
|
||||
=======
|
||||
if (item.ServiceDescription.ServiceCategory.Name == "Arbeitszeit" && !IsUrlaubAbsenceServiceRecord(item) && !IsKrankAbsenceServiceRecord(item))
|
||||
>>>>>>> master
|
||||
{
|
||||
arbeitszeit += duration;
|
||||
}
|
||||
@@ -278,55 +273,6 @@ namespace VkmHamm
|
||||
= 1 * (1 + 5/40)
|
||||
*/
|
||||
public override void CreateEmployeeDetails(MitarbeiterstundenkontoRO ro)
|
||||
<<<<<<< HEAD
|
||||
{
|
||||
base.CreateEmployeeDetails(ro);
|
||||
|
||||
if (ro.ReportStartDate >= new DateTime(2024, 02, 01) && ro.EmployeeDetailList.Count > 0)
|
||||
{
|
||||
foreach (var ed in ro.EmployeeDetailList)
|
||||
{
|
||||
// Da deren Abwesenheiten ServiceRecords (Arbeitszeit) sind und die trotzdem vom Soll abgezogen werden, hat man die Stunden von der Abwesenheit doppelt.
|
||||
// Daher muss nochmal die Anzahl Stunden von Abweseneheiten von den Überstunden abgezogen werden..
|
||||
if (ed.TageKrankheit.HasValue)
|
||||
{
|
||||
ed.Ueberstunden -= ed.TageKrankheit.Value * ed.SollProTag;
|
||||
ed.UeberstundenGesamt -= ed.TageKrankheit.Value * ed.SollProTag;
|
||||
}
|
||||
if (ed.TageUrlaub.HasValue)
|
||||
{
|
||||
ed.Ueberstunden -= ed.TageUrlaub.Value * ed.SollProTag;
|
||||
ed.UeberstundenGesamt -= ed.TageUrlaub.Value * ed.SollProTag;
|
||||
}
|
||||
|
||||
var contract = GetContractForDate(ed.Employee, ro.ReportStartDate, ro.ReportEndDate);
|
||||
if (contract != null)
|
||||
{
|
||||
var toleranzstundenVorFaktor = contract.ProbationPeriod2;
|
||||
|
||||
if (toleranzstundenVorFaktor.HasValue && toleranzstundenVorFaktor > 0)
|
||||
{
|
||||
if (ed.Ueberstunden > toleranzstundenVorFaktor.Value)
|
||||
{
|
||||
var ueberstundenFuerFaktor = ed.Ueberstunden.Value - toleranzstundenVorFaktor.Value;
|
||||
ed.Custom15 = ueberstundenFuerFaktor * 1.25m; // Auf Stunden, die den Korridor überschritten haben, kommt der Faktor 1,25 drauf
|
||||
|
||||
ed.Ueberstunden = toleranzstundenVorFaktor; // Überstunden werden dann auf die Korridorstunden gesetzt, da die Stunden mit Faktor extra dargestellt werden
|
||||
ed.UeberstundenGesamt += (ed.Ueberstunden + ed.Custom15) - (ed.Ueberstunden + ueberstundenFuerFaktor);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
protected override decimal? BerechneUeberstunden(MitarbeiterstundenkontoRO.EmployeeDetail ed, decimal? ueberstundenStd, Contract contract, DateTime start, DateTime ende)
|
||||
{
|
||||
if (start < new DateTime(2024, 02, 01))
|
||||
return ueberstundenStd;
|
||||
|
||||
=======
|
||||
{
|
||||
base.CreateEmployeeDetails(ro);
|
||||
|
||||
@@ -378,17 +324,13 @@ namespace VkmHamm
|
||||
if (start >= new DateTime(2024, 04, 01))
|
||||
{ };
|
||||
|
||||
>>>>>>> master
|
||||
if (ed.UeberstundenVormonat == null)
|
||||
ed.UeberstundenVormonat = 0;
|
||||
if (ed.UeberstundenGesamt == null)
|
||||
ed.UeberstundenGesamt = 0;
|
||||
|
||||
<<<<<<< HEAD
|
||||
var ueberstunden = ueberstundenStd - ed.UeberstundenVormonat - (ed.StundenSollMax - ed.StundenSollOhneUrlaubKrankheit);
|
||||
=======
|
||||
var ueberstunden = ueberstundenStd - ed.UeberstundenVormonat;
|
||||
>>>>>>> master
|
||||
|
||||
|
||||
if (contract.ProbationPeriod2.HasValue && contract.ProbationPeriod2.Value > 0 && ueberstunden > contract.ProbationPeriod2.Value)
|
||||
{
|
||||
|
||||
@@ -806,6 +806,7 @@ namespace VkmHamm
|
||||
this.xrTableCell30.StylePriority.UseBorders = false;
|
||||
this.xrTableCell30.StylePriority.UseTextAlignment = false;
|
||||
this.xrTableCell30.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleRight;
|
||||
this.xrTableCell30.TextFormatString = "{0:0.00}";
|
||||
this.xrTableCell30.Weight = 0.095076208582274377D;
|
||||
//
|
||||
// xrTableCell32
|
||||
|
||||
Reference in New Issue
Block a user