MH: Suchtkrankenhilfe Invoice und QB

This commit is contained in:
2023-12-01 14:18:50 +01:00
parent e0ad361dbc
commit 786eafdbe1
7 changed files with 1125 additions and 92 deletions

View File

@@ -94,7 +94,7 @@ namespace SuchtkrankenhilfeOstfriesland
//}
// Klären, wann QB genommen werden soll
if (ro.Costbearer != null && ro.StartDate.Date >= new DateTime(2023, 10, 01) && ro.Costbearer.ToLower().Contains("ab 01.09."))
if (ro.Costbearer != null && ro.StartDate.Date >= new DateTime(2023, 09, 01) && ro.Costbearer.ToLower().Contains("ab 01.09."))
report = new Quittierungsbeleg();
else
report = new QuittierungsbelegAlt();

View File

@@ -87,7 +87,7 @@ namespace SuchtkrankenhilfeOstfriesland.Invoicing
decimal counter = 0;
foreach (var sr in serviceRecordsInPeriod)
{
if (sr.ServiceDescription.CategoryName.ToLower().Contains("fls") && !sr.ServiceDescription.Name.ToLower().Contains("bürotermin"))
if (sr.DistanceInMeter != null && sr.DistanceInMeter != 0)
{
// Bei Gruppenbuchungen muss die Pauschale durch die Teilnehmerzahl geteilt werden
if (sr.GroupPersonCount.HasValue)

View File

@@ -61,7 +61,6 @@ namespace SuchtkrankenhilfeOstfriesland
this.xrTableCell11 = new DevExpress.XtraReports.UI.XRTableCell();
this.xrTableCell9 = new DevExpress.XtraReports.UI.XRTableCell();
this.xrTableCell32 = new DevExpress.XtraReports.UI.XRTableCell();
this.bindingSource1 = new System.Windows.Forms.BindingSource(this.components);
this.formattingRuleStartDate = new DevExpress.XtraReports.UI.FormattingRule();
this.ReportHeader = new DevExpress.XtraReports.UI.ReportHeaderBand();
this.xrLabel10 = new DevExpress.XtraReports.UI.XRLabel();
@@ -93,6 +92,9 @@ namespace SuchtkrankenhilfeOstfriesland
this.formattingRuleCostBearer = new DevExpress.XtraReports.UI.FormattingRule();
this.formattingRuleEmployeeName = new DevExpress.XtraReports.UI.FormattingRule();
this.topMarginBand1 = new DevExpress.XtraReports.UI.TopMarginBand();
this.lblKontaktLeer = new DevExpress.XtraReports.UI.XRRichText();
this.lblKontaktEmden = new DevExpress.XtraReports.UI.XRRichText();
this.lblKontaktAurich = new DevExpress.XtraReports.UI.XRRichText();
this.xrLabel16 = new DevExpress.XtraReports.UI.XRLabel();
this.bottomMarginBand1 = new DevExpress.XtraReports.UI.BottomMarginBand();
this.GroupFooter1 = new DevExpress.XtraReports.UI.GroupFooterBand();
@@ -107,19 +109,17 @@ namespace SuchtkrankenhilfeOstfriesland
this.lblSummeAusfallstunden = new DevExpress.XtraReports.UI.XRLabel();
this.lblSummeWegepauschalen = new DevExpress.XtraReports.UI.XRLabel();
this.xrLabel6 = new DevExpress.XtraReports.UI.XRLabel();
this.xrLabel2 = new DevExpress.XtraReports.UI.XRLabel();
this.xrLabel1 = new DevExpress.XtraReports.UI.XRLabel();
this.fieldKontaktArt = new DevExpress.XtraReports.UI.CalculatedField();
this.wennGruppeAnzPersonen = new DevExpress.XtraReports.UI.CalculatedField();
this.lblKontaktLeer = new DevExpress.XtraReports.UI.XRRichText();
this.lblKontaktEmden = new DevExpress.XtraReports.UI.XRRichText();
this.lblKontaktAurich = new DevExpress.XtraReports.UI.XRRichText();
this.xrPictureBox1 = new DevExpress.XtraReports.UI.XRPictureBox();
this.bindingSource1 = new System.Windows.Forms.BindingSource(this.components);
((System.ComponentModel.ISupportInitialize)(this.xrTable3)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.xrTableServiceRecords1)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.bindingSource1)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.lblKontaktLeer)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.lblKontaktEmden)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.lblKontaktAurich)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.bindingSource1)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this)).BeginInit();
//
// Detail
@@ -215,7 +215,7 @@ namespace SuchtkrankenhilfeOstfriesland
// xrTableCell2
//
this.xrTableCell2.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] {
new DevExpress.XtraReports.UI.XRBinding("Text", null, "Services.ServiceCategory")});
new DevExpress.XtraReports.UI.XRBinding("Text", null, "Services.ServiceDescription")});
this.xrTableCell2.Font = new System.Drawing.Font("Calibri", 10F);
this.xrTableCell2.Name = "xrTableCell2";
this.xrTableCell2.StylePriority.UseFont = false;
@@ -566,10 +566,6 @@ namespace SuchtkrankenhilfeOstfriesland
this.xrTableCell32.TextAlignment = DevExpress.XtraPrinting.TextAlignment.TopCenter;
this.xrTableCell32.Weight = 0.38128459041152885D;
//
// bindingSource1
//
this.bindingSource1.DataSource = typeof(BeWo.Report.ReportObjects.ServicesOverviewRO);
//
// formattingRuleStartDate
//
this.formattingRuleStartDate.Condition = "[StartDate2] < [StartDate]";
@@ -1048,10 +1044,38 @@ namespace SuchtkrankenhilfeOstfriesland
this.lblKontaktLeer,
this.lblKontaktEmden,
this.lblKontaktAurich,
this.xrLabel16});
this.xrLabel16,
this.xrPictureBox1});
this.topMarginBand1.HeightF = 209.4583F;
this.topMarginBand1.Name = "topMarginBand1";
//
// lblKontaktLeer
//
this.lblKontaktLeer.Font = new System.Drawing.Font("Verdana", 10F);
this.lblKontaktLeer.LocationFloat = new DevExpress.Utils.PointFloat(882.375F, 30.62498F);
this.lblKontaktLeer.Name = "lblKontaktLeer";
this.lblKontaktLeer.SerializableRtfString = resources.GetString("lblKontaktLeer.SerializableRtfString");
this.lblKontaktLeer.SizeF = new System.Drawing.SizeF(215.6249F, 168.8333F);
this.lblKontaktLeer.Visible = false;
//
// lblKontaktEmden
//
this.lblKontaktEmden.Font = new System.Drawing.Font("Verdana", 10F);
this.lblKontaktEmden.LocationFloat = new DevExpress.Utils.PointFloat(882.375F, 30.62498F);
this.lblKontaktEmden.Name = "lblKontaktEmden";
this.lblKontaktEmden.SerializableRtfString = resources.GetString("lblKontaktEmden.SerializableRtfString");
this.lblKontaktEmden.SizeF = new System.Drawing.SizeF(215.6249F, 168.8333F);
this.lblKontaktEmden.Visible = false;
//
// lblKontaktAurich
//
this.lblKontaktAurich.Font = new System.Drawing.Font("Verdana", 10F);
this.lblKontaktAurich.LocationFloat = new DevExpress.Utils.PointFloat(882.375F, 30.62498F);
this.lblKontaktAurich.Name = "lblKontaktAurich";
this.lblKontaktAurich.SerializableRtfString = resources.GetString("lblKontaktAurich.SerializableRtfString");
this.lblKontaktAurich.SizeF = new System.Drawing.SizeF(215.6249F, 168.8333F);
this.lblKontaktAurich.Visible = false;
//
// xrLabel16
//
this.xrLabel16.Font = new System.Drawing.Font("Calibri", 10F);
@@ -1087,7 +1111,6 @@ namespace SuchtkrankenhilfeOstfriesland
this.lblSummeAusfallstunden,
this.lblSummeWegepauschalen,
this.xrLabel6,
this.xrLabel2,
this.xrLabel1});
this.GroupFooter1.HeightF = 136.875F;
this.GroupFooter1.KeepTogether = true;
@@ -1265,32 +1288,12 @@ namespace SuchtkrankenhilfeOstfriesland
this.xrLabel6.StylePriority.UseTextAlignment = false;
this.xrLabel6.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleCenter;
//
// xrLabel2
//
this.xrLabel2.BackColor = System.Drawing.Color.Transparent;
this.xrLabel2.Borders = ((DevExpress.XtraPrinting.BorderSide)(((DevExpress.XtraPrinting.BorderSide.Left | DevExpress.XtraPrinting.BorderSide.Right)
| DevExpress.XtraPrinting.BorderSide.Bottom)));
this.xrLabel2.BorderWidth = 1F;
this.xrLabel2.CanGrow = false;
this.xrLabel2.Font = new System.Drawing.Font("Calibri", 11F, System.Drawing.FontStyle.Bold);
this.xrLabel2.LocationFloat = new DevExpress.Utils.PointFloat(482.0644F, 20.00001F);
this.xrLabel2.Name = "xrLabel2";
this.xrLabel2.Padding = new DevExpress.XtraPrinting.PaddingInfo(3, 2, 0, 0, 100F);
this.xrLabel2.SizeF = new System.Drawing.SizeF(115F, 19.99998F);
this.xrLabel2.StylePriority.UseBackColor = false;
this.xrLabel2.StylePriority.UseBorders = false;
this.xrLabel2.StylePriority.UseBorderWidth = false;
this.xrLabel2.StylePriority.UseFont = false;
this.xrLabel2.StylePriority.UsePadding = false;
this.xrLabel2.StylePriority.UseTextAlignment = false;
this.xrLabel2.Text = "Summe Minuten";
this.xrLabel2.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleCenter;
//
// xrLabel1
//
this.xrLabel1.BackColor = System.Drawing.Color.Transparent;
this.xrLabel1.Borders = ((DevExpress.XtraPrinting.BorderSide)(((DevExpress.XtraPrinting.BorderSide.Left | DevExpress.XtraPrinting.BorderSide.Top)
| DevExpress.XtraPrinting.BorderSide.Right)));
this.xrLabel1.Borders = ((DevExpress.XtraPrinting.BorderSide)((((DevExpress.XtraPrinting.BorderSide.Left | DevExpress.XtraPrinting.BorderSide.Top)
| DevExpress.XtraPrinting.BorderSide.Right)
| DevExpress.XtraPrinting.BorderSide.Bottom)));
this.xrLabel1.BorderWidth = 1F;
this.xrLabel1.CanGrow = false;
this.xrLabel1.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] {
@@ -1299,7 +1302,7 @@ namespace SuchtkrankenhilfeOstfriesland
this.xrLabel1.LocationFloat = new DevExpress.Utils.PointFloat(482.0644F, 0F);
this.xrLabel1.Name = "xrLabel1";
this.xrLabel1.Padding = new DevExpress.XtraPrinting.PaddingInfo(3, 2, 0, 0, 100F);
this.xrLabel1.SizeF = new System.Drawing.SizeF(115F, 20F);
this.xrLabel1.SizeF = new System.Drawing.SizeF(115F, 22F);
this.xrLabel1.StylePriority.UseBackColor = false;
this.xrLabel1.StylePriority.UseBorders = false;
this.xrLabel1.StylePriority.UseBorderWidth = false;
@@ -1321,32 +1324,18 @@ namespace SuchtkrankenhilfeOstfriesland
this.wennGruppeAnzPersonen.Expression = "Iif([CustomerCount] > 1,[CustomerCount],\'\')";
this.wennGruppeAnzPersonen.Name = "wennGruppeAnzPersonen";
//
// lblKontaktLeer
// xrPictureBox1
//
this.lblKontaktLeer.Font = new System.Drawing.Font("Verdana", 10F);
this.lblKontaktLeer.LocationFloat = new DevExpress.Utils.PointFloat(882.375F, 30.62498F);
this.lblKontaktLeer.Name = "lblKontaktLeer";
this.lblKontaktLeer.SerializableRtfString = resources.GetString("lblKontaktLeer.SerializableRtfString");
this.lblKontaktLeer.SizeF = new System.Drawing.SizeF(215.6249F, 168.8333F);
this.lblKontaktLeer.Visible = false;
this.xrPictureBox1.Image = ((System.Drawing.Image)(resources.GetObject("xrPictureBox1.Image")));
this.xrPictureBox1.ImageAlignment = DevExpress.XtraPrinting.ImageAlignment.MiddleCenter;
this.xrPictureBox1.LocationFloat = new DevExpress.Utils.PointFloat(0F, 30.62498F);
this.xrPictureBox1.Name = "xrPictureBox1";
this.xrPictureBox1.SizeF = new System.Drawing.SizeF(359.6667F, 93.83334F);
this.xrPictureBox1.Sizing = DevExpress.XtraPrinting.ImageSizeMode.ZoomImage;
//
// lblKontaktEmden
// bindingSource1
//
this.lblKontaktEmden.Font = new System.Drawing.Font("Verdana", 10F);
this.lblKontaktEmden.LocationFloat = new DevExpress.Utils.PointFloat(882.375F, 30.62498F);
this.lblKontaktEmden.Name = "lblKontaktEmden";
this.lblKontaktEmden.SerializableRtfString = resources.GetString("lblKontaktEmden.SerializableRtfString");
this.lblKontaktEmden.SizeF = new System.Drawing.SizeF(215.6249F, 168.8333F);
this.lblKontaktEmden.Visible = false;
//
// lblKontaktAurich
//
this.lblKontaktAurich.Font = new System.Drawing.Font("Verdana", 10F);
this.lblKontaktAurich.LocationFloat = new DevExpress.Utils.PointFloat(882.375F, 30.62498F);
this.lblKontaktAurich.Name = "lblKontaktAurich";
this.lblKontaktAurich.SerializableRtfString = resources.GetString("lblKontaktAurich.SerializableRtfString");
this.lblKontaktAurich.SizeF = new System.Drawing.SizeF(215.6249F, 168.8333F);
this.lblKontaktAurich.Visible = false;
this.bindingSource1.DataSource = typeof(BeWo.Report.ReportObjects.ServicesOverviewRO);
//
// Quittierungsbeleg
//
@@ -1374,10 +1363,10 @@ namespace SuchtkrankenhilfeOstfriesland
this.Version = "17.1";
((System.ComponentModel.ISupportInitialize)(this.xrTable3)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.xrTableServiceRecords1)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.bindingSource1)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.lblKontaktLeer)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.lblKontaktEmden)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.lblKontaktAurich)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.bindingSource1)).EndInit();
((System.ComponentModel.ISupportInitialize)(this)).EndInit();
}
@@ -1449,7 +1438,6 @@ namespace SuchtkrankenhilfeOstfriesland
private DevExpress.XtraReports.UI.XRTableCell xrTableCell35;
private DevExpress.XtraReports.UI.XRLabel lblFLSWocheQuali;
private DevExpress.XtraReports.UI.XRLabel lblGesamtbudgetQuali;
private DevExpress.XtraReports.UI.XRLabel xrLabel2;
private DevExpress.XtraReports.UI.XRLabel xrLabel6;
private DevExpress.XtraReports.UI.XRLabel lblSummeWegepauschalen;
private DevExpress.XtraReports.UI.XRLabel lblSummeAusfallstunden;
@@ -1467,5 +1455,6 @@ namespace SuchtkrankenhilfeOstfriesland
private DevExpress.XtraReports.UI.XRRichText lblKontaktLeer;
private DevExpress.XtraReports.UI.XRRichText lblKontaktEmden;
private DevExpress.XtraReports.UI.XRRichText lblKontaktAurich;
private DevExpress.XtraReports.UI.XRPictureBox xrPictureBox1;
}
}

