Files
BeWoPlaner/ReportImp/AlphaEv/Invoicing/CustomInvoiceFactory.cs

38 lines
1.9 KiB
C#

using BeWo.Data.Entities;
using BeWo.Service.Invoicing;
using BS.Shared.DataContracts;
using BS.Shared.DataContracts.Compact;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace AlphaEv.Invoicing
{
public class CustomInvoiceFactory : InvoiceFactory
{
public override SettlementInvoiceCreation CreateSettlementInvoiceCreator(string costbearerId, string tenant, CostBearer2SupportConcept lCb2Sc)
{
if (lCb2Sc.CostBearer.Organisation.Name.Contains("Stadt") && lCb2Sc.CostBearer.Organisation.Name.Contains("Wuppertal") ||
lCb2Sc.CostBearer.Organisation.Name.Contains("Stadt Remscheid") || lCb2Sc.CostBearer.Organisation.Name.Contains("Oberbergischer Kreis") ||
lCb2Sc.CostBearer.Organisation.Name.Contains("Jugendamt Köln") || lCb2Sc.CostBearer.Organisation.Name.Contains("Stadt Wermelskirchen (fls)"))
return new WuppertalSettlementInvoiceCreation();
return base.CreateSettlementInvoiceCreator(costbearerId, tenant, lCb2Sc);
}
public override InvoiceCreation CreateInvoiceCreator(string specificId, string tenant, Dictionary<CompactSupportConceptDC, List<ServiceRecordDC>> supportConcepts2ServiceRecords)
{
foreach (var sc2sr in supportConcepts2ServiceRecords)
{
if (sc2sr.Key.CostBearer.Contains("Stadt") && sc2sr.Key.CostBearer.Contains("Wuppertal") || sc2sr.Key.CostBearer.Contains("Stadt Remscheid") ||
sc2sr.Key.CostBearer.Contains("Oberbergischer Kreis") || sc2sr.Key.CostBearer.Contains("Jugendamt Köln") ||
sc2sr.Key.CostBearer.Contains("Stadt Wermelskirchen (fls)"))
return new CustomInvoiceCreation();
}
return new InvoiceCreation();
}
}
}