59 lines
2.3 KiB
C#
59 lines
2.3 KiB
C#
using BeWo.Data.Entities;
|
|
using BS.Shared.Core;
|
|
using System;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using System.Text;
|
|
using System.Threading.Tasks;
|
|
|
|
namespace AutismusKoelnBonn.Service
|
|
{
|
|
public class AbrechenbarkeitenHelper
|
|
{
|
|
public static Dictionary<string, bool> CheckAbrechenbarkeiten(IList<VarFieldValue> varFieldValueList)
|
|
{
|
|
Dictionary<string, bool> abrechenbarkeitenDict = new Dictionary<string, bool>();
|
|
|
|
bool wegezeitAbrechenbar = false;
|
|
bool ausfallzeitAbrechenbar = false;
|
|
bool mittelbarAbrechenbar = false;
|
|
|
|
foreach (var vv in varFieldValueList)
|
|
{
|
|
var varFieldValue = Utils.XMLDeserializeFromString(vv.SerializedValue, Type.GetType(vv.TypeName));
|
|
if (varFieldValue != null)
|
|
{
|
|
switch (vv.VarFieldDefOid)
|
|
{
|
|
case 1: // Wegzeit
|
|
wegezeitAbrechenbar = varFieldValue != null && varFieldValue.ToString() == "Ja" ? true : false;
|
|
break;
|
|
case 2: // Ausfallzeit
|
|
ausfallzeitAbrechenbar = varFieldValue != null && varFieldValue.ToString() == "Ja" ? true : false;
|
|
break;
|
|
case 3: // Mittelbar
|
|
mittelbarAbrechenbar = varFieldValue != null && varFieldValue.ToString() == "Ja" ? true : false;
|
|
break;
|
|
}
|
|
}
|
|
}
|
|
|
|
abrechenbarkeitenDict.Add("Wegezeiten", wegezeitAbrechenbar);
|
|
abrechenbarkeitenDict.Add("Ausfallzeiten", ausfallzeitAbrechenbar);
|
|
abrechenbarkeitenDict.Add("Mittelbar", mittelbarAbrechenbar);
|
|
|
|
return abrechenbarkeitenDict;
|
|
}
|
|
|
|
//public static decimal? GetWegezeitBetrag(IList<VarFieldValue> varFieldValueList)
|
|
//{
|
|
// var betragVarField = varFieldValueList.FirstOrDefault(vv => vv.VarFieldDefOid == 4);
|
|
|
|
// if (betragVarField != null)
|
|
// return Convert.ToDecimal(Utils.XMLDeserializeFromString(betragVarField.SerializedValue, Type.GetType(betragVarField.TypeName)));
|
|
// else
|
|
// return 0m;
|
|
//}
|
|
}
|
|
}
|