Merge branch 'master' of ssh://float.ownsoft.de/git/beyondSoft/BeWo

This commit is contained in:
2025-04-29 13:57:40 +02:00
9 changed files with 233 additions and 374 deletions

View File

@@ -24,7 +24,7 @@ namespace BeWoFuerDich.Invoicing
}
else
{
if (sozioLeistung.Contains("probe"))
if (sozioLeistung.Contains("probatorik"))
unitDescription = "GPos: 2001607";
else if (sozioLeistung.Contains("video"))
{
@@ -33,14 +33,14 @@ namespace BeWoFuerDich.Invoicing
else if (duration > 30)
unitDescription = "GPos: 2001615";
}
else if (sozioLeistung.Contains("telefon"))
else if (sozioLeistung.Contains("telefonat"))
{
if (duration <= 30)
unitDescription = "GPos: 2001618";
else if (duration > 30)
unitDescription = "GPos: 2001617";
}
else if (sozioLeistung.Contains("aufsuchend") || sozioLeistung.Contains("einrichtung"))
else if (sozioLeistung.Contains("einheit")) // Aufsuchende oder Büro-Einheit
{
if (duration <= 10)
unitDescription = "GPos: 2001613";

View File

@@ -58,7 +58,7 @@
</ItemGroup>
<ItemGroup>
<Compile Include="Invoicing\CustomInvoiceFactory.cs" />
<Compile Include="Invoicing\SoziotherapieInvoiceCreation.cs" />
<Compile Include="Invoicing\CustomSoziotherapieInvoiceCreation.cs" />
<Compile Include="LeistungsnachweisSoziotherapie.cs">
<SubType>Component</SubType>
</Compile>

View File

@@ -12,7 +12,7 @@ namespace DiakonischesWerkDinslakenSozio.Invoicing
{
public override InvoiceCreation CreateInvoiceCreator(string specificId, string tenant, Dictionary<CompactSupportConceptDC, List<ServiceRecordDC>> supportConcepts2ServiceRecords)
{
return new SoziotherapieInvoiceCreation();
return new CustomSoziotherapieInvoiceCreation();
}
}
}

View File

@@ -0,0 +1,57 @@
using BeWo.Service.Invoicing;
using BS.Shared.DataContracts;
namespace DiakonischesWerkDinslakenSozio.Invoicing
{
public class CustomSoziotherapieInvoiceCreation : SoziotherapieInvoiceCreation
{
protected override string ErmittleGPosNummer(ServiceRecordDC serviceRecord, string sozioLeistung)
{
string unitDescription = "";
var duration = serviceRecord.RoundedDuration;
if (sozioLeistung.Contains("gruppe"))
{
if (duration <= 45)
unitDescription = "GPos: 2002678";
else if (duration <= 60)
unitDescription = "GPos: 2002677";
else
unitDescription = "GPos: 2002672";
}
else
{
if (sozioLeistung.Contains("probe"))
unitDescription = "GPos: 2001607";
else if (sozioLeistung.Contains("video"))
{
if (duration <= 30)
unitDescription = "GPos: 2001616";
else if (duration > 30)
unitDescription = "GPos: 2001615";
}
else if (sozioLeistung.Contains("telefon"))
{
if (duration <= 30)
unitDescription = "GPos: 2001618";
else if (duration > 30)
unitDescription = "GPos: 2001617";
}
else if (sozioLeistung.Contains("aufsuchend") || sozioLeistung.Contains("einrichtung"))
{
if (duration <= 10)
unitDescription = "GPos: 2001613";
else if (duration <= 30)
unitDescription = "GPos: 2001612";
else if (duration <= 45)
unitDescription = "GPos: 2001611";
else
unitDescription = "GPos: 2001610";
}
}
return unitDescription;
}
}
}

View File

@@ -1,248 +0,0 @@
using System;
using System.Collections.Generic;
using BeWo.Data.Entities;
using BeWo.Service.Invoicing;
using BS.Shared.Core;
using BS.Shared.DataContracts;
using BS.Shared.DataContracts.Compact;
using BS.Shared.Extensions;
using BS.Shared.Services;
namespace DiakonischesWerkDinslakenSozio.Invoicing
{
public class SoziotherapieInvoiceCreation : InvoiceCreation
{
public override ServiceInvoice CreateSingleInvoice(int invoiceCounter, CostBearer costBearer, DateTimeSpan invoicePeriod, CompactSupportConceptDC supportConcept, List<ServiceRecordDC> serviceRecords)
{
//if (supportConcept.IsApproved)
//{
var invoice = new ServiceInvoice();
var supportConceptList = new List<CompactSupportConceptDC> { supportConcept };
SetSenderInformation(invoice);
SetInvoiceBaseData(invoiceCounter, invoice, costBearer, invoicePeriod, supportConceptList);
SetSingleInvoiceBaseData(invoiceCounter, invoice, costBearer, invoicePeriod, supportConcept);
SetRecipientInformation(invoice, costBearer);
SetServiceInvoicePeriods(invoice, invoice.InvoiceBase.CostBearer2SupportConcept, invoicePeriod,
serviceRecords);
SetServiceInvoicePeriodAmounts(invoice);
// Spitzabrechnung
if (invoicePeriod == null)
{
SetAmountAdvancePayments(invoice);
SetAmountEquityContribution(invoice);
}
return invoice;
//}
//return null;
}
public override IList<InvoiceItem> CreateInvoiceItems(List<ServiceRecordDC> serviceRecordsInPeriod, DateTimeSpan invoicePeriod, SupportConceptApprovalPeriod scap,
Calculations calc)
{
var list = base.CreateInvoiceItems(serviceRecordsInPeriod, invoicePeriod, scap, calc);
var ii = CreateHausbesuchspauschale(serviceRecordsInPeriod, invoicePeriod, scap);
list.AddRange(ii);
return list;
}
public override InvoiceItem CreateInvoiceItem(ServiceRecordDC iServiceRecord, SupportConceptApprovalPeriod scap, Calculations calc)
{
// Es gibt 4 verschiedene Preise - jeweils für Einzel- bzw. Gruppenstunde
// sowie für Primär- und Ersatzkasse
// zusätzlich verschiedene GPos-Nummern für jede Leistung - dort häufig noch nach Dauer (<= 30 min und > 30min) unterschieden
var ii = base.CreateInvoiceItem(iServiceRecord, scap, calc);
ii.ItemDescription = iServiceRecord.ServiceDescription.Name;
if (ii.ItemDescription.ToLower().Contains("gruppe"))
{
//if (iServiceRecord.RoundedDuration <= 45)
//{
// ii.UnitDescription = "GPos: 2002678"; // 2 bis 5 Teilnehmer
//}
//else if (iServiceRecord.RoundedDuration <= 60)
//{
// ii.UnitDescription = "GPos: 2002677"; // 2 bis 5 Teilnehmer
//}
//else
//{
ii.UnitDescription = "GPos: 2002672"; // 2 bis 5 Teilnehmer - 90 Min
//}
// Gibt 2 Preise, einmal für Funktion Primärkasse und einmal für Funktion Ersatzkasse
var preisGruppe = GetGruppenPreis(scap.CostBearer2SupportConcept, iServiceRecord.Start.Value);
ii.AmountPerUnit = preisGruppe;
ii.AmountTotal = ii.AmountPerUnit * ii.UnitCount;
ii.GrossAmountTotal = ii.AmountTotal;
}
else
{
// Gibt 2 Preise, einmal für Funktion Primärkasse und einmal für Funktion Ersatzkasse
var preisEinzel = GetEinzelPreis(scap.CostBearer2SupportConcept, iServiceRecord.Start.Value);
ii.AmountPerUnit = preisEinzel;
ii.AmountTotal = ii.AmountPerUnit * ii.UnitCount;
ii.GrossAmountTotal = ii.AmountTotal;
if (ii.ItemDescription.ToLower().Contains("video"))
{
if (iServiceRecord.RoundedDuration <= 30)
{
ii.UnitDescription = "GPos: 2001616";
}
else
{
ii.UnitDescription = "GPos: 2001615";
}
}
else if (ii.ItemDescription.ToLower().Contains("telefon"))
{
if (iServiceRecord.RoundedDuration <= 30)
{
ii.UnitDescription = "GPos: 2001618";
}
else
{
ii.UnitDescription = "GPos: 2001617";
}
}
else if (ii.ItemDescription.ToLower().Contains("aufsuchende einheit"))
{
if (iServiceRecord.RoundedDuration <= 30)
{
ii.UnitDescription = "GPos: 2001612 / 2009690";
}
else
{
ii.UnitDescription = "GPos: 2001610 / 2009690";
}
}
else if (ii.ItemDescription.ToLower().Contains("probatorik"))
{
if (ii.ItemDescription.ToLower().Contains("aufsuchend"))
{
ii.UnitDescription = "GPos: 2001607 / 2009690";
}
else if (ii.ItemDescription.ToLower().Contains("büro"))
{
ii.UnitDescription = "GPos: 2001607";
}
}
else if (ii.ItemDescription.ToLower().Contains("büro-einheit"))
{
ii.UnitDescription = "GPos: 2001610";
}
}
return ii;
}
public virtual IList<InvoiceItem> CreateHausbesuchspauschale(List<ServiceRecordDC> serviceRecordsInPeriod, DateTimeSpan invoicePeriod, SupportConceptApprovalPeriod scap)
{
IList<InvoiceItem> items = new List<InvoiceItem>();
decimal hausbesuchspauschale = 8.53m;
// Gibt 2 Preise, einmal für Funktion Primärkasse und einmal für Funktion Ersatzkasse
hausbesuchspauschale = GetHausbesuchspauschale(scap.CostBearer2SupportConcept, invoicePeriod.StartDate);
int countHausbesuch = 0;
foreach (var sr in serviceRecordsInPeriod)
{
if (sr.ServiceDescription.Name.ToLower().Contains("hausbesuch") || sr.ServiceDescription.Name.ToLower().Contains("aufsuchend"))
{
countHausbesuch++;
}
}
if (countHausbesuch > 0)
{
var invoiceItem = new InvoiceItem();
decimal anzahlHausbesuche = countHausbesuch;
invoiceItem.AmountPerUnit = hausbesuchspauschale;
invoiceItem.UnitCount = anzahlHausbesuche;
invoiceItem.AmountTotal = anzahlHausbesuche * hausbesuchspauschale;
invoiceItem.ItemPeriodStart = invoicePeriod.StartDate;
invoiceItem.ItemPeriodEnd = invoicePeriod.EndDate;
invoiceItem.RateFactor = null;
invoiceItem.GrossAmountTotal = invoiceItem.AmountTotal;
invoiceItem.ItemDescription = "Hausbesuchspauschale";
invoiceItem.UnitDescription = "GPos: 2009690";
if (scap != null)
invoiceItem.SupportConceptApprovalPeriodOid = scap.Oid;
items.Add(invoiceItem);
}
return items;
}
private decimal GetHausbesuchspauschale(CostBearer2SupportConcept c2s, DateTime dt)
{
String preisName = "Hausbesuchspauschale Primärkasse";
if (c2s.CostBearer.Organisation.Function != null)
{
if (c2s.CostBearer.Organisation.Function.Value.Contains("Ersatzkasse"))
{
preisName = "Hausbesuchspauschale Ersatzkasse";
}
}
return base.GetPreis(preisName, dt);
}
private decimal GetGruppenPreis(CostBearer2SupportConcept c2s, DateTime dt)
{
String preisName = "Gruppenstunde Primärkasse";
if (c2s.CostBearer.Organisation.Function != null)
{
if (c2s.CostBearer.Organisation.Function.Value.Contains("Ersatzkasse"))
{
preisName = "Gruppenstunde Ersatzkasse";
}
}
return base.GetPreis(preisName, dt);
}
private decimal GetEinzelPreis(CostBearer2SupportConcept c2s, DateTime dt)
{
String preisName = "Einzelstunde Primärkasse";
if (c2s.CostBearer.Organisation.Function != null)
{
if (c2s.CostBearer.Organisation.Function.Value.Contains("Ersatzkasse"))
{
preisName = "Einzelstunde Ersatzkasse";
}
}
return base.GetPreis(preisName, dt);
}
public override IList<InvoiceItem> CreateSummaryInvoiceItems(IList<InvoiceItem> itemList, DateTimeSpan invoicePeriod, SupportConceptApprovalPeriod scap, Calculations calc, bool summaryPerMonth, bool addRateFactorToUnitCount)
{
return base.CreateSummaryInvoiceItems(itemList, invoicePeriod, scap, calc, true, true);
}
public override string GetSummaryItemKey(SupportConceptApprovalPeriod scap, InvoiceItem iitem, bool summaryPerMonth)
{
String key = String.Format("{0}_{1}_{2}", iitem.AmountPerUnit, iitem.RateFactor, iitem.ItemDescription);
if (summaryPerMonth)
{
key = String.Format("{0}_{1}_{2:yyyyMM}_{3}", iitem.AmountPerUnit, iitem.RateFactor, iitem.ItemPeriodStart, iitem.ItemDescription);
}
return key;
}
}
}

View File

@@ -1,11 +1,8 @@
using System;
using System.Collections;
using System.ComponentModel;
using BS.Shared.Core;
using DevExpress.XtraReports.UI;
using BeWo.Report.ReportObjects;
using BeWo.Report;
using System.Collections.Generic;
using BeWo.Data.Access;
using BeWo.Data.Entities;
using BeWo.Service.DCEntityMapper;
@@ -53,74 +50,81 @@ namespace DiakonischesWerkDinslakenSozio
s.GoalList += goal.Abbreviation;
}
}
}
if (s.ServiceDescription.Contains("Gruppe")) //die erstellen meist über Mehrfachbuchung
}
var leistung = s.ServiceDescription.ToLower();
if (leistung.Contains("gruppe")) //die erstellen meist über Mehrfachbuchung
{
s.IsGroup = true;
gesamtGruppe += s.Minutes;
s.ServiceDescription = "G";
s.Notice5 = "2002672";
if (s.Minutes <= 45)
s.Notice5 = "2002678";
else if (s.Minutes <= 60)
s.Notice5 = "2002677";
else
s.Notice5 = "2002672";
}
else
{
gesamt += s.Minutes;
}
if (s.ServiceDescription.Contains("Video"))
{
s.ServiceDescription = "V";
if (s.Minutes <= 30)
if (leistung.Contains("video"))
{
s.Notice5 = "2001616";
s.ServiceDescription = "V";
if (s.Minutes <= 30)
s.Notice5 = "2001616";
else
s.Notice5 = "2001615";
}
else
else if (leistung.Contains("telefonat"))
{
s.Notice5 = "2001615";
s.ServiceDescription = "T";
if (s.Minutes <= 30)
s.Notice5 = "2001618";
else
s.Notice5 = "2001617";
}
}
else if (s.ServiceDescription.Contains("Telefon"))
{
s.ServiceDescription = "T";
if (s.Minutes <= 30)
else if (leistung.Contains("aufsuchende einheit"))
{
s.Notice5 = "2001618";
s.ServiceDescription = "A";
if (s.Minutes <= 10)
s.Notice5 = "2001613 / 2009690";
else if (s.Minutes <= 30)
s.Notice5 = "2001612 / 2009690";
else if (s.Minutes <= 45)
s.Notice5 = "2001611 / 2009690";
else
s.Notice5 = "2001610 / 2009690";
}
else
else if (leistung.Contains("probatorik"))
{
s.Notice5 = "2001617";
if (leistung.Contains("aufsuchend"))
{
s.ServiceDescription = "AP";
s.Notice5 = "2001607 / 2009690";
}
else if (leistung.Contains("büro"))
{
s.ServiceDescription = "P";
s.Notice5 = "2001607";
}
}
}
else if (s.ServiceDescription.Contains("Aufsuchende Einheit"))
{
s.ServiceDescription = "A";
if (s.Minutes <= 30)
else if (leistung.Contains("büro-einheit"))
{
s.Notice5 = "2001612 / 2009690";
}
else
{
s.Notice5 = "2001610 / 2009690";
}
}
else if (s.ServiceDescription.Contains("Probatorik"))
{
if (s.ServiceDescription.ToLower().Contains("aufsuchend"))
{
s.ServiceDescription = "AP";
s.Notice5 = "2001607 / 2009690";
}
else if (s.ServiceDescription.ToLower().Contains("büro"))
{
s.ServiceDescription = "P";
s.Notice5 = "2001607";
}
}
else if (s.ServiceDescription.Contains("Büro-Einheit"))
{
s.ServiceDescription = "E";
s.Notice5 = "2001610";
}
s.ServiceDescription = "E";
if (s.Minutes <= 10)
s.Notice5 = "2001613";
else if (s.Minutes <= 30)
s.Notice5 = "2001612";
else if (s.Minutes <= 45)
s.Notice5 = "2001611";
else
s.Notice5 = "2001610";
}
}
}
}