View File

@@ -13,6 +13,7 @@ using BeWo.Service.ServiceImplementations;
using BS.Shared;
using BS.Shared.Core;
using BS.Shared.DataContracts;
using BS.Shared.Extensions;
using DevExpress.XtraReports.UI;
namespace SuchtkrankenhilfeOstfriesland
@@ -67,24 +68,24 @@ namespace SuchtkrankenhilfeOstfriesland
sd.FLSQualified = sd.Minutes / 50;
sd.FLSQualified = sd.MinutesQualified / Convert.ToDouble(currentFLSUnit.CostRateValue);
sd.Notice2 = SetzeKennziffer(sd.ServiceDescription);
if (sd.IsBillable)
{
sd.Notice2 = SetzeKennziffer(sd.Notice2);
minuten += sd.Minutes;
ServicesOverviewRO.CreateSignatureString(sd);
sd.Notice5 = "F";
if (sd.ServiceDescription.Contains("ear"))
sd.Notice5 = "E";
else if (sd.IsGroup)
if (sd.IsGroup)
{
//sd.Notice5 = String.Format("{0} Teilnehmer", sd.CustomerCount);
hatGruppen = true;
sd.Notice3 = "1";
}
else
sd.Notice3 = "";
// Felder für Wegepauschale setzen (Wenn FLS FaceToFace, dann ja)
if (sd.ServiceDescription.ToLower().Contains("hausbesuch") || sd.ServiceDescription.ToLower().Contains("außentermin") || sd.ServiceDescription.ToLower().Contains("aussentermin"))
// Felder für Wegepauschale setzen (Wenn Kilometer gesetzt, dann ja)
if (!sd.GefahreneKilometer.IsNullOrEmpty() && sd.GefahreneKilometer != "0" && sd.GefahreneKilometer != "0.0")
{
var emp = MapperFactory.EmployeeDC_Employee.MapToNewDC(DAOFactory.GenericDAO.GetByID<Employee>(sd.EmployeeOid));
if (emp.IsQualified.HasValue)
@@ -101,7 +102,8 @@ namespace SuchtkrankenhilfeOstfriesland
sd.Notice4 = "";
// Felder für Ausfallstundnen setzen
if (sd.ServiceCategory.ToLower().Contains("ausfall") || sd.ServiceCategory.ToLower().Contains("fehlkontakt"))
if (sd.ServiceCategory.ToLower().Contains("ausfall") || sd.ServiceCategory.ToLower().Contains("fehlkontakt") ||
sd.ServiceDescription.ToLower().Contains("ausfall") || sd.ServiceDescription.ToLower().Contains("fehlkontakt"))
{
sd.Notice5 = "1";
summeAusfallstunden++;
@@ -149,28 +151,29 @@ namespace SuchtkrankenhilfeOstfriesland
bindingSource1.DataSource = pRO;
}
private string SetzeKennziffer(string serviceDescription)
private string SetzeKennziffer(string notice2)
{
// Kennziffer 1-12 setzen je nach Leistung
int kennziffer = 0;
switch (serviceDescription)
int ziffer = 0;
if (notice2 != null)
{
case "Unterstützung im Lebens- und Wohnumfeld, Ges.ndheitssorge, Finanzen": kennziffer = 1;break;
case "Unterstützung bei der Entwicklung einer individuellen Tagesstruktur": kennziffer = 2;break;
case "Unterstützung / Assistenz im Bereich Mobilität ": kennziffer = 3;break;
case "Unterstützung bei der Inanspruchnahme medizinischer / sozialer Dienste": kennziffer = 4;break;
case "Unterstützung beim Umgang mit öffentlicher Verwaltung, Banken u.a.": kennziffer = 5;break;
case "Begleitung und Teilnahme bei den Gesamtplankonferenzen": kennziffer = 6;break;
case "Unterstützung bei der Gestaltung von Beziehungen; Förderung der Interaktionsfähigkeit": kennziffer = 7;break;
case "Unterstützung bei Wohnungssuche, Einzug/Umzug etc.": kennziffer = 8;break;
case "Reflexion der pers. Situation, Gesundheitszustand, Alltagsgeschehen": kennziffer = 9;break;
case "Beratung in Konflikt-, Krisen- und Veränderungssituationen": kennziffer = 10;break;
case "Angemessene Kontaktsicherung bei stat. KH-aufenthalt oder Reha": kennziffer = 11;break;
case "Sonstiges": kennziffer = 12;break;
var noticeSplit = notice2.Trim().Split(' ');
if (noticeSplit != null && noticeSplit.Length > 0)
{
try
{
ziffer = Convert.ToInt32(noticeSplit[0]);
}
catch
{
return "";
}
}
}
return kennziffer.ToString();
if (ziffer == 0)
return "";
else
return ziffer.ToString();
}
private void picSignature_BeforePrint(object sender, System.Drawing.Printing.PrintEventArgs e)

File diff suppressed because it is too large Load Diff

View File

@@ -20,7 +20,12 @@ namespace SuchtkrankenhilfeOstfriesland
pRO.RecipientOrganisation = pRO.RecipientOrganisation.Replace("ab 01.09.2023", "");
pRO.RecipientOrganisation = pRO.RecipientOrganisation.Replace("bis 31.08.2023", "");
}
else if (pRO.RecipientOrganisation.Contains("ab 01.09.") || pRO.RecipientOrganisation.Contains("bis 31.08."))
{
pRO.RecipientOrganisation = pRO.RecipientOrganisation.Replace("ab 01.09.", "");
pRO.RecipientOrganisation = pRO.RecipientOrganisation.Replace("bis 31.08.", "");
}
DateTime start = pRO.AccountingPeriodStart;
DateTime end = pRO.AccountingPeriodEnd;

Binary file not shown.

After

Width:  |  Height:  |  Size: 60 KiB