diff --git a/ReportImp/KetteReports/Calculations/CustomGroupDurationCalculator.cs b/ReportImp/KetteReports/Calculations/CustomGroupDurationCalculator.cs new file mode 100644 index 000000000..0cbf1c25f --- /dev/null +++ b/ReportImp/KetteReports/Calculations/CustomGroupDurationCalculator.cs @@ -0,0 +1,23 @@ +using BeWo.Data.Entities; +using BeWo.Service.Plugins; + +namespace KetteReports.Calculation +{ + + public class CustomGroupDurationCalculator : GroupDurationCalculator + { + public override void CalculateGroupDuration(ServiceRecordGroup group) + { + base.CalculateGroupDuration(group); + + foreach (var sr in group.ServiceRecordList) + { + if (sr.ServiceDescription.ServiceCategory.Name.ToLower().Contains("soziotherapie")) + { + sr.RoundedDuration = sr.GroupRoundedDuration.Value; + // sr.RoundedDuration = (sr.GroupRoundedDuration.Value * group.EmployeeCount) / group.CustomerCount; + } + } + } + } +} diff --git a/ReportImp/KetteReports/KetteReports.csproj b/ReportImp/KetteReports/KetteReports.csproj index 6ffb56634..5c9aacf8e 100644 --- a/ReportImp/KetteReports/KetteReports.csproj +++ b/ReportImp/KetteReports/KetteReports.csproj @@ -118,6 +118,7 @@ AuswertungSozialpsychiatrie.cs + diff --git a/ReportImp/KetteReports/LeistungsnachweisSoziotherapie.cs b/ReportImp/KetteReports/LeistungsnachweisSoziotherapie.cs index 5476fea71..ecff224cf 100644 --- a/ReportImp/KetteReports/LeistungsnachweisSoziotherapie.cs +++ b/ReportImp/KetteReports/LeistungsnachweisSoziotherapie.cs @@ -60,70 +60,75 @@ namespace KetteReports { s.IsGroup = true; gesamtGruppe += s.Minutes; - s.ServiceDescription = "E"; - s.Notice5 = "2002672"; + s.ServiceDescription = "E"; + 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 (s.ServiceDescription.Contains("Video")) { - s.Notice5 = "2001615"; + s.ServiceDescription = "V"; + if (s.Minutes <= 30) + { + s.Notice5 = "2001615"; + } + else + { + s.Notice5 = "2001616"; + } } - else + else if (s.ServiceDescription.Contains("Telefon")) { - s.Notice5 = "2001616"; + 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 (s.ServiceDescription.Contains("Aufsuchende Prob")) { - s.Notice5 = "2001618"; - } - else - { - s.Notice5 = "2001617"; - } - } - else if (s.ServiceDescription.Contains("Aufsuchende Prob")) - { - s.ServiceDescription = "A"; - s.Notice5 = "2001607"; - } - else - { - if (s.ServiceDescription.Contains("Büro")) - { - s.ServiceDescription = "E"; - } - else if (s.ServiceDescription.Contains("Aufsuchend")) - { - s.ServiceDescription = "A"; + s.ServiceDescription = "A"; + s.Notice5 = "2001607"; } + else + { + if (s.ServiceDescription.Contains("Büro")) + { + s.ServiceDescription = "E"; + } + else if (s.ServiceDescription.Contains("Aufsuchend")) + { + s.ServiceDescription = "A"; + } - 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"; - } + 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"; + } + } } } } @@ -131,7 +136,7 @@ namespace KetteReports cellGesamt.Text = String.Format("{0:0.00}", gesamt / 60); if (gesamtGruppe > 0) { - cellGesamtGruppe.Text = String.Format("{0:0.00}", gesamtGruppe / 60); + cellGesamtGruppe.Text = String.Format("{0:0.00}", gesamtGruppe / 90); } this.bindingSource1.DataSource = pRO; diff --git a/ReportImp/KetteReports/LeistungsnachweisSoziotherapie.designer.cs b/ReportImp/KetteReports/LeistungsnachweisSoziotherapie.designer.cs index cb914431a..5b4cf1135 100644 --- a/ReportImp/KetteReports/LeistungsnachweisSoziotherapie.designer.cs +++ b/ReportImp/KetteReports/LeistungsnachweisSoziotherapie.designer.cs @@ -915,7 +915,7 @@ namespace KetteReports // fieldGroup // this.fieldGroup.DataMember = "Services"; - this.fieldGroup.Expression = "Iif([IsGroup], [Minutes] / 60, ?)"; + this.fieldGroup.Expression = "Iif([IsGroup], [Minutes] / 90, ?)"; this.fieldGroup.FieldType = DevExpress.XtraReports.UI.FieldType.Decimal; this.fieldGroup.Name = "fieldGroup"; // diff --git a/ReportImp/KetteReports/SoziotherapieRechnung.Designer.cs b/ReportImp/KetteReports/SoziotherapieRechnung.Designer.cs index 3ba7bf63e..0bb3b8057 100644 --- a/ReportImp/KetteReports/SoziotherapieRechnung.Designer.cs +++ b/ReportImp/KetteReports/SoziotherapieRechnung.Designer.cs @@ -37,7 +37,11 @@ namespace KetteReports this.topMarginBand1 = new DevExpress.XtraReports.UI.TopMarginBand(); this.xrPictureBox1 = new DevExpress.XtraReports.UI.XRPictureBox(); this.bottomMarginBand1 = new DevExpress.XtraReports.UI.BottomMarginBand(); + this.xrRichText1 = new DevExpress.XtraReports.UI.XRRichText(); this.Page1 = new DevExpress.XtraReports.UI.GroupHeaderBand(); + this.xrLabel1 = new DevExpress.XtraReports.UI.XRLabel(); + this.xrLabel13 = new DevExpress.XtraReports.UI.XRLabel(); + this.xrRichText2 = new DevExpress.XtraReports.UI.XRRichText(); this.xrTable2 = new DevExpress.XtraReports.UI.XRTable(); this.xrTableRow4 = new DevExpress.XtraReports.UI.XRTableRow(); this.xrTableCell16 = new DevExpress.XtraReports.UI.XRTableCell(); @@ -89,18 +93,14 @@ namespace KetteReports this.xrTableRow1 = new DevExpress.XtraReports.UI.XRTableRow(); this.xrTableCell1 = new DevExpress.XtraReports.UI.XRTableCell(); this.xrTableCell5 = new DevExpress.XtraReports.UI.XRTableCell(); - this.xrLabel13 = new DevExpress.XtraReports.UI.XRLabel(); - this.xrRichText2 = new DevExpress.XtraReports.UI.XRRichText(); - this.xrLabel1 = new DevExpress.XtraReports.UI.XRLabel(); - this.xrRichText1 = new DevExpress.XtraReports.UI.XRRichText(); this.bindingSource1 = new System.Windows.Forms.BindingSource(this.components); + ((System.ComponentModel.ISupportInitialize)(this.xrRichText1)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.xrRichText2)).BeginInit(); ((System.ComponentModel.ISupportInitialize)(this.xrTable2)).BeginInit(); ((System.ComponentModel.ISupportInitialize)(this.xrTable4)).BeginInit(); ((System.ComponentModel.ISupportInitialize)(this.xrTable6)).BeginInit(); ((System.ComponentModel.ISupportInitialize)(this.xrTable5)).BeginInit(); ((System.ComponentModel.ISupportInitialize)(this.xrTable1)).BeginInit(); - ((System.ComponentModel.ISupportInitialize)(this.xrRichText2)).BeginInit(); - ((System.ComponentModel.ISupportInitialize)(this.xrRichText1)).BeginInit(); ((System.ComponentModel.ISupportInitialize)(this.bindingSource1)).BeginInit(); ((System.ComponentModel.ISupportInitialize)(this)).BeginInit(); // @@ -148,6 +148,15 @@ namespace KetteReports this.bottomMarginBand1.Name = "bottomMarginBand1"; this.bottomMarginBand1.StylePriority.UseFont = false; // + // xrRichText1 + // + this.xrRichText1.Font = new DevExpress.Drawing.DXFont("Arial", 8F); + this.xrRichText1.LocationFloat = new DevExpress.Utils.PointFloat(0F, 3.999939F); + this.xrRichText1.Name = "xrRichText1"; + this.xrRichText1.SerializableRtfString = resources.GetString("xrRichText1.SerializableRtfString"); + this.xrRichText1.SizeF = new System.Drawing.SizeF(677F, 58.00001F); + this.xrRichText1.StylePriority.UseFont = false; + // // Page1 // this.Page1.BorderWidth = 2F; @@ -166,6 +175,49 @@ namespace KetteReports this.Page1.StylePriority.UseBorderWidth = false; this.Page1.StylePriority.UseFont = false; // + // xrLabel1 + // + this.xrLabel1.BackColor = System.Drawing.Color.Transparent; + this.xrLabel1.CanShrink = true; + this.xrLabel1.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] { + new DevExpress.XtraReports.UI.XRBinding("Text", null, "DebitorNumber")}); + this.xrLabel1.Font = new DevExpress.Drawing.DXFont("Calibri", 10F, DevExpress.Drawing.DXFontStyle.Bold); + this.xrLabel1.LocationFloat = new DevExpress.Utils.PointFloat(0F, 376.0767F); + this.xrLabel1.Multiline = true; + this.xrLabel1.Name = "xrLabel1"; + this.xrLabel1.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F); + this.xrLabel1.SizeF = new System.Drawing.SizeF(650.72F, 20F); + this.xrLabel1.StylePriority.UseBackColor = false; + this.xrLabel1.StylePriority.UseFont = false; + this.xrLabel1.TextFormatString = "Debitor: {0}"; + this.xrLabel1.WordWrap = false; + // + // xrLabel13 + // + this.xrLabel13.Borders = DevExpress.XtraPrinting.BorderSide.Bottom; + this.xrLabel13.BorderWidth = 1F; + this.xrLabel13.Font = new DevExpress.Drawing.DXFont("Arial", 7.5F, DevExpress.Drawing.DXFontStyle.Regular, DevExpress.Drawing.DXGraphicsUnit.Point, new DevExpress.Drawing.DXFontAdditionalProperty[] { + new DevExpress.Drawing.DXFontAdditionalProperty("GdiCharSet", ((byte)(0)))}); + this.xrLabel13.LocationFloat = new DevExpress.Utils.PointFloat(0F, 0F); + this.xrLabel13.Name = "xrLabel13"; + this.xrLabel13.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F); + this.xrLabel13.SizeF = new System.Drawing.SizeF(294.196F, 17.00003F); + this.xrLabel13.StylePriority.UseBorders = false; + this.xrLabel13.StylePriority.UseBorderWidth = false; + this.xrLabel13.StylePriority.UseFont = false; + this.xrLabel13.StylePriority.UseTextAlignment = false; + this.xrLabel13.Text = "Die Kette e. V. · Paffrather Str. 70 · 51465 Bergisch Gladbach"; + this.xrLabel13.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleLeft; + // + // xrRichText2 + // + this.xrRichText2.Font = new DevExpress.Drawing.DXFont("Arial", 8F); + this.xrRichText2.LocationFloat = new DevExpress.Utils.PointFloat(496.0409F, 0F); + this.xrRichText2.Name = "xrRichText2"; + this.xrRichText2.SerializableRtfString = resources.GetString("xrRichText2.SerializableRtfString"); + this.xrRichText2.SizeF = new System.Drawing.SizeF(180.9591F, 149.3851F); + this.xrRichText2.StylePriority.UseFont = false; + // // xrTable2 // this.xrTable2.Font = new DevExpress.Drawing.DXFont("Calibri", 9F); @@ -537,7 +589,7 @@ namespace KetteReports this.xrTableCell3.StylePriority.UseTextAlignment = false; this.xrTableCell3.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleLeft; this.xrTableCell3.TextFormatString = "{0:dd.MM.yyyy}"; - this.xrTableCell3.Weight = 0.49411074825218504D; + this.xrTableCell3.Weight = 0.44462999229268751D; // // xrTableCell40 // @@ -556,7 +608,7 @@ namespace KetteReports this.xrTableCell40.StylePriority.UseTextAlignment = false; this.xrTableCell40.Text = "Soziotherapie"; this.xrTableCell40.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleLeft; - this.xrTableCell40.Weight = 0.574668553042295D; + this.xrTableCell40.Weight = 0.52518812324829744D; // // xrTableCell42 // @@ -574,7 +626,7 @@ namespace KetteReports this.xrTableCell42.StylePriority.UsePadding = false; this.xrTableCell42.StylePriority.UseTextAlignment = false; this.xrTableCell42.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleLeft; - this.xrTableCell42.Weight = 0.79841694330105706D; + this.xrTableCell42.Weight = 0.73409337393754315D; // // xrTableCell20 // @@ -593,7 +645,7 @@ namespace KetteReports this.xrTableCell20.StylePriority.UseTextAlignment = false; this.xrTableCell20.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleRight; this.xrTableCell20.TextFormatString = "{0:0.##}"; - this.xrTableCell20.Weight = 0.23261646304723091D; + this.xrTableCell20.Weight = 0.27714776626755688D; // // xrTableCell44 // @@ -612,7 +664,7 @@ namespace KetteReports this.xrTableCell44.StylePriority.UseTextAlignment = false; this.xrTableCell44.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleRight; this.xrTableCell44.TextFormatString = "{0:}"; - this.xrTableCell44.Weight = 0.256445220290948D; + this.xrTableCell44.Weight = 0.37519867218763103D; // // xrTableCell45 // @@ -702,7 +754,7 @@ namespace KetteReports this.xrTableCell2.StylePriority.UseTextAlignment = false; this.xrTableCell2.Text = "Datum"; this.xrTableCell2.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleLeft; - this.xrTableCell2.Weight = 0.54176126036459427D; + this.xrTableCell2.Weight = 0.48750891297402821D; // // xrTableCell32 // @@ -722,7 +774,7 @@ namespace KetteReports this.xrTableCell32.StylePriority.UseTextAlignment = false; this.xrTableCell32.Text = "Positionsnummer"; this.xrTableCell32.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleLeft; - this.xrTableCell32.Weight = 0.63008808839302122D; + this.xrTableCell32.Weight = 0.57583578073801267D; // // xrTableCell37 // @@ -742,7 +794,7 @@ namespace KetteReports this.xrTableCell37.StylePriority.UseTextAlignment = false; this.xrTableCell37.Text = "Bezeichnung"; this.xrTableCell37.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleLeft; - this.xrTableCell37.Weight = 0.87541493837556028D; + this.xrTableCell37.Weight = 0.80488738346229316D; // // xrTableCell14 // @@ -762,7 +814,7 @@ namespace KetteReports this.xrTableCell14.StylePriority.UseTextAlignment = false; this.xrTableCell14.Text = "Menge"; this.xrTableCell14.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleRight; - this.xrTableCell14.Weight = 0.25504874611087D; + this.xrTableCell14.Weight = 0.30387512365456576D; // // xrTableCell33 // @@ -782,7 +834,7 @@ namespace KetteReports this.xrTableCell33.StylePriority.UseTextAlignment = false; this.xrTableCell33.Text = "Einheit"; this.xrTableCell33.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleRight; - this.xrTableCell33.Weight = 0.28117614915144379D; + this.xrTableCell33.Weight = 0.41138198156658973D; // // xrTableCell36 // @@ -884,58 +936,6 @@ namespace KetteReports this.xrTableCell5.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleRight; this.xrTableCell5.Weight = 0.40327538447920763D; // - // xrLabel13 - // - this.xrLabel13.Borders = DevExpress.XtraPrinting.BorderSide.Bottom; - this.xrLabel13.BorderWidth = 1F; - this.xrLabel13.Font = new DevExpress.Drawing.DXFont("Arial", 7.5F, DevExpress.Drawing.DXFontStyle.Regular, DevExpress.Drawing.DXGraphicsUnit.Point, new DevExpress.Drawing.DXFontAdditionalProperty[] { - new DevExpress.Drawing.DXFontAdditionalProperty("GdiCharSet", ((byte)(0)))}); - this.xrLabel13.LocationFloat = new DevExpress.Utils.PointFloat(0F, 0F); - this.xrLabel13.Name = "xrLabel13"; - this.xrLabel13.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F); - this.xrLabel13.SizeF = new System.Drawing.SizeF(294.196F, 17.00003F); - this.xrLabel13.StylePriority.UseBorders = false; - this.xrLabel13.StylePriority.UseBorderWidth = false; - this.xrLabel13.StylePriority.UseFont = false; - this.xrLabel13.StylePriority.UseTextAlignment = false; - this.xrLabel13.Text = "Die Kette e. V. · Paffrather Str. 70 · 51465 Bergisch Gladbach"; - this.xrLabel13.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleLeft; - // - // xrRichText2 - // - this.xrRichText2.Font = new DevExpress.Drawing.DXFont("Arial", 8F); - this.xrRichText2.LocationFloat = new DevExpress.Utils.PointFloat(496.0409F, 0F); - this.xrRichText2.Name = "xrRichText2"; - this.xrRichText2.SerializableRtfString = resources.GetString("xrRichText2.SerializableRtfString"); - this.xrRichText2.SizeF = new System.Drawing.SizeF(180.9591F, 149.3851F); - this.xrRichText2.StylePriority.UseFont = false; - // - // xrLabel1 - // - this.xrLabel1.BackColor = System.Drawing.Color.Transparent; - this.xrLabel1.CanShrink = true; - this.xrLabel1.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] { - new DevExpress.XtraReports.UI.XRBinding("Text", null, "DebitorNumber")}); - this.xrLabel1.Font = new DevExpress.Drawing.DXFont("Calibri", 10F, DevExpress.Drawing.DXFontStyle.Bold); - this.xrLabel1.LocationFloat = new DevExpress.Utils.PointFloat(0F, 376.0767F); - this.xrLabel1.Multiline = true; - this.xrLabel1.Name = "xrLabel1"; - this.xrLabel1.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F); - this.xrLabel1.SizeF = new System.Drawing.SizeF(650.72F, 20F); - this.xrLabel1.StylePriority.UseBackColor = false; - this.xrLabel1.StylePriority.UseFont = false; - this.xrLabel1.TextFormatString = "Debitor: {0}"; - this.xrLabel1.WordWrap = false; - // - // xrRichText1 - // - this.xrRichText1.Font = new DevExpress.Drawing.DXFont("Arial", 8F); - this.xrRichText1.LocationFloat = new DevExpress.Utils.PointFloat(0F, 3.999939F); - this.xrRichText1.Name = "xrRichText1"; - this.xrRichText1.SerializableRtfString = resources.GetString("xrRichText1.SerializableRtfString"); - this.xrRichText1.SizeF = new System.Drawing.SizeF(677F, 58.00001F); - this.xrRichText1.StylePriority.UseFont = false; - // // bindingSource1 // this.bindingSource1.DataSource = typeof(BeWo.Report.ReportObjects.ServiceInvoiceRO); @@ -962,13 +962,13 @@ namespace KetteReports this.Version = "23.2"; xrWatermark1.Id = "Watermark1"; this.Watermarks.Add(xrWatermark1); + ((System.ComponentModel.ISupportInitialize)(this.xrRichText1)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.xrRichText2)).EndInit(); ((System.ComponentModel.ISupportInitialize)(this.xrTable2)).EndInit(); ((System.ComponentModel.ISupportInitialize)(this.xrTable4)).EndInit(); ((System.ComponentModel.ISupportInitialize)(this.xrTable6)).EndInit(); ((System.ComponentModel.ISupportInitialize)(this.xrTable5)).EndInit(); ((System.ComponentModel.ISupportInitialize)(this.xrTable1)).EndInit(); - ((System.ComponentModel.ISupportInitialize)(this.xrRichText2)).EndInit(); - ((System.ComponentModel.ISupportInitialize)(this.xrRichText1)).EndInit(); ((System.ComponentModel.ISupportInitialize)(this.bindingSource1)).EndInit(); ((System.ComponentModel.ISupportInitialize)(this)).EndInit(); diff --git a/ReportImp/KetteReports/SoziotherapieRechnung.cs b/ReportImp/KetteReports/SoziotherapieRechnung.cs index 36038cb68..38d8167f4 100644 --- a/ReportImp/KetteReports/SoziotherapieRechnung.cs +++ b/ReportImp/KetteReports/SoziotherapieRechnung.cs @@ -85,12 +85,15 @@ namespace KetteReports } // Einheit setzen - ii.HourlyRateString = "Stunden"; - if (ii.ServiceDescription != null && ii.ServiceDescription.ToLower().Contains("hausbesuchspauschale")) + ii.HourlyRateString = "Stunde(n)"; + if (ii.ServiceDescription != null) { - ii.HourlyRateString = "Anzahl"; + if (ii.ServiceDescription.ToLower().Contains("hausbesuchspauschale")) + ii.HourlyRateString = "Anzahl"; + else if (ii.ServiceDescription.ToLower().Contains("gruppe")) + ii.HourlyRateString = "Einheit(en)"; } - } + } } }