View File

@@ -76,6 +76,7 @@ namespace DiakonischesWerkDinslakenSozio
this.topMarginBand1 = new DevExpress.XtraReports.UI.TopMarginBand();
this.bottomMarginBand1 = new DevExpress.XtraReports.UI.BottomMarginBand();
this.ReportFooter = new DevExpress.XtraReports.UI.ReportFooterBand();
this.xrLabel19 = new DevExpress.XtraReports.UI.XRLabel();
this.xrLabel10 = new DevExpress.XtraReports.UI.XRLabel();
this.xrLabel7 = new DevExpress.XtraReports.UI.XRLabel();
this.xrLabel4 = new DevExpress.XtraReports.UI.XRLabel();
@@ -86,6 +87,8 @@ namespace DiakonischesWerkDinslakenSozio
this.xrLabel23 = new DevExpress.XtraReports.UI.XRLabel();
this.xrLabel15 = new DevExpress.XtraReports.UI.XRLabel();
this.ReportHeader = new DevExpress.XtraReports.UI.ReportHeaderBand();
this.xrPictureBox2 = new DevExpress.XtraReports.UI.XRPictureBox();
this.xrLabel18 = new DevExpress.XtraReports.UI.XRLabel();
this.xrLabel5 = new DevExpress.XtraReports.UI.XRLabel();
this.xrLabel2 = new DevExpress.XtraReports.UI.XRLabel();
this.xrLabel9 = new DevExpress.XtraReports.UI.XRLabel();
@@ -98,9 +101,6 @@ namespace DiakonischesWerkDinslakenSozio
this.xrLabel1 = new DevExpress.XtraReports.UI.XRLabel();
this.fieldArt = new DevExpress.XtraReports.UI.CalculatedField();
this.fieldGroup = new DevExpress.XtraReports.UI.CalculatedField();
this.xrLabel18 = new DevExpress.XtraReports.UI.XRLabel();
this.xrLabel19 = new DevExpress.XtraReports.UI.XRLabel();
this.xrPictureBox2 = new DevExpress.XtraReports.UI.XRPictureBox();
((System.ComponentModel.ISupportInitialize)(this.xrTableServiceRecords1)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.xrTable3)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.bindingSource1)).BeginInit();
@@ -357,6 +357,8 @@ namespace DiakonischesWerkDinslakenSozio
//
// xrTableCell18
//
this.xrTableCell18.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] {
new DevExpress.XtraReports.UI.XRBinding("Text", null, "Services.EmployeeAbbr")});
this.xrTableCell18.Name = "xrTableCell18";
this.xrTableCell18.StylePriority.UsePadding = false;
this.xrTableCell18.StylePriority.UseTextAlignment = false;
@@ -557,6 +559,19 @@ namespace DiakonischesWerkDinslakenSozio
this.ReportFooter.HeightF = 104.9584F;
this.ReportFooter.Name = "ReportFooter";
this.ReportFooter.StylePriority.UseFont = false;
//
// xrLabel19
//
this.xrLabel19.Font = new DevExpress.Drawing.DXFont("Arial", 9F);
this.xrLabel19.LocationFloat = new DevExpress.Utils.PointFloat(0F, 0F);
this.xrLabel19.Name = "xrLabel19";
this.xrLabel19.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
this.xrLabel19.SizeF = new System.Drawing.SizeF(1097.458F, 17.99998F);
this.xrLabel19.StylePriority.UseBorders = false;
this.xrLabel19.StylePriority.UseFont = false;
this.xrLabel19.Text = "* Hinweis: Eine Einheit bei Einzeltherapie umfasst 60 Minuten, im Gruppenkontext " +
"90 Minuten. Die Einzeltherapie kann auch in Teileinheiten erbracht werden (bspw." +
" 0,5 oder 1,5).";
//
// xrLabel10
//
@@ -662,6 +677,24 @@ namespace DiakonischesWerkDinslakenSozio
this.ReportHeader.Name = "ReportHeader";
this.ReportHeader.StylePriority.UseFont = false;
//
// xrPictureBox2
//
this.xrPictureBox2.ImageAlignment = DevExpress.XtraPrinting.ImageAlignment.MiddleCenter;
this.xrPictureBox2.ImageSource = new DevExpress.XtraPrinting.Drawing.ImageSource("img", resources.GetString("xrPictureBox2.ImageSource"));
this.xrPictureBox2.LocationFloat = new DevExpress.Utils.PointFloat(932.3333F, 0F);
this.xrPictureBox2.Name = "xrPictureBox2";
this.xrPictureBox2.SizeF = new System.Drawing.SizeF(166.6667F, 112.5833F);
this.xrPictureBox2.Sizing = DevExpress.XtraPrinting.ImageSizeMode.ZoomImage;
//
// xrLabel18
//
this.xrLabel18.LocationFloat = new DevExpress.Utils.PointFloat(233.9999F, 84.00002F);
this.xrLabel18.Name = "xrLabel18";
this.xrLabel18.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
this.xrLabel18.SizeF = new System.Drawing.SizeF(233.9999F, 20F);
this.xrLabel18.StylePriority.UseFont = false;
this.xrLabel18.Text = "490 508 149";
//
// xrLabel5
//
this.xrLabel5.LocationFloat = new DevExpress.Utils.PointFloat(233.9999F, 144F);
@@ -771,37 +804,6 @@ namespace DiakonischesWerkDinslakenSozio
this.fieldGroup.FieldType = DevExpress.XtraReports.UI.FieldType.Decimal;
this.fieldGroup.Name = "fieldGroup";
//
// xrLabel18
//
this.xrLabel18.LocationFloat = new DevExpress.Utils.PointFloat(233.9999F, 84.00002F);
this.xrLabel18.Name = "xrLabel18";
this.xrLabel18.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
this.xrLabel18.SizeF = new System.Drawing.SizeF(233.9999F, 20F);
this.xrLabel18.StylePriority.UseFont = false;
this.xrLabel18.Text = "490 508 149";
//
// xrLabel19
//
this.xrLabel19.Font = new DevExpress.Drawing.DXFont("Arial", 9F);
this.xrLabel19.LocationFloat = new DevExpress.Utils.PointFloat(0F, 0F);
this.xrLabel19.Name = "xrLabel19";
this.xrLabel19.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
this.xrLabel19.SizeF = new System.Drawing.SizeF(1097.458F, 17.99998F);
this.xrLabel19.StylePriority.UseBorders = false;
this.xrLabel19.StylePriority.UseFont = false;
this.xrLabel19.Text = "* Hinweis: Eine Einheit bei Einzeltherapie umfasst 60 Minuten, im Gruppenkontext " +
"90 Minuten. Die Einzeltherapie kann auch in Teileinheiten erbracht werden (bspw." +
" 0,5 oder 1,5).";
//
// xrPictureBox2
//
this.xrPictureBox2.ImageAlignment = DevExpress.XtraPrinting.ImageAlignment.MiddleCenter;
this.xrPictureBox2.ImageSource = new DevExpress.XtraPrinting.Drawing.ImageSource("img", resources.GetString("xrPictureBox2.ImageSource"));
this.xrPictureBox2.LocationFloat = new DevExpress.Utils.PointFloat(932.3333F, 0F);
this.xrPictureBox2.Name = "xrPictureBox2";
this.xrPictureBox2.SizeF = new System.Drawing.SizeF(166.6667F, 112.5833F);
this.xrPictureBox2.Sizing = DevExpress.XtraPrinting.ImageSizeMode.ZoomImage;
//
// LeistungsnachweisSoziotherapie
//
this.Bands.AddRange(new DevExpress.XtraReports.UI.Band[] {

View File

@@ -35,6 +35,7 @@ namespace DiakonischesWerkDinslakenSozio
this.ReportHeader = new DevExpress.XtraReports.UI.ReportHeaderBand();
this.ruleRateFactorNull = new DevExpress.XtraReports.UI.FormattingRule();
this.topMarginBand1 = new DevExpress.XtraReports.UI.TopMarginBand();
this.xrPictureBox2 = new DevExpress.XtraReports.UI.XRPictureBox();
this.bottomMarginBand1 = new DevExpress.XtraReports.UI.BottomMarginBand();
this.xrLabel1 = new DevExpress.XtraReports.UI.XRLabel();
this.xrLabel19 = new DevExpress.XtraReports.UI.XRLabel();
@@ -102,7 +103,8 @@ namespace DiakonischesWerkDinslakenSozio
this.xrTableCell1 = new DevExpress.XtraReports.UI.XRTableCell();
this.xrTableCell5 = new DevExpress.XtraReports.UI.XRTableCell();
this.bindingSource1 = new System.Windows.Forms.BindingSource(this.components);
this.xrPictureBox2 = new DevExpress.XtraReports.UI.XRPictureBox();
this.xrTableCell4 = new DevExpress.XtraReports.UI.XRTableCell();
this.xrTableCell8 = new DevExpress.XtraReports.UI.XRTableCell();
((System.ComponentModel.ISupportInitialize)(this.xrTable3)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.xrTable2)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.xrRichText2)).BeginInit();
@@ -140,6 +142,15 @@ namespace DiakonischesWerkDinslakenSozio
this.topMarginBand1.HeightF = 155.8333F;
this.topMarginBand1.Name = "topMarginBand1";
//
// xrPictureBox2
//
this.xrPictureBox2.ImageAlignment = DevExpress.XtraPrinting.ImageAlignment.MiddleCenter;
this.xrPictureBox2.ImageSource = new DevExpress.XtraPrinting.Drawing.ImageSource("img", resources.GetString("xrPictureBox2.ImageSource"));
this.xrPictureBox2.LocationFloat = new DevExpress.Utils.PointFloat(489.9163F, 43.25F);
this.xrPictureBox2.Name = "xrPictureBox2";
this.xrPictureBox2.SizeF = new System.Drawing.SizeF(166.6667F, 112.5833F);
this.xrPictureBox2.Sizing = DevExpress.XtraPrinting.ImageSizeMode.ZoomImage;
//
// bottomMarginBand1
//
this.bottomMarginBand1.Controls.AddRange(new DevExpress.XtraReports.UI.XRControl[] {
@@ -169,11 +180,11 @@ namespace DiakonischesWerkDinslakenSozio
//
this.xrLabel19.BackColor = System.Drawing.Color.Transparent;
this.xrLabel19.ForeColor = System.Drawing.Color.Gray;
this.xrLabel19.LocationFloat = new DevExpress.Utils.PointFloat(456.7837F, 4.999935F);
this.xrLabel19.LocationFloat = new DevExpress.Utils.PointFloat(456.7836F, 4.999948F);
this.xrLabel19.Multiline = true;
this.xrLabel19.Name = "xrLabel19";
this.xrLabel19.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
this.xrLabel19.SizeF = new System.Drawing.SizeF(193.2162F, 56.24987F);
this.xrLabel19.SizeF = new System.Drawing.SizeF(193.9316F, 56.24987F);
this.xrLabel19.StylePriority.UseBackColor = false;
this.xrLabel19.StylePriority.UseFont = false;
this.xrLabel19.StylePriority.UseForeColor = false;
@@ -499,7 +510,7 @@ namespace DiakonischesWerkDinslakenSozio
this.xrLabel6.Multiline = true;
this.xrLabel6.Name = "xrLabel6";
this.xrLabel6.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
this.xrLabel6.SizeF = new System.Drawing.SizeF(649.9999F, 38.99988F);
this.xrLabel6.SizeF = new System.Drawing.SizeF(650.7152F, 38.99988F);
this.xrLabel6.StylePriority.UseBackColor = false;
this.xrLabel6.StylePriority.UseFont = false;
this.xrLabel6.Text = "Abrechnung Soziotherapie Sitzungen gemäß $37a SGV, Versicherte(r): [CustomerLastN" +
@@ -571,10 +582,10 @@ namespace DiakonischesWerkDinslakenSozio
this.xrLabel2.CanShrink = true;
this.xrLabel2.Font = new DevExpress.Drawing.DXFont("Arial", 9F, DevExpress.Drawing.DXFontStyle.Regular, DevExpress.Drawing.DXGraphicsUnit.Point, new DevExpress.Drawing.DXFontAdditionalProperty[] {
new DevExpress.Drawing.DXFontAdditionalProperty("GdiCharSet", ((byte)(0)))});
this.xrLabel2.LocationFloat = new DevExpress.Utils.PointFloat(0F, 9.999974F);
this.xrLabel2.LocationFloat = new DevExpress.Utils.PointFloat(0F, 9.999954F);
this.xrLabel2.Name = "xrLabel2";
this.xrLabel2.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F);
this.xrLabel2.SizeF = new System.Drawing.SizeF(649.9999F, 20F);
this.xrLabel2.SizeF = new System.Drawing.SizeF(650.7152F, 20F);
this.xrLabel2.StylePriority.UseBackColor = false;
this.xrLabel2.StylePriority.UseFont = false;
this.xrLabel2.Text = "Zahlungsbedingungen: 10 Tage netto";
@@ -595,12 +606,12 @@ namespace DiakonischesWerkDinslakenSozio
//
this.xrTable4.Font = new DevExpress.Drawing.DXFont("Arial", 9F, DevExpress.Drawing.DXFontStyle.Regular, DevExpress.Drawing.DXGraphicsUnit.Point, new DevExpress.Drawing.DXFontAdditionalProperty[] {
new DevExpress.Drawing.DXFontAdditionalProperty("GdiCharSet", ((byte)(0)))});
this.xrTable4.LocationFloat = new DevExpress.Utils.PointFloat(9.536743E-05F, 75F);
this.xrTable4.LocationFloat = new DevExpress.Utils.PointFloat(0.0001179803F, 74.99998F);
this.xrTable4.Name = "xrTable4";
this.xrTable4.Rows.AddRange(new DevExpress.XtraReports.UI.XRTableRow[] {
this.xrTableRow10,
this.xrTableRow14});
this.xrTable4.SizeF = new System.Drawing.SizeF(650F, 26F);
this.xrTable4.SizeF = new System.Drawing.SizeF(650.7151F, 26F);
this.xrTable4.StylePriority.UseFont = false;
//
// xrTableRow10
@@ -672,12 +683,13 @@ namespace DiakonischesWerkDinslakenSozio
this.xrTable6.Name = "xrTable6";
this.xrTable6.Rows.AddRange(new DevExpress.XtraReports.UI.XRTableRow[] {
this.xrTableRow25});
this.xrTable6.SizeF = new System.Drawing.SizeF(650.7153F, 25F);
this.xrTable6.SizeF = new System.Drawing.SizeF(650.7152F, 25F);
this.xrTable6.StylePriority.UseFont = false;
//
// xrTableRow25
//
this.xrTableRow25.Cells.AddRange(new DevExpress.XtraReports.UI.XRTableCell[] {
this.xrTableCell8,
this.xrTableCell40,
this.xrTableCell42,
this.xrTableCell20,
@@ -704,7 +716,7 @@ namespace DiakonischesWerkDinslakenSozio
this.xrTableCell40.StylePriority.UseTextAlignment = false;
this.xrTableCell40.Text = "Soziotherapie";
this.xrTableCell40.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleLeft;
this.xrTableCell40.Weight = 0.48703970276798481D;
this.xrTableCell40.Weight = 0.51232229738413171D;
//
// xrTableCell42
//
@@ -722,7 +734,7 @@ namespace DiakonischesWerkDinslakenSozio
this.xrTableCell42.StylePriority.UsePadding = false;
this.xrTableCell42.StylePriority.UseTextAlignment = false;
this.xrTableCell42.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleLeft;
this.xrTableCell42.Weight = 1.107949290423365D;
this.xrTableCell42.Weight = 0.80446167293422866D;
//
// xrTableCell20
//
@@ -741,7 +753,7 @@ namespace DiakonischesWerkDinslakenSozio
this.xrTableCell20.StylePriority.UseTextAlignment = false;
this.xrTableCell20.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleRight;
this.xrTableCell20.TextFormatString = "{0:0.##}";
this.xrTableCell20.Weight = 0.22822139477225151D;
this.xrTableCell20.Weight = 0.24432999407550751D;
//
// xrTableCell44
//
@@ -760,7 +772,7 @@ namespace DiakonischesWerkDinslakenSozio
this.xrTableCell44.StylePriority.UseTextAlignment = false;
this.xrTableCell44.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleRight;
this.xrTableCell44.TextFormatString = "{0:}";
this.xrTableCell44.Weight = 0.22822139477225151D;
this.xrTableCell44.Weight = 0.24432999407550746D;
//
// xrTableCell45
//
@@ -779,7 +791,7 @@ namespace DiakonischesWerkDinslakenSozio
this.xrTableCell45.StylePriority.UseTextAlignment = false;
this.xrTableCell45.Text = "xrTableCell45";
this.xrTableCell45.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleRight;
this.xrTableCell45.Weight = 0.31486369486210231D;
this.xrTableCell45.Weight = 0.3370885837560148D;
//
// xrTableCell47
//
@@ -797,7 +809,7 @@ namespace DiakonischesWerkDinslakenSozio
this.xrTableCell47.StylePriority.UsePadding = false;
this.xrTableCell47.StylePriority.UseTextAlignment = false;
this.xrTableCell47.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleRight;
this.xrTableCell47.Weight = 0.40632358217756026D;
this.xrTableCell47.Weight = 0.43500300581858853D;
//
// GroupHeader1
//
@@ -819,6 +831,7 @@ namespace DiakonischesWerkDinslakenSozio
// xrTableRow23
//
this.xrTableRow23.Cells.AddRange(new DevExpress.XtraReports.UI.XRTableCell[] {
this.xrTableCell4,
this.xrTableCell32,
this.xrTableCell37,
this.xrTableCell14,
@@ -846,7 +859,7 @@ namespace DiakonischesWerkDinslakenSozio
this.xrTableCell32.StylePriority.UseTextAlignment = false;
this.xrTableCell32.Text = "Positionsnummer";
this.xrTableCell32.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleLeft;
this.xrTableCell32.Weight = 0.48703975698113955D;
this.xrTableCell32.Weight = 0.54076287365702436D;
//
// xrTableCell37
//
@@ -866,7 +879,7 @@ namespace DiakonischesWerkDinslakenSozio
this.xrTableCell37.StylePriority.UseTextAlignment = false;
this.xrTableCell37.Text = "Bezeichnung";
this.xrTableCell37.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleLeft;
this.xrTableCell37.Weight = 1.1079493430789218D;
this.xrTableCell37.Weight = 0.84911985612088026D;
//
// xrTableCell14
//
@@ -886,7 +899,7 @@ namespace DiakonischesWerkDinslakenSozio
this.xrTableCell14.StylePriority.UseTextAlignment = false;
this.xrTableCell14.Text = "Menge";
this.xrTableCell14.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleRight;
this.xrTableCell14.Weight = 0.22822136142383243D;
this.xrTableCell14.Weight = 0.25789367520462336D;
//
// xrTableCell33
//
@@ -906,7 +919,7 @@ namespace DiakonischesWerkDinslakenSozio
this.xrTableCell33.StylePriority.UseTextAlignment = false;
this.xrTableCell33.Text = "Einheit";
this.xrTableCell33.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleRight;
this.xrTableCell33.Weight = 0.22822136142383243D;
this.xrTableCell33.Weight = 0.25789367520462342D;
//
// xrTableCell36
//
@@ -926,7 +939,7 @@ namespace DiakonischesWerkDinslakenSozio
this.xrTableCell36.StylePriority.UseTextAlignment = false;
this.xrTableCell36.Text = "Preis";
this.xrTableCell36.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleRight;
this.xrTableCell36.Weight = 0.31486374942651824D;
this.xrTableCell36.Weight = 0.355800850145237D;
//
// xrTableCell34
//
@@ -946,7 +959,7 @@ namespace DiakonischesWerkDinslakenSozio
this.xrTableCell34.StylePriority.UseTextAlignment = false;
this.xrTableCell34.Text = "Gesamtbetrag";
this.xrTableCell34.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleRight;
this.xrTableCell34.Weight = 0.40632415697457513D;
this.xrTableCell34.Weight = 0.45915194469869791D;
//
// GroupFooter1
//
@@ -962,7 +975,7 @@ namespace DiakonischesWerkDinslakenSozio
this.xrTable1.Name = "xrTable1";
this.xrTable1.Rows.AddRange(new DevExpress.XtraReports.UI.XRTableRow[] {
this.xrTableRow1});
this.xrTable1.SizeF = new System.Drawing.SizeF(649.9999F, 25F);
this.xrTable1.SizeF = new System.Drawing.SizeF(650.7151F, 25F);
this.xrTable1.StylePriority.UseFont = false;
//
// xrTableRow1
@@ -1007,20 +1020,53 @@ namespace DiakonischesWerkDinslakenSozio
this.xrTableCell5.StylePriority.UsePadding = false;
this.xrTableCell5.StylePriority.UseTextAlignment = false;
this.xrTableCell5.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleRight;
this.xrTableCell5.Weight = 0.40327538447920763D;
this.xrTableCell5.Weight = 0.40632306752692371D;
//
// bindingSource1
//
this.bindingSource1.DataSource = typeof(BeWo.Report.ReportObjects.ServiceInvoiceRO);
//
// xrPictureBox2
// xrTableCell4
//
this.xrPictureBox2.ImageAlignment = DevExpress.XtraPrinting.ImageAlignment.MiddleCenter;
this.xrPictureBox2.ImageSource = new DevExpress.XtraPrinting.Drawing.ImageSource("img", resources.GetString("xrPictureBox2.ImageSource"));
this.xrPictureBox2.LocationFloat = new DevExpress.Utils.PointFloat(489.9163F, 43.25F);
this.xrPictureBox2.Name = "xrPictureBox2";
this.xrPictureBox2.SizeF = new System.Drawing.SizeF(166.6667F, 112.5833F);
this.xrPictureBox2.Sizing = DevExpress.XtraPrinting.ImageSizeMode.ZoomImage;
this.xrTableCell4.BackColor = System.Drawing.Color.Transparent;
this.xrTableCell4.BorderColor = System.Drawing.Color.DarkGray;
this.xrTableCell4.Borders = ((DevExpress.XtraPrinting.BorderSide)((((DevExpress.XtraPrinting.BorderSide.Left | DevExpress.XtraPrinting.BorderSide.Top)
| DevExpress.XtraPrinting.BorderSide.Right)
| DevExpress.XtraPrinting.BorderSide.Bottom)));
this.xrTableCell4.Font = new DevExpress.Drawing.DXFont("Arial", 9F);
this.xrTableCell4.Multiline = true;
this.xrTableCell4.Name = "xrTableCell4";
this.xrTableCell4.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 2, 2, 100F);
this.xrTableCell4.StylePriority.UseBackColor = false;
this.xrTableCell4.StylePriority.UseBorderColor = false;
this.xrTableCell4.StylePriority.UseBorders = false;
this.xrTableCell4.StylePriority.UseFont = false;
this.xrTableCell4.StylePriority.UsePadding = false;
this.xrTableCell4.StylePriority.UseTextAlignment = false;
this.xrTableCell4.Text = "Datum";
this.xrTableCell4.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleLeft;
this.xrTableCell4.Weight = 0.412479349453638D;
//
// xrTableCell8
//
this.xrTableCell8.BorderColor = System.Drawing.Color.DarkGray;
this.xrTableCell8.Borders = ((DevExpress.XtraPrinting.BorderSide)(((DevExpress.XtraPrinting.BorderSide.Left | DevExpress.XtraPrinting.BorderSide.Right)
| DevExpress.XtraPrinting.BorderSide.Bottom)));
this.xrTableCell8.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] {
new DevExpress.XtraReports.UI.XRBinding("Text", null, "ServiceInvoicePeriods.ServiceInvoiceItems.AccountingPeriodStart")});
this.xrTableCell8.Font = new DevExpress.Drawing.DXFont("Arial", 9F);
this.xrTableCell8.Multiline = true;
this.xrTableCell8.Name = "xrTableCell8";
this.xrTableCell8.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 2, 2, 100F);
this.xrTableCell8.StylePriority.UseBorderColor = false;
this.xrTableCell8.StylePriority.UseBorders = false;
this.xrTableCell8.StylePriority.UseFont = false;
this.xrTableCell8.StylePriority.UsePadding = false;
this.xrTableCell8.StylePriority.UseTextAlignment = false;
this.xrTableCell8.Text = "xrTableCell8";
this.xrTableCell8.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleLeft;
this.xrTableCell8.TextFormatString = "{0:dd.MM.yyyy}";
this.xrTableCell8.Weight = 0.39078561666036693D;
//
// SoziotherapieRechnung
//
@@ -1129,5 +1175,7 @@ namespace DiakonischesWerkDinslakenSozio
private DevExpress.XtraReports.UI.XRTableCell xrTableCell3;
private DevExpress.XtraReports.UI.XRPageInfo xrPageInfo2;
private DevExpress.XtraReports.UI.XRPictureBox xrPictureBox2;
private DevExpress.XtraReports.UI.XRTableCell xrTableCell8;
private DevExpress.XtraReports.UI.XRTableCell xrTableCell4;
}
}

View File

@@ -1,9 +1,5 @@
using BeWo.Data.Access;
using BeWo.Data.Entities;
using BeWo.Report;
using BeWo.Report.ReportObjects;
using BS.Shared;
using BS.Shared.Core;
using DevExpress.XtraReports.UI;
using System;
using System.Text;