78 lines
2.6 KiB
C#
78 lines
2.6 KiB
C#
using BeWo.Report.ReportObjects;
|
|
using System;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using System.Text;
|
|
using System.Threading.Tasks;
|
|
|
|
namespace Fortis
|
|
{
|
|
public class FortisServiceRecord
|
|
{
|
|
public double MinutenH { get; set; }
|
|
public double MinutenB { get; set; }
|
|
public double MinutenT { get; set; }
|
|
public double MinutenGD { get; set; }
|
|
public double MinutenKL { get; set; }
|
|
public double MinutenAK { get; set; }
|
|
public int AnzahlMA { get; set; }
|
|
public double MinutenGI { get; set; }
|
|
public int Groesse { get; set; }
|
|
public DateTime? FehlkontaktBeginn { get; set; }
|
|
public DateTime? FehlkontaktEnde { get; set; }
|
|
public double FehlkontaktMinuten { get; set; }
|
|
|
|
internal static FortisServiceRecord CreateFromServiceDescription(String serviceCategory, String serviceDescription, double minutes, DateTime recordStart, DateTime recordEnd)
|
|
{
|
|
var fsr = new FortisServiceRecord();
|
|
|
|
if (serviceDescription.Contains("Wohnraum"))
|
|
{
|
|
fsr.MinutenH += minutes;
|
|
}
|
|
else if (serviceDescription.Contains("Sozialraum"))
|
|
{
|
|
fsr.MinutenB += minutes;
|
|
}
|
|
else if (serviceDescription.Contains("Telefon"))
|
|
{
|
|
fsr.MinutenT += minutes;
|
|
}
|
|
else if (serviceDescription.Contains("Dienststelle"))
|
|
{
|
|
fsr.MinutenGD += minutes;
|
|
}
|
|
else if (serviceDescription.Contains("abgesagt"))
|
|
{
|
|
fsr.FehlkontaktBeginn = recordStart;
|
|
fsr.FehlkontaktEnde = recordEnd;
|
|
fsr.FehlkontaktMinuten = minutes;
|
|
}
|
|
else if (serviceDescription.Contains("pool") || serviceCategory.Contains("WG-Aktivität") || serviceCategory.Contains("WG Aktivität"))
|
|
{
|
|
fsr.MinutenGI += minutes;
|
|
}
|
|
else if (serviceDescription.Contains("Kompensatorisch") || serviceDescription.Contains("Leistung im Auftrag"))
|
|
{
|
|
fsr.MinutenKL += minutes;
|
|
}
|
|
else if (serviceDescription.Contains("Krankenhaus"))
|
|
{
|
|
fsr.MinutenAK += minutes;
|
|
}
|
|
else
|
|
{
|
|
//nichts zum Abrechnen vorhanden
|
|
return null;
|
|
}
|
|
|
|
return fsr;
|
|
}
|
|
|
|
public double BerechneDirekteMinutenGesamt()
|
|
{
|
|
return MinutenH + MinutenB + MinutenT + MinutenGD + MinutenKL + MinutenAK + MinutenGI;
|
|
}
|
|
}
|
|
}
|