diff --git a/ReportImp/DiakonieKKKleve/DiakonieKKKleve.csproj b/ReportImp/DiakonieKKKleve/DiakonieKKKleve.csproj
index 1069454e5..06961fe38 100644
--- a/ReportImp/DiakonieKKKleve/DiakonieKKKleve.csproj
+++ b/ReportImp/DiakonieKKKleve/DiakonieKKKleve.csproj
@@ -155,6 +155,7 @@
FinanzauswertungVP.cs
+
Component
diff --git a/ReportImp/DiakonieKKKleve/Invoicing/DiakoneKKKleveInvoiceFactory.cs b/ReportImp/DiakonieKKKleve/Invoicing/DiakoneKKKleveInvoiceFactory.cs
index 1924af9c6..ab232b6e8 100644
--- a/ReportImp/DiakonieKKKleve/Invoicing/DiakoneKKKleveInvoiceFactory.cs
+++ b/ReportImp/DiakonieKKKleve/Invoicing/DiakoneKKKleveInvoiceFactory.cs
@@ -49,7 +49,7 @@ namespace DiakonieKKKleve.Invoicing
}
if (!String.IsNullOrEmpty(sd.Name) && sd.Name.Contains("Therapie"))
{
- var ic = new SoziotherapieInvoiceCreation();
+ var ic = new DiakonieKKKleveSoziotherapieInvoiceCreation();
if (specificId == "FinanzauswertungOhnePauschale")
{
ic.ErstelleHausbesuchspauschale = false;
diff --git a/ReportImp/ZukunftLeben/Invoicing/SoziotherapieInvoiceCreation.cs b/ReportImp/ZukunftLeben/Invoicing/SoziotherapieInvoiceCreation.cs
index 661b4d345..daaf75586 100644
--- a/ReportImp/ZukunftLeben/Invoicing/SoziotherapieInvoiceCreation.cs
+++ b/ReportImp/ZukunftLeben/Invoicing/SoziotherapieInvoiceCreation.cs
@@ -1,132 +1,132 @@
-using System;
-using System.Collections.Generic;
-using BeWo.Data.Entities;
-using BeWo.Service.Invoicing;
-using BS.Shared.Core;
-using BS.Shared.DataContracts;
-using BS.Shared.DataContracts.Compact;
-using BS.Shared.Extensions;
-using BS.Shared.Services;
-
-namespace ZukunftLeben.Invoicing
-{
- public class SoziotherapieInvoiceCreation : InvoiceCreation
- {
+using System;
+using System.Collections.Generic;
+using BeWo.Data.Entities;
+using BeWo.Service.Invoicing;
+using BS.Shared.Core;
+using BS.Shared.DataContracts;
+using BS.Shared.DataContracts.Compact;
+using BS.Shared.Extensions;
+using BS.Shared.Services;
+
+namespace ZukunftLeben.Invoicing
+{
+ public class SoziotherapieInvoiceCreation : InvoiceCreation
+ {
public override void SetInvoiceId(ServiceInvoice invoice)
{
invoice.InvoiceBase.InvoiceId = "RechnungSoziotherapie";
invoice.InvoiceBase.InvoiceTypeText = "Soziotherapie";
- }
-
- public override ServiceInvoice CreateSingleInvoice(int invoiceCounter, CostBearer costBearer, DateTimeSpan invoicePeriod, CompactSupportConceptDC supportConcept, List serviceRecords)
- {
- var invoice = new ServiceInvoice();
-
- var supportConceptList = new List { supportConcept };
-
- SetSenderInformation(invoice);
- SetInvoiceBaseData(invoiceCounter, invoice, costBearer, invoicePeriod, supportConceptList);
- SetSingleInvoiceBaseData(invoiceCounter, invoice, costBearer, invoicePeriod, supportConcept);
-
- SetRecipientInformation(invoice, costBearer);
-
- SetServiceInvoicePeriods(invoice, invoice.InvoiceBase.CostBearer2SupportConcept, invoicePeriod, serviceRecords);
-
- SetServiceInvoicePeriodAmounts(invoice);
-
- if (invoicePeriod == null)
- {
- SetAmountAdvancePayments(invoice);
- SetAmountEquityContribution(invoice);
- }
-
- base.CreateSingleInvoice(invoiceCounter, costBearer, invoicePeriod, supportConcept, serviceRecords);
- return invoice;
- }
-
- public override IList CreateInvoiceItems(List serviceRecordsInPeriod, DateTimeSpan invoicePeriod, SupportConceptApprovalPeriod scap, Calculations calc)
- {
- var list = base.CreateInvoiceItems(serviceRecordsInPeriod, invoicePeriod, scap, calc);
- var ii = CreateHausbesuchspauschale(serviceRecordsInPeriod, invoicePeriod, scap);
- list.AddRange(ii);
-
- return list;
- }
-
- public override InvoiceItem CreateInvoiceItem(ServiceRecordDC iServiceRecord, SupportConceptApprovalPeriod scap, Calculations calc)
- {
- var ii = base.CreateInvoiceItem(iServiceRecord, scap, calc);
- ii.ItemDescription = iServiceRecord.ServiceDescription.Name;
-
- if (ii.ItemDescription.ToLower().Contains("gruppe"))
+ }
+
+ public override ServiceInvoice CreateSingleInvoice(int invoiceCounter, CostBearer costBearer, DateTimeSpan invoicePeriod, CompactSupportConceptDC supportConcept, List serviceRecords)
+ {
+ var invoice = new ServiceInvoice();
+
+ var supportConceptList = new List { supportConcept };
+
+ SetSenderInformation(invoice);
+ SetInvoiceBaseData(invoiceCounter, invoice, costBearer, invoicePeriod, supportConceptList);
+ SetSingleInvoiceBaseData(invoiceCounter, invoice, costBearer, invoicePeriod, supportConcept);
+
+ SetRecipientInformation(invoice, costBearer);
+
+ SetServiceInvoicePeriods(invoice, invoice.InvoiceBase.CostBearer2SupportConcept, invoicePeriod, serviceRecords);
+
+ SetServiceInvoicePeriodAmounts(invoice);
+
+ if (invoicePeriod == null)
+ {
+ SetAmountAdvancePayments(invoice);
+ SetAmountEquityContribution(invoice);
+ }
+
+ base.CreateSingleInvoice(invoiceCounter, costBearer, invoicePeriod, supportConcept, serviceRecords);
+ return invoice;
+ }
+
+ public override IList CreateInvoiceItems(List serviceRecordsInPeriod, DateTimeSpan invoicePeriod, SupportConceptApprovalPeriod scap, Calculations calc)
+ {
+ var list = base.CreateInvoiceItems(serviceRecordsInPeriod, invoicePeriod, scap, calc);
+ var ii = CreateHausbesuchspauschale(serviceRecordsInPeriod, invoicePeriod, scap);
+ list.AddRange(ii);
+
+ return list;
+ }
+
+ public override InvoiceItem CreateInvoiceItem(ServiceRecordDC iServiceRecord, SupportConceptApprovalPeriod scap, Calculations calc)
+ {
+ var ii = base.CreateInvoiceItem(iServiceRecord, scap, calc);
+ ii.ItemDescription = iServiceRecord.ServiceDescription.Name;
+
+ if (ii.ItemDescription.ToLower().Contains("gruppe"))
{
// nur zur Info: Gruppen werden lt. Frau Klix zunächst noch nicht verwendet
- if (iServiceRecord.RoundedDuration <= 45)
+ if (iServiceRecord.RoundedDuration <= 45)
ii.UnitDescription = "GPos: 2002678";
- else if (iServiceRecord.RoundedDuration <= 60)
+ else if (iServiceRecord.RoundedDuration <= 60)
ii.UnitDescription = "GPos: 2002677";
- else
+ else
ii.UnitDescription = "GPos: 2002672"; // 90 min, 2-5 Personen
ii.AmountPerUnit = GetGruppenPreis(scap.CostBearer2SupportConcept, iServiceRecord.Start.Value);
- ii.AmountTotal = ii.AmountPerUnit * ii.UnitCount;
- ii.GrossAmountTotal = ii.AmountTotal;
- }
- else
- {
- ii.AmountPerUnit = GetEinzelPreis(scap.CostBearer2SupportConcept, iServiceRecord.Start.Value);
- ii.AmountTotal = ii.AmountPerUnit * ii.UnitCount;
- ii.GrossAmountTotal = ii.AmountTotal;
-
- if (ii.ItemDescription.ToLower().Contains("video"))
- {
- if (iServiceRecord.RoundedDuration <= 30)
- {
- ii.UnitDescription = "GPos: 2001616";
- }
- else
- {
- ii.UnitDescription = "GPos: 2001615";
- }
- }
- else if (ii.ItemDescription.ToLower().Contains("telefonat"))
- {
- if (iServiceRecord.RoundedDuration <= 30)
- {
- ii.UnitDescription = "GPos: 2001618";
- }
- else
- {
- ii.UnitDescription = "GPos: 2001617";
- }
- }
- else if (ii.ItemDescription.ToLower().Contains("aufsuchende einheit"))
- {
- if (iServiceRecord.RoundedDuration <= 10)
- {
- ii.UnitDescription = "GPos: 2001613 / 2009690";
- }
- else if (iServiceRecord.RoundedDuration <= 30)
- {
- ii.UnitDescription = "GPos: 2001612 / 2009690";
- }
- else if (iServiceRecord.RoundedDuration <= 45)
- {
- ii.UnitDescription = "GPos: 2001611 / 2009690";
- }
- else
- {
- ii.UnitDescription = "GPos: 2001610 / 2009690";
- }
- }
- else if (ii.ItemDescription.ToLower().Contains("aufsuchende probatorik"))
- {
+ ii.AmountTotal = ii.AmountPerUnit * ii.UnitCount;
+ ii.GrossAmountTotal = ii.AmountTotal;
+ }
+ else
+ {
+ ii.AmountPerUnit = GetEinzelPreis(scap.CostBearer2SupportConcept, iServiceRecord.Start.Value);
+ ii.AmountTotal = ii.AmountPerUnit * ii.UnitCount;
+ ii.GrossAmountTotal = ii.AmountTotal;
+
+ if (ii.ItemDescription.ToLower().Contains("video"))
+ {
+ if (iServiceRecord.RoundedDuration <= 30)
+ {
+ ii.UnitDescription = "GPos: 2001616";
+ }
+ else
+ {
+ ii.UnitDescription = "GPos: 2001615";
+ }
+ }
+ else if (ii.ItemDescription.ToLower().Contains("telefonat"))
+ {
+ if (iServiceRecord.RoundedDuration <= 30)
+ {
+ ii.UnitDescription = "GPos: 2001618";
+ }
+ else
+ {
+ ii.UnitDescription = "GPos: 2001617";
+ }
+ }
+ else if (ii.ItemDescription.ToLower().Contains("aufsuchende einheit"))
+ {
+ if (iServiceRecord.RoundedDuration <= 10)
+ {
+ ii.UnitDescription = "GPos: 2001613 / 2009690";
+ }
+ else if (iServiceRecord.RoundedDuration <= 30)
+ {
+ ii.UnitDescription = "GPos: 2001612 / 2009690";
+ }
+ else if (iServiceRecord.RoundedDuration <= 45)
+ {
+ ii.UnitDescription = "GPos: 2001611 / 2009690";
+ }
+ else
+ {
+ ii.UnitDescription = "GPos: 2001610 / 2009690";
+ }
+ }
+ else if (ii.ItemDescription.ToLower().Contains("aufsuchende probatorik"))
+ {
ii.UnitDescription = "GPos: 2001607 / 2009690";
- }
+ }
else if (ii.ItemDescription.ToLower().Contains("büroprobatorik"))
{
ii.UnitDescription = "GPos: 2001607";
- }
- else if (ii.ItemDescription.ToLower().Contains("büroeinheit"))
+ }
+ else if (ii.ItemDescription.ToLower().Contains("büroeinheit"))
{
if (iServiceRecord.RoundedDuration <= 10)
{
@@ -147,111 +147,111 @@ namespace ZukunftLeben.Invoicing
}
}
- return ii;
- }
-
- public virtual IList CreateHausbesuchspauschale(List serviceRecordsInPeriod, DateTimeSpan invoicePeriod, SupportConceptApprovalPeriod scap)
- {
- IList items = new List();
- decimal hausbesuchspauschale = 8.53m;
+ return ii;
+ }
+
+ public virtual IList CreateHausbesuchspauschale(List serviceRecordsInPeriod, DateTimeSpan invoicePeriod, SupportConceptApprovalPeriod scap)
+ {
+ IList items = new List();
+ decimal hausbesuchspauschale = 8.53m;
if (scap != null && invoicePeriod != null)
{
- hausbesuchspauschale = GetHausbesuchspauschale(scap.CostBearer2SupportConcept, invoicePeriod.StartDate);
- }
- int countHausbesuch = 0;
- foreach (var sr in serviceRecordsInPeriod)
- {
- if (sr.ServiceDescription != null && sr.ServiceDescription.Name != null && sr.ServiceDescription.Name.ToLower().Contains("aufsuchend"))
- {
- countHausbesuch++;
- }
- }
-
- if (countHausbesuch > 0)
- {
- var invoiceItem = new InvoiceItem();
-
- decimal anzahlHausbesuche = countHausbesuch;
-
- invoiceItem.AmountPerUnit = hausbesuchspauschale;
- invoiceItem.UnitCount = anzahlHausbesuche;
- invoiceItem.AmountTotal = anzahlHausbesuche * hausbesuchspauschale;
+ hausbesuchspauschale = GetHausbesuchspauschale(scap.CostBearer2SupportConcept, invoicePeriod.StartDate);
+ }
+ int countHausbesuch = 0;
+ foreach (var sr in serviceRecordsInPeriod)
+ {
+ if (sr.ServiceDescription != null && sr.ServiceDescription.Name != null && sr.ServiceDescription.Name.ToLower().Contains("aufsuchend"))
+ {
+ countHausbesuch++;
+ }
+ }
+
+ if (countHausbesuch > 0)
+ {
+ var invoiceItem = new InvoiceItem();
+
+ decimal anzahlHausbesuche = countHausbesuch;
+
+ invoiceItem.AmountPerUnit = hausbesuchspauschale;
+ invoiceItem.UnitCount = anzahlHausbesuche;
+ invoiceItem.AmountTotal = anzahlHausbesuche * hausbesuchspauschale;
if (invoicePeriod != null)
{
- invoiceItem.ItemPeriodStart = invoicePeriod.StartDate;
+ invoiceItem.ItemPeriodStart = invoicePeriod.StartDate;
invoiceItem.ItemPeriodEnd = invoicePeriod.EndDate;
- }
- invoiceItem.RateFactor = null;
- invoiceItem.GrossAmountTotal = invoiceItem.AmountTotal;
- invoiceItem.ItemDescription = "Hausbesuchspauschale";
- invoiceItem.UnitDescription = "GPos: 2009690";
- if (scap != null)
- invoiceItem.SupportConceptApprovalPeriodOid = scap.Oid;
-
- items.Add(invoiceItem);
- }
- return items;
- }
-
- private decimal GetHausbesuchspauschale(CostBearer2SupportConcept c2s, DateTime dt)
- {
- String preisName = "Hausbesuchspauschale Primärkasse";
-
- if (c2s.CostBearer.Organisation.Function != null)
- {
- if (c2s.CostBearer.Organisation.Function.Value.Contains("Ersatzkasse"))
- {
- preisName = "Hausbesuchspauschale Ersatzkasse";
- }
- }
-
- return base.GetPreis(preisName, dt);
- }
-
- private decimal GetGruppenPreis(CostBearer2SupportConcept c2s, DateTime dt)
- {
- String preisName = "Gruppenstunde Primärkasse";
-
- if (c2s.CostBearer.Organisation.Function != null)
- {
- if (c2s.CostBearer.Organisation.Function.Value.Contains("Ersatzkasse"))
- {
- preisName = "Gruppenstunde Ersatzkasse";
- }
- }
-
- return base.GetPreis(preisName, dt);
- }
-
- private decimal GetEinzelPreis(CostBearer2SupportConcept c2s, DateTime dt)
- {
- String preisName = "Einzelstunde Primärkasse";
-
- if (c2s.CostBearer.Organisation.Function != null)
- {
- if (c2s.CostBearer.Organisation.Function.Value.Contains("Ersatzkasse"))
- {
- preisName = "Einzelstunde Ersatzkasse";
- }
- }
-
- return base.GetPreis(preisName, dt);
- }
-
- public override IList CreateSummaryInvoiceItems(IList itemList, DateTimeSpan invoicePeriod, SupportConceptApprovalPeriod scap, Calculations calc, bool summaryPerMonth, bool addRateFactorToUnitCount)
- {
- return base.CreateSummaryInvoiceItems(itemList, invoicePeriod, scap, calc, true, true);
- }
-
- public override string GetSummaryItemKey(SupportConceptApprovalPeriod scap, InvoiceItem iitem, bool summaryPerMonth)
- {
- String key = String.Format("{0}_{1}_{2}", iitem.AmountPerUnit, iitem.RateFactor, iitem.ItemDescription);
- if (summaryPerMonth)
- {
- key = String.Format("{0}_{1}_{2:yyyyMM}_{3}", iitem.AmountPerUnit, iitem.RateFactor, iitem.ItemPeriodStart, iitem.ItemDescription);
- }
-
- return key;
- }
- }
-}
+ }
+ invoiceItem.RateFactor = null;
+ invoiceItem.GrossAmountTotal = invoiceItem.AmountTotal;
+ invoiceItem.ItemDescription = "Hausbesuchspauschale";
+ invoiceItem.UnitDescription = "GPos: 2009690";
+ if (scap != null)
+ invoiceItem.SupportConceptApprovalPeriodOid = scap.Oid;
+
+ items.Add(invoiceItem);
+ }
+ return items;
+ }
+
+ private decimal GetHausbesuchspauschale(CostBearer2SupportConcept c2s, DateTime dt)
+ {
+ String preisName = "Hausbesuchspauschale Primärkasse";
+
+ if (c2s.CostBearer.Organisation.Function != null)
+ {
+ if (c2s.CostBearer.Organisation.Function.Value.Contains("Ersatzkasse"))
+ {
+ preisName = "Hausbesuchspauschale Ersatzkasse";
+ }
+ }
+
+ return base.GetPreis(preisName, dt);
+ }
+
+ private decimal GetGruppenPreis(CostBearer2SupportConcept c2s, DateTime dt)
+ {
+ String preisName = "Gruppenstunde Primärkasse";
+
+ if (c2s.CostBearer.Organisation.Function != null)
+ {
+ if (c2s.CostBearer.Organisation.Function.Value.Contains("Ersatzkasse"))
+ {
+ preisName = "Gruppenstunde Ersatzkasse";
+ }
+ }
+
+ return base.GetPreis(preisName, dt);
+ }
+
+ private decimal GetEinzelPreis(CostBearer2SupportConcept c2s, DateTime dt)
+ {
+ String preisName = "Einzelstunde Primärkasse";
+
+ if (c2s.CostBearer.Organisation.Function != null)
+ {
+ if (c2s.CostBearer.Organisation.Function.Value.Contains("Ersatzkasse"))
+ {
+ preisName = "Einzelstunde Ersatzkasse";
+ }
+ }
+
+ return base.GetPreis(preisName, dt);
+ }
+
+ public override IList CreateSummaryInvoiceItems(IList itemList, DateTimeSpan invoicePeriod, SupportConceptApprovalPeriod scap, Calculations calc, bool summaryPerMonth, bool addRateFactorToUnitCount)
+ {
+ return base.CreateSummaryInvoiceItems(itemList, invoicePeriod, scap, calc, true, true);
+ }
+
+ public override string GetSummaryItemKey(SupportConceptApprovalPeriod scap, InvoiceItem iitem, bool summaryPerMonth)
+ {
+ String key = String.Format("{0}_{1}_{2}", iitem.AmountPerUnit, iitem.RateFactor, iitem.ItemDescription);
+ if (summaryPerMonth)
+ {
+ key = String.Format("{0}_{1}_{2:yyyyMM}_{3}", iitem.AmountPerUnit, iitem.RateFactor, iitem.ItemPeriodStart, iitem.ItemDescription);
+ }
+
+ return key;
+ }
+ }
+}
diff --git a/Service/Invoicing/SoziotherapieInvoiceCreation.cs b/Service/Invoicing/SoziotherapieInvoiceCreation.cs
index ef3fc311c..5e3fae828 100644
--- a/Service/Invoicing/SoziotherapieInvoiceCreation.cs
+++ b/Service/Invoicing/SoziotherapieInvoiceCreation.cs
@@ -76,51 +76,93 @@ namespace BeWo.Service.Invoicing
public override InvoiceItem CreateInvoiceItem(ServiceRecordDC iServiceRecord, SupportConceptApprovalPeriod scap, BS.Shared.Services.Calculations calc)
{
var ii = base.CreateInvoiceItem(iServiceRecord, scap, calc);
+ ii.ItemDescription = iServiceRecord.ServiceDescription.Name;
- if (ii.ItemDescription.ToLower().Contains("probe"))
+ if (ii.ItemDescription.ToLower().Contains("gruppe"))
{
- ii.UnitDescription = "GPos: 2001607";
- }
- else if (ii.ItemDescription.ToLower().Contains("gruppentherapie") || (iServiceRecord != null && iServiceRecord.GroupPersonCount.HasValue && iServiceRecord.GroupPersonCount.Value > 1))
- {
- //Setze Pauschale für Gruppentherapie
- var preisGruppe = GetGruppenPreis(scap.CostBearer2SupportConcept, iServiceRecord.Start.Value);
- ii.AmountPerUnit = preisGruppe;
- ii.AmountTotal = preisGruppe;
- ii.UnitCount = 1;
- ii.UnitDescription = "GPos: 2002672";
- }
- else if (ii.ItemDescription.ToLower().Contains("video"))
- {
- if (iServiceRecord.RoundedDuration <= 30 || ii.ItemDescription.ToLower().Contains("30"))
- {
- ii.UnitDescription = "GPos: 2001616";
- }
- else if (iServiceRecord.RoundedDuration > 30 || ii.ItemDescription.ToLower().Contains("60"))
- {
- ii.UnitDescription = "GPos: 2001615";
- }
- }
- else if (ii.ItemDescription.ToLower().Contains("telefon"))
- {
- if (iServiceRecord.RoundedDuration <= 30)
- {
- ii.UnitDescription = "GPos: 2001618";
- }
- else if (iServiceRecord.RoundedDuration > 30)
- {
- ii.UnitDescription = "GPos: 2001617";
- }
+ if (iServiceRecord.RoundedDuration <= 45)
+ ii.UnitDescription = "GPos: 2002678";
+ else if (iServiceRecord.RoundedDuration <= 60)
+ ii.UnitDescription = "GPos: 2002677";
+ else
+ ii.UnitDescription = "GPos: 2002672"; // 90 min, 2-5 Personen
+ ii.AmountPerUnit = GetGruppenPreis(scap.CostBearer2SupportConcept, iServiceRecord.Start.Value);
+ ii.AmountTotal = ii.AmountPerUnit * ii.UnitCount;
+ ii.GrossAmountTotal = ii.AmountTotal;
}
else
{
- if (iServiceRecord.RoundedDuration <= 30)
+ ii.AmountPerUnit = GetEinzelPreis(scap.CostBearer2SupportConcept, iServiceRecord.Start.Value);
+ ii.AmountTotal = ii.AmountPerUnit * ii.UnitCount;
+ ii.GrossAmountTotal = ii.AmountTotal;
+
+ if (ii.ItemDescription.ToLower().Contains("video"))
{
- ii.UnitDescription = "GPos: 2001612";
+ if (iServiceRecord.RoundedDuration <= 30)
+ {
+ ii.UnitDescription = "GPos: 2001616";
+ }
+ else
+ {
+ ii.UnitDescription = "GPos: 2001615";
+ }
}
- else if (iServiceRecord.RoundedDuration > 30)
+ else if (ii.ItemDescription.ToLower().Contains("telefonat"))
{
- ii.UnitDescription = "GPos: 2001610";
+ if (iServiceRecord.RoundedDuration <= 30)
+ {
+ ii.UnitDescription = "GPos: 2001618";
+ }
+ else
+ {
+ ii.UnitDescription = "GPos: 2001617";
+ }
+ }
+ else if (ii.ItemDescription.ToLower().Contains("aufsuchende einheit"))
+ {
+ if (iServiceRecord.RoundedDuration <= 10)
+ {
+ ii.UnitDescription = "GPos: 2001613";
+ }
+ else if (iServiceRecord.RoundedDuration <= 30)
+ {
+ ii.UnitDescription = "GPos: 2001612";
+ }
+ else if (iServiceRecord.RoundedDuration <= 45)
+ {
+ ii.UnitDescription = "GPos: 2001611";
+ }
+ else
+ {
+ ii.UnitDescription = "GPos: 2001610";
+ }
+ }
+ else if (ii.ItemDescription.ToLower().Contains("aufsuchende probatorik"))
+ {
+ ii.UnitDescription = "GPos: 2001607";
+ }
+ else if (ii.ItemDescription.ToLower().Contains("büroprobatorik"))
+ {
+ ii.UnitDescription = "GPos: 2001607";
+ }
+ else if (ii.ItemDescription.ToLower().Contains("büroeinheit"))
+ {
+ if (iServiceRecord.RoundedDuration <= 10)
+ {
+ ii.UnitDescription = "GPos: 2001613";
+ }
+ else if (iServiceRecord.RoundedDuration <= 30)
+ {
+ ii.UnitDescription = "GPos: 2001612";
+ }
+ else if (iServiceRecord.RoundedDuration <= 45)
+ {
+ ii.UnitDescription = "GPos: 2001611";
+ }
+ else
+ {
+ ii.UnitDescription = "GPos: 2001610";
+ }
}
}
@@ -160,7 +202,7 @@ namespace BeWo.Service.Invoicing
foreach (var sr in serviceRecordsInPeriod)
{
- if (!sr.ServiceDescription.Name.ToLower().Contains("telefon") && !sr.ServiceDescription.Name.ToLower().Contains("gruppe") && !sr.ServiceDescription.Name.ToLower().Contains("praxis"))
+ if (sr.ServiceDescription.Name.ToLower().Contains("aufsuchende"))
{
var date = sr.Start.Value.Date;
@@ -234,6 +276,21 @@ namespace BeWo.Service.Invoicing
return base.GetPreis(preisName, dt);
}
+ private decimal GetEinzelPreis(CostBearer2SupportConcept c2s, DateTime dt)
+ {
+ String preisName = "Einzelstunde Primärkasse";
+
+ if (c2s.CostBearer.Organisation.Function != null)
+ {
+ if (c2s.CostBearer.Organisation.Function.Value.Contains("Ersatzkasse"))
+ {
+ preisName = "Einzelstunde Ersatzkasse";
+ }
+ }
+
+ return base.GetPreis(preisName, dt);
+ }
+
public override IList CreateSummaryInvoiceItems(IList itemList, DateTimeSpan invoicePeriod, SupportConceptApprovalPeriod scap, BS.Shared.Services.Calculations calc, bool summaryPerMonth, bool addRateFactorToUnitCount)
{
var newlist = new List();