Files
BeWoPlaner/Dakota/Models/DakotaFile.cs
Rene Evertz 75d59e3c40 GkvAbrechnung View erweitert
Service für app8 gebaut
BeWoWindowBuilder Einführung: Zentraler Ort für generische, kleine Fenster, wie Text Viewer, Text Editor, Picture Shower, etc.
Alte Gkv Abrechnungsansicht deaktiviert
2024-04-17 16:33:19 +02:00

86 lines
2.5 KiB
C#

using BeWo.Data.Entities;
using BS.Shared.DataContracts;
using Dakota.Models;
using Dakota.Models.Auftragsdatei;
using Dakota.Models.Blocke;
using Dakota.Models.Infos;
using Dakota.Models.Nachrichten;
using Dakota.Models.Segmente;
using System;
using System.Collections.Generic;
using System.Linq;
namespace Dakota
{
/// <summary>
/// Nutzdatendatei mit Logik
/// </summary>
public class DakotaFile
{
internal Nutzdatendatei Nutzdatendatei { get; private set; }
internal Auftragsdatei Auftragsdatei { get; private set; }
public DateTime Created { get; set; }
internal string Verfahrenskennung => Auftragsdatei.AuftragssatzPart1.VerfahrenKennung.GetValue();
internal string Transfernummer => Auftragsdatei.AuftragssatzPart1.TransferNummer.GetValue();
internal DakotaFile(DateTime created)
{
Nutzdatendatei = new Nutzdatendatei(this);
Auftragsdatei = new Auftragsdatei(this);
Created = created;
}
public string GetTransferName()
{
return Verfahrenskennung + Transfernummer;
}
public string GetNutzdatendatei()
{
return Nutzdatendatei.GetRows();
}
public string GetAuftragsdatei()
{
return Auftragsdatei.GetRows();
}
public override string ToString()
{
return Nutzdatendatei.GetRows();
}
public string GetIKVersichertenKarte()
{
return Nutzdatendatei.BlockKostenträger.First().BlockKrankenkasse.First().NachrichtSLGA.SegmentFKT.IKVersichertenKarte.GetValue();
}
public string GetIKLeistungserbringer()
{
return Nutzdatendatei.BlockKostenträger.First().BlockKrankenkasse.First().NachrichtSLGA.SegmentFKT.IKLeistungserbringers.GetValue();
}
public string GetIKDatenannahmestelle()
{
return Nutzdatendatei.SegmentUNB.Empfangdatei.GetValue();
}
public string GetIKKostenträger()
{
return Nutzdatendatei.BlockKostenträger.First().BlockKrankenkasse.First().NachrichtSLGA.SegmentFKT.IKKostenträger.GetValue();
}
public decimal GetBetrag()
{
return Nutzdatendatei.BlockKostenträger.First().BlockKrankenkasse.Sum(x => x.NachrichtSLGA.SegmentGES00.GesamtrechnungsbetragDecimal);
}
public int GetKostenträgerCount()
{
return Nutzdatendatei.BlockKostenträger.Count;
}
}
}