Mehr Schlüssel, mehr logik, automatische Erzeugung von Vergütungsart
This commit is contained in:
@@ -46,14 +46,19 @@
|
||||
<Compile Include="DakotaFile.cs" />
|
||||
<Compile Include="DakotaFileCreator.cs" />
|
||||
<Compile Include="DakotaValidator.cs" />
|
||||
<Compile Include="DakotaFileInfo.cs" />
|
||||
<Compile Include="Models\Block\BlockAbrechnungsfall.cs" />
|
||||
<Compile Include="Models\Block\BlockKostenträger.cs" />
|
||||
<Compile Include="Models\Block\BlockKrankenkarteVerordnung.cs" />
|
||||
<Compile Include="Models\Dateneinheit.cs" />
|
||||
<Compile Include="Models\Datenelement.cs" />
|
||||
<Compile Include="Models\DatenelementCounter.cs" />
|
||||
<Compile Include="Models\Datenelementgruppe.cs" />
|
||||
<Compile Include="Models\Blocke\Block.cs" />
|
||||
<Compile Include="Models\Daten\DatenelementDateTime.cs" />
|
||||
<Compile Include="Models\Daten\DatenelementDecimal.cs" />
|
||||
<Compile Include="Models\Daten\DatenelementFiller.cs" />
|
||||
<Compile Include="Models\Infos\DakotaFileInfo.cs" />
|
||||
<Compile Include="Models\Blocke\BlockAbrechnungsfall.cs" />
|
||||
<Compile Include="Models\Blocke\BlockKostenträger.cs" />
|
||||
<Compile Include="Models\Blocke\BlockKrankenkarteVerordnung.cs" />
|
||||
<Compile Include="Models\Infos\DakotaInvoiceItemInfo.cs" />
|
||||
<Compile Include="Models\Daten\Dateneinheit.cs" />
|
||||
<Compile Include="Models\Daten\Datenelement.cs" />
|
||||
<Compile Include="Models\Daten\DatenelementCounter.cs" />
|
||||
<Compile Include="Models\Daten\Datenelementgruppe.cs" />
|
||||
<Compile Include="Models\IRowable.cs" />
|
||||
<Compile Include="Models\Nachrichten\Nachricht.cs" />
|
||||
<Compile Include="Models\Nachrichten\NachrichtSLGA3.cs" />
|
||||
@@ -62,12 +67,21 @@
|
||||
<Compile Include="Models\Nachrichten\NachrichtSLLA3.cs" />
|
||||
<Compile Include="Models\Nachrichten\NachrichtSLLA2.cs" />
|
||||
<Compile Include="Models\Nachrichten\NachrichtSLLA.cs" />
|
||||
<Compile Include="Models\Schlüssel\Schlüssel.cs" />
|
||||
<Compile Include="Models\Schlüssel\SchlüsselLeistungserbringerSammelgruppenschlussel.cs" />
|
||||
<Compile Include="Models\Schlüssel\SchlüsselRechnungsart.cs" />
|
||||
<Compile Include="Models\Schlüssel\SchlüsselSummenstatus.cs" />
|
||||
<Compile Include="Models\Schlüssel\SchlüsselTestindikator.cs" />
|
||||
<Compile Include="Models\Schlüssel\SchlüsselVerarbeitungskennzeichen.cs" />
|
||||
<Compile Include="Models\Schlüssels\Schlüssel.cs" />
|
||||
<Compile Include="Models\Schlüssels\SchlüsselAbrechnungscode.cs" />
|
||||
<Compile Include="Models\Schlüssels\SchlüsselPosVergütungsart.cs" />
|
||||
<Compile Include="Models\Schlüssels\SchlüsselPosBehandlungsart.cs" />
|
||||
<Compile Include="Models\Schlüssels\SchlüsselPosArtDerEinrichtung.cs" />
|
||||
<Compile Include="Models\Schlüssels\SchlüsselPos.cs" />
|
||||
<Compile Include="Models\Schlüssels\SchlüsselLeistungserbringerSammelgruppenschlussel.cs" />
|
||||
<Compile Include="Models\Schlüssels\SchlüsselBeleginformation.cs" />
|
||||
<Compile Include="Models\Schlüssels\SchlüsselRechnungsart.cs" />
|
||||
<Compile Include="Models\Schlüssels\SchlüsselSummenstatus.cs" />
|
||||
<Compile Include="Models\Schlüssels\SchlüsselTarifkennzeichen.cs" />
|
||||
<Compile Include="Models\Schlüssels\SchlüsselTarifkennzeichenSondertarif.cs" />
|
||||
<Compile Include="Models\Schlüssels\SchlüsselTarifkennzeichenBereich.cs" />
|
||||
<Compile Include="Models\Schlüssels\SchlüsselTestindikator.cs" />
|
||||
<Compile Include="Models\Schlüssels\SchlüsselVerarbeitungskennzeichen.cs" />
|
||||
<Compile Include="Models\Segmente\SLLA\SegmentSLLABES.cs" />
|
||||
<Compile Include="Models\Segmente\SLLA\SegmentSLLADIA.cs" />
|
||||
<Compile Include="Models\Segmente\SLLA\SegmentSLLAMWS.cs" />
|
||||
@@ -95,7 +109,7 @@
|
||||
<Compile Include="Models\Segmente\SegmentUNT.cs" />
|
||||
<Compile Include="Models\Segmente\SegmentUNZ.cs" />
|
||||
<Compile Include="Models\Segmente\SLGA\SegmentSLGAUST.cs" />
|
||||
<Compile Include="Models\Block\BlockNutzdatendatei.cs" />
|
||||
<Compile Include="Models\Blocke\BlockNutzdatendatei.cs" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\Data\Data.csproj">
|
||||
|
||||
@@ -1,7 +1,8 @@
|
||||
using BeWo.Data.Entities;
|
||||
using BS.Shared.DataContracts;
|
||||
using Dakota.Models;
|
||||
using Dakota.Models.Block;
|
||||
using Dakota.Models.Blocke;
|
||||
using Dakota.Models.Infos;
|
||||
using Dakota.Models.Nachrichten;
|
||||
using Dakota.Models.Segmente;
|
||||
using System;
|
||||
@@ -16,12 +17,7 @@ namespace Dakota
|
||||
internal class DakotaFile : Nachricht
|
||||
{
|
||||
internal BlockNutzdatendatei Nutzdatendatei { get; private set; }
|
||||
internal DateTime Created { get; private set; }
|
||||
|
||||
internal int NachrichtenCounter { get; set; }
|
||||
internal int AnzahlUNHCounter { get; set; }
|
||||
internal int SegmentSLGACounter { get; set; }
|
||||
internal int SegmentSLLACounter { get; set; }
|
||||
|
||||
// Rene26 Comment
|
||||
//// UNB
|
||||
@@ -40,85 +36,18 @@ namespace Dakota
|
||||
//// UNZ
|
||||
//internal SegmentUNZ SegmentUNZ => SozioTherapieEinzelnachweis.UNZ;
|
||||
|
||||
internal DakotaFileInfo Info { get; set; }
|
||||
internal DakotaFileInfo FileInfo { get; set; }
|
||||
|
||||
internal DakotaFile(DakotaFileInfo info)
|
||||
{
|
||||
Nutzdatendatei = new BlockNutzdatendatei();
|
||||
// Updates = new List<Action>();
|
||||
|
||||
Info = info;
|
||||
FileInfo = info;
|
||||
|
||||
Created = DateTime.Now;
|
||||
|
||||
NachrichtenCounter = 1;
|
||||
AnzahlUNHCounter = 0;
|
||||
SegmentSLGACounter = 0;
|
||||
SegmentSLLACounter = 0;
|
||||
|
||||
GenerateUNBSegment();
|
||||
}
|
||||
|
||||
internal void AddInvoiceItem(InvoiceItem invoice)
|
||||
{
|
||||
var kostentrager = "123456789";
|
||||
var kostentragerblock = Nutzdatendatei.BlockKostenträger.FirstOrDefault(block => block.IKKostenträger == kostentrager);
|
||||
|
||||
if (kostentragerblock is null)
|
||||
{
|
||||
kostentragerblock = GenerateBlockKostentrager(invoice);
|
||||
|
||||
Nutzdatendatei.BlockKostenträger.Add(kostentragerblock);
|
||||
}
|
||||
|
||||
var krankenversichten = "987654321";
|
||||
var krankenversichtenblock = kostentragerblock.BlockKrankenkarteVerordnung.FirstOrDefault(block => block.IKKrankenkasseKVKarte == krankenversichten);
|
||||
|
||||
AddInvoiceItemIntoBlock(krankenversichtenblock, invoice);
|
||||
|
||||
kostentragerblock.Update();
|
||||
}
|
||||
|
||||
internal void AddInvoiceItemIntoBlock(BlockKrankenkarteVerordnung block, InvoiceItem invoice)
|
||||
{
|
||||
// Wie soll das hier sein
|
||||
|
||||
// SLLA
|
||||
}
|
||||
|
||||
private BlockKostenträger GenerateBlockKostentrager(InvoiceItem invoice)
|
||||
{
|
||||
var block = new BlockKostenträger();
|
||||
|
||||
var nachrefnum = ++AnzahlUNHCounter;
|
||||
|
||||
block.SegmentUNH.Nachrichtenreferenznummer.SetFilledIntValue(nachrefnum, 5);
|
||||
block.SegmentUNH.NachrichtenTypKennung.SetValue("SLGA");
|
||||
block.SegmentUNH.Verionsnummer.SetValue("18");
|
||||
block.SegmentUNH.FreigabeNrDesTypes.SetValue("0");
|
||||
block.SegmentUNH.VerwaltendeOrganisation.SetValue("0");
|
||||
|
||||
block.SegmentUNT.Nachrichtenreferenznummer.SetFilledIntValue(nachrefnum, 5);
|
||||
// ! block.SegmentUNT.AnzahlEinheiten.SetValue("0");
|
||||
}
|
||||
|
||||
private BlockKrankenkarteVerordnung GenerateBlockKrankenkarte(InvoiceItem invoice)
|
||||
{
|
||||
var block = new BlockKrankenkarteVerordnung();
|
||||
|
||||
var nachrefnum = ++AnzahlUNHCounter;
|
||||
|
||||
block.SegmentSLGAUNH.Nachrichtenreferenznummer.SetFilledIntValue(nachrefnum, 5);
|
||||
block.SegmentSLGAUNH.NachrichtenTypKennung.SetValue("SLGA");
|
||||
block.SegmentSLGAUNH.Verionsnummer.SetValue("18");
|
||||
block.SegmentSLGAUNH.FreigabeNrDesTypes.SetValue("0");
|
||||
block.SegmentSLGAUNH.VerwaltendeOrganisation.SetValue("0");
|
||||
|
||||
block.SegmentSLGAUNT.Nachrichtenreferenznummer.SetFilledIntValue(nachrefnum, 5);
|
||||
// ! block.SegmentSLGAUNT.AnzahlEinheiten.SetValue("0");
|
||||
}
|
||||
|
||||
internal void Finish()
|
||||
{
|
||||
GenerateUNZSegment();
|
||||
}
|
||||
|
||||
@@ -126,172 +55,356 @@ namespace Dakota
|
||||
{
|
||||
Nutzdatendatei.SegmentUNB.SyntaxKennung.SetValue("UNOC");
|
||||
Nutzdatendatei.SegmentUNB.SyntaxVersionsnummer.SetValue("3");
|
||||
Nutzdatendatei.SegmentUNB.Absenderdatei.SetValue(Info.Absenderbezeichnung);
|
||||
Nutzdatendatei.SegmentUNB.Empfangdatei.SetValue(Info.Empfangerbezeichnung);
|
||||
Nutzdatendatei.SegmentUNB.Datum.SetValue(Created.ToString("yyyyMMdd"));
|
||||
Nutzdatendatei.SegmentUNB.Uhrzeit.SetValue(Created.ToString("HHmm"));
|
||||
Nutzdatendatei.SegmentUNB.Datenaustauschreferenz.SetFilledIntValue(Info.Datenaustauschreferenz, 5);
|
||||
Nutzdatendatei.SegmentUNB.Leistungsbereich.SetValue(Info.Leistungsbereich.Value);
|
||||
Nutzdatendatei.SegmentUNB.Anwengundsreferenz.SetValue(Info.Anwendungsreferenz);
|
||||
Nutzdatendatei.SegmentUNB.Testindikator.SetValue(Info.Testindikator.Value);
|
||||
Nutzdatendatei.SegmentUNB.Absenderdatei.SetValue(FileInfo.Absenderbezeichnung);
|
||||
Nutzdatendatei.SegmentUNB.Empfangdatei.SetValue(FileInfo.Empfangerbezeichnung);
|
||||
Nutzdatendatei.SegmentUNB.Datum.SetValue(FileInfo.Created);
|
||||
Nutzdatendatei.SegmentUNB.Uhrzeit.SetValue(FileInfo.Created);
|
||||
Nutzdatendatei.SegmentUNB.Datenaustauschreferenz.SetValue(FileInfo.Datenaustauschreferenz);
|
||||
Nutzdatendatei.SegmentUNB.Leistungsbereich.SetValue(FileInfo.Leistungsbereich.Value);
|
||||
Nutzdatendatei.SegmentUNB.Anwengundsreferenz.SetValue(FileInfo.Anwendungsreferenz);
|
||||
Nutzdatendatei.SegmentUNB.Testindikator.SetValue(FileInfo.Testindikator.Value);
|
||||
}
|
||||
private void GenerateUNZSegment()
|
||||
{
|
||||
Nutzdatendatei.SegmentUNZ.AnzahlNachrichten.SetValue(AnzahlUNHCounter);
|
||||
Nutzdatendatei.SegmentUNZ.Datenaustauschreferenz.SetValue(FileInfo.Datenaustauschreferenz);
|
||||
}
|
||||
|
||||
internal void AddInvoiceItem(DakotaInvoiceItemInfo invoiceInfo)
|
||||
{
|
||||
var kostentrager = "123456789";
|
||||
var kostentragerblock = GetBlockKostenträger(kostentrager, invoiceInfo);
|
||||
|
||||
var krankenversichten = "987654321";
|
||||
var krankenversichtenblock = GetBlockKrankenkarte(kostentragerblock, krankenversichten, invoiceInfo);
|
||||
|
||||
AddInvoiceItemIntoBlock(krankenversichtenblock, invoiceInfo);
|
||||
}
|
||||
internal void AddInvoiceItemIntoBlock(BlockKrankenkarteVerordnung block, DakotaInvoiceItemInfo invoiceInfo)
|
||||
{
|
||||
|
||||
}
|
||||
private BlockKostenträger GetBlockKostenträger(string kostentrager, DakotaInvoiceItemInfo invoiceInfo)
|
||||
{
|
||||
var kostentragerblock = Nutzdatendatei.BlockKostenträger.FirstOrDefault(block => block.IKKostenträger == kostentrager);
|
||||
|
||||
if (kostentragerblock is null)
|
||||
{
|
||||
kostentragerblock = GenerateBlockKostentrager(invoiceInfo);
|
||||
|
||||
Nutzdatendatei.BlockKostenträger.Add(kostentragerblock);
|
||||
}
|
||||
|
||||
return kostentragerblock;
|
||||
}
|
||||
private BlockKrankenkarteVerordnung GetBlockKrankenkarte(BlockKostenträger blockkt, string kvkarte, DakotaInvoiceItemInfo invoiceInfo)
|
||||
{
|
||||
var krankenkartenBlock = blockkt.BlockKrankenkarteVerordnung.FirstOrDefault(block => block.IKKrankenkasseKVKarte == kvkarte);
|
||||
|
||||
if (krankenkartenBlock is null)
|
||||
{
|
||||
krankenkartenBlock = GenerateBlockKrankenkarte(invoiceInfo);
|
||||
|
||||
blockkt.BlockKrankenkarteVerordnung.Add(krankenkartenBlock);
|
||||
}
|
||||
|
||||
return krankenkartenBlock;
|
||||
}
|
||||
private BlockKostenträger GenerateBlockKostentrager(DakotaInvoiceItemInfo invoiceinfo)
|
||||
{
|
||||
var block = new BlockKostenträger();
|
||||
|
||||
var nachrefnum = ++AnzahlUNHCounter;
|
||||
|
||||
block.SegmentUNH.Nachrichtenreferenznummer.SetValue(nachrefnum);
|
||||
block.SegmentUNH.NachrichtenTypKennung.SetValue("SLGA");
|
||||
block.SegmentUNH.Verionsnummer.SetValue("18");
|
||||
block.SegmentUNH.FreigabeNrDesTypes.SetValue("0");
|
||||
block.SegmentUNH.VerwaltendeOrganisation.SetValue("0");
|
||||
|
||||
block.NachrichtSLGA.SegmentFKT.Verarbeitungskennzeichen.SetValue(FileInfo.Verarbeitungskennzeichen);
|
||||
block.NachrichtSLGA.SegmentFKT.IKLeistungserbringers.SetValue(invoiceinfo.IKLeistungserbringer);
|
||||
block.NachrichtSLGA.SegmentFKT.IKKostenträger.SetValue(invoiceinfo.IKKostentrager);
|
||||
block.NachrichtSLGA.SegmentFKT.IKKrankenkasseKVKarte.SetValue(invoiceinfo.IKKVKarte);
|
||||
block.NachrichtSLGA.SegmentFKT.IKAbsender.SetValue(invoiceinfo.IKAbsender);
|
||||
|
||||
block.NachrichtSLGA.SegmentREC.SammelRechnungsnummer.SetValue(FileInfo.Rechnungsnummer);
|
||||
block.NachrichtSLGA.SegmentREC.EinzelRechnungsnummer.SetValue("0");
|
||||
block.NachrichtSLGA.SegmentREC.Datum.SetValue(FileInfo.Rechnungsdatum);
|
||||
block.NachrichtSLGA.SegmentREC.Rechnungsart.SetValue(FileInfo.Rechnungsart);
|
||||
|
||||
block.NachrichtSLGA.SegmentGES00.Status.SetValue(FileInfo.Summenstatus00);
|
||||
block.NachrichtSLGA.SegmentGES00.Gesamtbruttobetrag.SetValue(FileInfo.Gesamtbruttobetrag00);
|
||||
block.NachrichtSLGA.SegmentGES00.Gesamtrechnungsbetrag.SetValue(FileInfo.Gesamtrechnungsbetrag00);
|
||||
block.NachrichtSLGA.SegmentGES00.GesamtbetragZuzahlung.SetValue(FileInfo.GesamtbetragZuzahlung00);
|
||||
|
||||
block.NachrichtSLGA.SegmentGES.Status.SetValue(FileInfo.Summenstatus);
|
||||
block.NachrichtSLGA.SegmentGES.Gesamtbruttobetrag.SetValue(FileInfo.Gesamtbruttobetrag);
|
||||
block.NachrichtSLGA.SegmentGES.Gesamtrechnungsbetrag.SetValue(FileInfo.Gesamtrechnungsbetrag);
|
||||
block.NachrichtSLGA.SegmentGES.GesamtbetragZuzahlung.SetValue(FileInfo.GesamtbetragZuzahlung);
|
||||
|
||||
block.NachrichtSLGA.SegmentNAM.Name1.SetValue(FileInfo.Name1);
|
||||
block.NachrichtSLGA.SegmentNAM.Name2.SetValue(FileInfo.Name2);
|
||||
block.NachrichtSLGA.SegmentNAM.Name3.SetValue(FileInfo.Name3);
|
||||
block.NachrichtSLGA.SegmentNAM.Name4.SetValue(FileInfo.Name4);
|
||||
|
||||
block.SegmentUNT.Nachrichtenreferenznummer.SetValue(nachrefnum);
|
||||
|
||||
return block;
|
||||
}
|
||||
private BlockKrankenkarteVerordnung GenerateBlockKrankenkarte(DakotaInvoiceItemInfo invoiceInfo)
|
||||
{
|
||||
var block = new BlockKrankenkarteVerordnung();
|
||||
|
||||
var nachrefnum = ++AnzahlUNHCounter;
|
||||
var nachrefnum2 = ++AnzahlUNHCounter;
|
||||
// block.SegmentSLGAUNH.Nachrichtenreferenznummer.SetFilled
|
||||
|
||||
block.SegmentSLGAUNH.Nachrichtenreferenznummer.SetValue(nachrefnum);
|
||||
block.SegmentSLGAUNH.NachrichtenTypKennung.SetValue("SLGA");
|
||||
block.SegmentSLGAUNH.Verionsnummer.SetValue("18");
|
||||
block.SegmentSLGAUNH.FreigabeNrDesTypes.SetValue("0");
|
||||
block.SegmentSLGAUNH.VerwaltendeOrganisation.SetValue("0");
|
||||
|
||||
block.NachrichtSLGA.SegmentFKT.Verarbeitungskennzeichen.SetValue(FileInfo.Verarbeitungskennzeichen);
|
||||
block.NachrichtSLGA.SegmentFKT.IKLeistungserbringers.SetValue(invoiceInfo.IKLeistungserbringer);
|
||||
block.NachrichtSLGA.SegmentFKT.IKKostenträger.SetValue(invoiceInfo.IKKostentrager);
|
||||
block.NachrichtSLGA.SegmentFKT.IKKrankenkasseKVKarte.SetValue(invoiceInfo.IKKVKarte);
|
||||
block.NachrichtSLGA.SegmentFKT.IKAbsender.SetValue(invoiceInfo.IKAbsender);
|
||||
|
||||
block.NachrichtSLGA.SegmentREC.SammelRechnungsnummer.SetValue(FileInfo.Rechnungsnummer);
|
||||
block.NachrichtSLGA.SegmentREC.EinzelRechnungsnummer.SetValue("0");
|
||||
block.NachrichtSLGA.SegmentREC.Datum.SetValue(FileInfo.Rechnungsdatum);
|
||||
block.NachrichtSLGA.SegmentREC.Rechnungsart.SetValue(FileInfo.Rechnungsart);
|
||||
|
||||
block.NachrichtSLGA.SegmentGES00.Status.SetValue(FileInfo.Summenstatus00);
|
||||
block.NachrichtSLGA.SegmentGES00.Gesamtbruttobetrag.SetValue(FileInfo.Gesamtbruttobetrag00);
|
||||
block.NachrichtSLGA.SegmentGES00.Gesamtrechnungsbetrag.SetValue(FileInfo.Gesamtrechnungsbetrag00);
|
||||
block.NachrichtSLGA.SegmentGES00.GesamtbetragZuzahlung.SetValue(FileInfo.GesamtbetragZuzahlung00);
|
||||
|
||||
block.NachrichtSLGA.SegmentGES.Status.SetValue(FileInfo.Summenstatus);
|
||||
block.NachrichtSLGA.SegmentGES.Gesamtbruttobetrag.SetValue(FileInfo.Gesamtbruttobetrag);
|
||||
block.NachrichtSLGA.SegmentGES.Gesamtrechnungsbetrag.SetValue(FileInfo.Gesamtrechnungsbetrag);
|
||||
block.NachrichtSLGA.SegmentGES.GesamtbetragZuzahlung.SetValue(FileInfo.GesamtbetragZuzahlung);
|
||||
|
||||
block.NachrichtSLGA.SegmentNAM.Name1.SetValue(FileInfo.Name1);
|
||||
block.NachrichtSLGA.SegmentNAM.Name2.SetValue(FileInfo.Name2);
|
||||
block.NachrichtSLGA.SegmentNAM.Name3.SetValue(FileInfo.Name3);
|
||||
block.NachrichtSLGA.SegmentNAM.Name4.SetValue(FileInfo.Name4);
|
||||
|
||||
block.SegmentSLGAUNT.Nachrichtenreferenznummer.SetValue(nachrefnum);
|
||||
|
||||
block.SegmentSLLAUNH.Nachrichtenreferenznummer.SetValue(nachrefnum2);
|
||||
block.SegmentSLLAUNH.NachrichtenTypKennung.SetValue("SLLA");
|
||||
block.SegmentSLLAUNH.Verionsnummer.SetValue("18");
|
||||
block.SegmentSLLAUNH.FreigabeNrDesTypes.SetValue("0");
|
||||
block.SegmentSLLAUNH.VerwaltendeOrganisation.SetValue("0");
|
||||
|
||||
block.NachrichtSLLA.SegmentSLLAFKT.Verarbeitungskennzeichen.SetValue(FileInfo.Verarbeitungskennzeichen);
|
||||
block.NachrichtSLLA.SegmentSLLAFKT.IKLeistungserbringers.SetValue(invoiceInfo.IKLeistungserbringer);
|
||||
block.NachrichtSLLA.SegmentSLLAFKT.IKKostenträgers.SetValue(invoiceInfo.IKKostentrager);
|
||||
block.NachrichtSLLA.SegmentSLLAFKT.IKKVKarte.SetValue(invoiceInfo.IKKVKarte);
|
||||
block.NachrichtSLLA.SegmentSLLAFKT.IKRechnungsstellers.SetValue(invoiceInfo.IKAbsender);
|
||||
|
||||
// Abrechnungsfalle
|
||||
|
||||
AddBlockAbrechnungsfall(block, invoiceInfo);
|
||||
|
||||
block.SegmentSLLAUNT.Nachrichtenreferenznummer.SetValue(nachrefnum2);
|
||||
|
||||
return block;
|
||||
}
|
||||
private BlockAbrechnungsfall AddBlockAbrechnungsfall(BlockKrankenkarteVerordnung blockkvkarte, DakotaInvoiceItemInfo info)
|
||||
{
|
||||
var block = new BlockAbrechnungsfall();
|
||||
|
||||
block.SegmentSLLAINV.VersichertenNummer.SetValue(info.VersichtertenNummer);
|
||||
block.SegmentSLLAINV.Versichertenstatus.SetValue(info.Versichertenstatus);
|
||||
block.SegmentSLLAINV.Beleginformation.SetValue(info.Beleginformation);
|
||||
block.SegmentSLLAINV.Belegnummer.SetValue(info.Belegnummer);
|
||||
// block.SegmentSLLAINV.KennzeichenBesondereVersorgungsform.SetValue(invoiceInfo.Kenn)
|
||||
|
||||
block.SegmentSLLANAD.Vorname.SetValue(info.VersichtertenVorname);
|
||||
block.SegmentSLLANAD.Nachname.SetValue(info.VersichtertenNachname);
|
||||
block.SegmentSLLANAD.Geburtsdatum.SetValue(info.VersichtertenGeburtstag);
|
||||
block.SegmentSLLANAD.StraßeNr.SetValue(info.VersichtertenStraßeNr);
|
||||
block.SegmentSLLANAD.PLZ.SetValue(info.VersichtertenPLZ);
|
||||
block.SegmentSLLANAD.Wohnort.SetValue(info.VersichtertenWohnort);
|
||||
block.SegmentSLLANAD.Länderkennzeichen.SetValue(info.VersichtertenLanderkennung);
|
||||
|
||||
block.SegmentSLLAENF.Identifikationsnummer.SetValue(info.EinzelfallIdentifikationsnummer);
|
||||
block.SegmentSLLAENF.Abrechnungscode.SetValue(info.EinzelfallAbrechnungscode);
|
||||
block.SegmentSLLAENF.Tarifkennzeichen.SetValue(info.EinzelfallTarifkennzeichen);
|
||||
block.SegmentSLLAENF.ArtLeistung.SetValue(info.Abrechnungsposition);
|
||||
block.SegmentSLLAENF.AnzahlMenge.SetValue(info.EinzelfallAnzahlMenge);
|
||||
block.SegmentSLLAENF.EinzelbetragAbrechnungsposition.SetValue(info.EinzelfallEinzelbetragAbrechnungsposition);
|
||||
block.SegmentSLLAENF.DatumLeistungserbringung.SetValue(info.EinzelfallDatumDerLeistungserbringung);
|
||||
block.SegmentSLLAENF.BetragZuzahlung.SetValue(info.EinzelfallBetragZuzahlung);
|
||||
|
||||
block.SegmentSLLASUT.GefahreneKilometer.SetValue(info.EinzelfallGefahreneKilometer);
|
||||
block.SegmentSLLASUT.Uhrzeit.SetValue(info.EinzelfallUhrzeit);
|
||||
block.SegmentSLLASUT.Dauer.SetValue(info.EinzelfallDauer);
|
||||
block.SegmentSLLASUT.VersorgungszeitraumVon.SetValue(info.EinzelfallVersorgungszeitraum);
|
||||
block.SegmentSLLASUT.VersorgungszeitraumBis.SetValue(info.EinzelfallVersorgungszeitraumBis);
|
||||
|
||||
block.SegmentSLLATXT.Text.SetValue(info.Text);
|
||||
|
||||
block.SegmentSLLABES.GesamtbetragBrutto.SetValue(info.GesamtbetragBrutto);
|
||||
block.SegmentSLLABES.GesamtbetragGesetzlicheZuzahlung.SetValue(info.GesamtbetragGesetzlicheZuzahlung);
|
||||
block.SegmentSLLABES.GesamtbetragProzentualeZuzahlung.SetValue(info.GesamtbetragProzentualeZuzahlung);
|
||||
block.SegmentSLLABES.PauschalerZuzahlungsbetrag.SetValue(info.PauschalerZuzahlungsbetrag);
|
||||
block.SegmentSLLABES.GesamtbetragEigenanteil.SetValue(info.GesamtbetragEigenanteil);
|
||||
|
||||
blockkvkarte.NachrichtSLLA.Abrechnungsfalle.Add(block);
|
||||
|
||||
return block;
|
||||
}
|
||||
|
||||
private void GenerateBlockSLGA(DakotaFileInfo info)
|
||||
{
|
||||
//UNH, UNT, FKT, REC, GES00, GES, NAM
|
||||
SegmentSLGACounter += 7;
|
||||
|
||||
var nachrefnum = ++AnzahlUNHCounter;
|
||||
|
||||
// Head
|
||||
BlockSLGAUNH.Nachrichtenreferenznummer.SetFilledIntValue(nachrefnum, 5);
|
||||
BlockSLGAUNH.NachrichtenTypKennung.SetValue("SLGA");
|
||||
BlockSLGAUNH.Verionsnummer.SetValue("18");
|
||||
BlockSLGAUNH.FreigabeNrDesTypes.SetValue("0");
|
||||
BlockSLGAUNH.VerwaltendeOrganisation.SetValue("0");
|
||||
//BlockSLGAUNH.Nachrichtenreferenznummer.SetFilledIntValue(nachrefnum, 5);
|
||||
//BlockSLGAUNH.NachrichtenTypKennung.SetValue("SLGA");
|
||||
//BlockSLGAUNH.Verionsnummer.SetValue("18");
|
||||
//BlockSLGAUNH.FreigabeNrDesTypes.SetValue("0");
|
||||
//BlockSLGAUNH.VerwaltendeOrganisation.SetValue("0");
|
||||
|
||||
// Body
|
||||
// FKT
|
||||
BlockSLGANachricht.SegmentFKT.Verarbeitungskennzeichen.SetValue(info.Verarbeitungskennzeichen.Value);
|
||||
BlockSLGANachricht.SegmentFKT.IKLeistungserbringers.SetValue(info.IKLeistungserbringers);
|
||||
BlockSLGANachricht.SegmentFKT.IKKostenträger.SetValue(info.IKKostenträger);
|
||||
BlockSLGANachricht.SegmentFKT.IKKrankenkasse.SetValue(info.IKKrankenkasse);
|
||||
BlockSLGANachricht.SegmentFKT.IKAbsender.SetValue(info.Absenderbezeichnung);
|
||||
// REC
|
||||
BlockSLGANachricht.SegmentREC.SammelRechnungsnummer.SetValue(info.Rechnungsnummer);
|
||||
BlockSLGANachricht.SegmentREC.EinzelRechnungsnummer.SetValue("0");
|
||||
BlockSLGANachricht.SegmentREC.Datum.SetValue(info.Rechnungsdatum.ToString("yyyyMMdd"));
|
||||
BlockSLGANachricht.SegmentREC.Rechnungsart.SetValue(info.Rechnungsart.Value);
|
||||
// UST - wird nicht gebraucht
|
||||
//BlockSLGANachricht.SegmentUST.Steuernummer.SetValue(string.Empty);
|
||||
//BlockSLGANachricht.SegmentUST.Kennung.SetValue(string.Empty);
|
||||
// SKO - wird nicht gebraucht
|
||||
//BlockSLGANachricht.SegmentSKO.SkontoProzent.SetValue(string.Empty);
|
||||
//BlockSLGANachricht.SegmentSKO.Zahlungsziel.SetValue(string.Empty);
|
||||
// GES00
|
||||
BlockSLGANachricht.SegmentGES00.Status.SetValue("00");
|
||||
BlockSLGANachricht.SegmentGES00.Gesamtrechnungsbetrag.SetDecimalValue(info.Gesamtrechnungsbetrag) ;
|
||||
BlockSLGANachricht.SegmentGES00.Gesamtbruttobetrag.SetDecimalValue(info.Gesamtbruttobetrag);
|
||||
BlockSLGANachricht.SegmentGES00.GesamtbetragZuzahlung.SetDecimalValue(info.GesamtbetragZuzahlung);
|
||||
// GES
|
||||
BlockSLGANachricht.SegmentGES.Status.SetValue(info.Summenstatus.Value);
|
||||
BlockSLGANachricht.SegmentGES.Gesamtrechnungsbetrag.SetDecimalValue(info.Gesamtrechnungsbetrag);
|
||||
BlockSLGANachricht.SegmentGES.Gesamtbruttobetrag.SetDecimalValue(info.Gesamtbruttobetrag);
|
||||
BlockSLGANachricht.SegmentGES.GesamtbetragZuzahlung.SetDecimalValue(info.GesamtbetragZuzahlung);
|
||||
// NAM
|
||||
BlockSLGANachricht.SegmentNAM.Name1.SetValue(info.Name1);
|
||||
BlockSLGANachricht.SegmentNAM.Name2.SetValue(info.Name2);
|
||||
BlockSLGANachricht.SegmentNAM.Name3.SetValue(info.Name3);
|
||||
BlockSLGANachricht.SegmentNAM.Name4.SetValue(info.Name4);
|
||||
//// Body
|
||||
//// FKT
|
||||
//BlockSLGANachricht.SegmentFKT.Verarbeitungskennzeichen.SetValue(info.Verarbeitungskennzeichen.Value);
|
||||
//BlockSLGANachricht.SegmentFKT.IKLeistungserbringers.SetValue(info.IKLeistungserbringers);
|
||||
//BlockSLGANachricht.SegmentFKT.IKKostenträger.SetValue(info.IKKostenträger);
|
||||
//BlockSLGANachricht.SegmentFKT.IKKrankenkasse.SetValue(info.IKKrankenkasse);
|
||||
//BlockSLGANachricht.SegmentFKT.IKAbsender.SetValue(info.Absenderbezeichnung);
|
||||
//// REC
|
||||
//BlockSLGANachricht.SegmentREC.SammelRechnungsnummer.SetValue(info.Rechnungsnummer);
|
||||
//BlockSLGANachricht.SegmentREC.EinzelRechnungsnummer.SetValue("0");
|
||||
//BlockSLGANachricht.SegmentREC.Datum.SetValue(info.Rechnungsdatum.ToString("yyyyMMdd"));
|
||||
//BlockSLGANachricht.SegmentREC.Rechnungsart.SetValue(info.Rechnungsart.Value);
|
||||
//// UST - wird nicht gebraucht
|
||||
////BlockSLGANachricht.SegmentUST.Steuernummer.SetValue(string.Empty);
|
||||
////BlockSLGANachricht.SegmentUST.Kennung.SetValue(string.Empty);
|
||||
//// SKO - wird nicht gebraucht
|
||||
////BlockSLGANachricht.SegmentSKO.SkontoProzent.SetValue(string.Empty);
|
||||
////BlockSLGANachricht.SegmentSKO.Zahlungsziel.SetValue(string.Empty);
|
||||
//// GES00
|
||||
//BlockSLGANachricht.SegmentGES00.Status.SetValue("00");
|
||||
//BlockSLGANachricht.SegmentGES00.Gesamtrechnungsbetrag.SetDecimalValue(info.Gesamtrechnungsbetrag) ;
|
||||
//BlockSLGANachricht.SegmentGES00.Gesamtbruttobetrag.SetDecimalValue(info.Gesamtbruttobetrag);
|
||||
//BlockSLGANachricht.SegmentGES00.GesamtbetragZuzahlung.SetDecimalValue(info.GesamtbetragZuzahlung);
|
||||
//// GES
|
||||
//BlockSLGANachricht.SegmentGES.Status.SetValue(info.Summenstatus.Value);
|
||||
//BlockSLGANachricht.SegmentGES.Gesamtrechnungsbetrag.SetDecimalValue(info.Gesamtrechnungsbetrag);
|
||||
//BlockSLGANachricht.SegmentGES.Gesamtbruttobetrag.SetDecimalValue(info.Gesamtbruttobetrag);
|
||||
//BlockSLGANachricht.SegmentGES.GesamtbetragZuzahlung.SetDecimalValue(info.GesamtbetragZuzahlung);
|
||||
//// NAM
|
||||
//BlockSLGANachricht.SegmentNAM.Name1.SetValue(info.Name1);
|
||||
//BlockSLGANachricht.SegmentNAM.Name2.SetValue(info.Name2);
|
||||
//BlockSLGANachricht.SegmentNAM.Name3.SetValue(info.Name3);
|
||||
//BlockSLGANachricht.SegmentNAM.Name4.SetValue(info.Name4);
|
||||
|
||||
// End
|
||||
BlockSLGAUNT.AnzahlEinheiten.SetFilledIntValue(SegmentSLGACounter, 6);
|
||||
BlockSLGAUNT.Nachrichtenreferenznummer.SetFilledIntValue(nachrefnum, 5);
|
||||
//// End
|
||||
//BlockSLGAUNT.AnzahlEinheiten.SetFilledIntValue(SegmentSLGACounter, 6);
|
||||
//BlockSLGAUNT.Nachrichtenreferenznummer.SetFilledIntValue(nachrefnum, 5);
|
||||
}
|
||||
|
||||
private void GenerateBlockSLLA(DakotaFileInfo info)
|
||||
{
|
||||
SegmentSLLACounter++;
|
||||
AnzahlUNHCounter++;
|
||||
|
||||
var nachrefnum = ++AnzahlUNHCounter;
|
||||
|
||||
// Head
|
||||
BlockSLLAUNH.Nachrichtenreferenznummer.SetFilledIntValue(nachrefnum, 5);
|
||||
BlockSLLAUNH.NachrichtenTypKennung.SetValue("SLLA");
|
||||
BlockSLLAUNH.Verionsnummer.SetValue("18");
|
||||
BlockSLLAUNH.FreigabeNrDesTypes.SetValue("0");
|
||||
BlockSLLAUNH.VerwaltendeOrganisation.SetValue("0");
|
||||
//BlockSLLAUNH.Nachrichtenreferenznummer.SetFilledIntValue(nachrefnum, 5);
|
||||
//BlockSLLAUNH.NachrichtenTypKennung.SetValue("SLLA");
|
||||
//BlockSLLAUNH.Verionsnummer.SetValue("18");
|
||||
//BlockSLLAUNH.FreigabeNrDesTypes.SetValue("0");
|
||||
//BlockSLLAUNH.VerwaltendeOrganisation.SetValue("0");
|
||||
|
||||
// Body
|
||||
// FKT Funktion
|
||||
BlockSLLANachricht.SegmentSLLAFKT.Verarbeitungskennzeichen.SetValue(info.Verarbeitungskennzeichen.Value);
|
||||
BlockSLLANachricht.SegmentSLLAFKT.IKLeistungserbringers.SetValue(info.IKLeistungserbringers);
|
||||
BlockSLLANachricht.SegmentSLLAFKT.IKKostenträgers.SetValue(info.IKKostenträger);
|
||||
BlockSLLANachricht.SegmentSLLAFKT.IKKrankenkasse.SetValue(info.IKKrankenkasse);
|
||||
//BlockSLLANachricht.SegmentSLLAFKT.IKRechnungsstellers.SetValue(string.Empty);
|
||||
// REC
|
||||
BlockSLLANachricht.SegmentSLLAREC.SammelRechnungsnummer.SetValue(info.Rechnungsnummer);
|
||||
BlockSLLANachricht.SegmentSLLAREC.EinzelRechnungsnummer.SetValue("0");
|
||||
BlockSLLANachricht.SegmentSLLAREC.Datum.SetValue(info.Rechnungsdatum.ToString("yyyyMMdd"));
|
||||
BlockSLLANachricht.SegmentSLLAREC.Rechnungsart.SetValue(info.Rechnungsart.Value);
|
||||
// INV
|
||||
// Information Versicherte
|
||||
BlockSLLANachricht.SegmentSLLAINV.VersichertenNummer.SetValue(string.Empty);
|
||||
BlockSLLANachricht.SegmentSLLAINV.Versichertenstatus.SetValue(string.Empty);
|
||||
BlockSLLANachricht.SegmentSLLAINV.Beleginformation.SetValue("0");
|
||||
BlockSLLANachricht.SegmentSLLAINV.Belegnummer.SetValue(string.Empty);
|
||||
BlockSLLANachricht.SegmentSLLAINV.KennzeichenBesondereVersorgungsform.SetValue(string.Empty);
|
||||
// URI
|
||||
// Wird erst bei Korrekturen verwendet
|
||||
// NAD
|
||||
BlockSLLANachricht.SegmentSLLANAD.Nachname.SetValue(string.Empty);
|
||||
BlockSLLANachricht.SegmentSLLANAD.Vorname.SetValue(string.Empty);
|
||||
BlockSLLANachricht.SegmentSLLANAD.Geburtsdatum.SetValue(string.Empty);
|
||||
BlockSLLANachricht.SegmentSLLANAD.StraßeNr.SetValue(string.Empty);
|
||||
BlockSLLANachricht.SegmentSLLANAD.PLZ.SetValue(string.Empty);
|
||||
BlockSLLANachricht.SegmentSLLANAD.Wohnort.SetValue(string.Empty);
|
||||
BlockSLLANachricht.SegmentSLLANAD.Länderkennzeichen.SetValue(string.Empty);
|
||||
// IMG
|
||||
BlockSLLANachricht.SegmentSLLAIMG.Abrechnungsjahr.SetValue(string.Empty);
|
||||
BlockSLLANachricht.SegmentSLLAIMG.Abrechnungsmonat.SetValue(string.Empty);
|
||||
BlockSLLANachricht.SegmentSLLAIMG.Identifikationsmerkmal.SetValue(string.Empty);
|
||||
//// Body
|
||||
//// FKT Funktion
|
||||
//BlockSLLANachricht.SegmentSLLAFKT.Verarbeitungskennzeichen.SetValue(info.Verarbeitungskennzeichen.Value);
|
||||
//BlockSLLANachricht.SegmentSLLAFKT.IKLeistungserbringers.SetValue(info.IKLeistungserbringers);
|
||||
//BlockSLLANachricht.SegmentSLLAFKT.IKKostenträgers.SetValue(info.IKKostenträger);
|
||||
//BlockSLLANachricht.SegmentSLLAFKT.IKKrankenkasse.SetValue(info.IKKrankenkasse);
|
||||
////BlockSLLANachricht.SegmentSLLAFKT.IKRechnungsstellers.SetValue(string.Empty);
|
||||
//// REC
|
||||
//BlockSLLANachricht.SegmentSLLAREC.SammelRechnungsnummer.SetValue(info.Rechnungsnummer);
|
||||
//BlockSLLANachricht.SegmentSLLAREC.EinzelRechnungsnummer.SetValue("0");
|
||||
//BlockSLLANachricht.SegmentSLLAREC.Datum.SetValue(info.Rechnungsdatum.ToString("yyyyMMdd"));
|
||||
//BlockSLLANachricht.SegmentSLLAREC.Rechnungsart.SetValue(info.Rechnungsart.Value);
|
||||
//// INV
|
||||
//// Information Versicherte
|
||||
//BlockSLLANachricht.SegmentSLLAINV.VersichertenNummer.SetValue(string.Empty);
|
||||
//BlockSLLANachricht.SegmentSLLAINV.Versichertenstatus.SetValue(string.Empty);
|
||||
//BlockSLLANachricht.SegmentSLLAINV.Beleginformation.SetValue("0");
|
||||
//BlockSLLANachricht.SegmentSLLAINV.Belegnummer.SetValue(string.Empty);
|
||||
//BlockSLLANachricht.SegmentSLLAINV.KennzeichenBesondereVersorgungsform.SetValue(string.Empty);
|
||||
//// URI
|
||||
//// Wird erst bei Korrekturen verwendet
|
||||
//// NAD
|
||||
//BlockSLLANachricht.SegmentSLLANAD.Nachname.SetValue(string.Empty);
|
||||
//BlockSLLANachricht.SegmentSLLANAD.Vorname.SetValue(string.Empty);
|
||||
//BlockSLLANachricht.SegmentSLLANAD.Geburtsdatum.SetValue(string.Empty);
|
||||
//BlockSLLANachricht.SegmentSLLANAD.StraßeNr.SetValue(string.Empty);
|
||||
//BlockSLLANachricht.SegmentSLLANAD.PLZ.SetValue(string.Empty);
|
||||
//BlockSLLANachricht.SegmentSLLANAD.Wohnort.SetValue(string.Empty);
|
||||
//BlockSLLANachricht.SegmentSLLANAD.Länderkennzeichen.SetValue(string.Empty);
|
||||
//// IMG
|
||||
//BlockSLLANachricht.SegmentSLLAIMG.Abrechnungsjahr.SetValue(string.Empty);
|
||||
//BlockSLLANachricht.SegmentSLLAIMG.Abrechnungsmonat.SetValue(string.Empty);
|
||||
//BlockSLLANachricht.SegmentSLLAIMG.Identifikationsmerkmal.SetValue(string.Empty);
|
||||
|
||||
var test = new List<object>();
|
||||
var abrechnungspositionen = new List<InvoiceItemDC>();
|
||||
foreach (var position in abrechnungspositionen)
|
||||
{
|
||||
var pos = new Abrechnungsposition();
|
||||
// ENF
|
||||
pos.SegmentSLLAENF.Identifikationsnummer.SetValue(string.Empty);
|
||||
pos.SegmentSLLAENF.Abrechnungscode.SetValue("69");
|
||||
pos.SegmentSLLAENF.Tarifkennzeichen.SetValue(string.Empty);
|
||||
pos.SegmentSLLAENF.ArtLeistung.SetValue(string.Empty);
|
||||
pos.SegmentSLLAENF.AnzahlMenge.SetValue(string.Empty);
|
||||
pos.SegmentSLLAENF.EinzelbetragAbrechnungsposition.SetValue(string.Empty);
|
||||
pos.SegmentSLLAENF.DatumLeistungserbringung.SetValue(string.Empty);
|
||||
pos.SegmentSLLAENF.BetragZuzahlung.SetValue(string.Empty);
|
||||
// SUT
|
||||
pos.SegmentSLLASUT.GefahreneKilometer.SetValue(string.Empty);
|
||||
pos.SegmentSLLASUT.Uhrzeit.SetValue(string.Empty);
|
||||
pos.SegmentSLLASUT.UhrzeitBis.SetValue(string.Empty);
|
||||
pos.SegmentSLLASUT.Dauer.SetValue(string.Empty);
|
||||
pos.SegmentSLLASUT.VersorgungszeitraumVon.SetValue(string.Empty);
|
||||
pos.SegmentSLLASUT.VersorgungszeitraumBis.SetValue(string.Empty);
|
||||
// TXT
|
||||
pos.SegmentSLLATXT.Text.SetValue(string.Empty);
|
||||
// MWS
|
||||
//pos.SegmentSLLAMWS.Mehrwertsteuersatz.SetValue(string.Empty);
|
||||
//pos.SegmentSLLAMWS.BetragMehrwertsteuer.SetValue(string.Empty);
|
||||
//var test = new List<object>();
|
||||
//var abrechnungspositionen = new List<InvoiceItemDC>();
|
||||
//foreach (var position in abrechnungspositionen)
|
||||
//{
|
||||
// var pos = new Abrechnungsposition();
|
||||
// // ENF
|
||||
// pos.SegmentSLLAENF.Identifikationsnummer.SetValue(string.Empty);
|
||||
// pos.SegmentSLLAENF.Abrechnungscode.SetValue("69");
|
||||
// pos.SegmentSLLAENF.Tarifkennzeichen.SetValue(string.Empty);
|
||||
// pos.SegmentSLLAENF.ArtLeistung.SetValue(string.Empty);
|
||||
// pos.SegmentSLLAENF.AnzahlMenge.SetValue(string.Empty);
|
||||
// pos.SegmentSLLAENF.EinzelbetragAbrechnungsposition.SetValue(string.Empty);
|
||||
// pos.SegmentSLLAENF.DatumLeistungserbringung.SetValue(string.Empty);
|
||||
// pos.SegmentSLLAENF.BetragZuzahlung.SetValue(string.Empty);
|
||||
// // SUT
|
||||
// pos.SegmentSLLASUT.GefahreneKilometer.SetValue(string.Empty);
|
||||
// pos.SegmentSLLASUT.Uhrzeit.SetValue(string.Empty);
|
||||
// pos.SegmentSLLASUT.UhrzeitBis.SetValue(string.Empty);
|
||||
// pos.SegmentSLLASUT.Dauer.SetValue(string.Empty);
|
||||
// pos.SegmentSLLASUT.VersorgungszeitraumVon.SetValue(string.Empty);
|
||||
// pos.SegmentSLLASUT.VersorgungszeitraumBis.SetValue(string.Empty);
|
||||
// // TXT
|
||||
// pos.SegmentSLLATXT.Text.SetValue(string.Empty);
|
||||
// // MWS
|
||||
// //pos.SegmentSLLAMWS.Mehrwertsteuersatz.SetValue(string.Empty);
|
||||
// //pos.SegmentSLLAMWS.BetragMehrwertsteuer.SetValue(string.Empty);
|
||||
|
||||
BlockSLLANachricht.AddPosition(pos);
|
||||
}
|
||||
// BlockSLLANachricht.AddPosition(pos);
|
||||
//}
|
||||
|
||||
// ZUV
|
||||
//BlockSLLANachricht.SegmentSLLAZUV.Betriebsstättennummer.SetValue(string.Empty);
|
||||
//BlockSLLANachricht.SegmentSLLAZUV.LebenslangeArztnummer.SetValue(string.Empty);
|
||||
//BlockSLLANachricht.SegmentSLLAZUV.VerordnungsAusstellEinsatzdatum.SetValue(string.Empty);
|
||||
//BlockSLLANachricht.SegmentSLLAZUV.Zuzahlungskennzeichen.SetValue(string.Empty);
|
||||
//BlockSLLANachricht.SegmentSLLAZUV.Unfallkennzeichen.SetValue(string.Empty);
|
||||
//BlockSLLANachricht.SegmentSLLAZUV.KennzeichenBVGSonstiges.SetValue(string.Empty);
|
||||
//BlockSLLANachricht.SegmentSLLAZUV.KennzeichenVerordnungsbesonderheiten.SetValue(string.Empty);
|
||||
//// ZUV
|
||||
////BlockSLLANachricht.SegmentSLLAZUV.Betriebsstättennummer.SetValue(string.Empty);
|
||||
////BlockSLLANachricht.SegmentSLLAZUV.LebenslangeArztnummer.SetValue(string.Empty);
|
||||
////BlockSLLANachricht.SegmentSLLAZUV.VerordnungsAusstellEinsatzdatum.SetValue(string.Empty);
|
||||
////BlockSLLANachricht.SegmentSLLAZUV.Zuzahlungskennzeichen.SetValue(string.Empty);
|
||||
////BlockSLLANachricht.SegmentSLLAZUV.Unfallkennzeichen.SetValue(string.Empty);
|
||||
////BlockSLLANachricht.SegmentSLLAZUV.KennzeichenBVGSonstiges.SetValue(string.Empty);
|
||||
////BlockSLLANachricht.SegmentSLLAZUV.KennzeichenVerordnungsbesonderheiten.SetValue(string.Empty);
|
||||
|
||||
// BES
|
||||
BlockSLLANachricht.SegmentSLLABES.GesamtbetragBrutto.SetValue(string.Empty);
|
||||
BlockSLLANachricht.SegmentSLLABES.GesamtbetragGesetzlicheZuzahlung.SetValue(string.Empty);
|
||||
BlockSLLANachricht.SegmentSLLABES.GesamtbetragProzentualeZuzahlung.SetValue(string.Empty);
|
||||
BlockSLLANachricht.SegmentSLLABES.PauschalerZuzahlungsbetrag.SetValue(string.Empty);
|
||||
BlockSLLANachricht.SegmentSLLABES.GesamtbetragEigenanteil.SetValue(string.Empty);
|
||||
//// BES
|
||||
//BlockSLLANachricht.SegmentSLLABES.GesamtbetragBrutto.SetValue(string.Empty);
|
||||
//BlockSLLANachricht.SegmentSLLABES.GesamtbetragGesetzlicheZuzahlung.SetValue(string.Empty);
|
||||
//BlockSLLANachricht.SegmentSLLABES.GesamtbetragProzentualeZuzahlung.SetValue(string.Empty);
|
||||
//BlockSLLANachricht.SegmentSLLABES.PauschalerZuzahlungsbetrag.SetValue(string.Empty);
|
||||
//BlockSLLANachricht.SegmentSLLABES.GesamtbetragEigenanteil.SetValue(string.Empty);
|
||||
|
||||
// End
|
||||
BlockSLLAUNT.AnzahlEinheiten.SetFilledIntValue(SegmentSLLACounter, 6);
|
||||
BlockSLLAUNT.Nachrichtenreferenznummer.SetFilledIntValue(nachrefnum, 5);
|
||||
}
|
||||
|
||||
private void GenerateUNZSegment()
|
||||
{
|
||||
Nutzdatendatei.SegmentUNZ.AnzahlNachrichten.SetFilledIntValue(AnzahlUNHCounter, 6);
|
||||
Nutzdatendatei.SegmentUNZ.Datenaustauschreferenz.SetFilledIntValue(Info.Datenaustauschreferenz, 5);
|
||||
//// End
|
||||
//BlockSLLAUNT.AnzahlEinheiten.SetFilledIntValue(SegmentSLLACounter, 6);
|
||||
//BlockSLLAUNT.Nachrichtenreferenznummer.SetFilledIntValue(nachrefnum, 5);
|
||||
}
|
||||
|
||||
public void foo(long? invoiceBaseOid)
|
||||
|
||||
@@ -2,7 +2,9 @@
|
||||
using BeWo.Data.Entities;
|
||||
using BS.Shared.DataContracts;
|
||||
using Dakota;
|
||||
using Dakota.Models.Schlüssel;
|
||||
using Dakota.Models;
|
||||
using Dakota.Models.Infos;
|
||||
using Dakota.Models.Schlüssels;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
@@ -34,22 +36,6 @@ namespace BeWo.Service.ServiceUtils.Generell
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Ein Datei erzeungnis
|
||||
/// </summary>
|
||||
/// <param name="invoiceItems"></param>
|
||||
/// <returns></returns>
|
||||
//public static string generateasciicode(list<invoiceitemdc> invoiceitems)
|
||||
//{
|
||||
// var info = loadinfo(invoiceitems);
|
||||
|
||||
// var file = new dakotafile(info);
|
||||
|
||||
// file.generate();
|
||||
|
||||
// return file.getrows();
|
||||
//}
|
||||
|
||||
public static List<string> GenerateDakotaFilesByMonth(int year, int month)
|
||||
{
|
||||
var dict = GenerateDakotaFiles(year, month);
|
||||
@@ -78,68 +64,122 @@ namespace BeWo.Service.ServiceUtils.Generell
|
||||
// Leistungsbereich - immer soziotherapie
|
||||
|
||||
|
||||
DakotaKeyDictionary currentkey = new DakotaKeyDictionary();
|
||||
currentkey.DateTime = first;
|
||||
currentkey.Kassenart = Kassenart.BKK;
|
||||
currentkey.Kostenträger = "";
|
||||
|
||||
var dakota = res.FirstOrDefault(keypair => keypair.Key.Equals(currentkey)).Value;
|
||||
|
||||
if (dakota is null)
|
||||
DakotaKeyDictionary currentkey = new DakotaKeyDictionary
|
||||
{
|
||||
var info = LoadInfo(invoice);
|
||||
DateTime = first,
|
||||
Kassenart = Kassenart.BKK,
|
||||
Kostenträger = ""
|
||||
};
|
||||
|
||||
dakota = new DakotaFile(info);
|
||||
var dakota = GetDakotaFile(res, currentkey, invoice);
|
||||
|
||||
res.Add(currentkey, dakota);
|
||||
}
|
||||
var invoiceinfo = GetDakotaFileInvoiceItem(dakota.FileInfo, invoice);
|
||||
|
||||
dakota.AddInvoiceItem(invoice);
|
||||
dakota.AddInvoiceItem(invoiceinfo);
|
||||
}
|
||||
|
||||
return res;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Get Dakota File. Creates if doesn't exist
|
||||
/// </summary>
|
||||
/// <param name="dict">current Dict</param>
|
||||
/// <param name="key"></param>
|
||||
/// <param name="invoice"></param>
|
||||
/// <returns></returns>
|
||||
internal static DakotaFile GetDakotaFile(Dictionary<DakotaKeyDictionary, DakotaFile> dict, DakotaKeyDictionary key, InvoiceItem invoice)
|
||||
{
|
||||
var dakota = dict.FirstOrDefault(keypair => keypair.Key.Equals(key)).Value;
|
||||
|
||||
if (dakota is null)
|
||||
{
|
||||
var info = LoadInfo(invoice);
|
||||
|
||||
dakota = new DakotaFile(info);
|
||||
|
||||
dict.Add(key, dakota);
|
||||
}
|
||||
|
||||
return dakota;
|
||||
}
|
||||
|
||||
internal static DakotaInvoiceItemInfo GetDakotaFileInvoiceItem(DakotaFileInfo fileinfo, InvoiceItem invoice)
|
||||
{
|
||||
var invoiceinfo = new DakotaInvoiceItemInfo();
|
||||
|
||||
invoiceinfo.IKLeistungserbringer = fileinfo.IKLeistungserbringers;
|
||||
invoiceinfo.IKAbsender = fileinfo.Absenderbezeichnung;
|
||||
invoiceinfo.IKEmpfänger = fileinfo.Empfangerbezeichnung;
|
||||
invoiceinfo.IKKostentrager = fileinfo.Empfangerbezeichnung;
|
||||
invoiceinfo.IKKrankenkasse = "112233445";
|
||||
invoiceinfo.IKKVKarte = "566778899";
|
||||
|
||||
invoiceinfo.Verarbeitungskennzeichen = SchlüsselVerarbeitungskennzeichen.AbrechnungOhneBesonderheit;
|
||||
// invoiceinfo.
|
||||
|
||||
return invoiceinfo;
|
||||
}
|
||||
|
||||
public static DakotaFileInfo LoadInfo(InvoiceItem invoice)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
var info = new DakotaFileInfo();
|
||||
|
||||
info.IKLeistungserbringers = "999888777";
|
||||
info.Absenderbezeichnung = "123456789";
|
||||
info.Empfangerbezeichnung = "987654321";
|
||||
info.Datenaustauschreferenz = 1;
|
||||
info.Leistungsbereich = SchlüsselLeistungserbringerSammelgruppenschlussel.SoziotherapeutischerLeistungserbringer;
|
||||
info.Anwendungsreferenz = "abovollkra.txt";
|
||||
info.Testindikator = SchlüsselTestindikator.Testdatei;
|
||||
|
||||
info.Created = DateTime.Now;
|
||||
|
||||
info.Rechnungsdatum = invoice.ItemPeriodEnd.Value;
|
||||
info.Rechnungsart = SchlüsselRechnungsart.AbrechnungVonLeistungserbringer;
|
||||
|
||||
info.Summenstatus = SchlüsselSummenstatus.Mitglieder;
|
||||
info.Gesamtrechnungsbetrag = 1;
|
||||
info.GesamtbetragZuzahlung = 1;
|
||||
info.Gesamtbruttobetrag = 1;
|
||||
|
||||
info.Name1 = "Hallo Dies";
|
||||
info.Name2 = "Dies nicht gut";
|
||||
info.Name3 = "Nein";
|
||||
info.Name4 = "omg";
|
||||
|
||||
return info;
|
||||
}
|
||||
|
||||
public static DakotaFileInfo LoadInfos(List<InvoiceItemDC> invoiceItems)
|
||||
{
|
||||
var res = new DakotaFileInfo();
|
||||
//public static DakotaFileInfo LoadInfos(List<InvoiceItemDC> invoiceItems)
|
||||
//{
|
||||
// var res = new DakotaFileInfo();
|
||||
|
||||
res.Absenderbezeichnung = "123456789";
|
||||
res.Empfangerbezeichnung = "987654321";
|
||||
res.Datenaustauschreferenz = 1;
|
||||
res.Leistungsbereich = SchlüsselLeistungserbringerSammelgruppenschlussel.SoziotherapeutischerLeistungserbringer;
|
||||
res.Anwendungsreferenz = "abovollkra.txt";
|
||||
res.Testindikator = SchlüsselTestindikator.Testdatei;
|
||||
// res.Absenderbezeichnung = "123456789";
|
||||
// res.Empfangerbezeichnung = "987654321";
|
||||
// res.Datenaustauschreferenz = 1;
|
||||
// res.Leistungsbereich = SchlüsselLeistungserbringerSammelgruppenschlussel.SoziotherapeutischerLeistungserbringer;
|
||||
// res.Anwendungsreferenz = "abovollkra.txt";
|
||||
// res.Testindikator = SchlüsselTestindikator.Testdatei;
|
||||
|
||||
res.IKLeistungserbringers = "abovollkrass.txt";
|
||||
res.IKKostenträger = "abovollkrass.txt";
|
||||
res.IKKrankenkasse = "abovollkrass.txt";
|
||||
// res.Rechnungsnummer = dc.InvoiceBase.InvoiceNumber;
|
||||
// Einheitlich monatlich
|
||||
// res.Rechnungsdatum = dc.InvoiceBase.InvoiceDate.Value;
|
||||
// res.IKLeistungserbringers = "abovollkrass.txt";
|
||||
// // res.Rechnungsnummer = dc.InvoiceBase.InvoiceNumber;
|
||||
// // Einheitlich monatlich
|
||||
// // res.Rechnungsdatum = dc.InvoiceBase.InvoiceDate.Value;
|
||||
|
||||
res.Summenstatus = SchlüsselSummenstatus.Mitglieder;
|
||||
res.Gesamtrechnungsbetrag = 3.5m;
|
||||
res.Gesamtbruttobetrag = 3.5m;
|
||||
res.GesamtbetragZuzahlung = 3.5m;
|
||||
res.Rechnungsart = SchlüsselRechnungsart.AbrechnungVonLeistungserbringer;
|
||||
res.Name1 = "nam7";
|
||||
res.Name2 = "nam4";
|
||||
res.Name3 = "nam3";
|
||||
res.Name4 = "nam1";
|
||||
// res.Summenstatus = SchlüsselSummenstatus.Mitglieder;
|
||||
// res.Gesamtrechnungsbetrag = 3.5m;
|
||||
// res.Gesamtbruttobetrag = 3.5m;
|
||||
// res.GesamtbetragZuzahlung = 3.5m;
|
||||
// res.Rechnungsart = SchlüsselRechnungsart.AbrechnungVonLeistungserbringer;
|
||||
// res.Name1 = "nam7";
|
||||
// res.Name2 = "nam4";
|
||||
// res.Name3 = "nam3";
|
||||
// res.Name4 = "nam1";
|
||||
|
||||
res.Verarbeitungskennzeichen = SchlüsselVerarbeitungskennzeichen.AbrechnungOhneBesonderheit;
|
||||
// res.Verarbeitungskennzeichen = SchlüsselVerarbeitungskennzeichen.AbrechnungOhneBesonderheit;
|
||||
|
||||
res.IKKrankenkasse = "abovollkrass.txt";
|
||||
|
||||
res.InvoiceItems = invoiceItems;
|
||||
|
||||
return res;
|
||||
}
|
||||
// return res;
|
||||
//}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,186 +0,0 @@
|
||||
using BS.Shared.DataContracts;
|
||||
using Dakota.Models.Schlüssel;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
|
||||
namespace Dakota
|
||||
{
|
||||
/// <summary>
|
||||
/// Klasse zum Erzeugen von Dakota Files
|
||||
/// </summary>
|
||||
public class DakotaFileInfo
|
||||
{
|
||||
private int _Datenaustauschreferenz;
|
||||
|
||||
/// <summary>
|
||||
/// IK des Absenders ( Abrechnungsstelle mit oder ohne Inkassobefugnis oder LE)
|
||||
/// Genutzt werden die ersten 9 Stellen;
|
||||
/// einzutragen ist das IK der absendenden Stelle.
|
||||
/// Diese Angabe muss übereinstimmen mit SLGA.FKT.IK Absender der Datei.
|
||||
/// </summary>
|
||||
public string Absenderbezeichnung { get; set; }
|
||||
/// <summary>
|
||||
/// IK des Empfängers (d.h. Datenannahmestelle mit Entschlüsselungsbefugnis);
|
||||
/// genutzt werden die ersten 9 Stellen;
|
||||
/// einzutragen ist das IK der empfangenden Stelle
|
||||
/// </summary>
|
||||
public string Empfangerbezeichnung { get; set; }
|
||||
/// <summary>
|
||||
/// Ab Version 12 ist die Datenaustauschreferenz zwingend zu füllen.
|
||||
/// Genutzt werden die ersten 5 Stellen;
|
||||
/// einzutragen ist die fortlaufende
|
||||
/// Nummer der Lieferungen zwischen
|
||||
/// Absender und Empfänger mit führenden Nullen.
|
||||
/// Bei Überlauf der Datenaustauschreferenz („99999“) ist wieder
|
||||
/// bei Eins(„00001“) zu beginnen
|
||||
/// </summary>
|
||||
public int Datenaustauschreferenz
|
||||
{
|
||||
get { return _Datenaustauschreferenz; }
|
||||
set
|
||||
{
|
||||
if (value < 1)
|
||||
throw new ArgumentOutOfRangeException("Datenaustauschreferenz", "Referenz darf nicht negativ sein");
|
||||
else if (value == 0)
|
||||
throw new ArgumentOutOfRangeException("Datenaustauschreferenz", "Referenz darf nicht gleich null sein");
|
||||
else if (value > 100000)
|
||||
throw new ArgumentOutOfRangeException("Datenaustauschreferenz", "Referenz darf nicht größer als 99999 sein");
|
||||
else if (value == 100000)
|
||||
value = 1;
|
||||
|
||||
_Datenaustauschreferenz = value;
|
||||
}
|
||||
}
|
||||
/// <summary>
|
||||
/// Einzutragen ist der Leistungserbringer-Sammelgruppenschlüssel,
|
||||
/// siehe Schlüssel Anlage 3 Abschnitt
|
||||
/// 8.1.14.
|
||||
/// </summary>
|
||||
public SchlüsselLeistungserbringerSammelgruppenschlussel Leistungsbereich { get; set; }
|
||||
/// <summary>
|
||||
/// Genutzt werden die ersten 11 Stellen;
|
||||
/// einzutragen ist der logische Dateiname s.Anhang 1 zur Anlage 1
|
||||
/// zum Kapitel 4.
|
||||
/// </summary>
|
||||
public string Anwendungsreferenz { get; set; }
|
||||
/// <summary>
|
||||
/// Inhalt = 0 wenn Testdatei
|
||||
/// Inhalt = 1 wenn Erprobungsdatei
|
||||
/// Inhalt = 2 wenn Echtdatei
|
||||
/// </summary>
|
||||
public SchlüsselTestindikator Testindikator { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Es ist das IK des Leistungserbringers
|
||||
/// anzugeben – mit folgender Ausnahme:
|
||||
/// Erfolgt die Abrechnung über eine
|
||||
/// Abrechnungsstelle mit Inkassovollmacht, so ist in der Sammelrechnungs-SLGA das IK der Abrechnungsstelle anzugeben.
|
||||
/// </summary>
|
||||
public string IKLeistungserbringers { get; set; }
|
||||
/// <summary>
|
||||
/// Einzutragen ist das IK des Kostenträ-
|
||||
/// gers auf den das IK der KV-Karte in
|
||||
/// der Kostenträgerdatei verweist; diese
|
||||
/// Angabe ist identisch mit dem IK des
|
||||
/// Kostenträgers im FKT-Segment der
|
||||
/// zugehörigen SLLA-Nachricht.
|
||||
/// </summary>
|
||||
public string IKKostenträger { get; set; }
|
||||
/// <summary>
|
||||
/// IK der Krankenkasse von der KVKarte bzw. der ärztlichen Verordnung
|
||||
/// ist zwingend anzugeben, außer es
|
||||
/// handelt sich um eine Sammelrechnung-SLGA.Bei allen SLGA-Nachrichten als Gesamtrechnung ist diese
|
||||
/// Angabe identisch mit SLLA.FKT.IK der
|
||||
/// Krankenkasse der zugehörigen SLLANachricht.
|
||||
/// </summary>
|
||||
public string IKKrankenkasse { get; set; }
|
||||
/// <summary>
|
||||
/// Die Einzel-Rechnungsnummer ist zusätzlich zur Sammel-Rechnungsnummer anzugeben, wenn eine SLGANachricht als Sammelrechnung zusätzlich in der Nutzdatendatei übermittelt
|
||||
/// wird, ansonsten wird lediglich das Datenelement Sammel-Rechnungsnummer gefüllt und die Einzel-Rechnungsnummer auf „0“ gesetzt(zum Beispiel
|
||||
/// 00234567:0
|
||||
/// </summary>
|
||||
public string Rechnungsnummer { get; set; }
|
||||
/// <summary>
|
||||
/// Rechnungsdatum JJJJMMTT
|
||||
/// </summary>
|
||||
public DateTime Rechnungsdatum { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Siehe Schlüssel Summenstatus
|
||||
/// Anlage 3 Abschnitt 8.1.6
|
||||
/// </summary>
|
||||
public SchlüsselSummenstatus Summenstatus { get; set; }
|
||||
/// <summary>
|
||||
/// Bei Verarbeitungskennzeichen „01“,
|
||||
/// „02“ und „04“:
|
||||
/// Gesamtrechnungsbetrag(ggf.inklusive Mehrwertsteuer)
|
||||
/// Berechnungsregel:
|
||||
/// GES.Gesamtbruttobetrag minus
|
||||
/// GES.Gesamtbetrag Zuzahlung und/oder Eigenanteil und/oder Pauschale
|
||||
/// Korrekturbetrag.
|
||||
/// Bei Verarbeitungskennzeichen „03“:
|
||||
/// Entspricht dem Wert aus GES.Gesamtbetrag Zuzahlung und/oder Eigenanteil und/oder Pauschale Korrekturbetrag.
|
||||
/// </summary>
|
||||
public decimal Gesamtrechnungsbetrag { get; set; }
|
||||
/// <summary>
|
||||
/// Bei Verarbeitungskennzeichen „01“,
|
||||
/// „02“ und „04“:
|
||||
/// Summe der Gesamtbruttobeträge der
|
||||
/// Abrechnungsfälle(inklusive gesetzlicher Zuzahlungsbeträge oder Eigenanteil und/oder Pauschale Korrekturbetrag sowie ggf.Mehrwertsteuer)
|
||||
/// aus BES.
|
||||
/// Bei Verarbeitungskennzeichen „03“:
|
||||
/// Ist der Gesamtbruttobetrag mit 0,00
|
||||
/// zu übermitteln.
|
||||
/// </summary>
|
||||
public decimal Gesamtbruttobetrag { get; set; }
|
||||
/// <summary>
|
||||
/// Bei Verarbeitungskennzeichen „01“
|
||||
/// und „02“:
|
||||
/// Summe der gesetzlichen Zuzahlungen und/oder der Eigenanteile der
|
||||
/// Abrechnungsfälle aus BES
|
||||
/// Berechnungsregel:
|
||||
/// Summe aller Abrechnungsfälle(BES.Gesambetrag gesetzliche Zuzahlung + BES.Gesamtbetrag Eigenanteil).
|
||||
/// Bei Verarbeitungskennzeichen „03“:
|
||||
/// Summe der gesetzlichen Zuzahlungen und/oder der Eigenanteile der
|
||||
/// Abrechnungsfälle aus GZF
|
||||
/// Berechnungsregel:
|
||||
/// Summe aller Abrechnungsfälle(GZF.Gesambetrag gesetzliche Zuzahlung + GZF.Gesamtbetrag Eigenanteil).
|
||||
/// Bei Verarbeitungskennzeichen „04“:
|
||||
/// Summe der gesetzlichen Zuzahlungen und/oder der Eigenanteile der
|
||||
/// Abrechnungsfälle aus BES
|
||||
/// Berechnungsregel:
|
||||
/// Summe aller Abrechnungsfälle(BES.Gesambetrag gesetzliche Zuzahlung + BES.Gesamtbetrag Eigenanteil + BES.Pauschale Korrekturbetrag).
|
||||
/// </summary>
|
||||
public decimal GesamtbetragZuzahlung { get; set; }
|
||||
/// <summary>
|
||||
/// Siehe Schlüssel Rechnungsart
|
||||
/// Anlage 3 Abschnitt 8.1.4.
|
||||
/// Dieser Schlüsselwert muss in der
|
||||
/// Sammelrechnungs-SLGA und allen
|
||||
/// zugehörigen SLGA-und SLLA-Nachrichten gleich sein.
|
||||
/// </summary>
|
||||
public SchlüsselRechnungsart Rechnungsart { get; set; }
|
||||
/// <summary>
|
||||
/// Name bzw. Firmenbezeichnung des
|
||||
/// Rechnungsstellers(Leistungserbringer oder Abrechnungsstelle
|
||||
/// </summary>
|
||||
public string Name1 { get; set; }
|
||||
/// <summary>
|
||||
/// ggf. Ansprechpartner und Telefonnummer.
|
||||
/// </summary>
|
||||
public string Name2 { get; set; }
|
||||
/// <summary>
|
||||
/// ggf. Ansprechpartner und Telefonnummer.
|
||||
/// </summary>
|
||||
public string Name3 { get; set; }
|
||||
/// <summary>
|
||||
/// E-Mail-Adresse;
|
||||
/// zugelassen sind Buchstaben und Ziffern, ausgenommen Umlaute
|
||||
/// </summary>
|
||||
public string Name4 { get; set; }
|
||||
/// <summary>
|
||||
/// Siehe Schlüssel Verarbeitungskennzeichen Anlage 3 Abschnitt 8.1.7.
|
||||
/// </summary>
|
||||
public SchlüsselVerarbeitungskennzeichen Verarbeitungskennzeichen { get; set; }
|
||||
}
|
||||
}
|
||||
14
Dakota/Models/Blocke/Block.cs
Normal file
14
Dakota/Models/Blocke/Block.cs
Normal file
@@ -0,0 +1,14 @@
|
||||
using Dakota.Models.Nachrichten;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace Dakota.Models.Blocke
|
||||
{
|
||||
internal abstract class Block : Nachricht
|
||||
{
|
||||
public abstract int GetUNHCount();
|
||||
}
|
||||
}
|
||||
@@ -7,9 +7,9 @@ using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using Dakota.Models.Segmente.SLLA;
|
||||
|
||||
namespace Dakota.Models.Block
|
||||
namespace Dakota.Models.Blocke
|
||||
{
|
||||
internal class BlockAbrechnungsfall : Nachricht
|
||||
internal class BlockAbrechnungsfall : Block
|
||||
{
|
||||
|
||||
/// <summary>
|
||||
@@ -117,5 +117,10 @@ namespace Dakota.Models.Block
|
||||
SegmentSLLAENF, SegmentSLLASUT, SegmentSLLATXT, SegmentSLLAMWS,
|
||||
SegmentSLLAZUZ, SegmentSLLAZUV, SegmentSLLADIA, SegmentSLLASKZ, SegmentSLLABES};
|
||||
}
|
||||
|
||||
public override int GetUNHCount()
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -6,31 +6,30 @@ using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace Dakota.Models.Block
|
||||
namespace Dakota.Models.Blocke
|
||||
{
|
||||
/// <summary>
|
||||
/// Wiederhole folgenden Block je IK des Kostenträgers
|
||||
/// </summary>
|
||||
internal class BlockKostenträger : Nachricht
|
||||
internal class BlockKostenträger : Block
|
||||
{
|
||||
public SegmentUNH SegmentUNH { get; private set; }
|
||||
public NachrichtSLGA NachrichtSLGA { get; private set; }
|
||||
public NachrichtSLGA3 NachrichtSLGA { get; private set; }
|
||||
public SegmentUNT SegmentUNT { get; private set; }
|
||||
public List<BlockKrankenkarteVerordnung> BlockKrankenkarteVerordnung { get; private set; }
|
||||
|
||||
public string IKKostenträger
|
||||
{
|
||||
get { return NachrichtSLGA.SegmentFKT.IKKostenträger.GetValue(); }
|
||||
set { NachrichtSLGA.SegmentFKT.IKKostenträger.SetValue(value); }
|
||||
}
|
||||
|
||||
internal BlockKostenträger()
|
||||
{
|
||||
SegmentUNH = new SegmentUNH();
|
||||
NachrichtSLGA = new NachrichtSLGA();
|
||||
NachrichtSLGA = new NachrichtSLGA3();
|
||||
SegmentUNT = new SegmentUNT(GetSegmentLength);
|
||||
BlockKrankenkarteVerordnung = new List<BlockKrankenkarteVerordnung>();
|
||||
}
|
||||
public string IKKostenträger
|
||||
{
|
||||
get { return NachrichtSLGA.SegmentFKT.IKKostenträger.GetValue(); }
|
||||
set { NachrichtSLGA.SegmentFKT.IKKostenträger.SetValue(value); }
|
||||
}
|
||||
|
||||
public override List<Segment> GetSegments()
|
||||
{
|
||||
@@ -47,5 +46,17 @@ namespace Dakota.Models.Block
|
||||
|
||||
return list;
|
||||
}
|
||||
|
||||
public override int GetUNHCount()
|
||||
{
|
||||
var i = 1;
|
||||
|
||||
foreach (var block in BlockKrankenkarteVerordnung)
|
||||
{
|
||||
i += block.GetUNHCount();
|
||||
}
|
||||
|
||||
return i;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,55 +1,61 @@
|
||||
using Dakota.Models.Nachrichten;
|
||||
using Dakota.Models.Segmente;
|
||||
using Dakota.Models.Segmente.SLLA;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace Dakota.Models.Block
|
||||
namespace Dakota.Models.Blocke
|
||||
{
|
||||
/// <summary>
|
||||
/// Wiederhole folgenden Block je IK der Krankenkarte bzw der Verordnung
|
||||
/// </summary>
|
||||
internal class BlockKrankenkarteVerordnung : Nachricht
|
||||
internal class BlockKrankenkarteVerordnung : Block
|
||||
{
|
||||
public SegmentUNH SegmentSLGAUNH { get; private set; }
|
||||
public NachrichtSLGA2 SLGANachricht2 { get; private set; }
|
||||
public NachrichtSLGA3 NachrichtSLGA { get; private set; }
|
||||
public SegmentUNT SegmentSLGAUNT { get; private set; }
|
||||
public SegmentUNH SegmentSLLAUNH { get; private set; }
|
||||
public NachrichtSLLA2 SLLANachricht2 { get; private set; }
|
||||
public NachrichtSLLA3 NachrichtSLLA { get; private set; }
|
||||
public SegmentUNT SegmentSLLAUNT { get; private set; }
|
||||
|
||||
public BlockKrankenkarteVerordnung()
|
||||
{
|
||||
SegmentSLGAUNH = new SegmentUNH();
|
||||
SLGANachricht2 = new NachrichtSLGA2();
|
||||
NachrichtSLGA = new NachrichtSLGA3();
|
||||
SegmentSLGAUNT = new SegmentUNT(SLGASegmentLength);
|
||||
SegmentSLLAUNH = new SegmentUNH();
|
||||
SLLANachricht2 = new NachrichtSLLA2();
|
||||
NachrichtSLLA = new NachrichtSLLA3();
|
||||
SegmentSLLAUNT = new SegmentUNT(SLLASegmentLength);
|
||||
}
|
||||
|
||||
public string IKKrankenkasseKVKarte
|
||||
{
|
||||
get { return SLGANachricht2.SegmentFKT.IKKrankenkasseKVKarte.GetValue(); }
|
||||
set { SLGANachricht2.SegmentFKT.IKKrankenkasseKVKarte.SetValue(value); }
|
||||
get { return NachrichtSLGA.SegmentFKT.IKKrankenkasseKVKarte.GetValue(); }
|
||||
set { NachrichtSLGA.SegmentFKT.IKKrankenkasseKVKarte.SetValue(value); }
|
||||
}
|
||||
|
||||
public int SLGASegmentLength() => SLGANachricht2.GetSegmentLength() + 2;
|
||||
public int SLLASegmentLength() => SLLANachricht2.GetSegmentLength() + 2;
|
||||
public int SLGASegmentLength() => NachrichtSLGA.GetSegmentLength() + 2;
|
||||
public int SLLASegmentLength() => NachrichtSLLA.GetSegmentLength() + 2;
|
||||
|
||||
public override List<Segment> GetSegments()
|
||||
{
|
||||
var list = new List<Segment>() { SegmentSLGAUNH };
|
||||
list.AddRange(SLGANachricht2.GetSegments());
|
||||
list.AddRange(NachrichtSLGA.GetSegments());
|
||||
list.Add(SegmentSLGAUNT);
|
||||
|
||||
list.Add(SegmentSLLAUNH);
|
||||
list.AddRange(SLLANachricht2.GetSegments());
|
||||
list.AddRange(NachrichtSLLA.GetSegments());
|
||||
list.Add(SegmentSLLAUNT);
|
||||
|
||||
return list;
|
||||
}
|
||||
|
||||
public override int GetUNHCount()
|
||||
{
|
||||
return 2;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -6,7 +6,7 @@ using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace Dakota.Models.Block
|
||||
namespace Dakota.Models.Blocke
|
||||
{
|
||||
/// <summary>
|
||||
/// Nutzdatendatei ohne Logik
|
||||
@@ -21,15 +21,14 @@ namespace Dakota.Models.Block
|
||||
{
|
||||
SegmentUNB = new SegmentUNB();
|
||||
BlockKostenträger = new List<BlockKostenträger>();
|
||||
SegmentUNZ = new SegmentUNZ();
|
||||
SegmentUNZ = new SegmentUNZ(GetUNHCount);
|
||||
}
|
||||
|
||||
public override List<Segment> GetSegments()
|
||||
{
|
||||
var list = new List<Segment>()
|
||||
{
|
||||
SegmentUNB
|
||||
};
|
||||
var list = new List<Segment>();
|
||||
|
||||
list.Add(SegmentUNB);
|
||||
|
||||
foreach (var block in BlockKostenträger)
|
||||
{
|
||||
@@ -40,5 +39,17 @@ namespace Dakota.Models.Block
|
||||
|
||||
return list;
|
||||
}
|
||||
|
||||
public int GetUNHCount()
|
||||
{
|
||||
int i = 0;
|
||||
|
||||
foreach (var block in BlockKostenträger)
|
||||
{
|
||||
i += block.GetUNHCount();
|
||||
}
|
||||
|
||||
return i;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -4,7 +4,7 @@ using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace Dakota.Models
|
||||
namespace Dakota.Models.Daten
|
||||
{
|
||||
public abstract class Dateneinheit
|
||||
{
|
||||
@@ -1,31 +1,29 @@
|
||||
using System;
|
||||
using Dakota.Models.Schlüssels;
|
||||
using System;
|
||||
|
||||
namespace Dakota.Models
|
||||
namespace Dakota.Models.Daten
|
||||
{
|
||||
internal class Datenelement : Dateneinheit
|
||||
{
|
||||
private string _Value;
|
||||
private bool _IsDecimal;
|
||||
private protected string _Value;
|
||||
private protected bool _IgnoreCheck;
|
||||
|
||||
public int MinStellen { get; set; }
|
||||
public int MaxStellen { get; set; }
|
||||
|
||||
public Feldart Feldart { get; set; }
|
||||
|
||||
public Datenelement(string title)
|
||||
{
|
||||
Title = title;
|
||||
|
||||
_IsDecimal = false;
|
||||
_IgnoreCheck = false;
|
||||
}
|
||||
|
||||
public Datenelement(string title, int min, int max, Feldart art) : this(title)
|
||||
{
|
||||
MinStellen = min;
|
||||
MaxStellen = max;
|
||||
Feldart = art;
|
||||
}
|
||||
|
||||
public Datenelement(string title, int count, Feldart art) : this(title, count, count, art)
|
||||
{
|
||||
|
||||
@@ -49,7 +47,7 @@ namespace Dakota.Models
|
||||
}
|
||||
}
|
||||
|
||||
if (!_IsDecimal && (_Value.Length < MinStellen || _Value.Length > MaxStellen))
|
||||
if (!_IgnoreCheck && (_Value.Length < MinStellen || _Value.Length > MaxStellen))
|
||||
{
|
||||
throw new NotImplementedException("Error Code: 3483091097897");
|
||||
}
|
||||
@@ -57,14 +55,15 @@ namespace Dakota.Models
|
||||
return _Value;
|
||||
}
|
||||
|
||||
public void SetFilledIntValue(int value, int length)
|
||||
|
||||
public void SetValue(int value)
|
||||
{
|
||||
if (value.ToString().Length > length)
|
||||
throw new ArgumentOutOfRangeException("length", $"the length of {value} is bigger than len {length}");
|
||||
|
||||
SetValue(value.ToString("D" + length.ToString()));
|
||||
SetValue(value.ToString());
|
||||
}
|
||||
public void SetValue(Schlüssel schlussel)
|
||||
{
|
||||
SetValue(schlussel.Value);
|
||||
}
|
||||
|
||||
public void SetValue(string value)
|
||||
{
|
||||
if (value is string)
|
||||
@@ -83,24 +82,7 @@ namespace Dakota.Models
|
||||
|
||||
_Value = value;
|
||||
|
||||
_IsDecimal = false;
|
||||
}
|
||||
|
||||
public void SetDecimalValue(Decimal input)
|
||||
{
|
||||
var dec = input.ToString("#.00").Replace(".", ",");
|
||||
var tester = Math.Abs(input).ToString("#.00").Replace(".", "");
|
||||
|
||||
if (tester.Length < MinStellen || tester.Length > MaxStellen)
|
||||
{
|
||||
throw new NotImplementedException("Error Code: 3483091097895");
|
||||
}
|
||||
else
|
||||
{
|
||||
_Value = dec;
|
||||
}
|
||||
|
||||
_IsDecimal = true;
|
||||
_IgnoreCheck = false;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -4,20 +4,27 @@ using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace Dakota.Models
|
||||
namespace Dakota.Models.Daten
|
||||
{
|
||||
internal class DatenelementCounter : Datenelement
|
||||
internal class DatenelementCounter : DatenelementFiller
|
||||
{
|
||||
public Func<int> Counter { get; private set; }
|
||||
|
||||
public DatenelementCounter(string title, int count, Func<int> counter) : base(title, count, Feldart.Muss)
|
||||
public DatenelementCounter(string title, int count, Func<int> counter) : this(title, count, counter, count)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
public DatenelementCounter(string title, int count, Func<int> counter, int filllen) : base(title, count, filllen)
|
||||
{
|
||||
Counter = counter;
|
||||
}
|
||||
|
||||
public void Update()
|
||||
{
|
||||
SetFilledIntValue(Counter(), MinStellen);
|
||||
var value = Counter();
|
||||
|
||||
SetValue(value.ToString("D" + MinStellen.ToString()));
|
||||
}
|
||||
|
||||
public override string GetValue()
|
||||
24
Dakota/Models/Daten/DatenelementDateTime.cs
Normal file
24
Dakota/Models/Daten/DatenelementDateTime.cs
Normal file
@@ -0,0 +1,24 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace Dakota.Models.Daten
|
||||
{
|
||||
internal class DatenelementDateTime : Datenelement
|
||||
{
|
||||
public string Format { get; set; }
|
||||
|
||||
public DatenelementDateTime(string title, int count, string format, Feldart art) : base(title, count, count, art)
|
||||
{
|
||||
_IgnoreCheck = true;
|
||||
Format = format;
|
||||
}
|
||||
|
||||
public void SetValue(DateTime input)
|
||||
{
|
||||
base.SetValue(input.ToString(Format));
|
||||
}
|
||||
}
|
||||
}
|
||||
28
Dakota/Models/Daten/DatenelementDecimal.cs
Normal file
28
Dakota/Models/Daten/DatenelementDecimal.cs
Normal file
@@ -0,0 +1,28 @@
|
||||
using Dakota.Models.Schlüssels;
|
||||
using System;
|
||||
|
||||
namespace Dakota.Models.Daten
|
||||
{
|
||||
internal class DatenelementDecimal : Datenelement
|
||||
{
|
||||
public DatenelementDecimal(string title, int min, int max, Feldart art) : base(title, min, max, art)
|
||||
{
|
||||
_IgnoreCheck = true;
|
||||
}
|
||||
|
||||
public void SetValue(Decimal input)
|
||||
{
|
||||
var dec = input.ToString("#.00").Replace(".", ",");
|
||||
var tester = Math.Abs(input).ToString("#.00").Replace(".", "");
|
||||
|
||||
if (tester.Length < MinStellen || tester.Length > MaxStellen)
|
||||
{
|
||||
throw new NotImplementedException("Error Code: 3483091097895");
|
||||
}
|
||||
else
|
||||
{
|
||||
_Value = dec;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
36
Dakota/Models/Daten/DatenelementFiller.cs
Normal file
36
Dakota/Models/Daten/DatenelementFiller.cs
Normal file
@@ -0,0 +1,36 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace Dakota.Models.Daten
|
||||
{
|
||||
internal class DatenelementFiller : Datenelement
|
||||
{
|
||||
public int Value { get; set; }
|
||||
public int FillLength { get; set; }
|
||||
|
||||
public DatenelementFiller(string title, int count, int filllength) : base(title, count, Feldart.Muss)
|
||||
{
|
||||
FillLength = filllength;
|
||||
Title = title;
|
||||
}
|
||||
|
||||
public DatenelementFiller(string title, int min, int max, int filllength) : base(title, min, max, Feldart.Muss)
|
||||
{
|
||||
FillLength = filllength;
|
||||
Title = title;
|
||||
}
|
||||
|
||||
public void SetValue(int value)
|
||||
{
|
||||
if (value.ToString().Length > FillLength)
|
||||
throw new ArgumentOutOfRangeException("length", $"the length of {value} is bigger than len {FillLength}");
|
||||
|
||||
Value = value;
|
||||
|
||||
SetValue(value.ToString("D" + FillLength.ToString()));
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -4,7 +4,7 @@ using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace Dakota.Models
|
||||
namespace Dakota.Models.Daten
|
||||
{
|
||||
internal class Datenelementgruppe : Dateneinheit
|
||||
{
|
||||
56
Dakota/Models/Infos/DakotaFileInfo.cs
Normal file
56
Dakota/Models/Infos/DakotaFileInfo.cs
Normal file
@@ -0,0 +1,56 @@
|
||||
using BS.Shared.DataContracts;
|
||||
using Dakota.Models.Schlüssels;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
|
||||
namespace Dakota.Models.Infos
|
||||
{
|
||||
/// <summary>
|
||||
/// Klasse zum Erzeugen von Dakota Files
|
||||
/// </summary>
|
||||
public class DakotaFileInfo
|
||||
{
|
||||
private int _Datenaustauschreferenz;
|
||||
|
||||
public string Absenderbezeichnung { get; set; }
|
||||
public string Empfangerbezeichnung { get; set; }
|
||||
public int Datenaustauschreferenz
|
||||
{
|
||||
get { return _Datenaustauschreferenz; }
|
||||
set
|
||||
{
|
||||
if (value < 1)
|
||||
throw new ArgumentOutOfRangeException("Datenaustauschreferenz", "Referenz darf nicht negativ sein");
|
||||
else if (value == 0)
|
||||
throw new ArgumentOutOfRangeException("Datenaustauschreferenz", "Referenz darf nicht gleich null sein");
|
||||
else if (value > 100000)
|
||||
throw new ArgumentOutOfRangeException("Datenaustauschreferenz", "Referenz darf nicht größer als 99999 sein");
|
||||
else if (value == 100000)
|
||||
value = 1;
|
||||
|
||||
_Datenaustauschreferenz = value;
|
||||
}
|
||||
}
|
||||
public DateTime Created { get; set; }
|
||||
public SchlüsselLeistungserbringerSammelgruppenschlussel Leistungsbereich { get; set; }
|
||||
public string Anwendungsreferenz { get; set; }
|
||||
public SchlüsselTestindikator Testindikator { get; set; }
|
||||
public string IKLeistungserbringers { get; set; }
|
||||
public string Rechnungsnummer { get; set; }
|
||||
public DateTime Rechnungsdatum { get; set; }
|
||||
public SchlüsselSummenstatus Summenstatus00 { get; set; }
|
||||
public SchlüsselSummenstatus Summenstatus { get; set; }
|
||||
public decimal Gesamtrechnungsbetrag00 { get; set; }
|
||||
public decimal Gesamtbruttobetrag00 { get; set; }
|
||||
public decimal GesamtbetragZuzahlung00 { get; set; }
|
||||
public decimal Gesamtrechnungsbetrag { get; set; }
|
||||
public decimal Gesamtbruttobetrag { get; set; }
|
||||
public decimal GesamtbetragZuzahlung { get; set; }
|
||||
public SchlüsselRechnungsart Rechnungsart { get; set; }
|
||||
public string Name1 { get; set; }
|
||||
public string Name2 { get; set; }
|
||||
public string Name3 { get; set; }
|
||||
public string Name4 { get; set; }
|
||||
public SchlüsselVerarbeitungskennzeichen Verarbeitungskennzeichen { get; set; }
|
||||
}
|
||||
}
|
||||
66
Dakota/Models/Infos/DakotaInvoiceItemInfo.cs
Normal file
66
Dakota/Models/Infos/DakotaInvoiceItemInfo.cs
Normal file
@@ -0,0 +1,66 @@
|
||||
using Dakota.Models.Schlüssels;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace Dakota.Models.Infos
|
||||
{
|
||||
public class DakotaInvoiceItemInfo
|
||||
{
|
||||
public string IKAbsender { get; set; }
|
||||
public string IKEmpfänger { get; set; }
|
||||
public string IKLeistungserbringer { get; set; }
|
||||
public string IKKrankenkasse { get; set; }
|
||||
public string IKKVKarte { get; set; }
|
||||
public string IKKostentrager { get; set; }
|
||||
|
||||
public SchlüsselVerarbeitungskennzeichen Verarbeitungskennzeichen { get; set; }
|
||||
|
||||
public string VersichtertenVorname { get; set; }
|
||||
public string VersichtertenNachname { get; set; }
|
||||
public DateTime VersichtertenGeburtstag { get; set; }
|
||||
public string VersichtertenStraßeNr { get; set; }
|
||||
public string VersichtertenPLZ { get; set; }
|
||||
public string VersichtertenWohnort { get; set; }
|
||||
public string VersichtertenLanderkennung { get; set; }
|
||||
|
||||
public string VersichtertenNummer { get; set; }
|
||||
public string Versichertenstatus { get; set; }
|
||||
|
||||
public SchlüsselBeleginformation Beleginformation { get; set; }
|
||||
public string Belegnummer { get; set; }
|
||||
|
||||
public string EinzelfallIdentifikationsnummer { get; set; }
|
||||
public SchlüsselAbrechnungscodes EinzelfallAbrechnungscode { get; set; }
|
||||
public SchlüsselTarifkennzeichen EinzelfallTarifkennzeichen => new SchlüsselTarifkennzeichen(EinzelfallTarifkennzeichenBereich, EinzelfallTarifkennzeichenSondertarif);
|
||||
public SchlüsselTarifkennzeichenBereich EinzelfallTarifkennzeichenBereich { get; set; }
|
||||
public SchlüsselTarifkennzeichenSondertarif EinzelfallTarifkennzeichenSondertarif { get; set; }
|
||||
|
||||
public SchlüsselPos Abrechnungsposition => new SchlüsselPos(AbrechnungspositionArtDerEinrichtung, AbrechnungspositionBehandlungsart, AbrechnungspositionVergütungsart);
|
||||
public SchlüsselPosArtDerEinrichtung AbrechnungspositionArtDerEinrichtung { get; set; }
|
||||
public SchlüsselPosBehandlungsart AbrechnungspositionBehandlungsart { get; set; }
|
||||
public SchlüsselPosVergütungsart AbrechnungspositionVergütungsart { get; set; }
|
||||
|
||||
public decimal EinzelfallAnzahlMenge { get; set; }
|
||||
public decimal EinzelfallEinzelbetragAbrechnungsposition { get; set; }
|
||||
public DateTime EinzelfallDatumDerLeistungserbringung { get; set; }
|
||||
public decimal EinzelfallBetragZuzahlung { get; set; }
|
||||
|
||||
public decimal EinzelfallGefahreneKilometer { get; set; }
|
||||
public DateTime EinzelfallUhrzeit { get; set; }
|
||||
public DateTime EinzelfallUhrzeitBis { get; set; }
|
||||
public int EinzelfallDauer { get; set; }
|
||||
public DateTime EinzelfallVersorgungszeitraum { get; set; }
|
||||
public DateTime EinzelfallVersorgungszeitraumBis { get; set; }
|
||||
|
||||
public string Text { get; set; }
|
||||
|
||||
public decimal GesamtbetragBrutto { get; set; }
|
||||
public decimal GesamtbetragGesetzlicheZuzahlung { get; set; }
|
||||
public decimal GesamtbetragProzentualeZuzahlung { get; set; }
|
||||
public decimal PauschalerZuzahlungsbetrag { get; set; }
|
||||
public decimal GesamtbetragEigenanteil { get; set; }
|
||||
}
|
||||
}
|
||||
@@ -10,7 +10,7 @@ namespace Dakota.Models.Nachrichten
|
||||
internal abstract class Nachricht : IRow
|
||||
{
|
||||
public abstract List<Segment> GetSegments();
|
||||
|
||||
|
||||
public int GetSegmentLength()
|
||||
{
|
||||
return GetSegments().Count;
|
||||
|
||||
@@ -1,60 +1,60 @@
|
||||
using Dakota.Models.Segmente;
|
||||
using Dakota.Models.Segmente.SLGA;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
//using Dakota.Models.Segmente;
|
||||
//using Dakota.Models.Segmente.SLGA;
|
||||
//using System;
|
||||
//using System.Collections.Generic;
|
||||
//using System.Linq;
|
||||
//using System.Text;
|
||||
//using System.Threading.Tasks;
|
||||
|
||||
namespace Dakota.Models.Nachrichten
|
||||
{
|
||||
/// <summary>
|
||||
/// Gesamtaufstellung der
|
||||
/// Abrechnung(Rechnung)
|
||||
/// </summary>
|
||||
internal class NachrichtSLGA : Nachricht
|
||||
{
|
||||
/// <summary>
|
||||
/// Das Segment enthält Informationen über die zu verarbeitende Rechnung, den Rechnungssteller
|
||||
/// (Leistungserbringer oder Abrechnungsstelle) und das IK der Krankenkasse von
|
||||
/// der Krankenversichertenkarte bzw.von der ärztlichen Verordnung
|
||||
/// </summary>
|
||||
public SegmentSLGAFKT SegmentFKT { get; set; }
|
||||
/// <summary>
|
||||
/// Das Segment enthält die Rechnungsinformationen, wie Rechnungsnummer und Rechnungsdatum.
|
||||
/// </summary>
|
||||
public SegmentSLGAREC SegmentREC { get; set; }
|
||||
/// <summary>
|
||||
/// Das Segment enthält Informationen zur Umsatzsteuer.
|
||||
/// </summary>
|
||||
public SegmentSLGAUST SegmentUST { get; set; }
|
||||
/// <summary>
|
||||
/// Das Segment enthält Informationen, ob Skonto gewährt wird
|
||||
/// (Skonto in Prozent, Zahlungsziel).
|
||||
/// </summary>
|
||||
public SegmentSLGASKO SegmentSKO { get; set; }
|
||||
/// <summary>
|
||||
/// Das Segment enthält Rechnungssummen (Bruttobetrag, Zuzahlungsbetrag, Nettobetrag je Status).
|
||||
/// </summary>
|
||||
public SegmentSLGAGES SegmentGES { get; set; }
|
||||
/// <summary>
|
||||
/// Das Segment enthält den Namen und die Firmenbezeichnung des Leistungserbringers
|
||||
/// </summary>
|
||||
public SegmentSLGANAM SegmentNAM { get; set; }
|
||||
//namespace Dakota.Models.Nachrichten
|
||||
//{
|
||||
// /// <summary>
|
||||
// /// Gesamtaufstellung der
|
||||
// /// Abrechnung(Rechnung)
|
||||
// /// </summary>
|
||||
// internal class NachrichtSLGA : Nachricht
|
||||
// {
|
||||
// /// <summary>
|
||||
// /// Das Segment enthält Informationen über die zu verarbeitende Rechnung, den Rechnungssteller
|
||||
// /// (Leistungserbringer oder Abrechnungsstelle) und das IK der Krankenkasse von
|
||||
// /// der Krankenversichertenkarte bzw.von der ärztlichen Verordnung
|
||||
// /// </summary>
|
||||
// public SegmentSLGAFKT SegmentFKT { get; set; }
|
||||
// /// <summary>
|
||||
// /// Das Segment enthält die Rechnungsinformationen, wie Rechnungsnummer und Rechnungsdatum.
|
||||
// /// </summary>
|
||||
// public SegmentSLGAREC SegmentREC { get; set; }
|
||||
// /// <summary>
|
||||
// /// Das Segment enthält Informationen zur Umsatzsteuer.
|
||||
// /// </summary>
|
||||
// public SegmentSLGAUST SegmentUST { get; set; }
|
||||
// /// <summary>
|
||||
// /// Das Segment enthält Informationen, ob Skonto gewährt wird
|
||||
// /// (Skonto in Prozent, Zahlungsziel).
|
||||
// /// </summary>
|
||||
// public SegmentSLGASKO SegmentSKO { get; set; }
|
||||
// /// <summary>
|
||||
// /// Das Segment enthält Rechnungssummen (Bruttobetrag, Zuzahlungsbetrag, Nettobetrag je Status).
|
||||
// /// </summary>
|
||||
// public SegmentSLGAGES SegmentGES { get; set; }
|
||||
// /// <summary>
|
||||
// /// Das Segment enthält den Namen und die Firmenbezeichnung des Leistungserbringers
|
||||
// /// </summary>
|
||||
// public SegmentSLGANAM SegmentNAM { get; set; }
|
||||
|
||||
public NachrichtSLGA()
|
||||
{
|
||||
SegmentFKT = new SegmentSLGAFKT();
|
||||
SegmentREC = new SegmentSLGAREC();
|
||||
SegmentUST = new SegmentSLGAUST();
|
||||
SegmentSKO = new SegmentSLGASKO();
|
||||
SegmentGES = new SegmentSLGAGES();
|
||||
SegmentNAM = new SegmentSLGANAM();
|
||||
}
|
||||
// public NachrichtSLGA()
|
||||
// {
|
||||
// SegmentFKT = new SegmentSLGAFKT();
|
||||
// SegmentREC = new SegmentSLGAREC();
|
||||
// SegmentUST = new SegmentSLGAUST();
|
||||
// SegmentSKO = new SegmentSLGASKO();
|
||||
// SegmentGES = new SegmentSLGAGES();
|
||||
// SegmentNAM = new SegmentSLGANAM();
|
||||
// }
|
||||
|
||||
public override List<Segment> GetSegments()
|
||||
{
|
||||
return new List<Segment>() { SegmentFKT, SegmentREC, SegmentUST, SegmentSKO, SegmentGES, SegmentNAM };
|
||||
}
|
||||
}
|
||||
}
|
||||
// public override List<Segment> GetSegments()
|
||||
// {
|
||||
// return new List<Segment>() { SegmentFKT, SegmentREC, SegmentUST, SegmentSKO, SegmentGES, SegmentNAM };
|
||||
// }
|
||||
// }
|
||||
//}
|
||||
|
||||
@@ -1,54 +1,54 @@
|
||||
using Dakota.Models.Segmente;
|
||||
using Dakota.Models.Segmente.SLGA;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
//using Dakota.Models.Segmente;
|
||||
//using Dakota.Models.Segmente.SLGA;
|
||||
//using System;
|
||||
//using System.Collections.Generic;
|
||||
//using System.Linq;
|
||||
//using System.Text;
|
||||
//using System.Threading.Tasks;
|
||||
|
||||
namespace Dakota.Models.Nachrichten
|
||||
{
|
||||
/// <summary>
|
||||
/// Gesamtaufstellung der
|
||||
/// Abrechnung(Rechnung)
|
||||
/// </summary>
|
||||
internal class NachrichtSLGA2 : Nachricht
|
||||
{
|
||||
/// <summary>
|
||||
/// Das Segment enthält Informationen über die zu verarbeitende Rechnung, den Rechnungssteller
|
||||
/// (Leistungserbringer oder Abrechnungsstelle) und das IK der Krankenkasse von
|
||||
/// der Krankenversichertenkarte bzw.von der ärztlichen Verordnung
|
||||
/// </summary>
|
||||
public SegmentSLGAFKT SegmentFKT { get; set; }
|
||||
/// <summary>
|
||||
/// Das Segment enthält die Rechnungsinformationen, wie Rechnungsnummer und Rechnungsdatum.
|
||||
/// </summary>
|
||||
public SegmentSLGAREC SegmentREC { get; set; }
|
||||
/// <summary>
|
||||
/// Das Segment enthält Informationen zur Umsatzsteuer.
|
||||
/// </summary>
|
||||
public SegmentSLGAGES SegmentGES { get; set; }
|
||||
/// <summary>
|
||||
/// Das Segment enthält den Namen und die Firmenbezeichnung des Leistungserbringers
|
||||
/// </summary>
|
||||
public SegmentSLGAGES SegmentGES00 { get; set; }
|
||||
/// <summary>
|
||||
/// Das Segment enthält den Namen und die Firmenbezeichnung des Leistungserbringers
|
||||
/// </summary>
|
||||
public SegmentSLGANAM SegmentNAM { get; set; }
|
||||
//namespace Dakota.Models.Nachrichten
|
||||
//{
|
||||
// /// <summary>
|
||||
// /// Gesamtaufstellung der
|
||||
// /// Abrechnung(Rechnung)
|
||||
// /// </summary>
|
||||
// internal class NachrichtSLGA2 : Nachricht
|
||||
// {
|
||||
// /// <summary>
|
||||
// /// Das Segment enthält Informationen über die zu verarbeitende Rechnung, den Rechnungssteller
|
||||
// /// (Leistungserbringer oder Abrechnungsstelle) und das IK der Krankenkasse von
|
||||
// /// der Krankenversichertenkarte bzw.von der ärztlichen Verordnung
|
||||
// /// </summary>
|
||||
// public SegmentSLGAFKT SegmentFKT { get; set; }
|
||||
// /// <summary>
|
||||
// /// Das Segment enthält die Rechnungsinformationen, wie Rechnungsnummer und Rechnungsdatum.
|
||||
// /// </summary>
|
||||
// public SegmentSLGAREC SegmentREC { get; set; }
|
||||
// /// <summary>
|
||||
// /// Das Segment enthält Informationen zur Umsatzsteuer.
|
||||
// /// </summary>
|
||||
// public SegmentSLGAGES SegmentGES { get; set; }
|
||||
// /// <summary>
|
||||
// /// Das Segment enthält den Namen und die Firmenbezeichnung des Leistungserbringers
|
||||
// /// </summary>
|
||||
// public SegmentSLGAGES SegmentGES00 { get; set; }
|
||||
// /// <summary>
|
||||
// /// Das Segment enthält den Namen und die Firmenbezeichnung des Leistungserbringers
|
||||
// /// </summary>
|
||||
// public SegmentSLGANAM SegmentNAM { get; set; }
|
||||
|
||||
public NachrichtSLGA2()
|
||||
{
|
||||
SegmentFKT = new SegmentSLGAFKT();
|
||||
SegmentREC = new SegmentSLGAREC();
|
||||
SegmentGES = new SegmentSLGAGES();
|
||||
SegmentGES00 = new SegmentSLGAGES();
|
||||
SegmentNAM = new SegmentSLGANAM();
|
||||
}
|
||||
// public NachrichtSLGA2()
|
||||
// {
|
||||
// SegmentFKT = new SegmentSLGAFKT();
|
||||
// SegmentREC = new SegmentSLGAREC();
|
||||
// SegmentGES = new SegmentSLGAGES();
|
||||
// SegmentGES00 = new SegmentSLGAGES();
|
||||
// SegmentNAM = new SegmentSLGANAM();
|
||||
// }
|
||||
|
||||
public override List<Segment> GetSegments()
|
||||
{
|
||||
return new List<Segment>() { SegmentFKT, SegmentREC, SegmentGES00, SegmentGES, SegmentNAM };
|
||||
}
|
||||
}
|
||||
}
|
||||
// public override List<Segment> GetSegments()
|
||||
// {
|
||||
// return new List<Segment>() { SegmentFKT, SegmentREC, SegmentGES00, SegmentGES, SegmentNAM };
|
||||
// }
|
||||
// }
|
||||
//}
|
||||
|
||||
@@ -36,6 +36,10 @@ namespace Dakota.Models.Nachrichten
|
||||
/// <summary>
|
||||
/// Das Segment enthält Rechnungssummen (Bruttobetrag, Zuzahlungsbetrag, Nettobetrag je Status).
|
||||
/// </summary>
|
||||
public SegmentSLGAGES SegmentGES00 { get; set; }
|
||||
/// <summary>
|
||||
/// Das Segment enthält Rechnungssummen (Bruttobetrag, Zuzahlungsbetrag, Nettobetrag je Status).
|
||||
/// </summary>
|
||||
public SegmentSLGAGES SegmentGES { get; set; }
|
||||
/// <summary>
|
||||
/// Das Segment enthält den Namen und die Firmenbezeichnung des Leistungserbringers
|
||||
@@ -48,13 +52,14 @@ namespace Dakota.Models.Nachrichten
|
||||
SegmentREC = new SegmentSLGAREC();
|
||||
SegmentUST = new SegmentSLGAUST();
|
||||
SegmentSKO = new SegmentSLGASKO();
|
||||
SegmentGES00 = new SegmentSLGAGES();
|
||||
SegmentGES = new SegmentSLGAGES();
|
||||
SegmentNAM = new SegmentSLGANAM();
|
||||
}
|
||||
|
||||
public override List<Segment> GetSegments()
|
||||
{
|
||||
return new List<Segment>() { SegmentFKT, SegmentREC, SegmentUST, SegmentSKO, SegmentGES, SegmentNAM };
|
||||
return new List<Segment>() { SegmentFKT, SegmentREC, SegmentUST, SegmentSKO, SegmentGES00, SegmentGES, SegmentNAM };
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,134 +1,134 @@
|
||||
using Dakota.Models.Segmente;
|
||||
using Dakota.Models.Segmente.SLLA;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
//using Dakota.Models.Segmente;
|
||||
//using Dakota.Models.Segmente.SLLA;
|
||||
//using System;
|
||||
//using System.Collections.Generic;
|
||||
//using System.Linq;
|
||||
//using System.Text;
|
||||
//using System.Threading.Tasks;
|
||||
|
||||
namespace Dakota.Models.Nachrichten
|
||||
{
|
||||
/// <summary>
|
||||
/// Leistungserbringer
|
||||
/// </summary>
|
||||
internal class NachrichtSLLA : Nachricht
|
||||
{
|
||||
/// <summary>
|
||||
/// Das Segment enthält Informationen über den tatsächlichen
|
||||
/// Leistungserbringer und das IK der Krankenkasse von der
|
||||
/// Krankenversichertenkarte bzw.der ärztlichen Verordnung bezogen auf die folgenden Abrechnungsfälle.Es kommt je Nachricht nur einmal vor.
|
||||
/// </summary>
|
||||
public SegmentSLLAFKT SegmentSLLAFKT { get; private set; }
|
||||
/// <summary>
|
||||
/// Das Segment enthält die Rechnungsinformationen, wie Rechnungsnummer und Rechnungsdatum
|
||||
/// </summary>
|
||||
public SegmentSLLAREC SegmentSLLAREC { get; private set; }
|
||||
/// <summary>
|
||||
/// Das Segment enthält die Versichertendaten eines Abrechnungsfalles (Verordnung), und gilt gleichzeitig als BeginnSegment für einen Abrechnungsfall. Jeder Abrechnungsfall ist
|
||||
/// mit einer eindeutigen Belegnummer zu kennzeichnen, die der
|
||||
/// auf der Verordnung zu übertragenen Belegnummer(s. § 4 des
|
||||
/// Richtlinientextes) entsprechen muss.
|
||||
/// </summary>
|
||||
public SegmentSLLAINV SegmentSLLAINV { get; private set; }
|
||||
/// <summary>
|
||||
/// Dieses Segment enthält bei Korrekturlieferungen die ursprünglichen Rechnungsinformationen. Es wird zunächst nur
|
||||
/// in Abhängigkeit für die Verarbeitungskennzeichen
|
||||
/// '02' Nachforderung,
|
||||
/// ‚03‘ Zuzahlungsforderung und
|
||||
/// ‚04‘ Korrekturrechnung
|
||||
/// (Schlüsselverzeichnis Anlage 3, Kapitel 8.1.7) geliefert
|
||||
/// </summary>
|
||||
public SegmentSLLAURI SegmentSLLAURI { get; private set; }
|
||||
/// <summary>
|
||||
/// Das Segment enthält den Namen und die Adressdaten des
|
||||
/// Versicherten.
|
||||
/// </summary>
|
||||
public SegmentSLLANAD SegmentSLLANAD { get; private set; }
|
||||
/// <summary>
|
||||
/// Das Segment enthält den Imagenamen bei Übermittlung von
|
||||
/// Imagearchiven durch den Absender.
|
||||
/// </summary>
|
||||
public SegmentSLLAIMG SegmentSLLAIMG { get; private set; }
|
||||
//namespace Dakota.Models.Nachrichten
|
||||
//{
|
||||
// /// <summary>
|
||||
// /// Leistungserbringer
|
||||
// /// </summary>
|
||||
// internal class NachrichtSLLA : Nachricht
|
||||
// {
|
||||
// /// <summary>
|
||||
// /// Das Segment enthält Informationen über den tatsächlichen
|
||||
// /// Leistungserbringer und das IK der Krankenkasse von der
|
||||
// /// Krankenversichertenkarte bzw.der ärztlichen Verordnung bezogen auf die folgenden Abrechnungsfälle.Es kommt je Nachricht nur einmal vor.
|
||||
// /// </summary>
|
||||
// public SegmentSLLAFKT SegmentSLLAFKT { get; private set; }
|
||||
// /// <summary>
|
||||
// /// Das Segment enthält die Rechnungsinformationen, wie Rechnungsnummer und Rechnungsdatum
|
||||
// /// </summary>
|
||||
// public SegmentSLLAREC SegmentSLLAREC { get; private set; }
|
||||
// /// <summary>
|
||||
// /// Das Segment enthält die Versichertendaten eines Abrechnungsfalles (Verordnung), und gilt gleichzeitig als BeginnSegment für einen Abrechnungsfall. Jeder Abrechnungsfall ist
|
||||
// /// mit einer eindeutigen Belegnummer zu kennzeichnen, die der
|
||||
// /// auf der Verordnung zu übertragenen Belegnummer(s. § 4 des
|
||||
// /// Richtlinientextes) entsprechen muss.
|
||||
// /// </summary>
|
||||
// public SegmentSLLAINV SegmentSLLAINV { get; private set; }
|
||||
// /// <summary>
|
||||
// /// Dieses Segment enthält bei Korrekturlieferungen die ursprünglichen Rechnungsinformationen. Es wird zunächst nur
|
||||
// /// in Abhängigkeit für die Verarbeitungskennzeichen
|
||||
// /// '02' Nachforderung,
|
||||
// /// ‚03‘ Zuzahlungsforderung und
|
||||
// /// ‚04‘ Korrekturrechnung
|
||||
// /// (Schlüsselverzeichnis Anlage 3, Kapitel 8.1.7) geliefert
|
||||
// /// </summary>
|
||||
// public SegmentSLLAURI SegmentSLLAURI { get; private set; }
|
||||
// /// <summary>
|
||||
// /// Das Segment enthält den Namen und die Adressdaten des
|
||||
// /// Versicherten.
|
||||
// /// </summary>
|
||||
// public SegmentSLLANAD SegmentSLLANAD { get; private set; }
|
||||
// /// <summary>
|
||||
// /// Das Segment enthält den Imagenamen bei Übermittlung von
|
||||
// /// Imagearchiven durch den Absender.
|
||||
// /// </summary>
|
||||
// public SegmentSLLAIMG SegmentSLLAIMG { get; private set; }
|
||||
|
||||
/// <summary>
|
||||
/// Das Segment dient zur Abrechnung der einzelnen Positionen,
|
||||
/// die für den abzurechnenden Fall angefallen sind.Es ist so oft
|
||||
/// wiederholbar, wie Abrechnungspositionen vorkommen.
|
||||
/// </summary>
|
||||
public SegmentSLLAENF SegmentSLLAENF { get; private set; }
|
||||
/// <summary>
|
||||
/// Mit diesem Segment können weitere Informationen, bezogen
|
||||
/// auf die abzurechnende Position übermittelt werden.Hier können u.a.die Uhrzeit und die gefahrenen Kilometer angegeben
|
||||
/// werden. Es kann je abzurechnende Position einmal vorkommen
|
||||
/// </summary>
|
||||
public SegmentSLLASUT SegmentSLLASUT { get; private set; }
|
||||
/// <summary>
|
||||
/// Mit diesem Segment kann zu jeder abzurechnenden Position
|
||||
/// ein Text(z.B.als Begründung) hinterlegt werden.Es kann je
|
||||
/// abzurechnende Position einmal vorkommen.
|
||||
/// </summary>
|
||||
public SegmentSLLATXT SegmentSLLATXT { get; private set; }
|
||||
/// <summary>
|
||||
/// Mit diesem Segment kann zu jeder abzurechnenden Position
|
||||
/// Mehrwertsteuer angegeben werden.Benutzt werden soll das
|
||||
/// Segment nur dann, wenn dem in ENF genannten Einzelbetrag
|
||||
/// die Mehrwertsteuer hinzuzurechnen ist.
|
||||
/// </summary>
|
||||
public SegmentSLLAMWS SegmentSLLAMWS { get; private set; }
|
||||
/// <summary>
|
||||
/// Das Segment enthält Angaben über die Zuzahlung. Das Segment ist bis auf weiteres nicht zu übermitteln. Das Segment ist
|
||||
/// für spätere Ausprägungen reserviert.
|
||||
/// </summary>
|
||||
public SegmentSLLAZUZ SegmentSLLAZUZ { get; private set; }
|
||||
/// <summary>
|
||||
/// Das Segment enthält allgemeine Angaben zum Abrechnungsfall (Verordnung) und ist zu übermitteln, wenn eine ärztliche
|
||||
/// Verordnung, ein Reparatur- oder Berechtigungsschein oder
|
||||
/// Unfall/BVG vorliegt.
|
||||
/// </summary>
|
||||
public SegmentSLLAZUV SegmentSLLAZUV { get; private set; }
|
||||
/// <summary>
|
||||
/// Das Segment dient zur Angabe der Diagnose und ist so oft
|
||||
/// wiederholbar, wie Diagnosen vorliegen
|
||||
/// </summary>
|
||||
public SegmentSLLADIA SegmentSLLADIA { get; private set; }
|
||||
/// <summary>
|
||||
/// Das Segment enthält Angaben über die von der Krankenkasse
|
||||
/// ausgesprochene Kostenzusage/Genehmigung und ist nur zu
|
||||
/// übermitteln, wenn diese vorliegt.
|
||||
/// </summary>
|
||||
public SegmentSLLASKZ SegmentSLLASKZ { get; private set; }
|
||||
/// <summary>
|
||||
/// Das Segment enthält Angaben über den abzurechnenden Gesamtbruttobetrag eines Abrechnungsfalles (Verordnung)
|
||||
/// (Summe aller ENF-Beträge ggf.zuzüglich der Mehrwertsteuer)
|
||||
/// </summary>
|
||||
public SegmentSLLABES SegmentSLLABES { get; private set; }
|
||||
// /// <summary>
|
||||
// /// Das Segment dient zur Abrechnung der einzelnen Positionen,
|
||||
// /// die für den abzurechnenden Fall angefallen sind.Es ist so oft
|
||||
// /// wiederholbar, wie Abrechnungspositionen vorkommen.
|
||||
// /// </summary>
|
||||
// public SegmentSLLAENF SegmentSLLAENF { get; private set; }
|
||||
// /// <summary>
|
||||
// /// Mit diesem Segment können weitere Informationen, bezogen
|
||||
// /// auf die abzurechnende Position übermittelt werden.Hier können u.a.die Uhrzeit und die gefahrenen Kilometer angegeben
|
||||
// /// werden. Es kann je abzurechnende Position einmal vorkommen
|
||||
// /// </summary>
|
||||
// public SegmentSLLASUT SegmentSLLASUT { get; private set; }
|
||||
// /// <summary>
|
||||
// /// Mit diesem Segment kann zu jeder abzurechnenden Position
|
||||
// /// ein Text(z.B.als Begründung) hinterlegt werden.Es kann je
|
||||
// /// abzurechnende Position einmal vorkommen.
|
||||
// /// </summary>
|
||||
// public SegmentSLLATXT SegmentSLLATXT { get; private set; }
|
||||
// /// <summary>
|
||||
// /// Mit diesem Segment kann zu jeder abzurechnenden Position
|
||||
// /// Mehrwertsteuer angegeben werden.Benutzt werden soll das
|
||||
// /// Segment nur dann, wenn dem in ENF genannten Einzelbetrag
|
||||
// /// die Mehrwertsteuer hinzuzurechnen ist.
|
||||
// /// </summary>
|
||||
// public SegmentSLLAMWS SegmentSLLAMWS { get; private set; }
|
||||
// /// <summary>
|
||||
// /// Das Segment enthält Angaben über die Zuzahlung. Das Segment ist bis auf weiteres nicht zu übermitteln. Das Segment ist
|
||||
// /// für spätere Ausprägungen reserviert.
|
||||
// /// </summary>
|
||||
// public SegmentSLLAZUZ SegmentSLLAZUZ { get; private set; }
|
||||
// /// <summary>
|
||||
// /// Das Segment enthält allgemeine Angaben zum Abrechnungsfall (Verordnung) und ist zu übermitteln, wenn eine ärztliche
|
||||
// /// Verordnung, ein Reparatur- oder Berechtigungsschein oder
|
||||
// /// Unfall/BVG vorliegt.
|
||||
// /// </summary>
|
||||
// public SegmentSLLAZUV SegmentSLLAZUV { get; private set; }
|
||||
// /// <summary>
|
||||
// /// Das Segment dient zur Angabe der Diagnose und ist so oft
|
||||
// /// wiederholbar, wie Diagnosen vorliegen
|
||||
// /// </summary>
|
||||
// public SegmentSLLADIA SegmentSLLADIA { get; private set; }
|
||||
// /// <summary>
|
||||
// /// Das Segment enthält Angaben über die von der Krankenkasse
|
||||
// /// ausgesprochene Kostenzusage/Genehmigung und ist nur zu
|
||||
// /// übermitteln, wenn diese vorliegt.
|
||||
// /// </summary>
|
||||
// public SegmentSLLASKZ SegmentSLLASKZ { get; private set; }
|
||||
// /// <summary>
|
||||
// /// Das Segment enthält Angaben über den abzurechnenden Gesamtbruttobetrag eines Abrechnungsfalles (Verordnung)
|
||||
// /// (Summe aller ENF-Beträge ggf.zuzüglich der Mehrwertsteuer)
|
||||
// /// </summary>
|
||||
// public SegmentSLLABES SegmentSLLABES { get; private set; }
|
||||
|
||||
public NachrichtSLLA()
|
||||
{
|
||||
SegmentSLLAFKT = new SegmentSLLAFKT();
|
||||
SegmentSLLAREC = new SegmentSLLAREC();
|
||||
SegmentSLLAINV = new SegmentSLLAINV();
|
||||
SegmentSLLAURI = new SegmentSLLAURI();
|
||||
SegmentSLLANAD = new SegmentSLLANAD();
|
||||
SegmentSLLAIMG = new SegmentSLLAIMG();
|
||||
// public NachrichtSLLA()
|
||||
// {
|
||||
// SegmentSLLAFKT = new SegmentSLLAFKT();
|
||||
// SegmentSLLAREC = new SegmentSLLAREC();
|
||||
// SegmentSLLAINV = new SegmentSLLAINV();
|
||||
// SegmentSLLAURI = new SegmentSLLAURI();
|
||||
// SegmentSLLANAD = new SegmentSLLANAD();
|
||||
// SegmentSLLAIMG = new SegmentSLLAIMG();
|
||||
|
||||
SegmentSLLAENF = new SegmentSLLAENF();
|
||||
SegmentSLLASUT = new SegmentSLLASUT();
|
||||
SegmentSLLATXT = new SegmentSLLATXT();
|
||||
SegmentSLLAMWS = new SegmentSLLAMWS();
|
||||
SegmentSLLAZUZ = new SegmentSLLAZUZ();
|
||||
SegmentSLLAZUV = new SegmentSLLAZUV();
|
||||
SegmentSLLADIA = new SegmentSLLADIA();
|
||||
SegmentSLLASKZ = new SegmentSLLASKZ();
|
||||
SegmentSLLABES = new SegmentSLLABES();
|
||||
}
|
||||
// SegmentSLLAENF = new SegmentSLLAENF();
|
||||
// SegmentSLLASUT = new SegmentSLLASUT();
|
||||
// SegmentSLLATXT = new SegmentSLLATXT();
|
||||
// SegmentSLLAMWS = new SegmentSLLAMWS();
|
||||
// SegmentSLLAZUZ = new SegmentSLLAZUZ();
|
||||
// SegmentSLLAZUV = new SegmentSLLAZUV();
|
||||
// SegmentSLLADIA = new SegmentSLLADIA();
|
||||
// SegmentSLLASKZ = new SegmentSLLASKZ();
|
||||
// SegmentSLLABES = new SegmentSLLABES();
|
||||
// }
|
||||
|
||||
public override List<Segment> GetSegments()
|
||||
{
|
||||
return new List<Segment>() { SegmentSLLAFKT, SegmentSLLAREC, SegmentSLLAINV, SegmentSLLAURI, SegmentSLLANAD, SegmentSLLAIMG,
|
||||
SegmentSLLAENF, SegmentSLLASUT, SegmentSLLATXT, SegmentSLLAMWS,
|
||||
SegmentSLLAZUZ, SegmentSLLAZUV, SegmentSLLADIA, SegmentSLLASKZ, SegmentSLLABES
|
||||
};
|
||||
}
|
||||
}
|
||||
}
|
||||
// public override List<Segment> GetSegments()
|
||||
// {
|
||||
// return new List<Segment>() { SegmentSLLAFKT, SegmentSLLAREC, SegmentSLLAINV, SegmentSLLAURI, SegmentSLLANAD, SegmentSLLAIMG,
|
||||
// SegmentSLLAENF, SegmentSLLASUT, SegmentSLLATXT, SegmentSLLAMWS,
|
||||
// SegmentSLLAZUZ, SegmentSLLAZUV, SegmentSLLADIA, SegmentSLLASKZ, SegmentSLLABES
|
||||
// };
|
||||
// }
|
||||
// }
|
||||
//}
|
||||
|
||||
@@ -1,119 +1,119 @@
|
||||
using Dakota.Models.Segmente;
|
||||
using Dakota.Models.Segmente.SLLA;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
//using Dakota.Models.Segmente;
|
||||
//using Dakota.Models.Segmente.SLLA;
|
||||
//using System;
|
||||
//using System.Collections.Generic;
|
||||
//using System.Linq;
|
||||
//using System.Text;
|
||||
//using System.Threading.Tasks;
|
||||
|
||||
namespace Dakota.Models.Nachrichten
|
||||
{
|
||||
/// <summary>
|
||||
/// Leistungserbringer
|
||||
/// </summary>
|
||||
internal class NachrichtSLLA2 : Nachricht
|
||||
{
|
||||
/// <summary>
|
||||
/// Das Segment enthält Informationen über den tatsächlichen
|
||||
/// Leistungserbringer und das IK der Krankenkasse von der
|
||||
/// Krankenversichertenkarte bzw.der ärztlichen Verordnung bezogen auf die folgenden Abrechnungsfälle.Es kommt je Nachricht nur einmal vor.
|
||||
/// </summary>
|
||||
public SegmentSLLAFKT SegmentSLLAFKT { get; private set; }
|
||||
/// <summary>
|
||||
/// Das Segment enthält die Rechnungsinformationen, wie Rechnungsnummer und Rechnungsdatum
|
||||
/// </summary>
|
||||
public SegmentSLLAREC SegmentSLLAREC { get; private set; }
|
||||
/// <summary>
|
||||
/// Das Segment enthält die Versichertendaten eines Abrechnungsfalles (Verordnung), und gilt gleichzeitig als BeginnSegment für einen Abrechnungsfall. Jeder Abrechnungsfall ist
|
||||
/// mit einer eindeutigen Belegnummer zu kennzeichnen, die der
|
||||
/// auf der Verordnung zu übertragenen Belegnummer(s. § 4 des
|
||||
/// Richtlinientextes) entsprechen muss.
|
||||
/// </summary>
|
||||
public SegmentSLLAINV SegmentSLLAINV { get; private set; }
|
||||
/// <summary>
|
||||
/// Dieses Segment enthält bei Korrekturlieferungen die ursprünglichen Rechnungsinformationen. Es wird zunächst nur
|
||||
/// in Abhängigkeit für die Verarbeitungskennzeichen
|
||||
/// '02' Nachforderung,
|
||||
/// ‚03‘ Zuzahlungsforderung und
|
||||
/// ‚04‘ Korrekturrechnung
|
||||
/// (Schlüsselverzeichnis Anlage 3, Kapitel 8.1.7) geliefert
|
||||
/// </summary>
|
||||
public SegmentSLLAURI SegmentSLLAURI { get; private set; }
|
||||
/// <summary>
|
||||
/// Das Segment enthält den Namen und die Adressdaten des
|
||||
/// Versicherten.
|
||||
/// </summary>
|
||||
public SegmentSLLANAD SegmentSLLANAD { get; private set; }
|
||||
/// <summary>
|
||||
/// Das Segment enthält den Imagenamen bei Übermittlung von
|
||||
/// Imagearchiven durch den Absender.
|
||||
/// </summary>
|
||||
public SegmentSLLAIMG SegmentSLLAIMG { get; private set; }
|
||||
/// <summary>
|
||||
/// Das Segment dient zur Abrechnung der einzelnen Positionen,
|
||||
/// die für den abzurechnenden Fall angefallen sind.
|
||||
/// Es ist so oft
|
||||
/// wiederholbar, wie Abrechnungspositionen vorkommen.
|
||||
/// </summary>
|
||||
public List<Abrechnungsposition> Abrechnungspositions { get; set; }
|
||||
/// <summary>
|
||||
/// Das Segment enthält Angaben über die Zuzahlung. Das Segment ist bis auf weiteres nicht zu übermitteln. Das Segment ist
|
||||
/// für spätere Ausprägungen reserviert.
|
||||
/// </summary>
|
||||
public SegmentSLLAZUV SegmentSLLAZUV { get; private set; }
|
||||
/// <summary>
|
||||
/// Das Segment dient zur Angabe der Diagnose und ist so oft
|
||||
/// wiederholbar, wie Diagnosen vorliegen
|
||||
/// </summary>
|
||||
public SegmentSLLADIA SegmentSLLADIA { get; private set; }
|
||||
/// <summary>
|
||||
/// Das Segment enthält Angaben über die von der Krankenkasse
|
||||
/// ausgesprochene Kostenzusage/Genehmigung und ist nur zu
|
||||
/// übermitteln, wenn diese vorliegt.
|
||||
/// </summary>
|
||||
public SegmentSLLASKZ SegmentSLLASKZ { get; private set; }
|
||||
/// <summary>
|
||||
/// Das Segment enthält Angaben über den abzurechnenden Gesamtbruttobetrag eines Abrechnungsfalles (Verordnung)
|
||||
/// (Summe aller ENF-Beträge ggf.zuzüglich der Mehrwertsteuer)
|
||||
/// </summary>
|
||||
public SegmentSLLABES SegmentSLLABES { get; private set; }
|
||||
//namespace Dakota.Models.Nachrichten
|
||||
//{
|
||||
// /// <summary>
|
||||
// /// Leistungserbringer
|
||||
// /// </summary>
|
||||
// internal class NachrichtSLLA2 : Nachricht
|
||||
// {
|
||||
// /// <summary>
|
||||
// /// Das Segment enthält Informationen über den tatsächlichen
|
||||
// /// Leistungserbringer und das IK der Krankenkasse von der
|
||||
// /// Krankenversichertenkarte bzw.der ärztlichen Verordnung bezogen auf die folgenden Abrechnungsfälle.Es kommt je Nachricht nur einmal vor.
|
||||
// /// </summary>
|
||||
// public SegmentSLLAFKT SegmentSLLAFKT { get; private set; }
|
||||
// /// <summary>
|
||||
// /// Das Segment enthält die Rechnungsinformationen, wie Rechnungsnummer und Rechnungsdatum
|
||||
// /// </summary>
|
||||
// public SegmentSLLAREC SegmentSLLAREC { get; private set; }
|
||||
// /// <summary>
|
||||
// /// Das Segment enthält die Versichertendaten eines Abrechnungsfalles (Verordnung), und gilt gleichzeitig als BeginnSegment für einen Abrechnungsfall. Jeder Abrechnungsfall ist
|
||||
// /// mit einer eindeutigen Belegnummer zu kennzeichnen, die der
|
||||
// /// auf der Verordnung zu übertragenen Belegnummer(s. § 4 des
|
||||
// /// Richtlinientextes) entsprechen muss.
|
||||
// /// </summary>
|
||||
// public SegmentSLLAINV SegmentSLLAINV { get; private set; }
|
||||
// /// <summary>
|
||||
// /// Dieses Segment enthält bei Korrekturlieferungen die ursprünglichen Rechnungsinformationen. Es wird zunächst nur
|
||||
// /// in Abhängigkeit für die Verarbeitungskennzeichen
|
||||
// /// '02' Nachforderung,
|
||||
// /// ‚03‘ Zuzahlungsforderung und
|
||||
// /// ‚04‘ Korrekturrechnung
|
||||
// /// (Schlüsselverzeichnis Anlage 3, Kapitel 8.1.7) geliefert
|
||||
// /// </summary>
|
||||
// public SegmentSLLAURI SegmentSLLAURI { get; private set; }
|
||||
// /// <summary>
|
||||
// /// Das Segment enthält den Namen und die Adressdaten des
|
||||
// /// Versicherten.
|
||||
// /// </summary>
|
||||
// public SegmentSLLANAD SegmentSLLANAD { get; private set; }
|
||||
// /// <summary>
|
||||
// /// Das Segment enthält den Imagenamen bei Übermittlung von
|
||||
// /// Imagearchiven durch den Absender.
|
||||
// /// </summary>
|
||||
// public SegmentSLLAIMG SegmentSLLAIMG { get; private set; }
|
||||
// /// <summary>
|
||||
// /// Das Segment dient zur Abrechnung der einzelnen Positionen,
|
||||
// /// die für den abzurechnenden Fall angefallen sind.
|
||||
// /// Es ist so oft
|
||||
// /// wiederholbar, wie Abrechnungspositionen vorkommen.
|
||||
// /// </summary>
|
||||
// public List<Abrechnungsposition> Abrechnungspositions { get; set; }
|
||||
// /// <summary>
|
||||
// /// Das Segment enthält Angaben über die Zuzahlung. Das Segment ist bis auf weiteres nicht zu übermitteln. Das Segment ist
|
||||
// /// für spätere Ausprägungen reserviert.
|
||||
// /// </summary>
|
||||
// public SegmentSLLAZUV SegmentSLLAZUV { get; private set; }
|
||||
// /// <summary>
|
||||
// /// Das Segment dient zur Angabe der Diagnose und ist so oft
|
||||
// /// wiederholbar, wie Diagnosen vorliegen
|
||||
// /// </summary>
|
||||
// public SegmentSLLADIA SegmentSLLADIA { get; private set; }
|
||||
// /// <summary>
|
||||
// /// Das Segment enthält Angaben über die von der Krankenkasse
|
||||
// /// ausgesprochene Kostenzusage/Genehmigung und ist nur zu
|
||||
// /// übermitteln, wenn diese vorliegt.
|
||||
// /// </summary>
|
||||
// public SegmentSLLASKZ SegmentSLLASKZ { get; private set; }
|
||||
// /// <summary>
|
||||
// /// Das Segment enthält Angaben über den abzurechnenden Gesamtbruttobetrag eines Abrechnungsfalles (Verordnung)
|
||||
// /// (Summe aller ENF-Beträge ggf.zuzüglich der Mehrwertsteuer)
|
||||
// /// </summary>
|
||||
// public SegmentSLLABES SegmentSLLABES { get; private set; }
|
||||
|
||||
public NachrichtSLLA2()
|
||||
{
|
||||
SegmentSLLAFKT = new SegmentSLLAFKT();
|
||||
SegmentSLLAREC = new SegmentSLLAREC();
|
||||
SegmentSLLAINV = new SegmentSLLAINV();
|
||||
SegmentSLLAURI = new SegmentSLLAURI();
|
||||
SegmentSLLANAD = new SegmentSLLANAD();
|
||||
SegmentSLLAIMG = new SegmentSLLAIMG();
|
||||
// public NachrichtSLLA2()
|
||||
// {
|
||||
// SegmentSLLAFKT = new SegmentSLLAFKT();
|
||||
// SegmentSLLAREC = new SegmentSLLAREC();
|
||||
// SegmentSLLAINV = new SegmentSLLAINV();
|
||||
// SegmentSLLAURI = new SegmentSLLAURI();
|
||||
// SegmentSLLANAD = new SegmentSLLANAD();
|
||||
// SegmentSLLAIMG = new SegmentSLLAIMG();
|
||||
|
||||
Abrechnungspositions = new List<Abrechnungsposition>();
|
||||
// Abrechnungspositions = new List<Abrechnungsposition>();
|
||||
|
||||
SegmentSLLAZUV = new SegmentSLLAZUV();
|
||||
SegmentSLLADIA = new SegmentSLLADIA();
|
||||
SegmentSLLASKZ = new SegmentSLLASKZ();
|
||||
SegmentSLLABES = new SegmentSLLABES();
|
||||
}
|
||||
// SegmentSLLAZUV = new SegmentSLLAZUV();
|
||||
// SegmentSLLADIA = new SegmentSLLADIA();
|
||||
// SegmentSLLASKZ = new SegmentSLLASKZ();
|
||||
// SegmentSLLABES = new SegmentSLLABES();
|
||||
// }
|
||||
|
||||
public void AddPosition(Abrechnungsposition pos)
|
||||
{
|
||||
Abrechnungspositions.Add(pos);
|
||||
}
|
||||
// public void AddPosition(Abrechnungsposition pos)
|
||||
// {
|
||||
// Abrechnungspositions.Add(pos);
|
||||
// }
|
||||
|
||||
public override List<Segment> GetSegments()
|
||||
{
|
||||
var list = new List<Segment>() { SegmentSLLAFKT, SegmentSLLAREC, SegmentSLLAINV, SegmentSLLAURI, SegmentSLLANAD, SegmentSLLAIMG };
|
||||
var list2 = new List<Segment>() { SegmentSLLABES };
|
||||
//var list2 = new List<Segment>() { SegmentSLLAZUZ, SegmentSLLAZUV, SegmentSLLADIA, SegmentSLLASKZ, SegmentSLLABES };
|
||||
// public override List<Segment> GetSegments()
|
||||
// {
|
||||
// var list = new List<Segment>() { SegmentSLLAFKT, SegmentSLLAREC, SegmentSLLAINV, SegmentSLLAURI, SegmentSLLANAD, SegmentSLLAIMG };
|
||||
// var list2 = new List<Segment>() { SegmentSLLABES };
|
||||
// //var list2 = new List<Segment>() { SegmentSLLAZUZ, SegmentSLLAZUV, SegmentSLLADIA, SegmentSLLASKZ, SegmentSLLABES };
|
||||
|
||||
foreach (var seg in Abrechnungspositions)
|
||||
{
|
||||
list.AddRange(seg.GetSegments());
|
||||
}
|
||||
// foreach (var seg in Abrechnungspositions)
|
||||
// {
|
||||
// list.AddRange(seg.GetSegments());
|
||||
// }
|
||||
|
||||
list.AddRange(list2);
|
||||
// list.AddRange(list2);
|
||||
|
||||
return list;
|
||||
}
|
||||
}
|
||||
}
|
||||
// return list;
|
||||
// }
|
||||
// }
|
||||
//}
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
using Dakota.Models.Block;
|
||||
using Dakota.Models.Blocke;
|
||||
using Dakota.Models.Segmente;
|
||||
using Dakota.Models.Segmente.SLLA;
|
||||
using System;
|
||||
@@ -33,6 +33,8 @@ namespace Dakota.Models.Nachrichten
|
||||
{
|
||||
SegmentSLLAFKT = new SegmentSLLAFKT();
|
||||
SegmentSLLAREC = new SegmentSLLAREC();
|
||||
|
||||
Abrechnungsfalle = new List<BlockAbrechnungsfall>();
|
||||
}
|
||||
|
||||
public override List<Segment> GetSegments()
|
||||
|
||||
@@ -4,7 +4,7 @@ using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace Dakota.Models.Schlüssel
|
||||
namespace Dakota.Models.Schlüssels
|
||||
{
|
||||
public abstract class Schlüssel
|
||||
{
|
||||
17
Dakota/Models/Schlüssels/SchlüsselAbrechnungscode.cs
Normal file
17
Dakota/Models/Schlüssels/SchlüsselAbrechnungscode.cs
Normal file
@@ -0,0 +1,17 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace Dakota.Models.Schlüssels
|
||||
{
|
||||
public class SchlüsselAbrechnungscodes : Schlüssel
|
||||
{
|
||||
public SchlüsselAbrechnungscodes(string val) : base(val) { }
|
||||
|
||||
public static SchlüsselAbrechnungscodes SozialpädiatrischeZentren => new SchlüsselAbrechnungscodes("68");
|
||||
public static SchlüsselAbrechnungscodes SoziotherapeutischerLeistungserbringer => new SchlüsselAbrechnungscodes("69");
|
||||
public static SchlüsselAbrechnungscodes SpezialisierteAmbulantePalliativversorgung => new SchlüsselAbrechnungscodes("75");
|
||||
}
|
||||
}
|
||||
17
Dakota/Models/Schlüssels/SchlüsselBeleginformation.cs
Normal file
17
Dakota/Models/Schlüssels/SchlüsselBeleginformation.cs
Normal file
@@ -0,0 +1,17 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace Dakota.Models.Schlüssels
|
||||
{
|
||||
public class SchlüsselBeleginformation : Schlüssel
|
||||
{
|
||||
public SchlüsselBeleginformation(string val) : base(val) { }
|
||||
|
||||
public static SchlüsselBeleginformation KeineBeleguebermittlung => new SchlüsselBeleginformation("0");
|
||||
public static SchlüsselBeleginformation BelegePerPost => new SchlüsselBeleginformation("1");
|
||||
public static SchlüsselBeleginformation BelegeElektronisch => new SchlüsselBeleginformation("2");
|
||||
}
|
||||
}
|
||||
@@ -4,7 +4,7 @@ using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace Dakota.Models.Schlüssel
|
||||
namespace Dakota.Models.Schlüssels
|
||||
{
|
||||
public class SchlüsselLeistungserbringerSammelgruppenschlussel : Schlüssel
|
||||
{
|
||||
13
Dakota/Models/Schlüssels/SchlüsselPos.cs
Normal file
13
Dakota/Models/Schlüssels/SchlüsselPos.cs
Normal file
@@ -0,0 +1,13 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace Dakota.Models.Schlüssels
|
||||
{
|
||||
public class SchlüsselPos : Schlüssel
|
||||
{
|
||||
public SchlüsselPos(SchlüsselPosArtDerEinrichtung s1, SchlüsselPosBehandlungsart s2, SchlüsselPosVergütungsart s3) : base(s1.Value + s2.Value + s3.Value) { }
|
||||
}
|
||||
}
|
||||
32
Dakota/Models/Schlüssels/SchlüsselPosArtDerEinrichtung.cs
Normal file
32
Dakota/Models/Schlüssels/SchlüsselPosArtDerEinrichtung.cs
Normal file
@@ -0,0 +1,32 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace Dakota.Models.Schlüssels
|
||||
{
|
||||
public class SchlüsselPosArtDerEinrichtung : Schlüssel
|
||||
{
|
||||
public SchlüsselPosArtDerEinrichtung(string val) : base(val) { }
|
||||
|
||||
public static SchlüsselPosArtDerEinrichtung SozialpädiatrischesZentrum => new SchlüsselPosArtDerEinrichtung("01");
|
||||
public static SchlüsselPosArtDerEinrichtung Frühfördereinrichtung => new SchlüsselPosArtDerEinrichtung("02");
|
||||
public static SchlüsselPosArtDerEinrichtung integrativerKindergarten => new SchlüsselPosArtDerEinrichtung("03");
|
||||
public static SchlüsselPosArtDerEinrichtung Tagesstätte => new SchlüsselPosArtDerEinrichtung("04");
|
||||
public static SchlüsselPosArtDerEinrichtung AmbulanteIntensivförderungseinrichtung => new SchlüsselPosArtDerEinrichtung("05");
|
||||
public static SchlüsselPosArtDerEinrichtung WohnheimWerkstattFörderstätte => new SchlüsselPosArtDerEinrichtung("06");
|
||||
public static SchlüsselPosArtDerEinrichtung TagesstättePsychischKranke => new SchlüsselPosArtDerEinrichtung("07");
|
||||
public static SchlüsselPosArtDerEinrichtung Sonderkindergarten => new SchlüsselPosArtDerEinrichtung("08");
|
||||
public static SchlüsselPosArtDerEinrichtung Sprachheilambulanz => new SchlüsselPosArtDerEinrichtung("09");
|
||||
public static SchlüsselPosArtDerEinrichtung Institutsambulanz => new SchlüsselPosArtDerEinrichtung("10");
|
||||
public static SchlüsselPosArtDerEinrichtung Gebärdendolmetscher => new SchlüsselPosArtDerEinrichtung("11");
|
||||
public static SchlüsselPosArtDerEinrichtung Hochschulambulanz => new SchlüsselPosArtDerEinrichtung("12");
|
||||
public static SchlüsselPosArtDerEinrichtung PsychiatrischeHochschulambulanz => new SchlüsselPosArtDerEinrichtung("13");
|
||||
public static SchlüsselPosArtDerEinrichtung PsychiatrischeInstitutsambulanz => new SchlüsselPosArtDerEinrichtung("14");
|
||||
public static SchlüsselPosArtDerEinrichtung SoziotherapeutischerLeistungserbringer => new SchlüsselPosArtDerEinrichtung("20");
|
||||
public static SchlüsselPosArtDerEinrichtung VollstationärePflegeeinrichtung => new SchlüsselPosArtDerEinrichtung("30");
|
||||
public static SchlüsselPosArtDerEinrichtung EinrichtungEingliederungshilfe => new SchlüsselPosArtDerEinrichtung("31");
|
||||
public static SchlüsselPosArtDerEinrichtung SonstigeEinrichtung => new SchlüsselPosArtDerEinrichtung("99");
|
||||
}
|
||||
}
|
||||
17
Dakota/Models/Schlüssels/SchlüsselPosBehandlungsart.cs
Normal file
17
Dakota/Models/Schlüssels/SchlüsselPosBehandlungsart.cs
Normal file
@@ -0,0 +1,17 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace Dakota.Models.Schlüssels
|
||||
{
|
||||
public class SchlüsselPosBehandlungsart : Schlüssel
|
||||
{
|
||||
public SchlüsselPosBehandlungsart(string val) : base(val) { }
|
||||
|
||||
public static SchlüsselPosBehandlungsart Einzelbehandlung => new SchlüsselPosBehandlungsart("01");
|
||||
public static SchlüsselPosBehandlungsart Gruppenbehandlung => new SchlüsselPosBehandlungsart("02");
|
||||
public static SchlüsselPosBehandlungsart Sonstiges => new SchlüsselPosBehandlungsart("09");
|
||||
}
|
||||
}
|
||||
166
Dakota/Models/Schlüssels/SchlüsselPosVergütungsart.cs
Normal file
166
Dakota/Models/Schlüssels/SchlüsselPosVergütungsart.cs
Normal file
@@ -0,0 +1,166 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace Dakota.Models.Schlüssels
|
||||
{
|
||||
public class SchlüsselPosVergütungsart : Schlüssel
|
||||
{
|
||||
public string FullText { get; set; }
|
||||
|
||||
public SchlüsselPosVergütungsart(string val, string full) : base(val)
|
||||
{
|
||||
FullText = full;
|
||||
}
|
||||
|
||||
public static SchlüsselPosVergütungsart Pauschale1 => new SchlüsselPosVergütungsart("001", "Pauschale 1");
|
||||
public static SchlüsselPosVergütungsart Pauschale2 => new SchlüsselPosVergütungsart("002", "Pauschale 2");
|
||||
public static SchlüsselPosVergütungsart Pauschale3 => new SchlüsselPosVergütungsart("003", "Pauschale 3");
|
||||
public static SchlüsselPosVergütungsart Pauschale4 => new SchlüsselPosVergütungsart("004", "Pauschale 4");
|
||||
public static SchlüsselPosVergütungsart Pauschale5 => new SchlüsselPosVergütungsart("005", "Pauschale 5");
|
||||
public static SchlüsselPosVergütungsart Pauschale6 => new SchlüsselPosVergütungsart("006", "Pauschale 6");
|
||||
public static SchlüsselPosVergütungsart Pauschale7 => new SchlüsselPosVergütungsart("007", "Pauschale 7");
|
||||
public static SchlüsselPosVergütungsart Pauschale8 => new SchlüsselPosVergütungsart("008", "Pauschale 8");
|
||||
public static SchlüsselPosVergütungsart Pauschale9 => new SchlüsselPosVergütungsart("009", "Pauschale 9");
|
||||
public static SchlüsselPosVergütungsart Pauschale10 => new SchlüsselPosVergütungsart("010", "Pauschale 10");
|
||||
public static SchlüsselPosVergütungsart Pauschale11 => new SchlüsselPosVergütungsart("011", "Pauschale 11");
|
||||
public static SchlüsselPosVergütungsart Pauschale12 => new SchlüsselPosVergütungsart("012", "Pauschale 12");
|
||||
public static SchlüsselPosVergütungsart Pauschale13 => new SchlüsselPosVergütungsart("013", "Pauschale 13");
|
||||
public static SchlüsselPosVergütungsart Pauschale14 => new SchlüsselPosVergütungsart("014", "Pauschale 14");
|
||||
public static SchlüsselPosVergütungsart Pauschale15 => new SchlüsselPosVergütungsart("015", "Pauschale 15");
|
||||
public static SchlüsselPosVergütungsart Pauschale16 => new SchlüsselPosVergütungsart("016", "Pauschale 16");
|
||||
public static SchlüsselPosVergütungsart Pauschale17 => new SchlüsselPosVergütungsart("017", "Pauschale 17");
|
||||
public static SchlüsselPosVergütungsart Pauschale18 => new SchlüsselPosVergütungsart("018", "Pauschale 18");
|
||||
public static SchlüsselPosVergütungsart Pauschale19 => new SchlüsselPosVergütungsart("019", "Pauschale 19");
|
||||
public static SchlüsselPosVergütungsart Pauschale20 => new SchlüsselPosVergütungsart("020", "Pauschale 20");
|
||||
public static SchlüsselPosVergütungsart KrankenhilfepauschaleHeilmittel => new SchlüsselPosVergütungsart("021", "Krankenhilfepauschale Heilmittel");
|
||||
public static SchlüsselPosVergütungsart KrankenhilfepauschaleArzneimittel => new SchlüsselPosVergütungsart("022", "Krankenhilfepauschale Arzneimittel");
|
||||
|
||||
public static SchlüsselPosVergütungsart GrundpauschaleJeNeuZuTherapierendenPatienten => new SchlüsselPosVergütungsart("600", "Grundpauschale je neu zu therapierenden Patienten");
|
||||
public static SchlüsselPosVergütungsart GrundpauschaleNach60Therapiestunde => new SchlüsselPosVergütungsart("601", "Grundpauschale nach 60. Therapiestunde");
|
||||
public static SchlüsselPosVergütungsart GrundpauschaleNach90Therapiestunde => new SchlüsselPosVergütungsart("602", "Grundpauschale nach 90. Therapiestunde");
|
||||
public static SchlüsselPosVergütungsart ErstellungEinesBetreuungsplanesUndAbstimmungMitArzt => new SchlüsselPosVergütungsart("603", "Erstellung eines Betreuungsplanes und Abstimmung mit Arzt (60 Minuten)");
|
||||
public static SchlüsselPosVergütungsart ProbestundeOhneVerordnung60Minuten => new SchlüsselPosVergütungsart("604", "Probestunde ohne Verordnung 60 Minuten");
|
||||
public static SchlüsselPosVergütungsart ProbestundeOhneVerordnung10Minuten => new SchlüsselPosVergütungsart("605", "Probestunde ohne Verordnung 10 Minuten");
|
||||
public static SchlüsselPosVergütungsart ProbestundeOhneVerordnung1Minute => new SchlüsselPosVergütungsart("606", "Probestunde ohne Verordnung 1 Minute");
|
||||
public static SchlüsselPosVergütungsart ProbestundeMitVerordnung60Minuten => new SchlüsselPosVergütungsart("607", "Probestunde mit Verordnung 60 Minuten");
|
||||
public static SchlüsselPosVergütungsart ProbestundeMitVerordnung10Minuten => new SchlüsselPosVergütungsart("608", "Probestunde mit Verordnung 10 Minuten");
|
||||
public static SchlüsselPosVergütungsart ProbestundeMitVerordnung1Minute => new SchlüsselPosVergütungsart("609", "Probestunde mit Verordnung 1 Minute");
|
||||
public static SchlüsselPosVergütungsart Einzelbehandlung60Minuten => new SchlüsselPosVergütungsart("610", "Einzelbehandlung 60 Minuten");
|
||||
public static SchlüsselPosVergütungsart Einzelbehandlung45Minuten => new SchlüsselPosVergütungsart("611", "Einzelbehandlung 45 Minuten");
|
||||
public static SchlüsselPosVergütungsart Einzelbehandlung30Minuten => new SchlüsselPosVergütungsart("612", "Einzelbehandlung 30 Minuten");
|
||||
public static SchlüsselPosVergütungsart Einzelbehandlung10Minuten => new SchlüsselPosVergütungsart("613", "Einzelbehandlung 10 Minuten");
|
||||
public static SchlüsselPosVergütungsart Einzelbehandlung1Minute => new SchlüsselPosVergütungsart("614", "Einzelbehandlung 1 Minute");
|
||||
public static SchlüsselPosVergütungsart EinzelbehandlungPerVideotelefonie60Minuten => new SchlüsselPosVergütungsart("615", "Einzelbehandlung per Videotelefonie - 60 Minuten");
|
||||
public static SchlüsselPosVergütungsart EinzelbehandlungPerVideotelefonie30Minuten => new SchlüsselPosVergütungsart("616", "Einzelbehandlung per Videotelefonie - 30 Minuten");
|
||||
public static SchlüsselPosVergütungsart EinzelbehandlungPerTelefonie60Minuten => new SchlüsselPosVergütungsart("617", "Einzelbehandlung per Telefonie - 60 Minuten");
|
||||
public static SchlüsselPosVergütungsart EinzelbehandlungPerTelefonie30Minuten => new SchlüsselPosVergütungsart("618", "Einzelbehandlung per Telefonie - 30 Minuten");
|
||||
public static SchlüsselPosVergütungsart TherapieeinheitBeiÜberweisungZurIndikationsstellung60Minuten => new SchlüsselPosVergütungsart("620", "Therapieeinheit bei Überweisung zur Indikationsstellung 60 Minuten");
|
||||
public static SchlüsselPosVergütungsart TherapieeinheitBeiÜberweisungZurIndikationsstellung10Minuten => new SchlüsselPosVergütungsart("621", "Therapieeinheit bei Überweisung zur Indikationsstellung 10 Minuten");
|
||||
public static SchlüsselPosVergütungsart TherapieeinheitBeiÜberweisungZurIndikationsstellung1Minute => new SchlüsselPosVergütungsart("622", "Therapieeinheit bei Überweisung zur Indikationsstellung 1 Minute");
|
||||
|
||||
public static SchlüsselPosVergütungsart GrundpauschaleJeNeuZuTherapierendenPatientenGruppe => new SchlüsselPosVergütungsart("640", "Grundpauschale je neu zu therapierenden Patienten");
|
||||
public static SchlüsselPosVergütungsart GrundpauschaleAb60Therapiestunde => new SchlüsselPosVergütungsart("641", "Grundpauschale ab 60. Therapiestunde");
|
||||
public static SchlüsselPosVergütungsart GrundpauschaleAb90Therapiestunde => new SchlüsselPosVergütungsart("642", "Grundpauschale ab 90. Therapiestunde");
|
||||
public static SchlüsselPosVergütungsart Gruppenbehandlung90Minuten2Teilnehmer => new SchlüsselPosVergütungsart("650", "Gruppenbehandlung 90 Minuten – 2 Teilnehmer");
|
||||
public static SchlüsselPosVergütungsart Gruppenbehandlung90Minuten3Teilnehmer => new SchlüsselPosVergütungsart("651", "Gruppenbehandlung 90 Minuten – 3 Teilnehmer");
|
||||
public static SchlüsselPosVergütungsart Gruppenbehandlung90Minuten4Teilnehmer => new SchlüsselPosVergütungsart("652", "Gruppenbehandlung 90 Minuten – 4 Teilnehmer");
|
||||
public static SchlüsselPosVergütungsart Gruppenbehandlung90Minuten5Teilnehmer => new SchlüsselPosVergütungsart("653", "Gruppenbehandlung 90 Minuten – 5 Teilnehmer");
|
||||
public static SchlüsselPosVergütungsart Gruppenbehandlung90Minuten6Teilnehmer => new SchlüsselPosVergütungsart("654", "Gruppenbehandlung 90 Minuten – 6 Teilnehmer");
|
||||
public static SchlüsselPosVergütungsart Gruppenbehandlung90Minuten7Teilnehmer => new SchlüsselPosVergütungsart("655", "Gruppenbehandlung 90 Minuten – 7 Teilnehmer");
|
||||
public static SchlüsselPosVergütungsart Gruppenbehandlung90Minuten8Teilnehmer => new SchlüsselPosVergütungsart("656", "Gruppenbehandlung 90 Minuten – 8 Teilnehmer");
|
||||
public static SchlüsselPosVergütungsart Gruppenbehandlung90Minuten9Teilnehmer => new SchlüsselPosVergütungsart("657", "Gruppenbehandlung 90 Minuten – 9 Teilnehmer");
|
||||
public static SchlüsselPosVergütungsart Gruppenbehandlung90Minuten10Teilnehmer => new SchlüsselPosVergütungsart("658", "Gruppenbehandlung 90 Minuten – 10 Teilnehmer");
|
||||
public static SchlüsselPosVergütungsart Gruppenbehandlung90Minuten11Teilnehmer => new SchlüsselPosVergütungsart("659", "Gruppenbehandlung 90 Minuten – 11 Teilnehmer");
|
||||
public static SchlüsselPosVergütungsart Gruppenbehandlung90Minuten12Teilnehmer => new SchlüsselPosVergütungsart("660", "Gruppenbehandlung 90 Minuten – 12 Teilnehmer");
|
||||
public static SchlüsselPosVergütungsart Gruppenbehandlung90Minuten2bis3Teilnehmer => new SchlüsselPosVergütungsart("670", "Gruppenbehandlung 90 Minuten – 2 bis 3 Teilnehmer");
|
||||
public static SchlüsselPosVergütungsart Gruppenbehandlung90Minuten2bis4Teilnehmer => new SchlüsselPosVergütungsart("671", "Gruppenbehandlung 90 Minuten – 2 bis 4 Teilnehmer");
|
||||
public static SchlüsselPosVergütungsart Gruppenbehandlung90Minuten2bis5Personen => new SchlüsselPosVergütungsart("672", "Gruppenbehandlung 90 Minuten – 2 bis 5 Personen");
|
||||
public static SchlüsselPosVergütungsart Gruppenbehandlung90Minuten4bis6Teilnehmer => new SchlüsselPosVergütungsart("673", "Gruppenbehandlung 90 Minuten – 4 bis 6 Teilnehmer");
|
||||
public static SchlüsselPosVergütungsart Gruppenbehandlung90Minuten5bis7Teilnehmer => new SchlüsselPosVergütungsart("674", "Gruppenbehandlung 90 Minuten – 5 bis 7 Teilnehmer");
|
||||
public static SchlüsselPosVergütungsart Gruppenbehandlung90Minuten6bis12Personen => new SchlüsselPosVergütungsart("675", "Gruppenbehandlung 90 Minuten – 6 bis 12 Personen");
|
||||
public static SchlüsselPosVergütungsart Gruppenbehandlung90Minuten8bis12Teilnehmer => new SchlüsselPosVergütungsart("676", "Gruppenbehandlung 90 Minuten – 8 bis 12 Teilnehmer");
|
||||
public static SchlüsselPosVergütungsart Gruppenbehandlung60Minuten2bis5Personen => new SchlüsselPosVergütungsart("677", "Gruppenbehandlung 60 Minuten – 2 bis 5 Personen");
|
||||
public static SchlüsselPosVergütungsart Gruppenbehandlung45Minuten2bis5Personen => new SchlüsselPosVergütungsart("678", "Gruppenbehandlung 45 Minuten – 2 bis 5 Personen");
|
||||
|
||||
public static SchlüsselPosVergütungsart HausbesuchspauschaleFahrtkosten => new SchlüsselPosVergütungsart("690", "Hausbesuchspauschale/Fahrtkosten");
|
||||
public static SchlüsselPosVergütungsart WegegeldpauschaleWegegebühren => new SchlüsselPosVergütungsart("691", "Wegegeldpauschale/Wegegebühren");
|
||||
public static SchlüsselPosVergütungsart WegegeldJeKm => new SchlüsselPosVergütungsart("692", "Wegegeld je km");
|
||||
public static SchlüsselPosVergütungsart FahrkostenÖPNV => new SchlüsselPosVergütungsart("693", "Fahrkosten ÖPNV");
|
||||
public static SchlüsselPosVergütungsart BesuchspauschaleFürFahrtenBis15KmEinfach => new SchlüsselPosVergütungsart("694", "Besuchspauschale für Fahrten bis 15 km (einfach)");
|
||||
public static SchlüsselPosVergütungsart BesuchspauschaleFürFahrtenÜber15KmEinfach => new SchlüsselPosVergütungsart("695", "Besuchspauschale für Fahrten über 15 km (einfach)");
|
||||
public static SchlüsselPosVergütungsart KHVermeidung01bis03Tage => new SchlüsselPosVergütungsart("680", "KH Vermeidung 01 bis 03 Tage");
|
||||
public static SchlüsselPosVergütungsart KHVermeidung04bis12Tage => new SchlüsselPosVergütungsart("681", "KH Vermeidung 04 bis 12 Tage");
|
||||
public static SchlüsselPosVergütungsart KHVermeidung13bis21Tage => new SchlüsselPosVergütungsart("682", "KH Vermeidung 13 bis 21 Tage");
|
||||
public static SchlüsselPosVergütungsart KHVermeidung22bis29Tage => new SchlüsselPosVergütungsart("683", "KH Vermeidung 22 bis 29 Tage");
|
||||
public static SchlüsselPosVergütungsart KHVermeidung30bis34Tage => new SchlüsselPosVergütungsart("684", "KH Vermeidung 30 bis 34 Tage");
|
||||
public static SchlüsselPosVergütungsart KHVermeidung35undmehrTage => new SchlüsselPosVergütungsart("685", "KH Vermeidung 35 und mehr Tage");
|
||||
public static SchlüsselPosVergütungsart BesuchspauschalenFürFahrtenBis20Km => new SchlüsselPosVergütungsart("686", "Besuchspauschalen für Fahrten bis 20 km");
|
||||
public static SchlüsselPosVergütungsart BesuchspauschalenFürFahrtenÜber20Km => new SchlüsselPosVergütungsart("687", "Besuchspauschalen für Fahrten über 20 km");
|
||||
|
||||
public static SchlüsselPosVergütungsart Teamgespräch => new SchlüsselPosVergütungsart("901", "Teamgespräch");
|
||||
public static SchlüsselPosVergütungsart MobileBehandlung => new SchlüsselPosVergütungsart("902", "Mobile Behandlung");
|
||||
public static SchlüsselPosVergütungsart TeamgesprächKrankengymnastik => new SchlüsselPosVergütungsart("903", "Teamgespräch Krankengymnastik");
|
||||
public static SchlüsselPosVergütungsart TeamgesprächLogopädie => new SchlüsselPosVergütungsart("904", "Teamgespräch Logopädie");
|
||||
public static SchlüsselPosVergütungsart TeamgesprächErgotherapie => new SchlüsselPosVergütungsart("905", "Teamgespräch Ergotherapie");
|
||||
public static SchlüsselPosVergütungsart TeamgesprächsaufschlagJeTherapietagKrankengymnastik => new SchlüsselPosVergütungsart("910", "Teamgesprächsaufschlag je Therapietag Krankengymnastik");
|
||||
public static SchlüsselPosVergütungsart TeamgesprächsaufschlagJeTherapietagLogopädie => new SchlüsselPosVergütungsart("912", "Teamgesprächsaufschlag je Therapietag Logopädie");
|
||||
public static SchlüsselPosVergütungsart TeamgesprächsaufschlagJeTherapietagErgotherapie => new SchlüsselPosVergütungsart("914", "Teamgesprächsaufschlag je Therapietag Ergotherapie");
|
||||
public static SchlüsselPosVergütungsart AbrechungspauschaleFürDenVerordnetenHausbesuchInklusiveWegegeldEinesPatientenInSeinerWohnungKrankengymnastik => new SchlüsselPosVergütungsart("916", "Abrechungspauschale für den verordneten Hausbesuch inklusive Wegegeld eines Patienten in seiner Wohnung (Krankengymnastik)");
|
||||
public static SchlüsselPosVergütungsart AbrechungspauschaleFürDenVerordnetenHausbesuchInklusiveWegegeldEinesPatientenInSeinerWohnungLogopädie => new SchlüsselPosVergütungsart("918", "Abrechungspauschale für den verordneten Hausbesuch inklusive Wegegeld eines Patienten in seiner Wohnung (Logopädie)");
|
||||
public static SchlüsselPosVergütungsart AbrechungspauschaleFürDenVerordnetenHausbesuchInklusiveWegegeldEinesPatientenInSeinerWohnungErgotherapie => new SchlüsselPosVergütungsart("920", "Abrechungspauschale für den verordneten Hausbesuch inklusive Wegegeld eines Patienten in seiner Wohnung (Ergotherapie)");
|
||||
public static SchlüsselPosVergütungsart KilometerpauschaleFürÄrztlichVerordneteHausbesuche => new SchlüsselPosVergütungsart("921", "Kilometerpauschale für ärztlich verordnete Hausbesuche");
|
||||
public static SchlüsselPosVergütungsart AbrechungspauschaleFürDenVerordnetenHausbesuchInklusiveWegegeldEinesOderMehrererPatientenInDerselbenSozialenEinrichtungAnEinemTagJePatientKrankengymnastik => new SchlüsselPosVergütungsart("922", "Abrechungspauschale für den verordneten Hausbesuch inklusive Wegegeld eines oder mehrerer Patienten in derselben sozialen Einrichtung (z. B. Pflegeheime etc.) an einem Tag - je Patient (Krankengymnastik)");
|
||||
public static SchlüsselPosVergütungsart AbrechungspauschaleFürDenVerordnetenHausbesuchInklusiveWegegeldEinesOderMehrererPatientenInDerselbenSozialenEinrichtungAnEinemTagJePatientLogopädie => new SchlüsselPosVergütungsart("924", "Abrechungspauschale für den verordneten Hausbesuch inklusive Wegegeld eines oder mehrerer Patienten in derselben sozialen Einrichtung (z. B. Pflegeheime etc.) an einem Tag - je Patient (Logopädie)");
|
||||
public static SchlüsselPosVergütungsart AbrechungspauschaleFürDenVerordnetenHausbesuchInklusiveWegegeldEinesOderMehrererPatientenInDerselbenSozialenEinrichtungAnEinemTagJePatientErgotherapie => new SchlüsselPosVergütungsart("926", "Abrechungspauschale für den verordneten Hausbesuch inklusive Wegegeld eines oder mehrerer Patienten in derselben sozialen Einrichtung (z. B. Pflegeheime etc.) an einem Tag - je Patient (Ergotherapie)");
|
||||
public static SchlüsselPosVergütungsart VergütungNach132gSGBVPauschale => new SchlüsselPosVergütungsart("927", "Vergütung nach § 132g SGB V Pauschale");
|
||||
|
||||
public static List<SchlüsselPosVergütungsart> Pauschalen = new List<SchlüsselPosVergütungsart>()
|
||||
{
|
||||
Pauschale1, Pauschale2, Pauschale3, Pauschale4, Pauschale5, Pauschale6, Pauschale7, Pauschale8,
|
||||
Pauschale9, Pauschale10, Pauschale11, Pauschale12, Pauschale13, Pauschale14, Pauschale15, Pauschale16,
|
||||
Pauschale17, Pauschale18, Pauschale19, Pauschale20, KrankenhilfepauschaleHeilmittel, KrankenhilfepauschaleArzneimittel
|
||||
};
|
||||
|
||||
public static List<SchlüsselPosVergütungsart> SozioEinzel = new List<SchlüsselPosVergütungsart>()
|
||||
{
|
||||
GrundpauschaleJeNeuZuTherapierendenPatienten, GrundpauschaleNach60Therapiestunde, GrundpauschaleNach90Therapiestunde,
|
||||
ErstellungEinesBetreuungsplanesUndAbstimmungMitArzt, ProbestundeOhneVerordnung60Minuten, ProbestundeOhneVerordnung10Minuten,
|
||||
ProbestundeOhneVerordnung1Minute, ProbestundeMitVerordnung60Minuten, ProbestundeMitVerordnung10Minuten, ProbestundeMitVerordnung1Minute,
|
||||
Einzelbehandlung60Minuten, Einzelbehandlung45Minuten, Einzelbehandlung30Minuten, Einzelbehandlung10Minuten, Einzelbehandlung1Minute,
|
||||
EinzelbehandlungPerVideotelefonie60Minuten, EinzelbehandlungPerVideotelefonie30Minuten, EinzelbehandlungPerTelefonie60Minuten, EinzelbehandlungPerTelefonie30Minuten,
|
||||
TherapieeinheitBeiÜberweisungZurIndikationsstellung60Minuten, TherapieeinheitBeiÜberweisungZurIndikationsstellung10Minuten, TherapieeinheitBeiÜberweisungZurIndikationsstellung1Minute
|
||||
};
|
||||
|
||||
public static List<SchlüsselPosVergütungsart> SozioGruppe = new List<SchlüsselPosVergütungsart>()
|
||||
{
|
||||
GrundpauschaleJeNeuZuTherapierendenPatientenGruppe, GrundpauschaleAb60Therapiestunde, GrundpauschaleAb90Therapiestunde, Gruppenbehandlung90Minuten2Teilnehmer,
|
||||
Gruppenbehandlung90Minuten3Teilnehmer, Gruppenbehandlung90Minuten4Teilnehmer, Gruppenbehandlung90Minuten5Teilnehmer, Gruppenbehandlung90Minuten6Teilnehmer,
|
||||
Gruppenbehandlung90Minuten7Teilnehmer, Gruppenbehandlung90Minuten8Teilnehmer, Gruppenbehandlung90Minuten9Teilnehmer, Gruppenbehandlung90Minuten10Teilnehmer,
|
||||
Gruppenbehandlung90Minuten11Teilnehmer, Gruppenbehandlung90Minuten12Teilnehmer, Gruppenbehandlung90Minuten2bis3Teilnehmer, Gruppenbehandlung90Minuten2bis4Teilnehmer,
|
||||
Gruppenbehandlung90Minuten2bis5Personen, Gruppenbehandlung90Minuten4bis6Teilnehmer, Gruppenbehandlung90Minuten5bis7Teilnehmer, Gruppenbehandlung90Minuten6bis12Personen,
|
||||
Gruppenbehandlung90Minuten8bis12Teilnehmer, Gruppenbehandlung60Minuten2bis5Personen, Gruppenbehandlung45Minuten2bis5Personen
|
||||
};
|
||||
|
||||
public static List<SchlüsselPosVergütungsart> SozioSonst = new List<SchlüsselPosVergütungsart>()
|
||||
{
|
||||
HausbesuchspauschaleFahrtkosten, WegegeldpauschaleWegegebühren, WegegeldJeKm, FahrkostenÖPNV, BesuchspauschaleFürFahrtenBis15KmEinfach,
|
||||
BesuchspauschaleFürFahrtenÜber15KmEinfach, KHVermeidung01bis03Tage, KHVermeidung04bis12Tage, KHVermeidung13bis21Tage, KHVermeidung22bis29Tage, KHVermeidung30bis34Tage,
|
||||
KHVermeidung35undmehrTage, BesuchspauschalenFürFahrtenBis20Km, BesuchspauschalenFürFahrtenÜber20Km
|
||||
};
|
||||
public static List<SchlüsselPosVergütungsart> Sonstiges = new List<SchlüsselPosVergütungsart>()
|
||||
{
|
||||
Teamgespräch, MobileBehandlung, TeamgesprächKrankengymnastik, TeamgesprächLogopädie, TeamgesprächErgotherapie, TeamgesprächsaufschlagJeTherapietagKrankengymnastik,
|
||||
TeamgesprächsaufschlagJeTherapietagLogopädie, TeamgesprächsaufschlagJeTherapietagErgotherapie,
|
||||
AbrechungspauschaleFürDenVerordnetenHausbesuchInklusiveWegegeldEinesPatientenInSeinerWohnungKrankengymnastik,
|
||||
AbrechungspauschaleFürDenVerordnetenHausbesuchInklusiveWegegeldEinesPatientenInSeinerWohnungLogopädie,
|
||||
AbrechungspauschaleFürDenVerordnetenHausbesuchInklusiveWegegeldEinesPatientenInSeinerWohnungErgotherapie, KilometerpauschaleFürÄrztlichVerordneteHausbesuche,
|
||||
AbrechungspauschaleFürDenVerordnetenHausbesuchInklusiveWegegeldEinesOderMehrererPatientenInDerselbenSozialenEinrichtungAnEinemTagJePatientKrankengymnastik,
|
||||
AbrechungspauschaleFürDenVerordnetenHausbesuchInklusiveWegegeldEinesOderMehrererPatientenInDerselbenSozialenEinrichtungAnEinemTagJePatientLogopädie,
|
||||
AbrechungspauschaleFürDenVerordnetenHausbesuchInklusiveWegegeldEinesOderMehrererPatientenInDerselbenSozialenEinrichtungAnEinemTagJePatientErgotherapie,
|
||||
VergütungNach132gSGBVPauschale
|
||||
};
|
||||
}
|
||||
}
|
||||
@@ -4,7 +4,7 @@ using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace Dakota.Models.Schlüssel
|
||||
namespace Dakota.Models.Schlüssels
|
||||
{
|
||||
public class SchlüsselRechnungsart : Schlüssel
|
||||
{
|
||||
@@ -4,7 +4,7 @@ using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace Dakota.Models.Schlüssel
|
||||
namespace Dakota.Models.Schlüssels
|
||||
{
|
||||
public class SchlüsselSummenstatus : Schlüssel
|
||||
{
|
||||
16
Dakota/Models/Schlüssels/SchlüsselTarifkennzeichen.cs
Normal file
16
Dakota/Models/Schlüssels/SchlüsselTarifkennzeichen.cs
Normal file
@@ -0,0 +1,16 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace Dakota.Models.Schlüssels
|
||||
{
|
||||
public class SchlüsselTarifkennzeichen : Schlüssel
|
||||
{
|
||||
public SchlüsselTarifkennzeichen(SchlüsselTarifkennzeichenBereich bereich, SchlüsselTarifkennzeichenSondertarif sonder) : base(bereich.Value + sonder.Value)
|
||||
{
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
67
Dakota/Models/Schlüssels/SchlüsselTarifkennzeichenBereich.cs
Normal file
67
Dakota/Models/Schlüssels/SchlüsselTarifkennzeichenBereich.cs
Normal file
@@ -0,0 +1,67 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace Dakota.Models.Schlüssels
|
||||
{
|
||||
public class SchlüsselTarifkennzeichenBereich : Schlüssel
|
||||
{
|
||||
public SchlüsselTarifkennzeichenBereich(string val) : base(val) { }
|
||||
|
||||
public static SchlüsselTarifkennzeichenBereich Bundeseinheitlich => new SchlüsselTarifkennzeichenBereich("00");
|
||||
public static SchlüsselTarifkennzeichenBereich BadenWürtenberg => new SchlüsselTarifkennzeichenBereich("01");
|
||||
public static SchlüsselTarifkennzeichenBereich Bayern => new SchlüsselTarifkennzeichenBereich("02");
|
||||
public static SchlüsselTarifkennzeichenBereich BerlinOst => new SchlüsselTarifkennzeichenBereich("03");
|
||||
public static SchlüsselTarifkennzeichenBereich Bremen => new SchlüsselTarifkennzeichenBereich("04");
|
||||
public static SchlüsselTarifkennzeichenBereich Hamburg => new SchlüsselTarifkennzeichenBereich("05");
|
||||
public static SchlüsselTarifkennzeichenBereich Hessen => new SchlüsselTarifkennzeichenBereich("06");
|
||||
public static SchlüsselTarifkennzeichenBereich Niedersachsen => new SchlüsselTarifkennzeichenBereich("07");
|
||||
public static SchlüsselTarifkennzeichenBereich NordRheinWestfalen => new SchlüsselTarifkennzeichenBereich("08");
|
||||
public static SchlüsselTarifkennzeichenBereich RheinlandPfalz => new SchlüsselTarifkennzeichenBereich("09");
|
||||
public static SchlüsselTarifkennzeichenBereich Saarland => new SchlüsselTarifkennzeichenBereich("10");
|
||||
public static SchlüsselTarifkennzeichenBereich SchleswigHolstein => new SchlüsselTarifkennzeichenBereich("11");
|
||||
public static SchlüsselTarifkennzeichenBereich Brandenburg => new SchlüsselTarifkennzeichenBereich("12");
|
||||
public static SchlüsselTarifkennzeichenBereich Sachsen => new SchlüsselTarifkennzeichenBereich("13");
|
||||
public static SchlüsselTarifkennzeichenBereich SachsenAnhalt => new SchlüsselTarifkennzeichenBereich("14");
|
||||
public static SchlüsselTarifkennzeichenBereich MecklenburgVorpommern => new SchlüsselTarifkennzeichenBereich("15");
|
||||
public static SchlüsselTarifkennzeichenBereich Thüringen => new SchlüsselTarifkennzeichenBereich("16");
|
||||
public static SchlüsselTarifkennzeichenBereich StuttgartKarlsruhe => new SchlüsselTarifkennzeichenBereich("17");
|
||||
public static SchlüsselTarifkennzeichenBereich FreiburgTübingen => new SchlüsselTarifkennzeichenBereich("18");
|
||||
public static SchlüsselTarifkennzeichenBereich BerlinWest => new SchlüsselTarifkennzeichenBereich("19");
|
||||
public static SchlüsselTarifkennzeichenBereich Nordrhein => new SchlüsselTarifkennzeichenBereich("20");
|
||||
public static SchlüsselTarifkennzeichenBereich WestfalenLippe => new SchlüsselTarifkennzeichenBereich("21");
|
||||
public static SchlüsselTarifkennzeichenBereich Lippe => new SchlüsselTarifkennzeichenBereich("22");
|
||||
public static SchlüsselTarifkennzeichenBereich BerlinGesamt => new SchlüsselTarifkennzeichenBereich("23");
|
||||
public static SchlüsselTarifkennzeichenBereich BundeseinheitlicherTarifWest => new SchlüsselTarifkennzeichenBereich("24");
|
||||
public static SchlüsselTarifkennzeichenBereich BundeseinheitlicherTarifOst => new SchlüsselTarifkennzeichenBereich("25");
|
||||
public static SchlüsselTarifkennzeichenBereich Bundesvertrag => new SchlüsselTarifkennzeichenBereich("50");
|
||||
public static SchlüsselTarifkennzeichenBereich BadenWürttemberg => new SchlüsselTarifkennzeichenBereich("51");
|
||||
public static SchlüsselTarifkennzeichenBereich Bayern2 => new SchlüsselTarifkennzeichenBereich("52");
|
||||
public static SchlüsselTarifkennzeichenBereich BerlinOst2 => new SchlüsselTarifkennzeichenBereich("53");
|
||||
public static SchlüsselTarifkennzeichenBereich Bremen2 => new SchlüsselTarifkennzeichenBereich("54");
|
||||
public static SchlüsselTarifkennzeichenBereich Hamburg2 => new SchlüsselTarifkennzeichenBereich("55");
|
||||
public static SchlüsselTarifkennzeichenBereich Hessen2 => new SchlüsselTarifkennzeichenBereich("56");
|
||||
public static SchlüsselTarifkennzeichenBereich Niedersachsen2 => new SchlüsselTarifkennzeichenBereich("57");
|
||||
public static SchlüsselTarifkennzeichenBereich NordRheinWestfalen2 => new SchlüsselTarifkennzeichenBereich("58");
|
||||
public static SchlüsselTarifkennzeichenBereich RheinlandPfalz2 => new SchlüsselTarifkennzeichenBereich("59");
|
||||
public static SchlüsselTarifkennzeichenBereich Saarland2 => new SchlüsselTarifkennzeichenBereich("60");
|
||||
public static SchlüsselTarifkennzeichenBereich SchleswigHolstein2 => new SchlüsselTarifkennzeichenBereich("61");
|
||||
public static SchlüsselTarifkennzeichenBereich Brandenburg2 => new SchlüsselTarifkennzeichenBereich("62");
|
||||
public static SchlüsselTarifkennzeichenBereich Sachsen2 => new SchlüsselTarifkennzeichenBereich("63");
|
||||
public static SchlüsselTarifkennzeichenBereich SachsenAnhalt2 => new SchlüsselTarifkennzeichenBereich("64");
|
||||
public static SchlüsselTarifkennzeichenBereich MecklenburgVorpommern2 => new SchlüsselTarifkennzeichenBereich("65");
|
||||
public static SchlüsselTarifkennzeichenBereich Thüringen2 => new SchlüsselTarifkennzeichenBereich("66");
|
||||
public static SchlüsselTarifkennzeichenBereich StuttgartKarlsruhe2 => new SchlüsselTarifkennzeichenBereich("67");
|
||||
public static SchlüsselTarifkennzeichenBereich FreiburgTübingen2 => new SchlüsselTarifkennzeichenBereich("68");
|
||||
public static SchlüsselTarifkennzeichenBereich BerlinWest2 => new SchlüsselTarifkennzeichenBereich("69");
|
||||
public static SchlüsselTarifkennzeichenBereich Nordrhein2 => new SchlüsselTarifkennzeichenBereich("70");
|
||||
public static SchlüsselTarifkennzeichenBereich WestfalenLippe2 => new SchlüsselTarifkennzeichenBereich("71");
|
||||
public static SchlüsselTarifkennzeichenBereich Lippe2 => new SchlüsselTarifkennzeichenBereich("72");
|
||||
public static SchlüsselTarifkennzeichenBereich BerlinGesamt2 => new SchlüsselTarifkennzeichenBereich("73");
|
||||
public static SchlüsselTarifkennzeichenBereich BundeseinheitlicherTarifWest2 => new SchlüsselTarifkennzeichenBereich("74");
|
||||
public static SchlüsselTarifkennzeichenBereich BundeseinheitlicherTarifOst2 => new SchlüsselTarifkennzeichenBereich("75");
|
||||
public static SchlüsselTarifkennzeichenBereich SonstigeländerübergreifenderTarig => new SchlüsselTarifkennzeichenBereich("90");
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,19 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace Dakota.Models.Schlüssels
|
||||
{
|
||||
public class SchlüsselTarifkennzeichenSondertarif : Schlüssel
|
||||
{
|
||||
public SchlüsselTarifkennzeichenSondertarif(string val) : base(val) { }
|
||||
|
||||
public static SchlüsselTarifkennzeichenSondertarif OhneBesonderheiten => new SchlüsselTarifkennzeichenSondertarif("000");
|
||||
public static SchlüsselTarifkennzeichenSondertarif NichtBesetzt => new SchlüsselTarifkennzeichenSondertarif("091");
|
||||
public static SchlüsselTarifkennzeichenSondertarif LeistungOhnePreislicheRegelung => new SchlüsselTarifkennzeichenSondertarif("099");
|
||||
public static SchlüsselTarifkennzeichenSondertarif NichtBesetzt2 => new SchlüsselTarifkennzeichenSondertarif("U00");
|
||||
public static SchlüsselTarifkennzeichenSondertarif Sondertarigvereinbarungen => new SchlüsselTarifkennzeichenSondertarif("err");
|
||||
}
|
||||
}
|
||||
@@ -4,7 +4,7 @@ using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace Dakota.Models.Schlüssel
|
||||
namespace Dakota.Models.Schlüssels
|
||||
{
|
||||
public class SchlüsselTestindikator : Schlüssel
|
||||
{
|
||||
@@ -4,7 +4,7 @@ using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace Dakota.Models.Schlüssel
|
||||
namespace Dakota.Models.Schlüssels
|
||||
{
|
||||
public class SchlüsselVerarbeitungskennzeichen : Schlüssel
|
||||
{
|
||||
@@ -1,4 +1,5 @@
|
||||
using System;
|
||||
using Dakota.Models.Daten;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
using System;
|
||||
using Dakota.Models.Daten;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
@@ -35,7 +36,7 @@ namespace Dakota.Models.Segmente.SLGA
|
||||
/// Bei Verarbeitungskennzeichen „03“:
|
||||
/// Entspricht dem Wert aus GES.Gesamtbetrag Zuzahlung und/oder Eigenanteil und/oder Pauschale Korrekturbetrag.
|
||||
/// </summary>
|
||||
public Datenelement Gesamtrechnungsbetrag { get; private set; }
|
||||
public DatenelementDecimal Gesamtrechnungsbetrag { get; private set; }
|
||||
/// <summary>
|
||||
/// Bei Verarbeitungskennzeichen „01“,
|
||||
/// „02“ und „04“:
|
||||
@@ -46,7 +47,7 @@ namespace Dakota.Models.Segmente.SLGA
|
||||
/// Ist der Gesamtbruttobetrag mit 0,00
|
||||
/// zu übermitteln.
|
||||
/// </summary>
|
||||
public Datenelement Gesamtbruttobetrag { get; private set; }
|
||||
public DatenelementDecimal Gesamtbruttobetrag { get; private set; }
|
||||
/// <summary>
|
||||
/// Bei Verarbeitungskennzeichen „01“
|
||||
/// und „02“:
|
||||
@@ -65,14 +66,14 @@ namespace Dakota.Models.Segmente.SLGA
|
||||
/// Berechnungsregel:
|
||||
/// Summe aller Abrechnungsfälle(BES.Gesambetrag gesetzliche Zuzahlung + BES.Gesamtbetrag Eigenanteil + BES.Pauschale Korrekturbetrag).
|
||||
/// </summary>
|
||||
public Datenelement GesamtbetragZuzahlung { get; private set; }
|
||||
public DatenelementDecimal GesamtbetragZuzahlung { get; private set; }
|
||||
|
||||
public SegmentSLGAGES()
|
||||
{
|
||||
Status = new Datenelement("Status", 2, Feldart.Muss);
|
||||
Gesamtrechnungsbetrag = new Datenelement("Gesamtrechnungsbetrag", 3, 13, Feldart.Muss);
|
||||
Gesamtbruttobetrag = new Datenelement("Gesamtbruttobetrag", 3, 13, Feldart.Muss);
|
||||
GesamtbetragZuzahlung = new Datenelement("GesamtbetragZuzahlung", 3, 13, Feldart.Kann);
|
||||
Gesamtrechnungsbetrag = new DatenelementDecimal("Gesamtrechnungsbetrag", 3, 13, Feldart.Muss);
|
||||
Gesamtbruttobetrag = new DatenelementDecimal("Gesamtbruttobetrag", 3, 13, Feldart.Muss);
|
||||
GesamtbetragZuzahlung = new DatenelementDecimal("GesamtbetragZuzahlung", 3, 13, Feldart.Kann);
|
||||
}
|
||||
|
||||
public override string GetHead() => "GES";
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
using System;
|
||||
using Dakota.Models.Daten;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
using System;
|
||||
using Dakota.Models.Daten;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
@@ -57,7 +58,7 @@ namespace Dakota.Models.Segmente.SLGA
|
||||
/// <summary>
|
||||
/// Rechnungsdatum JJJJMMTT
|
||||
/// </summary>
|
||||
public Datenelement Datum { get; private set; }
|
||||
public DatenelementDateTime Datum { get; private set; }
|
||||
/// <summary>
|
||||
/// Siehe Schlüssel Rechnungsart
|
||||
/// Anlage 3 Abschnitt 8.1.4.
|
||||
@@ -72,7 +73,7 @@ namespace Dakota.Models.Segmente.SLGA
|
||||
Rechnungsnummer = new Datenelementgruppe("Rechnungsnummer", 2);
|
||||
SammelRechnungsnummer = Rechnungsnummer.Datenelemente[0] = new Datenelement("SammelRechnungsnummer", 0, 14, Feldart.Muss);
|
||||
EinzelRechnungsnummer = Rechnungsnummer.Datenelemente[1] = new Datenelement("EinzelRechnungsnummer", 0, 6, Feldart.Muss);
|
||||
Datum = new Datenelement("Datum", 8, Feldart.Muss);
|
||||
Datum = new DatenelementDateTime("Datum", 8, "yyyyMMdd", Feldart.Muss);
|
||||
Rechnungsart = new Datenelement("Rechnungsart", 1, Feldart.Muss);
|
||||
}
|
||||
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
using System;
|
||||
using Dakota.Models.Daten;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
using System;
|
||||
using Dakota.Models.Daten;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
using System;
|
||||
using Dakota.Models.Daten;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
@@ -17,7 +18,7 @@ namespace Dakota.Models.Segmente.SLLA
|
||||
/// Berechnungsregel:
|
||||
/// Summe über alle Abrechnungspositionen des Abrechnungsfalls von:
|
||||
/// (((ENF.Einzelbetrag der Abrechnungsposition mal ENF.Anzahl/Menge) plus ggf.MWS.Betrag
|
||||
/// Mehrwertsteuer)) kaufmännisch gerundet).
|
||||
/// Mehrwertsteuer)) kaufmännisch gerundet).
|
||||
/// </summary>
|
||||
public DatenelementDecimal GesamtbetragBrutto { get; private set; }
|
||||
/// <summary>
|
||||
@@ -25,32 +26,32 @@ namespace Dakota.Models.Segmente.SLLA
|
||||
/// Berechnungsregel:
|
||||
/// Summe
|
||||
/// (BES.Gesamtbetrag prozentuale Zuzahlung je Abrechnungsfall
|
||||
/// +BES.PauschalerZuzahlungsbetrag je
|
||||
/// +BES.PauschalerZuzahlungsbetrag je
|
||||
/// Abrechnungsfall
|
||||
/// +(Summe über alle Leistungen
|
||||
/// (ZUZ.Betrag Gesetzliche Zuzahlung))
|
||||
/// </summary>
|
||||
public DatenelementDecimal GesamtbetragGesetzlicheZuzahlung { get; private set; }
|
||||
/// <summary>
|
||||
/// <summary>
|
||||
/// Gesamtbetrag prozentuale Zuzahlung je Abrechnungsfall.
|
||||
/// Berechnungsregel:
|
||||
/// Summe über alle Abrechnungspositionen des Abrechnungsfalls von:
|
||||
/// (ENF.Betrag der Zuzahlung mal
|
||||
/// ENF.Anzahl/Menge) kaufmännisch
|
||||
/// ENF.Anzahl/Menge) kaufmännisch
|
||||
/// gerundet
|
||||
/// </summary>
|
||||
public DatenelementDecimal GesamtbetragProzentualeZuzahlung { get; private set; }
|
||||
/// <summary>
|
||||
/// Pauschaler Zuzahlungsbetrag je Abrechnungsfall (Verordnungsblatt).
|
||||
/// 10 Euro maximal, jedoch höchstens
|
||||
/// 10 Euro maximal, jedoch höchstens
|
||||
/// die Differenz Gesamtbetrag Brutto
|
||||
/// abzüglich Gesamtbetrag prozentuale Zuzahlung
|
||||
/// </summary>
|
||||
public Datenelement PauschalerZuzahlungsbetrag { get; private set; }
|
||||
/// <summary>
|
||||
/// Gesamtbetrag Eigenanteil
|
||||
/// Berechnungsregel:
|
||||
/// Summe über alle Abrechnungspositionen(ZUZ.Betrag Eigenanteil).
|
||||
public DatenelementDecimal PauschalerZuzahlungsbetrag { get; private set; }
|
||||
/// <summary>
|
||||
/// Gesamtbetrag Eigenanteil
|
||||
/// Berechnungsregel:
|
||||
/// Summe über alle Abrechnungspositionen(ZUZ.Betrag Eigenanteil).
|
||||
/// </summary>
|
||||
public DatenelementDecimal GesamtbetragEigenanteil { get; private set; }
|
||||
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
using System;
|
||||
using Dakota.Models.Daten;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
|
||||
@@ -1,4 +1,6 @@
|
||||
using System.Collections.Generic;
|
||||
using Dakota.Models.Daten;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
|
||||
namespace Dakota.Models.Segmente.SLLA
|
||||
{
|
||||
@@ -56,7 +58,7 @@ namespace Dakota.Models.Segmente.SLLA
|
||||
/// am selben Tag erbracht worden
|
||||
/// sind. Andernfalls ist für jeden Tag
|
||||
/// der Leistungserbringung ein eigenes
|
||||
/// ENF-Segment zu erstellen.
|
||||
/// ENF-Segment zu erstellen.
|
||||
/// </summary>
|
||||
public DatenelementDecimal AnzahlMenge { get; private set; }
|
||||
/// <summary>
|
||||
@@ -66,12 +68,12 @@ namespace Dakota.Models.Segmente.SLLA
|
||||
/// der Nettopreis in ENF anzugeben
|
||||
/// und das Segment MWS zu füllen. Ist
|
||||
/// der Einzelpreis inklusive MwSt. vereinbart, ist dieser in ENF anzugeben
|
||||
/// und kein Segment MWS anzugeben
|
||||
/// und kein Segment MWS anzugeben
|
||||
/// </summary>
|
||||
public DatenelementDecimal EinzelbetragAbrechnungsposition { get; private set; }
|
||||
/// <summary>
|
||||
/// Tag der Leistungserbringung
|
||||
/// (JJJJMMTT).
|
||||
/// (JJJJMMTT).
|
||||
/// </summary>
|
||||
public DatenelementDateTime DatumLeistungserbringung { get; private set; }
|
||||
/// <summary>
|
||||
@@ -84,7 +86,7 @@ namespace Dakota.Models.Segmente.SLLA
|
||||
/// * Der Betrag Mehrwertsteuer ist auf
|
||||
/// die einzelne Position mit dem Mengenfaktor 1 herunterzurechnen und
|
||||
/// kaufmännisch zu runden.
|
||||
/// (Der ermittelte Betrag ist kaufmännisch zu runden).
|
||||
/// (Der ermittelte Betrag ist kaufmännisch zu runden).
|
||||
/// </summary>
|
||||
public DatenelementDecimal BetragZuzahlung { get; private set; }
|
||||
|
||||
@@ -93,10 +95,10 @@ namespace Dakota.Models.Segmente.SLLA
|
||||
Identifikationsnummer = new Datenelement("Identifikationsnummer", 0, 3, Feldart.Kann);
|
||||
Leistungserbringergruppe = new Datenelementgruppe("Leistungserbringergruppe", 2);
|
||||
Abrechnungscode = Leistungserbringergruppe.Datenelemente[0] = new Datenelement("Abrechnungscode", 2, Feldart.Muss);
|
||||
Tarifkennzeichen = Leistungserbringergruppe.Datenelemente[1] = new Datenelement("Tarifkennzeichen", 5, Feldart.Muss);
|
||||
ArtLeistung = new Datenelement("ArtLeistung", 0, 10, Feldart.Muss);
|
||||
AnzahlMenge = new Datenelement("AnzahlMenge", 3, 7, Feldart.Muss);
|
||||
EinzelbetragAbrechnungsposition = new Datenelement("EinzelbetragAbrechnungsposition", 3, 13, Feldart.Muss);
|
||||
Tarifkennzeichen = Leistungserbringergruppe.Datenelemente[1] = new Datenelement("Tarifkennzeichen", 5, Feldart.Muss);
|
||||
ArtLeistung = new Datenelement("ArtLeistung", 0, 10, Feldart.Muss);
|
||||
AnzahlMenge = new DatenelementDecimal("AnzahlMenge", 3, 7, Feldart.Muss);
|
||||
EinzelbetragAbrechnungsposition = new DatenelementDecimal("EinzelbetragAbrechnungsposition", 3, 13, Feldart.Muss);
|
||||
DatumLeistungserbringung = new DatenelementDateTime("DatumLeistungserbringung", 8, "yyyyMMdd", Feldart.Muss);
|
||||
BetragZuzahlung = new DatenelementDecimal("BetragZuzahlung", 3, 13, Feldart.Kann);
|
||||
}
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
using System;
|
||||
using Dakota.Models.Daten;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
@@ -41,7 +42,7 @@ namespace Dakota.Models.Segmente.SLLA
|
||||
/// zwingend anzugeben.Diese Angabe ist
|
||||
/// identisch mit SLGA.FKT.IK der Krankenkasse der zugehörigen SLGA-Nachricht als Gesamtrechnung.
|
||||
/// </summary>
|
||||
public Datenelement IKKrankenkasse { get; private set; }
|
||||
public Datenelement IKKVKarte { get; private set; }
|
||||
/// <summary>
|
||||
/// IK des Rechnungsstellers, ist nur anzugeben, wenn die Abrechnung durch
|
||||
/// eine Abrechnungsstelle mit Inkassovollmacht erfolgt.In diesem Fall muss
|
||||
@@ -55,12 +56,12 @@ namespace Dakota.Models.Segmente.SLLA
|
||||
Freifeld = new Datenelement("Freifeld", 1, Feldart.Kann);
|
||||
IKLeistungserbringers = new Datenelement("IKLeistungserbringers", 9, Feldart.Muss);
|
||||
IKKostenträgers = new Datenelement("IKKostenträgers", 9, Feldart.Muss);
|
||||
IKKrankenkasse = new Datenelement("IKKrankenkasse", 9, Feldart.Muss);
|
||||
IKKVKarte = new Datenelement("IKKVKarte", 9, Feldart.Muss);
|
||||
IKRechnungsstellers = new Datenelement("IKRechnungsstellers", 9, Feldart.Kann);
|
||||
}
|
||||
|
||||
public override string GetHead() => "FKT";
|
||||
public override List<Dateneinheit> GetBody()
|
||||
=> new List<Dateneinheit>() { Verarbeitungskennzeichen, Freifeld, IKLeistungserbringers, IKKostenträgers, IKKrankenkasse, IKRechnungsstellers };
|
||||
=> new List<Dateneinheit>() { Verarbeitungskennzeichen, Freifeld, IKLeistungserbringers, IKKostenträgers, IKKVKarte, IKRechnungsstellers };
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
using System;
|
||||
using Dakota.Models.Daten;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
using System;
|
||||
using Dakota.Models.Daten;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
using System;
|
||||
using Dakota.Models.Daten;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
using System;
|
||||
using Dakota.Models.Daten;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
@@ -27,7 +28,7 @@ namespace Dakota.Models.Segmente.SLLA
|
||||
/// „0000“ für nicht bekannte Geburtstage und Geburtsmonate verwendet
|
||||
/// werden.
|
||||
/// </summary>
|
||||
public Datenelement Geburtsdatum { get; private set; }
|
||||
public DatenelementDateTime Geburtsdatum { get; private set; }
|
||||
/// <summary>
|
||||
/// Die Anschrift ist zwingend anzugeben, sofern die Versichertennummer/Versichertenstatus nicht bekannt ist.
|
||||
/// </summary>
|
||||
@@ -53,7 +54,7 @@ namespace Dakota.Models.Segmente.SLLA
|
||||
{
|
||||
Nachname = new Datenelement("Nachname", 0, 47, Feldart.Muss);
|
||||
Vorname = new Datenelement("Vorname", 0, 30, Feldart.Muss);
|
||||
Geburtsdatum = new Datenelement("Geburtsdatum", 8, Feldart.Muss);
|
||||
Geburtsdatum = new DatenelementDateTime("Geburtsdatum", 8, "yyyyMMdd", Feldart.Muss);
|
||||
StraßeNr = new Datenelement("StraßeNr", 0, 30, Feldart.Kann);
|
||||
PLZ = new Datenelement("PLZ", 0, 7, Feldart.Kann);
|
||||
Wohnort = new Datenelement("Wohnort", 0, 25, Feldart.Kann);
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
using System.Collections.Generic;
|
||||
using Dakota.Models.Daten;
|
||||
using System.Collections.Generic;
|
||||
|
||||
namespace Dakota.Models.Segmente.SLLA
|
||||
{
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
using System;
|
||||
using Dakota.Models.Daten;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
@@ -16,17 +17,17 @@ namespace Dakota.Models.Segmente.SLLA
|
||||
/// Anzahl der gefahrenen Kilometer/
|
||||
/// bzw.anteilige Kilometer.Das Datenfeld enthält Angaben über die Kilometeranzahl, die z.B. in einer Pauschale abgerechnet werden. Sofern
|
||||
/// Einzelkilometer abgerechnet werden, sind diese im Datenfeld Anzahl/Menge in ENF angegeben.
|
||||
/// </summary>
|
||||
/// </summary>
|
||||
public DatenelementDecimal GefahreneKilometer { get; private set; }
|
||||
/// <summary>
|
||||
/// HHMM (Wertebereich HH 00 bis 23,
|
||||
/// MM 00 bis 59)
|
||||
/// </summary>
|
||||
/// </summary>
|
||||
public DatenelementDateTime Uhrzeit { get; private set; }
|
||||
/// <summary>
|
||||
/// HHMM (Wertebereich HH 00 bis 23,
|
||||
/// MM 00 bis 59)
|
||||
/// </summary>
|
||||
/// </summary>
|
||||
public DatenelementDateTime UhrzeitBis { get; private set; }
|
||||
/// <summary>
|
||||
/// Zeitangabe in Minuten.
|
||||
@@ -35,21 +36,21 @@ namespace Dakota.Models.Segmente.SLLA
|
||||
/// <summary>
|
||||
/// JJJJMMTT. Beginn des Versorgungszeitraumes.
|
||||
/// Angabe erfolgt soweit vorgesehen
|
||||
/// bzw.vertraglich vereinbart
|
||||
/// bzw.vertraglich vereinbart
|
||||
/// </summary>
|
||||
public DatenelementDateTime VersorgungszeitraumVon { get; private set; }
|
||||
/// <summary>
|
||||
/// JJJJMMTT. Ende des Versorgungszeitraumes.
|
||||
/// Angabe erfolgt soweit vorgesehen
|
||||
/// Angabe erfolgt soweit vorgesehen
|
||||
/// bzw.vertraglich vereinbart
|
||||
/// Das Feld "Versorgungszeitraum bis"
|
||||
/// ist zwingend anzugeben, wenn das
|
||||
/// Feld "Versorgungszeitraum von"
|
||||
/// vorhanden ist.
|
||||
/// </summary>
|
||||
/// Feld "Versorgungszeitraum von"
|
||||
/// vorhanden ist.
|
||||
/// </summary>
|
||||
public DatenelementDateTime VersorgungszeitraumBis { get; private set; }
|
||||
|
||||
public SegmentSLLASUT()
|
||||
|
||||
public SegmentSLLASUT()
|
||||
{
|
||||
GefahreneKilometer = new DatenelementDecimal("GefahreneKilometer", 0, 6, Feldart.Kann);
|
||||
Uhrzeit = new DatenelementDateTime("Uhrzeit", 4, "HHmm", Feldart.Kann);
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
using System.Collections.Generic;
|
||||
using Dakota.Models.Daten;
|
||||
using System.Collections.Generic;
|
||||
|
||||
namespace Dakota.Models.Segmente.SLLA
|
||||
{
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
using System.Collections.Generic;
|
||||
using Dakota.Models.Daten;
|
||||
using System.Collections.Generic;
|
||||
|
||||
namespace Dakota.Models.Segmente.SLLA
|
||||
{
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
using System;
|
||||
using Dakota.Models.Daten;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
using System;
|
||||
using Dakota.Models.Daten;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
using System;
|
||||
using Dakota.Models.Daten;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
|
||||
@@ -1,4 +1,6 @@
|
||||
using System.Collections.Generic;
|
||||
using Dakota.Models.Daten;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
|
||||
namespace Dakota.Models.Segmente
|
||||
{
|
||||
@@ -44,11 +46,11 @@ namespace Dakota.Models.Segmente
|
||||
/// <summary>
|
||||
/// Erstelldatum der Datei
|
||||
/// </summary>
|
||||
public Datenelement Datum { get; private set; }
|
||||
public DatenelementDateTime Datum { get; private set; }
|
||||
/// <summary>
|
||||
/// Erstelluhrzeit der Datei
|
||||
/// </summary>
|
||||
public Datenelement Uhrzeit { get; private set; }
|
||||
public DatenelementDateTime Uhrzeit { get; private set; }
|
||||
/// <summary>
|
||||
/// Ab Version 12 ist die Datenaustauschreferenz zwingend zu füllen.
|
||||
/// Genutzt werden die ersten 5 Stellen;
|
||||
@@ -58,7 +60,7 @@ namespace Dakota.Models.Segmente
|
||||
/// Bei Überlauf der Datenaustauschreferenz („99999“) ist wieder
|
||||
/// bei Eins(„00001“) zu beginnen
|
||||
/// </summary>
|
||||
public Datenelement Datenaustauschreferenz { get; private set; }
|
||||
public DatenelementFiller Datenaustauschreferenz { get; private set; }
|
||||
/// <summary>
|
||||
/// Einzutragen ist der Leistungserbringer-Sammelgruppenschlüssel,
|
||||
/// siehe Schlüssel Anlage 3 Abschnitt 8.1.14
|
||||
@@ -85,9 +87,9 @@ namespace Dakota.Models.Segmente
|
||||
Absenderdatei = new Datenelement("Absenderdatei", 0, 35, Feldart.Muss);
|
||||
Empfangdatei = new Datenelement("Empfangdatei", 0, 35, Feldart.Muss);
|
||||
DatumUhrzeit = new Datenelementgruppe("DatumUhrzeit", 2);
|
||||
Datum = DatumUhrzeit.Datenelemente[0] = new Datenelement("Datum", 8, Feldart.Muss);
|
||||
Uhrzeit = DatumUhrzeit.Datenelemente[1] = new Datenelement("Uhrzeit", 4, Feldart.Muss);
|
||||
Datenaustauschreferenz = new Datenelement("Datenaustauschreferenz", 0, 14, Feldart.Muss);
|
||||
DatumUhrzeit.Datenelemente[0] = Datum = new DatenelementDateTime("Datum", 8, "yyyyMMdd", Feldart.Muss);
|
||||
DatumUhrzeit.Datenelemente[1] = Uhrzeit = new DatenelementDateTime("Uhrzeit", 4, "HHmm", Feldart.Muss);
|
||||
Datenaustauschreferenz = new DatenelementFiller("Datenaustauschreferenz", 0, 14, 5);
|
||||
Leistungsbereich = new Datenelement("Leistungsbereich", 1, Feldart.Muss);
|
||||
Anwengundsreferenz = new Datenelement("Anwengundsreferenz", 0, 14, Feldart.Muss);
|
||||
Testindikator = new Datenelement("Testindikator", 1, Feldart.Muss);
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
using System;
|
||||
using Dakota.Models.Daten;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
@@ -22,7 +23,7 @@ namespace Dakota.Models.Segmente
|
||||
/// Nullen,
|
||||
/// z.B. 00001 für 1. UNH
|
||||
/// </summary>
|
||||
public Datenelement Nachrichtenreferenznummer { get; private set; }
|
||||
public DatenelementFiller Nachrichtenreferenznummer { get; private set; }
|
||||
/// <summary>
|
||||
/// Bei Nachricht SLGA ist einzutragen:
|
||||
/// SLGA:18:0:0
|
||||
@@ -58,7 +59,7 @@ namespace Dakota.Models.Segmente
|
||||
|
||||
public SegmentUNH()
|
||||
{
|
||||
Nachrichtenreferenznummer = new Datenelement("Nachrichtenreferenznummer", 0, 14, Feldart.Muss);
|
||||
Nachrichtenreferenznummer = new DatenelementFiller("Nachrichtenreferenznummer", 0, 14, 5);
|
||||
Nachrichtenerkennung = new Datenelementgruppe("Nachrichtenerkennung", 4);
|
||||
NachrichtenTypKennung = Nachrichtenerkennung.Datenelemente[0] = new Datenelement("NachrichtenTypKennung", 0, 6, Feldart.Muss);
|
||||
Verionsnummer = Nachrichtenerkennung.Datenelemente[1] = new Datenelement("Verionsnummer", 0, 3, Feldart.Muss);
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
using System;
|
||||
using Dakota.Models.Daten;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
@@ -19,12 +20,12 @@ namespace Dakota.Models.Segmente
|
||||
/// <summary>
|
||||
/// wie in UNH
|
||||
/// </summary>
|
||||
public Datenelement Nachrichtenreferenznummer { get; private set; }
|
||||
public DatenelementFiller Nachrichtenreferenznummer { get; private set; }
|
||||
|
||||
public SegmentUNT(Func<int> counter)
|
||||
{
|
||||
AnzahlEinheiten = new DatenelementCounter("AnzahlEinheiten", 6, counter);
|
||||
Nachrichtenreferenznummer = new Datenelement("Nachrichtenreferenznummer", 0, 14, Feldart.Muss);
|
||||
Nachrichtenreferenznummer = new DatenelementFiller("Nachrichtenreferenznummer", 0, 14, 5);
|
||||
}
|
||||
|
||||
public override string GetHead() => "UNT";
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
using System;
|
||||
using Dakota.Models.Daten;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
@@ -15,16 +16,17 @@ namespace Dakota.Models.Segmente
|
||||
/// <summary>
|
||||
/// Anzahl UNHs in der Nutzdatendatei
|
||||
/// </summary>
|
||||
public Datenelement AnzahlNachrichten { get; private set; }
|
||||
public DatenelementCounter AnzahlNachrichten { get; private set; }
|
||||
/// <summary>
|
||||
/// wie in UNB
|
||||
/// </summary>
|
||||
public Datenelement Datenaustauschreferenz { get; private set; }
|
||||
public DatenelementFiller Datenaustauschreferenz { get; private set; }
|
||||
|
||||
public SegmentUNZ()
|
||||
public SegmentUNZ(Func<int> counter)
|
||||
{
|
||||
AnzahlNachrichten = new Datenelement("AnzahlNachrichten", 6, Feldart.Muss);
|
||||
Datenaustauschreferenz = new Datenelement("Datenaustauschreferenz", 0, 14, Feldart.Muss);
|
||||
AnzahlNachrichten = new DatenelementCounter("AnzahlNachrichten", 6, counter);
|
||||
//new Datenelement("AnzahlNachrichten", 6, Feldart.Muss);
|
||||
Datenaustauschreferenz = new DatenelementFiller("Datenaustauschreferenz", 0, 14, 5);
|
||||
}
|
||||
|
||||
public override string GetHead() => "UNZ";
|
||||
|
||||
Reference in New Issue
Block a user