From 5206ae0cf16c94fd27da90d3d38cd2255e67ea38 Mon Sep 17 00:00:00 2001 From: Christian Date: Wed, 8 Nov 2023 00:34:17 +0100 Subject: [PATCH] =?UTF-8?q?Pr=C3=BCfen=20von=20Rechte=20Version?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Data/Access/SearchDAO.cs | 16 + Data/Security/UserRightHelper.cs | 97 +- Model/Changes_alle_fuer_neue_db.txt | 6 + Report/DefaultReportCreator.cs | 25 +- .../AidshilfeDortmund.csproj | 10 + .../CustomSettlementInvoiceCreation.cs | 34 +- .../AidshilfeDortmund/Finanzauswertung.cs | 79 ++ .../Finanzauswertung.designer.cs | 1005 +++++++++++++++++ .../AidshilfeDortmund/Finanzauswertung.resx | 123 ++ ...CustomMitarbeiterstundenkontoBerechnung.cs | 11 +- .../LebenshilfeBadKreuznach.csproj | 4 - .../Quittierungsbeleg.cs | 2 - .../Quittierungsbeleg_old.cs | 2 - .../CustomServiceRecordStatisticFactory.cs | 24 +- .../Validation/ServiceRecordValidator.cs | 12 +- .../Service/CustomVertretungsManager.cs | 62 +- Service/Plugins/CustomerService.cs | 282 ++++- Service/Plugins/PluginLoader.cs | 6 +- .../Plugins/ServiceRecordStatisticFactory.cs | 26 +- Service/Plugins/UserService.cs | 66 +- .../CustomerServiceImp.cs | 137 +-- .../ServiceImplementations/UserServiceImp.cs | 24 +- 22 files changed, 1789 insertions(+), 264 deletions(-) create mode 100644 ReportImp/AidshilfeDortmund/Finanzauswertung.cs create mode 100644 ReportImp/AidshilfeDortmund/Finanzauswertung.designer.cs create mode 100644 ReportImp/AidshilfeDortmund/Finanzauswertung.resx diff --git a/Data/Access/SearchDAO.cs b/Data/Access/SearchDAO.cs index d421578cc..a209601f7 100644 --- a/Data/Access/SearchDAO.cs +++ b/Data/Access/SearchDAO.cs @@ -4581,6 +4581,22 @@ namespace BeWo.Data.Access return q.List(); } + public IList FindCustomerOid2Persons(IList personOids) + { + String oidList = ""; + foreach (var oid in personOids) + { + if (oidList.Length > 0) + { + oidList += ","; + } + oidList += String.Format("{0}", oid); + } + + return GetSqlResult("SELECT oid,personoid,customeroid,istfamilie FROM customer2person where personoid in (" + oidList + ")"); + + } + public List FindActiveAppointmentsForCustomers(List customerOids, DateTime startDate, DateTime endDate) { var customerOidSqlString = string.Empty; diff --git a/Data/Security/UserRightHelper.cs b/Data/Security/UserRightHelper.cs index 644be3aa0..e47d1aa11 100644 --- a/Data/Security/UserRightHelper.cs +++ b/Data/Security/UserRightHelper.cs @@ -1,5 +1,7 @@ -using BeWo.Data.Entities; +using BeWo.Data.Access; +using BeWo.Data.Entities; using BS.Shared; +using BS.Shared.DataContracts; using System; using System.Collections.Generic; using System.Linq; @@ -52,5 +54,98 @@ namespace BeWo.Data.Security return rights; } + + public static String GetBeWoVersion() + { + return GetBeWoVersion(GetLoggedInUser().LoginName); + } + + public static String GetBeWoVersion(String loginName) + { + var lastLogins = DAOFactory.SearchDAO.FindLastLogins(loginName, 1).ToList(); + if (lastLogins != null && lastLogins.Count > 0) + { + var login = lastLogins[0]; + if (!String.IsNullOrEmpty(login.Referrer)) + { + //var test = "MobilClient, Version: Unbekannt"; + //var test2 = "BeWoClient, Version: Microsoft Windows NT 6.2.9200.0;CLRVersion=4.0.30319.42000;BeWoVersion=Version 3.16;IsNet45OrNewer=True"; + + var str = login.Referrer; + + var start = str.IndexOf("BeWoVersion="); + if (start > 0) + { + var stop = str.IndexOf(";", start); + if (stop > start) + { + var version = str.Substring(start + 12, stop - start - 12); + version = version.Replace("Version", "").Trim(); + + return version; + } + } + } + } + return ""; + } + + public static void CheckRightVersion(UserDC user) + { + var version = GetBeWoVersion(GetLoggedInUser().LoginName); + CheckRightVersion(version, user); + } + + + public static void CheckRightVersion(UserGroupDC groupDC) + { + var version = GetBeWoVersion(GetLoggedInUser().LoginName); + CheckRightVersion(version, groupDC); + } + + public static void CheckRightVersion(String version, UserDC userDC) + { + foreach (var ug in userDC.UserGroups) + { + CheckRightVersion(version, ug); + } + + } + + public static void CheckRightVersion(String version, UserGroupDC ug) + { + var allrights = ug.Rights; + ug.Rights = new List(); + foreach (var r in allrights) + { + if (IsCorrectVersion(r, version)) + { + ug.Rights.Add(r); + } + } + + } + + public static bool IsCorrectVersion(UserRightType r, string version) + { + var rightVersion = GetRightVersion(r); + + if (version.CompareTo(rightVersion) < 0) + { + return false; + } + return true; + } + + public static String GetRightVersion(UserRightType r) + { + if (r == UserRightType.Customer_ViewBetreuung || r == UserRightType.Customer_ViewAbsenceTimes) + { + return "3.17"; + } + return "1.0"; + } + + } } diff --git a/Model/Changes_alle_fuer_neue_db.txt b/Model/Changes_alle_fuer_neue_db.txt index aca6c6551..b74185569 100644 --- a/Model/Changes_alle_fuer_neue_db.txt +++ b/Model/Changes_alle_fuer_neue_db.txt @@ -970,3 +970,9 @@ ALTER TABLE `AbsenceReason` ADD COLUMN `Sichtbarkeit` int NULL; ALTER TABLE `feiertag` ADD COLUMN `OrganisationOid` BIGINT NULL DEFAULT NULL; + +ALTER TABLE servicerecordhistory ADD COLUMN `CustomerConfirmationReceiptSignatureStateType` int DEFAULT 0; +ALTER TABLE servicerecordhistory ADD COLUMN `EmployeeConfirmationReceiptSignatureStateType` int DEFAULT 0; +ALTER TABLE servicerecordhistory ADD COLUMN `ServiceRecordSignatureStateType` int DEFAULT 0; + +ALTER TABLE servicerecordhistory ADD COLUMN `CustomerConfirmationReceiptSignatureOid` BIGINT(18) DEFAULT NULL, ADD COLUMN `EmployeeConfirmationReceiptSignatureOid` BIGINT(18) DEFAULT NULL; \ No newline at end of file diff --git a/Report/DefaultReportCreator.cs b/Report/DefaultReportCreator.cs index ad0e9f416..bc04b3bc5 100644 --- a/Report/DefaultReportCreator.cs +++ b/Report/DefaultReportCreator.cs @@ -1206,7 +1206,8 @@ namespace BeWo.Report public override XtraReport CreateInvoiceListReport(List oids) { - XtraReport master = null; + XtraReport master = new XtraReport(); + master.CreateDocument(); var ibList = DAOFactory.GenericDAO.LoadByIDs(oids); @@ -1231,14 +1232,24 @@ namespace BeWo.Report { report.CreateDocument(); } - if (master == null) + var wm = report.Watermark; + bool firstpage = true; + foreach (var item in report.Pages) { - master = report; - } - else - { - master.Pages.AddRange(report.Pages); + var page2add = item as DevExpress.XtraPrinting.Page; + if (page2add != null) + { + + master.Pages.Add(page2add); + if (wm != null && firstpage) + { + var newpage = master.Pages[master.Pages.Count - 1]; + newpage.AssignWatermark(wm); + } + } + firstpage = false; } + //master.Pages.AddRange(report.Pages); } } diff --git a/ReportImp/AidshilfeDortmund/AidshilfeDortmund.csproj b/ReportImp/AidshilfeDortmund/AidshilfeDortmund.csproj index 0ce19bb4b..d08ad73b0 100644 --- a/ReportImp/AidshilfeDortmund/AidshilfeDortmund.csproj +++ b/ReportImp/AidshilfeDortmund/AidshilfeDortmund.csproj @@ -63,6 +63,12 @@ + + Component + + + Finanzauswertung.cs + Component @@ -110,6 +116,10 @@ + + Finanzauswertung.cs + Designer + Quittierungsbeleg.cs diff --git a/ReportImp/AidshilfeDortmund/CustomSettlementInvoiceCreation.cs b/ReportImp/AidshilfeDortmund/CustomSettlementInvoiceCreation.cs index 0bea20eac..09649b987 100644 --- a/ReportImp/AidshilfeDortmund/CustomSettlementInvoiceCreation.cs +++ b/ReportImp/AidshilfeDortmund/CustomSettlementInvoiceCreation.cs @@ -13,28 +13,28 @@ namespace BeWo.AidshilfeDortmund { - public override List CreateInvoiceItems(Settlement2DC si, IList apList, bool schneideBeiMaxAb) - { - var items = base.CreateInvoiceItems(si, apList, true); + //public override List CreateInvoiceItems(Settlement2DC si, IList apList, bool schneideBeiMaxAb) + //{ + // var items = base.CreateInvoiceItems(si, apList, true); - decimal hours = 0; - foreach (var ap in apList) - { - hours += ap.RecordedMinutes; - } - if (si.RateFactor.HasValue) - { - hours *= (100 + si.RateFactor.Value) / 100; - } - hours /= 60; + // decimal hours = 0; + // foreach (var ap in apList) + // { + // hours += ap.RecordedMinutes; + // } + // if (si.RateFactor.HasValue) + // { + // hours *= (100 + si.RateFactor.Value) / 100; + // } + // hours /= 60; - si.RecordedBillableFLSNetto = hours; - si.RecordedBillableFLSBrutto = si.RecordedBillableFLSNetto; + // si.RecordedBillableFLSNetto = hours; + // si.RecordedBillableFLSBrutto = si.RecordedBillableFLSNetto; - return items; - } + // return items; + //} //public override List CreateInvoiceItems(Settlement2DC si, IList apList, bool schneideBeiMaxAb) //{ // List iiList = new List(); diff --git a/ReportImp/AidshilfeDortmund/Finanzauswertung.cs b/ReportImp/AidshilfeDortmund/Finanzauswertung.cs new file mode 100644 index 000000000..229018a37 --- /dev/null +++ b/ReportImp/AidshilfeDortmund/Finanzauswertung.cs @@ -0,0 +1,79 @@ +using System; +using BeWo.Report; +using BeWo.Report.ReportObjects; + +namespace AidshilfeDortmund +{ + public partial class Finanzauswertung : DevExpress.XtraReports.UI.XtraReport, IBeWoReport + { + public Finanzauswertung() + { + InitializeComponent(); + } + + public void SetReportDataSource(FinanceRO pRO) + { + pRO.CalculateBillableAmountInReportTimeSpan(); + pRO.CalculatePaidAmountInReportTimeSpan(); + + if (pRO.ReportStartDate.HasValue && pRO.ReportEndDate.HasValue) + { + DateTime start = pRO.ReportStartDate.Value; + DateTime end = pRO.ReportEndDate.Value; + + if (start.Year == end.Year && start.Month == end.Month && start.Day == 1 && + end.Day == DateTime.DaysInMonth(end.Year, end.Month)) + { + lblTitel.Text = String.Format("Finanzauswertung {0:MMMM yyyy}", start); + cellBewilligtImZeitraumHeader.Text = String.Format("bewilligte FLS {0:MMMM}", start); + cellGeleistetImZeitraumHeader.Text = String.Format("geleistete Std. {0:MMMM}", start); + cellFehlkontakteHeader.Text = String.Format("Fehl-\nkontakte {0:MMMM}", start); + } + else + { + lblTitel.Text = String.Format("Finanzauswertung {0:dd.MM.yyyy}-{1:dd.MM.yyyy}", start, end); + cellBewilligtImZeitraumHeader.Text = String.Format("bewilligte FLS {0:dd.MM.yyyy}-{1:dd.MM.yyyy}", start, end); + cellGeleistetImZeitraumHeader.Text = String.Format("geleistete Std. {0:dd.MM.yyyy}-{1:dd.MM.yyyy}", start, end); + //cellFehlkontakteHeader.Text = String.Format("Fehl-\nkontakte {0:dd.MM.yyyy}-{1:dd.MM.yyyy}", start, end); + } + if (pRO.RateFactor.HasValue) + { + cellRateFactorHeader.Text = String.Format("geleistete Std. x {0:0.##}", pRO.RateFactor); + } + else + { + //cellRateFactorHeader.Visible = false; + //cellRateFactor.Visible = false; + } + } + else + { + cellBewilligtImZeitraumHeader.Visible = false; + cellBewilligteFLSImBereich.Visible = false; + cellGeleistetImBereich.Visible = false; + cellGeleistetImZeitraumHeader.Visible = false; + cellRateFactorHeader.Visible = false; + cellRateFactor.Visible = false; + } + + if (pRO.GruppierungLeistungskategorie && pRO.SupportConceptFinanceList != null) + { + GroupHeader1.Visible = true; + GroupFooter1.Visible = true; + foreach (var scRo in pRO.SupportConceptFinanceList) + { + if (String.IsNullOrEmpty(scRo.Leistungskategorie)) + { + scRo.GruppierungsKategorie = " "; + } + else + { + scRo.GruppierungsKategorie = String.Format("Leistungskategorie {0}", scRo.Leistungskategorie); + } + } + } + + this.bindingSource1.DataSource = pRO; + } + } +} diff --git a/ReportImp/AidshilfeDortmund/Finanzauswertung.designer.cs b/ReportImp/AidshilfeDortmund/Finanzauswertung.designer.cs new file mode 100644 index 000000000..82298f0ae --- /dev/null +++ b/ReportImp/AidshilfeDortmund/Finanzauswertung.designer.cs @@ -0,0 +1,1005 @@ +using BeWo.Report.ReportObjects; +namespace AidshilfeDortmund +{ + partial class Finanzauswertung + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + this.components = new System.ComponentModel.Container(); + DevExpress.XtraReports.UI.XRSummary xrSummary2 = new DevExpress.XtraReports.UI.XRSummary(); + DevExpress.XtraReports.UI.XRSummary xrSummary3 = new DevExpress.XtraReports.UI.XRSummary(); + DevExpress.XtraReports.UI.XRSummary xrSummary4 = new DevExpress.XtraReports.UI.XRSummary(); + DevExpress.XtraReports.UI.XRSummary xrSummary5 = new DevExpress.XtraReports.UI.XRSummary(); + DevExpress.XtraReports.UI.XRSummary xrSummary6 = new DevExpress.XtraReports.UI.XRSummary(); + DevExpress.XtraReports.UI.XRSummary xrSummary7 = new DevExpress.XtraReports.UI.XRSummary(); + DevExpress.XtraReports.UI.XRSummary xrSummary9 = new DevExpress.XtraReports.UI.XRSummary(); + DevExpress.XtraReports.UI.XRSummary xrSummary10 = new DevExpress.XtraReports.UI.XRSummary(); + DevExpress.XtraReports.UI.XRSummary xrSummary11 = new DevExpress.XtraReports.UI.XRSummary(); + DevExpress.XtraReports.UI.XRSummary xrSummary12 = new DevExpress.XtraReports.UI.XRSummary(); + DevExpress.XtraReports.UI.XRSummary xrSummary13 = new DevExpress.XtraReports.UI.XRSummary(); + DevExpress.XtraReports.UI.XRSummary xrSummary14 = new DevExpress.XtraReports.UI.XRSummary(); + DevExpress.XtraReports.UI.XRSummary xrSummary15 = new DevExpress.XtraReports.UI.XRSummary(); + DevExpress.XtraReports.UI.XRSummary xrSummary8 = new DevExpress.XtraReports.UI.XRSummary(); + DevExpress.XtraReports.UI.XRSummary xrSummary16 = new DevExpress.XtraReports.UI.XRSummary(); + DevExpress.XtraReports.UI.XRSummary xrSummary1 = new DevExpress.XtraReports.UI.XRSummary(); + this.Detail = new DevExpress.XtraReports.UI.DetailBand(); + this.Detail1 = new DevExpress.XtraReports.UI.DetailBand(); + this.xrTable2 = new DevExpress.XtraReports.UI.XRTable(); + this.xrTableRow2 = new DevExpress.XtraReports.UI.XRTableRow(); + this.xrTableCell6 = new DevExpress.XtraReports.UI.XRTableCell(); + this.xrTableCell7 = new DevExpress.XtraReports.UI.XRTableCell(); + this.xrTableCell14 = new DevExpress.XtraReports.UI.XRTableCell(); + this.xrTableCell12 = new DevExpress.XtraReports.UI.XRTableCell(); + this.cellBewilligteFLSImBereich = new DevExpress.XtraReports.UI.XRTableCell(); + this.cellGeleistetImBereich = new DevExpress.XtraReports.UI.XRTableCell(); + this.cellRateFactor = new DevExpress.XtraReports.UI.XRTableCell(); + this.xrTableCell29 = new DevExpress.XtraReports.UI.XRTableCell(); + this.xrTableCell26 = new DevExpress.XtraReports.UI.XRTableCell(); + this.lblTitel = new DevExpress.XtraReports.UI.XRLabel(); + this.DetailReport = new DevExpress.XtraReports.UI.DetailReportBand(); + this.GroupFooter1 = new DevExpress.XtraReports.UI.GroupFooterBand(); + this.xrTable4 = new DevExpress.XtraReports.UI.XRTable(); + this.xrTableRow4 = new DevExpress.XtraReports.UI.XRTableRow(); + this.xrTableCell28 = new DevExpress.XtraReports.UI.XRTableCell(); + this.xrTableCell31 = new DevExpress.XtraReports.UI.XRTableCell(); + this.xrTableCell36 = new DevExpress.XtraReports.UI.XRTableCell(); + this.xrTableCell37 = new DevExpress.XtraReports.UI.XRTableCell(); + this.xrTableCell38 = new DevExpress.XtraReports.UI.XRTableCell(); + this.xrTableCell39 = new DevExpress.XtraReports.UI.XRTableCell(); + this.xrTableCell40 = new DevExpress.XtraReports.UI.XRTableCell(); + this.xrTableCell41 = new DevExpress.XtraReports.UI.XRTableCell(); + this.GroupHeader2 = new DevExpress.XtraReports.UI.GroupHeaderBand(); + this.xrTable1 = new DevExpress.XtraReports.UI.XRTable(); + this.xrTableRow1 = new DevExpress.XtraReports.UI.XRTableRow(); + this.xrTableCell1 = new DevExpress.XtraReports.UI.XRTableCell(); + this.xrTableCell2 = new DevExpress.XtraReports.UI.XRTableCell(); + this.xrTableCell13 = new DevExpress.XtraReports.UI.XRTableCell(); + this.xrTableCell11 = new DevExpress.XtraReports.UI.XRTableCell(); + this.cellBewilligtImZeitraumHeader = new DevExpress.XtraReports.UI.XRTableCell(); + this.cellGeleistetImZeitraumHeader = new DevExpress.XtraReports.UI.XRTableCell(); + this.cellRateFactorHeader = new DevExpress.XtraReports.UI.XRTableCell(); + this.cellFehlkontakteHeader = new DevExpress.XtraReports.UI.XRTableCell(); + this.xrTableCell25 = new DevExpress.XtraReports.UI.XRTableCell(); + this.GroupFooter2 = new DevExpress.XtraReports.UI.GroupFooterBand(); + this.GroupHeader1 = new DevExpress.XtraReports.UI.GroupHeaderBand(); + this.xrLabel1 = new DevExpress.XtraReports.UI.XRLabel(); + this.ReportHeader = new DevExpress.XtraReports.UI.ReportHeaderBand(); + this.pageFooterBand1 = new DevExpress.XtraReports.UI.PageFooterBand(); + this.xrPageInfo2 = new DevExpress.XtraReports.UI.XRPageInfo(); + this.xrPageInfo1 = new DevExpress.XtraReports.UI.XRPageInfo(); + this.Title = new DevExpress.XtraReports.UI.XRControlStyle(); + this.FieldCaption = new DevExpress.XtraReports.UI.XRControlStyle(); + this.PageInfo = new DevExpress.XtraReports.UI.XRControlStyle(); + this.DataField = new DevExpress.XtraReports.UI.XRControlStyle(); + this.fieldFLS = new DevExpress.XtraReports.UI.CalculatedField(); + this.topMarginBand1 = new DevExpress.XtraReports.UI.TopMarginBand(); + this.bottomMarginBand1 = new DevExpress.XtraReports.UI.BottomMarginBand(); + this.ReportFooter = new DevExpress.XtraReports.UI.ReportFooterBand(); + this.xrTable3 = new DevExpress.XtraReports.UI.XRTable(); + this.xrTableRow3 = new DevExpress.XtraReports.UI.XRTableRow(); + this.xrTableCell15 = new DevExpress.XtraReports.UI.XRTableCell(); + this.xrTableCell16 = new DevExpress.XtraReports.UI.XRTableCell(); + this.xrTableCell20 = new DevExpress.XtraReports.UI.XRTableCell(); + this.xrTableCell21 = new DevExpress.XtraReports.UI.XRTableCell(); + this.xrTableCell22 = new DevExpress.XtraReports.UI.XRTableCell(); + this.xrTableCell23 = new DevExpress.XtraReports.UI.XRTableCell(); + this.xrTableCell24 = new DevExpress.XtraReports.UI.XRTableCell(); + this.xrTableCell30 = new DevExpress.XtraReports.UI.XRTableCell(); + this.xrTableCell27 = new DevExpress.XtraReports.UI.XRTableCell(); + this.xrTableCell3 = new DevExpress.XtraReports.UI.XRTableCell(); + this.xrTableCell5 = new DevExpress.XtraReports.UI.XRTableCell(); + this.xrTableCell8 = new DevExpress.XtraReports.UI.XRTableCell(); + this.xrTableCell10 = new DevExpress.XtraReports.UI.XRTableCell(); + this.bindingSource1 = new System.Windows.Forms.BindingSource(this.components); + this.xrTableCell35 = new DevExpress.XtraReports.UI.XRTableCell(); + ((System.ComponentModel.ISupportInitialize)(this.xrTable2)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.xrTable4)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.xrTable1)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.xrTable3)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.bindingSource1)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this)).BeginInit(); + // + // Detail + // + this.Detail.Expanded = false; + this.Detail.HeightF = 0F; + this.Detail.Name = "Detail"; + this.Detail.Padding = new DevExpress.XtraPrinting.PaddingInfo(0, 0, 0, 0, 100F); + this.Detail.TextAlignment = DevExpress.XtraPrinting.TextAlignment.TopLeft; + // + // Detail1 + // + this.Detail1.Controls.AddRange(new DevExpress.XtraReports.UI.XRControl[] { + this.xrTable2}); + this.Detail1.Font = new System.Drawing.Font("Arial", 9F); + this.Detail1.HeightF = 25F; + this.Detail1.KeepTogetherWithDetailReports = true; + this.Detail1.Name = "Detail1"; + this.Detail1.StylePriority.UseFont = false; + // + // xrTable2 + // + this.xrTable2.Borders = ((DevExpress.XtraPrinting.BorderSide)(((DevExpress.XtraPrinting.BorderSide.Left | DevExpress.XtraPrinting.BorderSide.Right) + | DevExpress.XtraPrinting.BorderSide.Bottom))); + this.xrTable2.LocationFloat = new DevExpress.Utils.PointFloat(0F, 0F); + this.xrTable2.Name = "xrTable2"; + this.xrTable2.Padding = new DevExpress.XtraPrinting.PaddingInfo(3, 3, 0, 0, 100F); + this.xrTable2.Rows.AddRange(new DevExpress.XtraReports.UI.XRTableRow[] { + this.xrTableRow2}); + this.xrTable2.SizeF = new System.Drawing.SizeF(1020F, 25F); + this.xrTable2.StylePriority.UseBorders = false; + this.xrTable2.StylePriority.UseFont = false; + this.xrTable2.StylePriority.UsePadding = false; + this.xrTable2.StylePriority.UseTextAlignment = false; + this.xrTable2.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleLeft; + // + // xrTableRow2 + // + this.xrTableRow2.Cells.AddRange(new DevExpress.XtraReports.UI.XRTableCell[] { + this.xrTableCell6, + this.xrTableCell7, + this.xrTableCell14, + this.xrTableCell12, + this.cellBewilligteFLSImBereich, + this.cellGeleistetImBereich, + this.cellRateFactor, + this.xrTableCell29, + this.xrTableCell26, + this.xrTableCell5}); + this.xrTableRow2.Name = "xrTableRow2"; + this.xrTableRow2.Weight = 1D; + // + // xrTableCell6 + // + this.xrTableCell6.Multiline = true; + this.xrTableCell6.Name = "xrTableCell6"; + this.xrTableCell6.Text = "[CustomerName]\r\n[SupportConceptTimeSpanString]"; + this.xrTableCell6.Weight = 0.75332348006297656D; + // + // xrTableCell7 + // + this.xrTableCell7.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] { + new DevExpress.XtraReports.UI.XRBinding("Text", null, "SupportConceptFinanceList.CostBearerName")}); + this.xrTableCell7.Name = "xrTableCell7"; + this.xrTableCell7.StylePriority.UseTextAlignment = false; + this.xrTableCell7.Text = "Mitarbeiter/in"; + this.xrTableCell7.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleLeft; + this.xrTableCell7.Weight = 0.5317577529262556D; + // + // xrTableCell14 + // + this.xrTableCell14.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] { + new DevExpress.XtraReports.UI.XRBinding("Text", null, "SupportConceptFinanceList.ApprovedHours", "{0:0.00}")}); + this.xrTableCell14.Name = "xrTableCell14"; + this.xrTableCell14.StylePriority.UseTextAlignment = false; + this.xrTableCell14.Text = "xrTableCell14"; + this.xrTableCell14.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleRight; + this.xrTableCell14.Weight = 0.39881831795196993D; + // + // xrTableCell12 + // + this.xrTableCell12.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] { + new DevExpress.XtraReports.UI.XRBinding("Text", null, "SupportConceptFinanceList.BillableHours", "{0:0.00}")}); + this.xrTableCell12.Name = "xrTableCell12"; + this.xrTableCell12.StylePriority.UseTextAlignment = false; + this.xrTableCell12.Text = "xrTableCell12"; + this.xrTableCell12.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleRight; + this.xrTableCell12.Weight = 0.39881831616420438D; + // + // cellBewilligteFLSImBereich + // + this.cellBewilligteFLSImBereich.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] { + new DevExpress.XtraReports.UI.XRBinding("Text", null, "SupportConceptFinanceList.ApprovedHoursInReportTimeSpan", "{0:0.00}")}); + this.cellBewilligteFLSImBereich.Name = "cellBewilligteFLSImBereich"; + this.cellBewilligteFLSImBereich.StylePriority.UseTextAlignment = false; + this.cellBewilligteFLSImBereich.Text = "cellBewilligteFLSImBereich"; + this.cellBewilligteFLSImBereich.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleRight; + this.cellBewilligteFLSImBereich.Weight = 0.39881831603618456D; + // + // cellGeleistetImBereich + // + this.cellGeleistetImBereich.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] { + new DevExpress.XtraReports.UI.XRBinding("Text", null, "SupportConceptFinanceList.StundenNichtFehlkontakteInReportTimeSpan", "{0:0.00}")}); + this.cellGeleistetImBereich.Name = "cellGeleistetImBereich"; + this.cellGeleistetImBereich.StylePriority.UseTextAlignment = false; + this.cellGeleistetImBereich.Text = "cellGeleistetImBereich"; + this.cellGeleistetImBereich.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleRight; + this.cellGeleistetImBereich.Weight = 0.39881831600427159D; + // + // cellRateFactor + // + this.cellRateFactor.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] { + new DevExpress.XtraReports.UI.XRBinding("Text", null, "SupportConceptFinanceList.BillableHoursInReportTimeSpanWithFactor", "{0:0.00}")}); + this.cellRateFactor.Name = "cellRateFactor"; + this.cellRateFactor.StylePriority.UseTextAlignment = false; + this.cellRateFactor.Text = "cellRateFactor"; + this.cellRateFactor.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleRight; + this.cellRateFactor.Weight = 0.39881831600427159D; + // + // xrTableCell29 + // + this.xrTableCell29.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] { + new DevExpress.XtraReports.UI.XRBinding("Text", null, "SupportConceptFinanceList.StundenFehlkontakteInReportTimeSpan", "{0:0.00}")}); + this.xrTableCell29.Name = "xrTableCell29"; + this.xrTableCell29.StylePriority.UseTextAlignment = false; + this.xrTableCell29.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleRight; + this.xrTableCell29.Weight = 0.39881831598953088D; + // + // xrTableCell26 + // + this.xrTableCell26.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] { + new DevExpress.XtraReports.UI.XRBinding("Text", null, "SupportConceptFinanceList.BillableAmountInReportTimeSpan", "{0:c}")}); + this.xrTableCell26.Name = "xrTableCell26"; + this.xrTableCell26.StylePriority.UseTextAlignment = false; + this.xrTableCell26.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleRight; + this.xrTableCell26.Weight = 0.39881831598953088D; + // + // lblTitel + // + this.lblTitel.Font = new System.Drawing.Font("Arial", 12F, System.Drawing.FontStyle.Bold); + this.lblTitel.LocationFloat = new DevExpress.Utils.PointFloat(0F, 10.00001F); + this.lblTitel.Name = "lblTitel"; + this.lblTitel.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F); + this.lblTitel.SizeF = new System.Drawing.SizeF(1030F, 23F); + this.lblTitel.StylePriority.UseFont = false; + this.lblTitel.Text = "Finanzauswertung"; + // + // DetailReport + // + this.DetailReport.Bands.AddRange(new DevExpress.XtraReports.UI.Band[] { + this.Detail1, + this.GroupFooter1, + this.GroupHeader2, + this.GroupFooter2, + this.GroupHeader1}); + this.DetailReport.DataMember = "SupportConceptFinanceList"; + this.DetailReport.DataSource = this.bindingSource1; + this.DetailReport.Level = 0; + this.DetailReport.Name = "DetailReport"; + // + // GroupFooter1 + // + this.GroupFooter1.Controls.AddRange(new DevExpress.XtraReports.UI.XRControl[] { + this.xrTable4}); + this.GroupFooter1.Font = new System.Drawing.Font("Arial", 10F, System.Drawing.FontStyle.Bold); + this.GroupFooter1.HeightF = 25F; + this.GroupFooter1.Name = "GroupFooter1"; + this.GroupFooter1.StylePriority.UseFont = false; + this.GroupFooter1.Visible = false; + // + // xrTable4 + // + this.xrTable4.Borders = ((DevExpress.XtraPrinting.BorderSide)(((DevExpress.XtraPrinting.BorderSide.Left | DevExpress.XtraPrinting.BorderSide.Right) + | DevExpress.XtraPrinting.BorderSide.Bottom))); + this.xrTable4.LocationFloat = new DevExpress.Utils.PointFloat(0F, 0F); + this.xrTable4.Name = "xrTable4"; + this.xrTable4.Padding = new DevExpress.XtraPrinting.PaddingInfo(3, 3, 0, 0, 100F); + this.xrTable4.Rows.AddRange(new DevExpress.XtraReports.UI.XRTableRow[] { + this.xrTableRow4}); + this.xrTable4.SizeF = new System.Drawing.SizeF(1020F, 25F); + this.xrTable4.StylePriority.UseBorders = false; + this.xrTable4.StylePriority.UseFont = false; + this.xrTable4.StylePriority.UsePadding = false; + this.xrTable4.StylePriority.UseTextAlignment = false; + this.xrTable4.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleLeft; + // + // xrTableRow4 + // + this.xrTableRow4.Cells.AddRange(new DevExpress.XtraReports.UI.XRTableCell[] { + this.xrTableCell28, + this.xrTableCell31, + this.xrTableCell35, + this.xrTableCell36, + this.xrTableCell37, + this.xrTableCell38, + this.xrTableCell39, + this.xrTableCell40, + this.xrTableCell41, + this.xrTableCell8}); + this.xrTableRow4.Name = "xrTableRow4"; + this.xrTableRow4.Weight = 1D; + // + // xrTableCell28 + // + this.xrTableCell28.CanGrow = false; + this.xrTableCell28.Multiline = true; + this.xrTableCell28.Name = "xrTableCell28"; + this.xrTableCell28.Weight = 0.75332348006297656D; + // + // xrTableCell31 + // + this.xrTableCell31.CanGrow = false; + this.xrTableCell31.Name = "xrTableCell31"; + this.xrTableCell31.StylePriority.UseTextAlignment = false; + this.xrTableCell31.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleLeft; + this.xrTableCell31.Weight = 0.5317577529262556D; + // + // xrTableCell36 + // + this.xrTableCell36.CanGrow = false; + this.xrTableCell36.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] { + new DevExpress.XtraReports.UI.XRBinding("Text", null, "SupportConceptFinanceList.BillableHours")}); + this.xrTableCell36.Font = new System.Drawing.Font("Arial", 9F, System.Drawing.FontStyle.Bold); + this.xrTableCell36.Name = "xrTableCell36"; + this.xrTableCell36.StylePriority.UseFont = false; + this.xrTableCell36.StylePriority.UseTextAlignment = false; + xrSummary2.FormatString = "{0:0.00}"; + xrSummary2.IgnoreNullValues = true; + xrSummary2.Running = DevExpress.XtraReports.UI.SummaryRunning.Group; + this.xrTableCell36.Summary = xrSummary2; + this.xrTableCell36.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleRight; + this.xrTableCell36.Weight = 0.3988183161642046D; + // + // xrTableCell37 + // + this.xrTableCell37.CanGrow = false; + this.xrTableCell37.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] { + new DevExpress.XtraReports.UI.XRBinding("Text", null, "SupportConceptFinanceList.ApprovedHoursInReportTimeSpan")}); + this.xrTableCell37.Font = new System.Drawing.Font("Arial", 9F, System.Drawing.FontStyle.Bold); + this.xrTableCell37.Name = "xrTableCell37"; + this.xrTableCell37.StylePriority.UseFont = false; + this.xrTableCell37.StylePriority.UseTextAlignment = false; + xrSummary3.FormatString = "{0:0.00}"; + xrSummary3.IgnoreNullValues = true; + xrSummary3.Running = DevExpress.XtraReports.UI.SummaryRunning.Group; + this.xrTableCell37.Summary = xrSummary3; + this.xrTableCell37.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleRight; + this.xrTableCell37.Weight = 0.39881831603618456D; + // + // xrTableCell38 + // + this.xrTableCell38.CanGrow = false; + this.xrTableCell38.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] { + new DevExpress.XtraReports.UI.XRBinding("Text", null, "SupportConceptFinanceList.StundenNichtFehlkontakteInReportTimeSpan")}); + this.xrTableCell38.Font = new System.Drawing.Font("Arial", 9F, System.Drawing.FontStyle.Bold); + this.xrTableCell38.Name = "xrTableCell38"; + this.xrTableCell38.StylePriority.UseFont = false; + this.xrTableCell38.StylePriority.UseTextAlignment = false; + xrSummary4.FormatString = "{0:0.00}"; + xrSummary4.IgnoreNullValues = true; + xrSummary4.Running = DevExpress.XtraReports.UI.SummaryRunning.Group; + this.xrTableCell38.Summary = xrSummary4; + this.xrTableCell38.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleRight; + this.xrTableCell38.Weight = 0.39881831600427159D; + // + // xrTableCell39 + // + this.xrTableCell39.CanGrow = false; + this.xrTableCell39.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] { + new DevExpress.XtraReports.UI.XRBinding("Text", null, "SupportConceptFinanceList.BillableHoursInReportTimeSpanWithFactor")}); + this.xrTableCell39.Font = new System.Drawing.Font("Arial", 9F, System.Drawing.FontStyle.Bold); + this.xrTableCell39.Name = "xrTableCell39"; + this.xrTableCell39.StylePriority.UseFont = false; + this.xrTableCell39.StylePriority.UseTextAlignment = false; + xrSummary5.FormatString = "{0:0.00}"; + xrSummary5.IgnoreNullValues = true; + xrSummary5.Running = DevExpress.XtraReports.UI.SummaryRunning.Group; + this.xrTableCell39.Summary = xrSummary5; + this.xrTableCell39.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleRight; + this.xrTableCell39.Weight = 0.39881831600427159D; + // + // xrTableCell40 + // + this.xrTableCell40.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] { + new DevExpress.XtraReports.UI.XRBinding("Text", null, "SupportConceptFinanceList.StundenFehlkontakteInReportTimeSpan")}); + this.xrTableCell40.Font = new System.Drawing.Font("Arial", 9F, System.Drawing.FontStyle.Bold); + this.xrTableCell40.Name = "xrTableCell40"; + this.xrTableCell40.StylePriority.UseFont = false; + this.xrTableCell40.StylePriority.UseTextAlignment = false; + xrSummary6.FormatString = "{0:0.00}"; + xrSummary6.Running = DevExpress.XtraReports.UI.SummaryRunning.Group; + this.xrTableCell40.Summary = xrSummary6; + this.xrTableCell40.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleRight; + this.xrTableCell40.Weight = 0.39881831598953088D; + // + // xrTableCell41 + // + this.xrTableCell41.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] { + new DevExpress.XtraReports.UI.XRBinding("Text", null, "SupportConceptFinanceList.BillableAmountInReportTimeSpan")}); + this.xrTableCell41.Font = new System.Drawing.Font("Arial", 9F, System.Drawing.FontStyle.Bold); + this.xrTableCell41.Name = "xrTableCell41"; + this.xrTableCell41.StylePriority.UseFont = false; + this.xrTableCell41.StylePriority.UseTextAlignment = false; + xrSummary7.FormatString = "{0:c}"; + xrSummary7.Running = DevExpress.XtraReports.UI.SummaryRunning.Group; + this.xrTableCell41.Summary = xrSummary7; + this.xrTableCell41.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleRight; + this.xrTableCell41.Weight = 0.39881831598953088D; + // + // GroupHeader2 + // + this.GroupHeader2.Controls.AddRange(new DevExpress.XtraReports.UI.XRControl[] { + this.xrTable1}); + this.GroupHeader2.HeightF = 50F; + this.GroupHeader2.Name = "GroupHeader2"; + this.GroupHeader2.RepeatEveryPage = true; + // + // xrTable1 + // + this.xrTable1.Borders = ((DevExpress.XtraPrinting.BorderSide)((((DevExpress.XtraPrinting.BorderSide.Left | DevExpress.XtraPrinting.BorderSide.Top) + | DevExpress.XtraPrinting.BorderSide.Right) + | DevExpress.XtraPrinting.BorderSide.Bottom))); + this.xrTable1.Font = new System.Drawing.Font("Arial", 9F, System.Drawing.FontStyle.Bold); + this.xrTable1.LocationFloat = new DevExpress.Utils.PointFloat(0F, 0F); + this.xrTable1.Name = "xrTable1"; + this.xrTable1.Padding = new DevExpress.XtraPrinting.PaddingInfo(3, 3, 0, 0, 100F); + this.xrTable1.Rows.AddRange(new DevExpress.XtraReports.UI.XRTableRow[] { + this.xrTableRow1}); + this.xrTable1.SizeF = new System.Drawing.SizeF(1020F, 50F); + this.xrTable1.StylePriority.UseBorders = false; + this.xrTable1.StylePriority.UseFont = false; + this.xrTable1.StylePriority.UsePadding = false; + this.xrTable1.StylePriority.UseTextAlignment = false; + this.xrTable1.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleLeft; + // + // xrTableRow1 + // + this.xrTableRow1.Cells.AddRange(new DevExpress.XtraReports.UI.XRTableCell[] { + this.xrTableCell1, + this.xrTableCell2, + this.xrTableCell13, + this.xrTableCell11, + this.cellBewilligtImZeitraumHeader, + this.cellGeleistetImZeitraumHeader, + this.cellRateFactorHeader, + this.cellFehlkontakteHeader, + this.xrTableCell25, + this.xrTableCell3}); + this.xrTableRow1.Name = "xrTableRow1"; + this.xrTableRow1.Weight = 1.3953493323567705D; + // + // xrTableCell1 + // + this.xrTableCell1.Name = "xrTableCell1"; + this.xrTableCell1.Text = "KlientIn/Hilfeplan"; + this.xrTableCell1.Weight = 0.75332348006297656D; + // + // xrTableCell2 + // + this.xrTableCell2.Name = "xrTableCell2"; + this.xrTableCell2.StylePriority.UseTextAlignment = false; + this.xrTableCell2.Text = "Kostenträger"; + this.xrTableCell2.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleLeft; + this.xrTableCell2.Weight = 0.53175775292625538D; + // + // xrTableCell13 + // + this.xrTableCell13.Name = "xrTableCell13"; + this.xrTableCell13.StylePriority.UseTextAlignment = false; + this.xrTableCell13.Text = "Bis dato bewilligte FLS"; + this.xrTableCell13.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleCenter; + this.xrTableCell13.Weight = 0.39881831795197004D; + // + // xrTableCell11 + // + this.xrTableCell11.Name = "xrTableCell11"; + this.xrTableCell11.StylePriority.UseTextAlignment = false; + this.xrTableCell11.Text = "Bis dato geleistete FLS"; + this.xrTableCell11.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleCenter; + this.xrTableCell11.Weight = 0.39881831616420443D; + // + // cellBewilligtImZeitraumHeader + // + this.cellBewilligtImZeitraumHeader.Name = "cellBewilligtImZeitraumHeader"; + this.cellBewilligtImZeitraumHeader.StylePriority.UseTextAlignment = false; + this.cellBewilligtImZeitraumHeader.Text = "bewilligte FLS"; + this.cellBewilligtImZeitraumHeader.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleCenter; + this.cellBewilligtImZeitraumHeader.Weight = 0.39881831603618445D; + // + // cellGeleistetImZeitraumHeader + // + this.cellGeleistetImZeitraumHeader.Name = "cellGeleistetImZeitraumHeader"; + this.cellGeleistetImZeitraumHeader.StylePriority.UseTextAlignment = false; + this.cellGeleistetImZeitraumHeader.Text = "geleistete FLS"; + this.cellGeleistetImZeitraumHeader.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleCenter; + this.cellGeleistetImZeitraumHeader.Weight = 0.39881831600427153D; + // + // cellRateFactorHeader + // + this.cellRateFactorHeader.Name = "cellRateFactorHeader"; + this.cellRateFactorHeader.StylePriority.UseTextAlignment = false; + this.cellRateFactorHeader.Text = "geleistete Std. x 1,2"; + this.cellRateFactorHeader.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleCenter; + this.cellRateFactorHeader.Weight = 0.39881831600427159D; + // + // cellFehlkontakteHeader + // + this.cellFehlkontakteHeader.Multiline = true; + this.cellFehlkontakteHeader.Name = "cellFehlkontakteHeader"; + this.cellFehlkontakteHeader.StylePriority.UseTextAlignment = false; + this.cellFehlkontakteHeader.Text = "Fehl-\r\nkontakte"; + this.cellFehlkontakteHeader.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleCenter; + this.cellFehlkontakteHeader.Weight = 0.39881831598953088D; + // + // xrTableCell25 + // + this.xrTableCell25.Name = "xrTableCell25"; + this.xrTableCell25.StylePriority.UseTextAlignment = false; + this.xrTableCell25.Text = "Betrag"; + this.xrTableCell25.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleCenter; + this.xrTableCell25.Weight = 0.39881831598953088D; + // + // GroupFooter2 + // + this.GroupFooter2.Font = new System.Drawing.Font("Arial", 9F, System.Drawing.FontStyle.Bold); + this.GroupFooter2.HeightF = 0F; + this.GroupFooter2.Level = 1; + this.GroupFooter2.Name = "GroupFooter2"; + this.GroupFooter2.StylePriority.UseFont = false; + // + // GroupHeader1 + // + this.GroupHeader1.Controls.AddRange(new DevExpress.XtraReports.UI.XRControl[] { + this.xrLabel1}); + this.GroupHeader1.GroupFields.AddRange(new DevExpress.XtraReports.UI.GroupField[] { + new DevExpress.XtraReports.UI.GroupField("GruppierungsKategorie", DevExpress.XtraReports.UI.XRColumnSortOrder.Ascending)}); + this.GroupHeader1.HeightF = 43.75F; + this.GroupHeader1.Level = 1; + this.GroupHeader1.Name = "GroupHeader1"; + this.GroupHeader1.Visible = false; + // + // xrLabel1 + // + this.xrLabel1.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] { + new DevExpress.XtraReports.UI.XRBinding("Text", null, "SupportConceptFinanceList.GruppierungsKategorie")}); + this.xrLabel1.Font = new System.Drawing.Font("Arial", 9F, System.Drawing.FontStyle.Bold); + this.xrLabel1.LocationFloat = new DevExpress.Utils.PointFloat(0F, 10F); + this.xrLabel1.Name = "xrLabel1"; + this.xrLabel1.Padding = new DevExpress.XtraPrinting.PaddingInfo(2, 2, 0, 0, 100F); + this.xrLabel1.SizeF = new System.Drawing.SizeF(950F, 23F); + this.xrLabel1.StylePriority.UseFont = false; + this.xrLabel1.Text = "xrLabel1"; + // + // ReportHeader + // + this.ReportHeader.Controls.AddRange(new DevExpress.XtraReports.UI.XRControl[] { + this.lblTitel}); + this.ReportHeader.HeightF = 52.08333F; + this.ReportHeader.Name = "ReportHeader"; + // + // pageFooterBand1 + // + this.pageFooterBand1.Controls.AddRange(new DevExpress.XtraReports.UI.XRControl[] { + this.xrPageInfo2, + this.xrPageInfo1}); + this.pageFooterBand1.HeightF = 48F; + this.pageFooterBand1.Name = "pageFooterBand1"; + // + // xrPageInfo2 + // + this.xrPageInfo2.Font = new System.Drawing.Font("Arial", 8F); + this.xrPageInfo2.Format = "Seite {0} von {1}"; + this.xrPageInfo2.LocationFloat = new DevExpress.Utils.PointFloat(920F, 25F); + this.xrPageInfo2.Name = "xrPageInfo2"; + this.xrPageInfo2.SizeF = new System.Drawing.SizeF(100F, 23F); + this.xrPageInfo2.StyleName = "PageInfo"; + this.xrPageInfo2.StylePriority.UseFont = false; + this.xrPageInfo2.TextAlignment = DevExpress.XtraPrinting.TextAlignment.TopRight; + // + // xrPageInfo1 + // + this.xrPageInfo1.Font = new System.Drawing.Font("Arial", 8F); + this.xrPageInfo1.LocationFloat = new DevExpress.Utils.PointFloat(0F, 25F); + this.xrPageInfo1.Name = "xrPageInfo1"; + this.xrPageInfo1.PageInfo = DevExpress.XtraPrinting.PageInfo.DateTime; + this.xrPageInfo1.SizeF = new System.Drawing.SizeF(290F, 23F); + this.xrPageInfo1.StyleName = "PageInfo"; + this.xrPageInfo1.StylePriority.UseFont = false; + // + // Title + // + this.Title.BackColor = System.Drawing.Color.White; + this.Title.BorderColor = System.Drawing.SystemColors.ControlText; + this.Title.Borders = DevExpress.XtraPrinting.BorderSide.None; + this.Title.BorderWidth = 1F; + this.Title.Font = new System.Drawing.Font("Times New Roman", 24F); + this.Title.ForeColor = System.Drawing.Color.Black; + this.Title.Name = "Title"; + // + // FieldCaption + // + this.FieldCaption.BackColor = System.Drawing.Color.White; + this.FieldCaption.BorderColor = System.Drawing.SystemColors.ControlText; + this.FieldCaption.Borders = DevExpress.XtraPrinting.BorderSide.None; + this.FieldCaption.BorderWidth = 1F; + this.FieldCaption.Font = new System.Drawing.Font("Times New Roman", 10F, System.Drawing.FontStyle.Bold); + this.FieldCaption.ForeColor = System.Drawing.Color.Black; + this.FieldCaption.Name = "FieldCaption"; + // + // PageInfo + // + this.PageInfo.BackColor = System.Drawing.Color.White; + this.PageInfo.BorderColor = System.Drawing.SystemColors.ControlText; + this.PageInfo.Borders = DevExpress.XtraPrinting.BorderSide.None; + this.PageInfo.BorderWidth = 1F; + this.PageInfo.Font = new System.Drawing.Font("Times New Roman", 8F); + this.PageInfo.ForeColor = System.Drawing.Color.Black; + this.PageInfo.Name = "PageInfo"; + // + // DataField + // + this.DataField.BackColor = System.Drawing.Color.White; + this.DataField.BorderColor = System.Drawing.SystemColors.ControlText; + this.DataField.Borders = DevExpress.XtraPrinting.BorderSide.None; + this.DataField.BorderWidth = 1F; + this.DataField.Font = new System.Drawing.Font("Times New Roman", 8F); + this.DataField.ForeColor = System.Drawing.SystemColors.ControlText; + this.DataField.Name = "DataField"; + // + // fieldFLS + // + this.fieldFLS.DataMember = "FLSReportGroups"; + this.fieldFLS.DataSource = this.bindingSource1; + this.fieldFLS.Expression = "[TotalFLM] / 60"; + this.fieldFLS.FieldType = DevExpress.XtraReports.UI.FieldType.Decimal; + this.fieldFLS.Name = "fieldFLS"; + // + // topMarginBand1 + // + this.topMarginBand1.HeightF = 50F; + this.topMarginBand1.Name = "topMarginBand1"; + // + // bottomMarginBand1 + // + this.bottomMarginBand1.HeightF = 30F; + this.bottomMarginBand1.Name = "bottomMarginBand1"; + // + // ReportFooter + // + this.ReportFooter.Controls.AddRange(new DevExpress.XtraReports.UI.XRControl[] { + this.xrTable3}); + this.ReportFooter.Font = new System.Drawing.Font("Arial", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.ReportFooter.HeightF = 25F; + this.ReportFooter.Name = "ReportFooter"; + this.ReportFooter.StylePriority.UseFont = false; + // + // xrTable3 + // + this.xrTable3.Borders = ((DevExpress.XtraPrinting.BorderSide)(((DevExpress.XtraPrinting.BorderSide.Left | DevExpress.XtraPrinting.BorderSide.Right) + | DevExpress.XtraPrinting.BorderSide.Bottom))); + this.xrTable3.LocationFloat = new DevExpress.Utils.PointFloat(0F, 0F); + this.xrTable3.Name = "xrTable3"; + this.xrTable3.Padding = new DevExpress.XtraPrinting.PaddingInfo(3, 3, 0, 0, 100F); + this.xrTable3.Rows.AddRange(new DevExpress.XtraReports.UI.XRTableRow[] { + this.xrTableRow3}); + this.xrTable3.SizeF = new System.Drawing.SizeF(1020F, 25F); + this.xrTable3.StylePriority.UseBorders = false; + this.xrTable3.StylePriority.UseFont = false; + this.xrTable3.StylePriority.UsePadding = false; + this.xrTable3.StylePriority.UseTextAlignment = false; + this.xrTable3.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleLeft; + // + // xrTableRow3 + // + this.xrTableRow3.Cells.AddRange(new DevExpress.XtraReports.UI.XRTableCell[] { + this.xrTableCell15, + this.xrTableCell16, + this.xrTableCell20, + this.xrTableCell21, + this.xrTableCell22, + this.xrTableCell23, + this.xrTableCell24, + this.xrTableCell30, + this.xrTableCell27, + this.xrTableCell10}); + this.xrTableRow3.Name = "xrTableRow3"; + this.xrTableRow3.Weight = 1D; + // + // xrTableCell15 + // + this.xrTableCell15.CanGrow = false; + this.xrTableCell15.Multiline = true; + this.xrTableCell15.Name = "xrTableCell15"; + this.xrTableCell15.Weight = 0.75332348006297656D; + // + // xrTableCell16 + // + this.xrTableCell16.CanGrow = false; + this.xrTableCell16.Name = "xrTableCell16"; + this.xrTableCell16.StylePriority.UseTextAlignment = false; + this.xrTableCell16.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleLeft; + this.xrTableCell16.Weight = 0.5317577529262556D; + // + // xrTableCell20 + // + this.xrTableCell20.CanGrow = false; + this.xrTableCell20.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] { + new DevExpress.XtraReports.UI.XRBinding("Text", null, "SupportConceptFinanceList.ApprovedHours")}); + this.xrTableCell20.Font = new System.Drawing.Font("Arial", 9F, System.Drawing.FontStyle.Bold); + this.xrTableCell20.Name = "xrTableCell20"; + this.xrTableCell20.StylePriority.UseFont = false; + this.xrTableCell20.StylePriority.UseTextAlignment = false; + xrSummary9.FormatString = "{0:0.00}"; + xrSummary9.IgnoreNullValues = true; + xrSummary9.Running = DevExpress.XtraReports.UI.SummaryRunning.Report; + this.xrTableCell20.Summary = xrSummary9; + this.xrTableCell20.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleRight; + this.xrTableCell20.Weight = 0.39881831795196981D; + // + // xrTableCell21 + // + this.xrTableCell21.CanGrow = false; + this.xrTableCell21.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] { + new DevExpress.XtraReports.UI.XRBinding("Text", null, "SupportConceptFinanceList.BillableHours")}); + this.xrTableCell21.Font = new System.Drawing.Font("Arial", 9F, System.Drawing.FontStyle.Bold); + this.xrTableCell21.Name = "xrTableCell21"; + this.xrTableCell21.StylePriority.UseFont = false; + this.xrTableCell21.StylePriority.UseTextAlignment = false; + xrSummary10.FormatString = "{0:0.00}"; + xrSummary10.IgnoreNullValues = true; + xrSummary10.Running = DevExpress.XtraReports.UI.SummaryRunning.Report; + this.xrTableCell21.Summary = xrSummary10; + this.xrTableCell21.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleRight; + this.xrTableCell21.Weight = 0.3988183161642046D; + // + // xrTableCell22 + // + this.xrTableCell22.CanGrow = false; + this.xrTableCell22.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] { + new DevExpress.XtraReports.UI.XRBinding("Text", null, "SupportConceptFinanceList.ApprovedHoursInReportTimeSpan")}); + this.xrTableCell22.Font = new System.Drawing.Font("Arial", 9F, System.Drawing.FontStyle.Bold); + this.xrTableCell22.Name = "xrTableCell22"; + this.xrTableCell22.StylePriority.UseFont = false; + this.xrTableCell22.StylePriority.UseTextAlignment = false; + xrSummary11.FormatString = "{0:0.00}"; + xrSummary11.IgnoreNullValues = true; + xrSummary11.Running = DevExpress.XtraReports.UI.SummaryRunning.Report; + this.xrTableCell22.Summary = xrSummary11; + this.xrTableCell22.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleRight; + this.xrTableCell22.Weight = 0.39881831603618456D; + // + // xrTableCell23 + // + this.xrTableCell23.CanGrow = false; + this.xrTableCell23.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] { + new DevExpress.XtraReports.UI.XRBinding("Text", null, "SupportConceptFinanceList.StundenNichtFehlkontakteInReportTimeSpan")}); + this.xrTableCell23.Font = new System.Drawing.Font("Arial", 9F, System.Drawing.FontStyle.Bold); + this.xrTableCell23.Name = "xrTableCell23"; + this.xrTableCell23.StylePriority.UseFont = false; + this.xrTableCell23.StylePriority.UseTextAlignment = false; + xrSummary12.FormatString = "{0:0.00}"; + xrSummary12.IgnoreNullValues = true; + xrSummary12.Running = DevExpress.XtraReports.UI.SummaryRunning.Report; + this.xrTableCell23.Summary = xrSummary12; + this.xrTableCell23.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleRight; + this.xrTableCell23.Weight = 0.39881831600427159D; + // + // xrTableCell24 + // + this.xrTableCell24.CanGrow = false; + this.xrTableCell24.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] { + new DevExpress.XtraReports.UI.XRBinding("Text", null, "SupportConceptFinanceList.BillableHoursInReportTimeSpanWithFactor")}); + this.xrTableCell24.Font = new System.Drawing.Font("Arial", 9F, System.Drawing.FontStyle.Bold); + this.xrTableCell24.Name = "xrTableCell24"; + this.xrTableCell24.StylePriority.UseFont = false; + this.xrTableCell24.StylePriority.UseTextAlignment = false; + xrSummary13.FormatString = "{0:0.00}"; + xrSummary13.IgnoreNullValues = true; + xrSummary13.Running = DevExpress.XtraReports.UI.SummaryRunning.Report; + this.xrTableCell24.Summary = xrSummary13; + this.xrTableCell24.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleRight; + this.xrTableCell24.Weight = 0.39881831600427159D; + // + // xrTableCell30 + // + this.xrTableCell30.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] { + new DevExpress.XtraReports.UI.XRBinding("Text", null, "SupportConceptFinanceList.StundenFehlkontakteInReportTimeSpan")}); + this.xrTableCell30.Font = new System.Drawing.Font("Arial", 9F, System.Drawing.FontStyle.Bold); + this.xrTableCell30.Name = "xrTableCell30"; + this.xrTableCell30.StylePriority.UseFont = false; + this.xrTableCell30.StylePriority.UseTextAlignment = false; + xrSummary14.FormatString = "{0:0.00}"; + xrSummary14.Running = DevExpress.XtraReports.UI.SummaryRunning.Report; + this.xrTableCell30.Summary = xrSummary14; + this.xrTableCell30.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleRight; + this.xrTableCell30.Weight = 0.39881831598953088D; + // + // xrTableCell27 + // + this.xrTableCell27.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] { + new DevExpress.XtraReports.UI.XRBinding("Text", null, "SupportConceptFinanceList.BillableAmountInReportTimeSpan")}); + this.xrTableCell27.Font = new System.Drawing.Font("Arial", 9F, System.Drawing.FontStyle.Bold); + this.xrTableCell27.Name = "xrTableCell27"; + this.xrTableCell27.StylePriority.UseFont = false; + this.xrTableCell27.StylePriority.UseTextAlignment = false; + xrSummary15.FormatString = "{0:c}"; + xrSummary15.Running = DevExpress.XtraReports.UI.SummaryRunning.Report; + this.xrTableCell27.Summary = xrSummary15; + this.xrTableCell27.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleRight; + this.xrTableCell27.Weight = 0.39881831598953088D; + // + // xrTableCell3 + // + this.xrTableCell3.Multiline = true; + this.xrTableCell3.Name = "xrTableCell3"; + this.xrTableCell3.StylePriority.UseTextAlignment = false; + this.xrTableCell3.Text = "Abschläge im gewählten\r\nZeitraum"; + this.xrTableCell3.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleCenter; + this.xrTableCell3.Weight = 0.44313146215902322D; + // + // xrTableCell5 + // + this.xrTableCell5.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] { + new DevExpress.XtraReports.UI.XRBinding("Text", null, "SupportConceptFinanceList.AmountPaidInReportTimeSpan", "{0:c}")}); + this.xrTableCell5.Name = "xrTableCell5"; + this.xrTableCell5.StylePriority.UseTextAlignment = false; + this.xrTableCell5.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleRight; + this.xrTableCell5.Weight = 0.44313146215902322D; + // + // xrTableCell8 + // + this.xrTableCell8.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] { + new DevExpress.XtraReports.UI.XRBinding("Text", null, "SupportConceptFinanceList.AmountPaidInReportTimeSpan")}); + this.xrTableCell8.Font = new System.Drawing.Font("Arial", 9F, System.Drawing.FontStyle.Bold); + this.xrTableCell8.Name = "xrTableCell8"; + this.xrTableCell8.StylePriority.UseFont = false; + this.xrTableCell8.StylePriority.UseTextAlignment = false; + xrSummary8.FormatString = "{0:c}"; + xrSummary8.Running = DevExpress.XtraReports.UI.SummaryRunning.Group; + this.xrTableCell8.Summary = xrSummary8; + this.xrTableCell8.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleRight; + this.xrTableCell8.Weight = 0.44313146215898769D; + // + // xrTableCell10 + // + this.xrTableCell10.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] { + new DevExpress.XtraReports.UI.XRBinding("Text", null, "SupportConceptFinanceList.AmountPaidInReportTimeSpan")}); + this.xrTableCell10.Font = new System.Drawing.Font("Arial", 9F, System.Drawing.FontStyle.Bold); + this.xrTableCell10.Name = "xrTableCell10"; + this.xrTableCell10.StylePriority.UseFont = false; + this.xrTableCell10.StylePriority.UseTextAlignment = false; + xrSummary16.FormatString = "{0:c}"; + xrSummary16.Running = DevExpress.XtraReports.UI.SummaryRunning.Report; + this.xrTableCell10.Summary = xrSummary16; + this.xrTableCell10.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleRight; + this.xrTableCell10.Weight = 0.44313146215902322D; + // + // bindingSource1 + // + this.bindingSource1.DataSource = typeof(BeWo.Report.ReportObjects.FinanceRO); + // + // xrTableCell35 + // + this.xrTableCell35.CanGrow = false; + this.xrTableCell35.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] { + new DevExpress.XtraReports.UI.XRBinding("Text", null, "SupportConceptFinanceList.ApprovedHours")}); + this.xrTableCell35.Font = new System.Drawing.Font("Arial", 9F, System.Drawing.FontStyle.Bold); + this.xrTableCell35.Name = "xrTableCell35"; + this.xrTableCell35.StylePriority.UseFont = false; + this.xrTableCell35.StylePriority.UseTextAlignment = false; + xrSummary1.FormatString = "{0:0.00}"; + xrSummary1.IgnoreNullValues = true; + xrSummary1.Running = DevExpress.XtraReports.UI.SummaryRunning.Group; + this.xrTableCell35.Summary = xrSummary1; + this.xrTableCell35.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleRight; + this.xrTableCell35.Weight = 0.39881831795196981D; + // + // Finanzauswertung + // + this.Bands.AddRange(new DevExpress.XtraReports.UI.Band[] { + this.Detail, + this.DetailReport, + this.ReportHeader, + this.pageFooterBand1, + this.topMarginBand1, + this.bottomMarginBand1, + this.ReportFooter}); + this.DataSource = this.bindingSource1; + this.Landscape = true; + this.Margins = new System.Drawing.Printing.Margins(80, 40, 50, 30); + this.PageHeight = 827; + this.PageWidth = 1169; + this.PaperKind = System.Drawing.Printing.PaperKind.A4; + this.StyleSheet.AddRange(new DevExpress.XtraReports.UI.XRControlStyle[] { + this.Title, + this.FieldCaption, + this.PageInfo, + this.DataField}); + this.Version = "17.1"; + ((System.ComponentModel.ISupportInitialize)(this.xrTable2)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.xrTable4)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.xrTable1)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.xrTable3)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.bindingSource1)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this)).EndInit(); + + } + + #endregion + + private DevExpress.XtraReports.UI.DetailBand Detail; + private System.Windows.Forms.BindingSource bindingSource1; + private DevExpress.XtraReports.UI.DetailBand Detail1; + private DevExpress.XtraReports.UI.DetailReportBand DetailReport; + private DevExpress.XtraReports.UI.ReportHeaderBand ReportHeader; + private DevExpress.XtraReports.UI.PageFooterBand pageFooterBand1; + private DevExpress.XtraReports.UI.XRPageInfo xrPageInfo2; + private DevExpress.XtraReports.UI.XRPageInfo xrPageInfo1; + private DevExpress.XtraReports.UI.XRControlStyle Title; + private DevExpress.XtraReports.UI.XRControlStyle FieldCaption; + private DevExpress.XtraReports.UI.XRControlStyle PageInfo; + private DevExpress.XtraReports.UI.XRControlStyle DataField; + private DevExpress.XtraReports.UI.CalculatedField fieldFLS; + private DevExpress.XtraReports.UI.TopMarginBand topMarginBand1; + private DevExpress.XtraReports.UI.BottomMarginBand bottomMarginBand1; + private DevExpress.XtraReports.UI.GroupFooterBand GroupFooter1; + private DevExpress.XtraReports.UI.XRLabel lblTitel; + private DevExpress.XtraReports.UI.XRTable xrTable2; + private DevExpress.XtraReports.UI.XRTableRow xrTableRow2; + private DevExpress.XtraReports.UI.XRTableCell xrTableCell6; + private DevExpress.XtraReports.UI.XRTableCell xrTableCell7; + private DevExpress.XtraReports.UI.XRTable xrTable1; + private DevExpress.XtraReports.UI.XRTableRow xrTableRow1; + private DevExpress.XtraReports.UI.XRTableCell xrTableCell1; + private DevExpress.XtraReports.UI.XRTableCell xrTableCell2; + private DevExpress.XtraReports.UI.ReportFooterBand ReportFooter; + private DevExpress.XtraReports.UI.XRTableCell xrTableCell12; + private DevExpress.XtraReports.UI.XRTableCell xrTableCell11; + private DevExpress.XtraReports.UI.GroupHeaderBand GroupHeader2; + private DevExpress.XtraReports.UI.XRTableCell xrTableCell14; + private DevExpress.XtraReports.UI.XRTableCell xrTableCell13; + private DevExpress.XtraReports.UI.XRTableCell cellBewilligteFLSImBereich; + private DevExpress.XtraReports.UI.XRTableCell cellGeleistetImBereich; + private DevExpress.XtraReports.UI.XRTableCell cellBewilligtImZeitraumHeader; + private DevExpress.XtraReports.UI.XRTableCell cellGeleistetImZeitraumHeader; + private DevExpress.XtraReports.UI.XRTableCell cellRateFactorHeader; + private DevExpress.XtraReports.UI.XRTableCell cellRateFactor; + private DevExpress.XtraReports.UI.GroupFooterBand GroupFooter2; + private DevExpress.XtraReports.UI.XRTableCell xrTableCell25; + private DevExpress.XtraReports.UI.XRTableCell xrTableCell26; + private DevExpress.XtraReports.UI.XRTableCell xrTableCell29; + private DevExpress.XtraReports.UI.XRTableCell cellFehlkontakteHeader; + private DevExpress.XtraReports.UI.GroupHeaderBand GroupHeader1; + private DevExpress.XtraReports.UI.XRLabel xrLabel1; + private DevExpress.XtraReports.UI.XRTable xrTable4; + private DevExpress.XtraReports.UI.XRTableRow xrTableRow4; + private DevExpress.XtraReports.UI.XRTableCell xrTableCell28; + private DevExpress.XtraReports.UI.XRTableCell xrTableCell31; + private DevExpress.XtraReports.UI.XRTableCell xrTableCell36; + private DevExpress.XtraReports.UI.XRTableCell xrTableCell37; + private DevExpress.XtraReports.UI.XRTableCell xrTableCell38; + private DevExpress.XtraReports.UI.XRTableCell xrTableCell39; + private DevExpress.XtraReports.UI.XRTableCell xrTableCell40; + private DevExpress.XtraReports.UI.XRTableCell xrTableCell41; + private DevExpress.XtraReports.UI.XRTable xrTable3; + private DevExpress.XtraReports.UI.XRTableRow xrTableRow3; + private DevExpress.XtraReports.UI.XRTableCell xrTableCell15; + private DevExpress.XtraReports.UI.XRTableCell xrTableCell16; + private DevExpress.XtraReports.UI.XRTableCell xrTableCell20; + private DevExpress.XtraReports.UI.XRTableCell xrTableCell21; + private DevExpress.XtraReports.UI.XRTableCell xrTableCell22; + private DevExpress.XtraReports.UI.XRTableCell xrTableCell23; + private DevExpress.XtraReports.UI.XRTableCell xrTableCell24; + private DevExpress.XtraReports.UI.XRTableCell xrTableCell30; + private DevExpress.XtraReports.UI.XRTableCell xrTableCell27; + private DevExpress.XtraReports.UI.XRTableCell xrTableCell5; + private DevExpress.XtraReports.UI.XRTableCell xrTableCell8; + private DevExpress.XtraReports.UI.XRTableCell xrTableCell3; + private DevExpress.XtraReports.UI.XRTableCell xrTableCell10; + private DevExpress.XtraReports.UI.XRTableCell xrTableCell35; + } +} diff --git a/ReportImp/AidshilfeDortmund/Finanzauswertung.resx b/ReportImp/AidshilfeDortmund/Finanzauswertung.resx new file mode 100644 index 000000000..d25f3eba2 --- /dev/null +++ b/ReportImp/AidshilfeDortmund/Finanzauswertung.resx @@ -0,0 +1,123 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 17, 17 + + \ No newline at end of file diff --git a/ReportImp/AkggMid/CustomMitarbeiterstundenkontoBerechnung.cs b/ReportImp/AkggMid/CustomMitarbeiterstundenkontoBerechnung.cs index 7b993df04..6f87590da 100644 --- a/ReportImp/AkggMid/CustomMitarbeiterstundenkontoBerechnung.cs +++ b/ReportImp/AkggMid/CustomMitarbeiterstundenkontoBerechnung.cs @@ -87,7 +87,16 @@ namespace AkggMid return false; if (item.AbsenceReason.Description.ToLower().Contains("ma_vkt")) return false; - + + if (item.AbsenceReason.Description.ToLower().Contains("ma_bkl")) + return false; + + if (item.AbsenceReason.Description.ToLower().Contains("ma_päd.tag")) + return false; + + if (item.AbsenceReason.Description.ToLower().Contains("ma_uf")) + return false; + return base.IstAnrechenbareAbsenceTime(item); } diff --git a/ReportImp/LebenshilfeBadKreuznach/LebenshilfeBadKreuznach.csproj b/ReportImp/LebenshilfeBadKreuznach/LebenshilfeBadKreuznach.csproj index 275d26414..283ef2af7 100644 --- a/ReportImp/LebenshilfeBadKreuznach/LebenshilfeBadKreuznach.csproj +++ b/ReportImp/LebenshilfeBadKreuznach/LebenshilfeBadKreuznach.csproj @@ -79,10 +79,6 @@ - - {3FEBB560-9275-413A-9767-BB68C44EEBC3} - BeWo - {B0D73E3D-4AE7-4024-93A6-DB1F46D7CCEE} Data diff --git a/ReportImp/LebenshilfeBadKreuznach/Quittierungsbeleg.cs b/ReportImp/LebenshilfeBadKreuznach/Quittierungsbeleg.cs index 6d8e6f1f5..dd7eb45ce 100644 --- a/ReportImp/LebenshilfeBadKreuznach/Quittierungsbeleg.cs +++ b/ReportImp/LebenshilfeBadKreuznach/Quittierungsbeleg.cs @@ -5,14 +5,12 @@ using System.IO; using System.Linq; using System.Text.RegularExpressions; using System.Windows.Threading; -using BeWo.Core.Service; using BeWo.Data.Access; using BeWo.Data.Entities; using BeWo.Report; using BeWo.Report.ReportObjects; using BeWo.Service.DCEntityMapper; using BeWo.Service.Plugins; -using BeWo.ServiceProxy; using BS.Shared; using BS.Shared.Core; using BS.Shared.DataContracts; diff --git a/ReportImp/LebenshilfeBadKreuznach/Quittierungsbeleg_old.cs b/ReportImp/LebenshilfeBadKreuznach/Quittierungsbeleg_old.cs index 051b57791..b61777c7e 100644 --- a/ReportImp/LebenshilfeBadKreuznach/Quittierungsbeleg_old.cs +++ b/ReportImp/LebenshilfeBadKreuznach/Quittierungsbeleg_old.cs @@ -5,14 +5,12 @@ using System.IO; using System.Linq; using System.Text.RegularExpressions; using System.Windows.Threading; -using BeWo.Core.Service; using BeWo.Data.Access; using BeWo.Data.Entities; using BeWo.Report; using BeWo.Report.ReportObjects; using BeWo.Service.DCEntityMapper; using BeWo.Service.Plugins; -using BeWo.ServiceProxy; using BS.Shared; using BS.Shared.Core; using BS.Shared.DataContracts; diff --git a/ReportImp/LebenshilfeBadKreuznach/Statistics/CustomServiceRecordStatisticFactory.cs b/ReportImp/LebenshilfeBadKreuznach/Statistics/CustomServiceRecordStatisticFactory.cs index ab173c96f..c1a9689d7 100644 --- a/ReportImp/LebenshilfeBadKreuznach/Statistics/CustomServiceRecordStatisticFactory.cs +++ b/ReportImp/LebenshilfeBadKreuznach/Statistics/CustomServiceRecordStatisticFactory.cs @@ -146,22 +146,25 @@ namespace LebenshilfeBadKreuznach.Statistics } SupportConceptPeriodStatisticsDC periodStats = GetPeriodFromServiceRecord(cb2sc, stats.PeriodStatistics, sr); + decimal minutesProvidedWeekNew = 0; + decimal minutesProvidedWeekOld = 0; decimal minutesProvidedQuartalNew = 0; decimal minutesProvidedQuartalOld = 0; if (periodStats != null) { //Verhindern dass das ServiceRecord durch den base Aufruf doppelt gezählt wird minutesProvidedQuartalOld = periodStats.MinutesProvidedThisMonth; + minutesProvidedWeekOld = periodStats.MinutesProvidedThisWeek; } base.ProcessServiceRecord(sr, cb2sc, stats, statisticsDate, calc); - bool billable = false; - if (sr.ServiceDescription != null && sr.ServiceDescription.ServiceCategory != null) - { - billable = sr.ServiceDescription.ServiceCategory.IsBillable; - } + //bool billable = false; + //if (sr.ServiceDescription != null && sr.ServiceDescription.ServiceCategory != null) + //{ + // billable = sr.ServiceDescription.ServiceCategory.IsBillable; + //} @@ -178,10 +181,15 @@ namespace LebenshilfeBadKreuznach.Statistics { minutesProvidedQuartalNew = minutes; } - - periodStats.MinutesProvidedThisMonth = minutesProvidedQuartalOld + minutesProvidedQuartalNew; - + DateTime mondayDt = statisticsDate.GetLast(DayOfWeek.Monday).Date; + if (sr.Start >= mondayDt && sr.Start < mondayDt.AddDays(7)) + { + minutesProvidedWeekNew = minutes; + } + periodStats.MinutesProvidedThisMonth = minutesProvidedQuartalOld + minutesProvidedQuartalNew; + periodStats.MinutesProvidedThisWeek = minutesProvidedWeekOld + minutesProvidedWeekNew; + } } diff --git a/ReportImp/LebenshilfeBadKreuznach/Validation/ServiceRecordValidator.cs b/ReportImp/LebenshilfeBadKreuznach/Validation/ServiceRecordValidator.cs index 1d21b6abf..e0ba842c2 100644 --- a/ReportImp/LebenshilfeBadKreuznach/Validation/ServiceRecordValidator.cs +++ b/ReportImp/LebenshilfeBadKreuznach/Validation/ServiceRecordValidator.cs @@ -15,7 +15,15 @@ namespace LebenshilfeBadKreuznach.Validation int maxDaysEditServiceRecordsAllowed, IList employeeOids, IList cb2scOids) { var list = base.ValidateServiceRecord(newServiceRecord, statistics, maxDaysEditServiceRecordsAllowed, employeeOids, cb2scOids); + var newResult = new List(); + foreach (var item in list) + { + if (item.ResultType != ServiceRecordValidationResult.ApprovedFLSOverspending && (String.IsNullOrEmpty(item.Message) || !item.Message.Contains("liegt außerhalb des Hilfeplanzeitraums"))) + { + newResult.Add(item); + } + } if (statistics != null && statistics.PeriodStatistics != null) { foreach (var stat in statistics.PeriodStatistics) @@ -43,14 +51,14 @@ namespace LebenshilfeBadKreuznach.Validation Allow = false }; - list.Add(dc); + newResult.Add(dc); } } } } } - return list; + return newResult; } } } \ No newline at end of file diff --git a/ReportImp/SHKServiceSBD/Service/CustomVertretungsManager.cs b/ReportImp/SHKServiceSBD/Service/CustomVertretungsManager.cs index 95cf4b685..7f5455d4a 100644 --- a/ReportImp/SHKServiceSBD/Service/CustomVertretungsManager.cs +++ b/ReportImp/SHKServiceSBD/Service/CustomVertretungsManager.cs @@ -153,7 +153,12 @@ namespace SHKService.Service item.Employee = new CompactEmployeeDC(); item.Employee.LastName = "Ohne Betreuung"; } + + item.CustomerToolTip = null; + item.EmployeeToolTip = null; + item.VertreterToolTip = null; } + return vertretungsListe; } @@ -303,6 +308,30 @@ namespace SHKService.Service if (vertretungsItem.MailCustomer != null) { //vertretungsItem.MailCustomer.Message = @"Lieber Klient,%0D%0A%0D%0Ablablubb%0D%0AZeile2%0D%0A%0D%0ANochne Zeile%0D%0A%0D%0ATschüss"; + if (vertretung != null) + { + String vertreterName = vertretung.Person.LastName; + if (vertretung.Person.Sex.HasValue && vertretung.Person.Sex.Value == Sex.Male) + { + vertreterName = "Herr " + vertreterName; + } + else + { + vertreterName = "Frau " + vertreterName; + } + + vertretungsItem.MailCustomer.Message = String.Format(@" +Sehr geehrte Damen und Herren, + +die Schulbegleitung für {0} wird vom {1:dd.MM.yyyy} bis voraussichtlich {2:dd.MM.yyyy} {3} übernehmen. + +Eventuelle Änderungen oder Vertretungen nach dem Datum Ende teilen wir Ihnen so früh wie möglich mit. Es gilt die jeweils letzte Mail. + +Bei Rückfragen erreichen Sie uns an jedem Unterrichtstag von 6:30 Uhr bis 10:00 Uhr unter 015116889795", customer != null ? customer.Person.FirstName : "", vertretungsItem.Absencetime != null ? vertretungsItem.Absencetime.Start : null, vertretungsItem.Absencetime != null ? vertretungsItem.Absencetime.End : null, vertreterName); + + vertretungsItem.MailCustomer.Message = vertretungsItem.MailCustomer.Message.Replace("\n", "%0D%0A"); + } + } if (vertretungsItem.MailEmployee != null) @@ -317,7 +346,38 @@ namespace SHKService.Service if (vertretungsItem.MailSchule != null) { - //vertretungsItem.MailSchule.Message = @"Liebe Schule,%0D%0A%0D%0Ablablubb%0D%0AZeile2%0D%0A%0D%0ANochne Zeile%0D%0A%0D%0ATschüss"; + if (vertretung != null) + { + String vertreterName = vertretung.Person.LastName; + if (vertretung.Person.Sex.HasValue && vertretung.Person.Sex.Value == Sex.Male) + { + vertreterName = "Herr " + vertreterName; + } + else + { + vertreterName = "Frau " + vertreterName; + } + vertretungsItem.MailSchule.Message = String.Format(@" +Sehr geehrte Damen und Herren, + +die Schulbegleitung für {0} wird vom {1:dd.MM.yyyy} bis voraussichtlich {2:dd.MM.yyyy} {3} übernehmen. + +Eventuelle Änderungen oder Vertretungen nach dem Datum Ende teilen wir Ihnen so früh wie möglich mit. Es gilt die jeweils letzte Mail. + +Bei Rückfragen erreichen Sie uns an jedem Unterrichtstag von 6:30 Uhr bis 10:00 Uhr unter 015116889795", customer != null ? customer.Person.FirstNameLastName : "", vertretungsItem.Absencetime != null ? vertretungsItem.Absencetime.Start : null, vertretungsItem.Absencetime != null ? vertretungsItem.Absencetime.End : null, vertreterName); + } + else + { + vertretungsItem.MailSchule.Message = String.Format(@" +Sehr geehrte Damen und Herren, + +leider haben wir aktuell für {0} am {1:dd.MM.yyyy} keine freie Vertretungskraft.  + +Eventuelle Änderungen oder Vertretungen nach dem {1:dd.MM.yyyy} teilen wir Ihnen so früh wie möglich mit. Es gilt die jeweils letzte Mail. + +Bei Rückfragen erreichen Sie uns an jedem Unterrichtstag von 6:30 Uhr bis 10:00 Uhr unter: 015116889795", customer != null ? customer.Person.FirstNameLastName : "", vertretungsItem.Datum); + } + vertretungsItem.MailSchule.Message = vertretungsItem.MailSchule.Message.Replace("\n", "%0D%0A"); } } diff --git a/Service/Plugins/CustomerService.cs b/Service/Plugins/CustomerService.cs index f1047d074..16e891cd5 100644 --- a/Service/Plugins/CustomerService.cs +++ b/Service/Plugins/CustomerService.cs @@ -4,6 +4,7 @@ using System.Linq; using BeWo.Data; using BeWo.Data.Access; using BeWo.Data.Entities; +using BeWo.Data.Security; using BeWo.Service.Core; using BeWo.Service.DCEntityMapper; @@ -379,7 +380,6 @@ namespace BeWo.Service.Plugins var result = new List(); var alleList = new List(); - var cProcessed = new Dictionary(); bool darfPersonenSehen = false; bool darfFamilieSehen = false; @@ -418,7 +418,188 @@ namespace BeWo.Service.Plugins return result.OrderBy(p => p.ToString()).ToList(); } - private void SetFamilyMemberStatus(List result) + public virtual List GetAllPersonsByTypeCompact(PersonType pType) + { + var result = new List(); + + bool darfFamilieSehen = false; + bool darfAlleKlientenSehen = false; + bool darfKlientenDesTeamsSehen = false; + bool darfSeineKlientenSehen = false; + List allowedCustomerOids = new List(); + + if (!UserRightHelper.LoggedInUserHasRight(UserRightType.PersonView_View)) + { + return result; + } + + var user = UserRightHelper.GetLoggedInUser(); + if (UserRightHelper.LoggedInUserHasRight(UserRightType.Person_FamilyView)) + { + darfFamilieSehen = true; + } + if (UserRightHelper.LoggedInUserHasRight(UserRightType.CustomerView_View)) + { + darfAlleKlientenSehen = true; + darfKlientenDesTeamsSehen = true; + darfSeineKlientenSehen = true; + } + else if (UserRightHelper.LoggedInUserHasRight(UserRightType.Customer_ViewMyTeams)) + { + darfKlientenDesTeamsSehen = true; + darfSeineKlientenSehen = true; + var dict = CreateTeamOidDict(user.Employee.Oid.Value); + + foreach (var oid in dict.Keys) + { + var clist = DAOFactory.SearchDAO.FindCustomerOfTeam(oid); + foreach (var c in clist) + { + foreach (var e2c in c.Employee2CustomerList) + { + if (!e2c.EndDate.HasValue || e2c.EndDate.Value >= DateTime.Now.Date) + { + allowedCustomerOids.Add(e2c.CustomerOid.Value); + } + } + } + } + foreach (var e2c in user.Employee.Employee2CustomerList) + { + if (!e2c.EndDate.HasValue || e2c.EndDate.Value >= DateTime.Now.Date) + { + allowedCustomerOids.Add(e2c.CustomerOid.Value); + } + } + + } + else if (UserRightHelper.LoggedInUserHasRight(UserRightType.Customer_ViewMyCustomers)) + { + darfSeineKlientenSehen = true; + foreach (var e2c in user.Employee.Employee2CustomerList) + { + if (!e2c.EndDate.HasValue || e2c.EndDate.Value >= DateTime.Now.Date) + { + allowedCustomerOids.Add(e2c.CustomerOid.Value); + } + } + } + + IList persons = DAOFactory.GenericDAO.GetAll().Where(p => p.Type == pType).ToList(); + Dictionary> person2CustomerOidDict = new Dictionary>(); + + + IList personOids = new List(); + + foreach (var person in persons) + { + personOids.Add(person.Oid.Value); + } + + if (!darfFamilieSehen || !darfAlleKlientenSehen) + { + + var c2oList = DAOFactory.SearchDAO.FindCustomerOid2Persons(personOids); + + + foreach (object[] item in c2oList) + { + var oid = (long)item[0]; + var poid = (long)item[1]; + var coid = (long)item[2]; + var test = (sbyte?)item[3]; + var isF = (sbyte?)item[3]; + var c2p = new CustomerPersonRelationDC(); + c2p.Customer2PersonOid = oid; + c2p.Person = new CompactPersonDC { PersonOid = poid }; + c2p.Customer = new CompactCustomerDC { CustomerOid = coid }; + c2p.IstFamilie = isF.HasValue ? isF.Value == 1 : false; + + if (!person2CustomerOidDict.ContainsKey(poid)) + { + person2CustomerOidDict.Add(poid, new List()); + } + person2CustomerOidDict[poid].Add(c2p); + } + } + foreach (var person in persons) + { + List list = null; + if (person2CustomerOidDict.ContainsKey(person.Oid.Value)) + { + list = person2CustomerOidDict[person.Oid.Value]; + } + else + { + list = new List(); + } + + if (UserIsAllowedToViewPerson(person, list, allowedCustomerOids, darfFamilieSehen, darfAlleKlientenSehen, darfKlientenDesTeamsSehen, darfSeineKlientenSehen)) + { + if (person.Organisation2Persons.Count == 0) + { + var dc = MapperFactory.CompactPersonDC_Person.MapToNewDC(person); + result.Add(dc); + + if (pType == PersonType.Others) + AddContacts(dc, person, null); + } + foreach (var o2p in person.Organisation2Persons) + { + var dc = MapperFactory.CompactPersonDC_Person.MapToNewDC(person); + result.Add(dc); + + if (pType == PersonType.Others) + { + AddContacts(dc, person, o2p); + + dc.Organisation = o2p.Organisation.Name; + if (o2p.Organisation.Address != null) + { + dc.Street = o2p.Organisation.Address.Street; + dc.PostalCode = o2p.Organisation.Address.PostalCode; + dc.Town = o2p.Organisation.Address.Town; + } + } + } + } + } + + SetFamilyMemberStatus(result); + + return result; + } + + private bool UserIsAllowedToViewPerson(Person person, List person2CustomerList, List allowedCustomerOids, bool darfFamilieSehen, bool darfAlleKlientenSehen, bool darfKlientenDesTeamsSehen, bool darfSeineKlientenSehen) + { + if (darfFamilieSehen && darfAlleKlientenSehen) + { + return true; + } + + if (!darfFamilieSehen) + { + return person2CustomerList.Count(p => p.IstFamilie) == 0; + } + if (darfAlleKlientenSehen) + { + return true; + } + if (darfKlientenDesTeamsSehen || darfSeineKlientenSehen) + { + foreach (var p2c in person2CustomerList) + { + if (allowedCustomerOids.Contains(p2c.Customer.CustomerOid)) + { + return true; + } + } + } + + return false; + } + + private void SetFamilyMemberStatus(List result) { var familyOids = DAOFactory.SearchDAO.FindFamilyMemberOids(); @@ -431,6 +612,103 @@ namespace BeWo.Service.Plugins } } + public static void AddContacts(CompactPersonDC dc, Person person, Organisation2Person o2p) + { + if (o2p != null) + { + if (o2p.Contacts != null) + { + foreach (Contact contact in o2p.Contacts) + { + if (contact.Type == ContactType.business_Phone) + { + dc.Communication1 = contact.Value; + } + + if (contact.Type == ContactType.business_Mail) + { + dc.Communication3 = contact.Value; + } + } + } + + if (o2p.Organisation != null && o2p.Organisation.Contacts != null) + { + if (String.IsNullOrEmpty(dc.Communication1)) + { + foreach (Contact contact in o2p.Organisation.Contacts) + { + if (contact.Type == ContactType.business_Phone) + { + dc.Communication1 = contact.Value; + } + } + } + if (String.IsNullOrEmpty(dc.Communication2)) + { + //foreach (var contact in org.Contacts) + //{ + // if (contact.Type == ContactType.b) + // { + // dc.Communication2 = contact.Value; + // } + //} + } + if (String.IsNullOrEmpty(dc.Communication3)) + { + foreach (Contact contact in o2p.Organisation.Contacts) + { + if (contact.Type == ContactType.business_Mail) + { + dc.Communication3 = contact.Value; + } + } + } + } + } + + + if (String.IsNullOrEmpty(dc.Communication1)) + { + if (person.Contacts != null) + { + foreach (Contact contact in person.Contacts) + { + if (contact.Type == ContactType.private_Phone) + { + dc.Communication1 = contact.Value; + } + } + } + } + if (String.IsNullOrEmpty(dc.Communication2)) + { + if (person.Contacts != null) + { + foreach (Contact contact in person.Contacts) + { + if (contact.Type == ContactType.private_MobilePhone) + { + dc.Communication2 = contact.Value; + } + } + } + } + if (String.IsNullOrEmpty(dc.Communication3)) + { + if (person.Contacts != null) + { + foreach (Contact contact in person.Contacts) + { + if (contact.Type == ContactType.private_Mail) + { + dc.Communication3 = contact.Value; + } + } + } + } + } + private ApplicationUser GetLoggedInUser() { diff --git a/Service/Plugins/PluginLoader.cs b/Service/Plugins/PluginLoader.cs index 565d4997f..996191337 100644 --- a/Service/Plugins/PluginLoader.cs +++ b/Service/Plugins/PluginLoader.cs @@ -223,7 +223,7 @@ namespace BeWo.Service.Plugins //t = "7817461089"; // FAB e.V. (Familienarbeit und Beratung e.V.) //t = "5207911843"; // Pro Balance //t = "8619663355"; // HSH Cologne - t = "1652658918"; // LH Frankfurt Oder + //t = "1652658918"; // LH Frankfurt Oder //t = "7696927868"; // Kuhring Betreuung //t = "6251348980"; // BeWo Gün //t = "6782533512"; // LH Dorsten @@ -326,7 +326,7 @@ namespace BeWo.Service.Plugins //t = "5065709552"; // Biotop e.V. //t = "9094672461"; // Transkulturelles Betreuungsbüro (Toprak GmbH) //t = "9008813932"; // Aids Hilfe Giessen - t = "4052216789"; // Perspektiven e.V. + //t = "4052216789"; // Perspektiven e.V. //t = "7663765314"; // Christina Frommen (Frommen BeWo) //t = "5462295916"; // BeWo Dellbrueck //t = "2120989920"; // Sozialbüro Schüßler und Wilckens GbR @@ -357,7 +357,7 @@ namespace BeWo.Service.Plugins //t = "4434019324"; // FENIX Soziale Dienste //t = "6219220038"; // SKM Kreis Viersen e.V. //t = "1372050368"; // Petra Wagner Matthes - //t = "1253359817"; // Lebenshilfe Bad Kreuznach e.V. + t = "1253359817"; // Lebenshilfe Bad Kreuznach e.V. //t = "6038574522"; // I-Wohl //t = "2438529184"; // Alloheim Seniorenresidenzen SE //t = "7564067748"; // SKM Aachen diff --git a/Service/Plugins/ServiceRecordStatisticFactory.cs b/Service/Plugins/ServiceRecordStatisticFactory.cs index 91e017dd5..c6d18c114 100644 --- a/Service/Plugins/ServiceRecordStatisticFactory.cs +++ b/Service/Plugins/ServiceRecordStatisticFactory.cs @@ -366,14 +366,11 @@ namespace BeWo.Service.Plugins { stats.MinutesOutOfApprovedPeriod += minutesProvidedRounded; } - else - { - stats.MinutesProvidedTotal += minutesProvided; - stats.MinutesProvidedTotalRounded += minutesProvidedRounded; - stats.MinutesProvidedThisWeek += minutesProvidedThisWeek; - stats.MinutesProvidedThisMonth += minutesProvidedThisMonth; - stats.IstTotalUntilThisMonth += minutesProvidedUntilLastMonth; - } + stats.MinutesProvidedTotal += minutesProvided; + stats.MinutesProvidedTotalRounded += minutesProvidedRounded; + stats.MinutesProvidedThisMonth += minutesProvidedThisMonth; + stats.IstTotalUntilThisMonth += minutesProvidedUntilLastMonth; + stats.MinutesProvidedThisWeek += minutesProvidedThisWeek; if (periodStats != null) @@ -382,13 +379,12 @@ namespace BeWo.Service.Plugins { periodStats.MinutesOutOfApprovedPeriod += minutesProvidedRounded; } - { - periodStats.MinutesProvidedTotal += minutesProvided; - periodStats.MinutesProvidedTotalRounded += minutesProvidedRounded; - periodStats.MinutesProvidedThisWeek += minutesProvidedThisWeek; - periodStats.MinutesProvidedThisMonth += minutesProvidedThisMonth; - periodStats.IstTotalUntilThisMonth += minutesProvidedUntilLastMonth; - } + + periodStats.MinutesProvidedTotal += minutesProvided; + periodStats.MinutesProvidedTotalRounded += minutesProvidedRounded; + periodStats.MinutesProvidedThisWeek += minutesProvidedThisWeek; + periodStats.MinutesProvidedThisMonth += minutesProvidedThisMonth; + periodStats.IstTotalUntilThisMonth += minutesProvidedUntilLastMonth; } } diff --git a/Service/Plugins/UserService.cs b/Service/Plugins/UserService.cs index beed5264b..cffba1582 100644 --- a/Service/Plugins/UserService.cs +++ b/Service/Plugins/UserService.cs @@ -5,6 +5,7 @@ using System.Linq; using BeWo.Data; using BeWo.Data.Access; using BeWo.Data.Entities; +using BeWo.Data.Security; using BeWo.Service.Core; using BeWo.Service.DCEntityMapper; using BeWo.Service.MessageContracts; @@ -129,73 +130,12 @@ namespace BeWo.Service.Plugins // } //} } - CheckRightVersion(userDC); + UserRightHelper.CheckRightVersion(userDC); } return userDC; } - private void CheckRightVersion(UserDC userDC) - { - var lastLogins = DAOFactory.SearchDAO.FindLastLogins(userDC.LoginName, 1).ToList(); - if (lastLogins != null && lastLogins.Count > 0) - { - var login = lastLogins[0]; - if (!String.IsNullOrEmpty(login.Referrer)) - { - //var test = "MobilClient, Version: Unbekannt"; - //var test2 = "BeWoClient, Version: Microsoft Windows NT 6.2.9200.0;CLRVersion=4.0.30319.42000;BeWoVersion=Version 3.16;IsNet45OrNewer=True"; - - var str = login.Referrer; - //str = test; - var start = str.IndexOf("BeWoVersion="); - if (start > 0) - { - var stop = str.IndexOf(";", start); - if (stop > start) - { - //BeWoClient, Version: Microsoft Windows NT 6.2.9200.0;CLRVersion=4.0.30319.42000;BeWoVersion=Version 3.17;IsNet45OrNewer=True - - - var version = str.Substring(start + 12, stop - start - 12); - version = version.Replace("Version", "").Trim(); - - foreach (var ug in userDC.UserGroups) - { - var allrights = ug.Rights; - ug.Rights = new List(); - foreach (var r in allrights) - { - if (IsCorrectVersion(r, version)) - { - ug.Rights.Add(r); - } - } - } - } - } - } - } - } - - private bool IsCorrectVersion(UserRightType r, string version) - { - var rightVersion = GetRightVersion(r); - - if (version.CompareTo(rightVersion) < 0) - { - return false; - } - return true; - } - - private object GetRightVersion(UserRightType r) - { - if (r == UserRightType.Customer_ViewBetreuung || r == UserRightType.Customer_ViewAbsenceTimes) - { - return "3.17"; - } - return "1.0"; - } + } } diff --git a/Service/ServiceImplementations/CustomerServiceImp.cs b/Service/ServiceImplementations/CustomerServiceImp.cs index 19b88c9c4..3cc0982cb 100644 --- a/Service/ServiceImplementations/CustomerServiceImp.cs +++ b/Service/ServiceImplementations/CustomerServiceImp.cs @@ -387,7 +387,7 @@ namespace BeWo.Service.ServiceImplementations result.Add(dc); if (pType == PersonType.Others) - AddContacts(dc, person, null); + CustomerService.AddContacts(dc, person, null); } foreach (Organisation2Person o2p in person.Organisation2Persons) { @@ -396,7 +396,7 @@ namespace BeWo.Service.ServiceImplementations if (pType == PersonType.Others) { - AddContacts(dc, person, o2p); + CustomerService.AddContacts(dc, person, o2p); dc.Organisation = o2p.Organisation.Name; if (o2p.Organisation.Address != null) @@ -423,43 +423,10 @@ namespace BeWo.Service.ServiceImplementations { try { - IList persons = DAOFactory.GenericDAO.GetAll().Where(p => p.Type == pType).ToList(); + var s = PluginLoader.FindClass(); - var result = new List(); + return s.GetAllPersonsByTypeCompact(pType); - foreach (var person in persons) - { - if (person.Organisation2Persons.Count == 0) - { - var dc = MapperFactory.CompactPersonDC_Person.MapToNewDC(person); - result.Add(dc); - - if (pType == PersonType.Others) - AddContacts(dc, person, null); - } - foreach (var o2p in person.Organisation2Persons) - { - var dc = MapperFactory.CompactPersonDC_Person.MapToNewDC(person); - result.Add(dc); - - if (pType == PersonType.Others) - { - AddContacts(dc, person, o2p); - - dc.Organisation = o2p.Organisation.Name; - if (o2p.Organisation.Address != null) - { - dc.Street = o2p.Organisation.Address.Street; - dc.PostalCode = o2p.Organisation.Address.PostalCode; - dc.Town = o2p.Organisation.Address.Town; - } - } - } - } - - SetFamilyMemberStatus(result); - - return result; } catch (Exception e) { @@ -1945,102 +1912,6 @@ namespace BeWo.Service.ServiceImplementations } } - private static void AddContacts(CompactPersonDC dc, Person person, Organisation2Person o2p) - { - if (o2p != null) - { - if (o2p.Contacts != null) - { - foreach (Contact contact in o2p.Contacts) - { - if (contact.Type == ContactType.business_Phone) - { - dc.Communication1 = contact.Value; - } - - if (contact.Type == ContactType.business_Mail) - { - dc.Communication3 = contact.Value; - } - } - } - - if (o2p.Organisation != null && o2p.Organisation.Contacts != null) - { - if (String.IsNullOrEmpty(dc.Communication1)) - { - foreach (Contact contact in o2p.Organisation.Contacts) - { - if (contact.Type == ContactType.business_Phone) - { - dc.Communication1 = contact.Value; - } - } - } - if (String.IsNullOrEmpty(dc.Communication2)) - { - //foreach (var contact in org.Contacts) - //{ - // if (contact.Type == ContactType.b) - // { - // dc.Communication2 = contact.Value; - // } - //} - } - if (String.IsNullOrEmpty(dc.Communication3)) - { - foreach (Contact contact in o2p.Organisation.Contacts) - { - if (contact.Type == ContactType.business_Mail) - { - dc.Communication3 = contact.Value; - } - } - } - } - } - - - if (String.IsNullOrEmpty(dc.Communication1)) - { - if (person.Contacts != null) - { - foreach (Contact contact in person.Contacts) - { - if (contact.Type == ContactType.private_Phone) - { - dc.Communication1 = contact.Value; - } - } - } - } - if (String.IsNullOrEmpty(dc.Communication2)) - { - if (person.Contacts != null) - { - foreach (Contact contact in person.Contacts) - { - if (contact.Type == ContactType.private_MobilePhone) - { - dc.Communication2 = contact.Value; - } - } - } - } - if (String.IsNullOrEmpty(dc.Communication3)) - { - if (person.Contacts != null) - { - foreach (Contact contact in person.Contacts) - { - if (contact.Type == ContactType.private_Mail) - { - dc.Communication3 = contact.Value; - } - } - } - } - } private List CreateCompactOrganisations(IList list) { diff --git a/Service/ServiceImplementations/UserServiceImp.cs b/Service/ServiceImplementations/UserServiceImp.cs index 02a1a79e8..ada951704 100644 --- a/Service/ServiceImplementations/UserServiceImp.cs +++ b/Service/ServiceImplementations/UserServiceImp.cs @@ -25,6 +25,7 @@ using MySql.Data.MySqlClient; using BeWo.Service.Configuration; using BeWo.Service.OwnChat; using BeWo.Service.Plugins; +using BeWo.Data.Security; namespace BeWo.Service.ServiceImplementations { @@ -286,7 +287,13 @@ namespace BeWo.Service.ServiceImplementations { try { - return MapperFactory.UserGroupDC_UserGroup.MapToNewDCs(DAOFactory.GenericDAO.GetAllActive()); + var list = MapperFactory.UserGroupDC_UserGroup.MapToNewDCs(DAOFactory.GenericDAO.GetAllActive()); + var version = UserRightHelper.GetBeWoVersion(); + foreach (var ug in list) + { + UserRightHelper.CheckRightVersion(version, ug); + } + return list; } catch (Exception e) { @@ -312,7 +319,14 @@ namespace BeWo.Service.ServiceImplementations { try { - return MapperFactory.UserGroupDC_UserGroup.MapToNewDCs(SettingsLogic.GetLastOpened()); + var list = MapperFactory.UserGroupDC_UserGroup.MapToNewDCs(SettingsLogic.GetLastOpened()); + + foreach (var item in list) + { + item.Rights = new List(); // Keine Rechte zum Client schicken um bei neuen Rechten keinen Fehler mit alter Version zu erzeugen. Die Rechte sind hier sowieso nicht wichtig. + } + + return list; } catch (Exception e) { @@ -564,6 +578,7 @@ namespace BeWo.Service.ServiceImplementations SettingsLogic.AddToUsersHistory(pUserOid); var user = MapperFactory.UserDC_User.MapToNewDC(DAOFactory.GenericDAO.LoadByID(pUserOid)); + UserRightHelper.CheckRightVersion(user); //var m = DAOFactory.GenericDAO.LoadByID(1); //if (m != null && m.ClientId == "SBD") //{ @@ -632,7 +647,10 @@ namespace BeWo.Service.ServiceImplementations { try { - return MapperFactory.UserGroupDC_UserGroup.MapToNewDC(DAOFactory.GenericDAO.LoadByID(pOid)); + var ug = MapperFactory.UserGroupDC_UserGroup.MapToNewDC(DAOFactory.GenericDAO.LoadByID(pOid)); + UserRightHelper.CheckRightVersion(ug); + + return ug; } catch (Exception e) {