From 94099a54fd80ec27235ffd630f5f124e9aaa9265 Mon Sep 17 00:00:00 2001 From: Alexandra Date: Tue, 20 Jun 2023 15:46:14 +0200 Subject: [PATCH] SKMKrefeld/Quittierungsbeleg.cs --- ReportImp/SKMKrefeld/Quittierungsbeleg.cs | 382 +++++++++++----------- 1 file changed, 191 insertions(+), 191 deletions(-) diff --git a/ReportImp/SKMKrefeld/Quittierungsbeleg.cs b/ReportImp/SKMKrefeld/Quittierungsbeleg.cs index b23635d00..381bec8ce 100644 --- a/ReportImp/SKMKrefeld/Quittierungsbeleg.cs +++ b/ReportImp/SKMKrefeld/Quittierungsbeleg.cs @@ -1,193 +1,193 @@ -using System; -using System.Collections.Generic; -using System.Drawing; -using System.IO; -using System.Text.RegularExpressions; -using BeWo.Report; -using BeWo.Report.ReportObjects; -using BS.Shared.Core; -using DevExpress.XtraReports.UI; - -namespace SkmKrefeld -{ - public partial class Quittierungsbeleg : XtraReport, IBeWoReport - { - public Quittierungsbeleg() - { - InitializeComponent(); - } - - public void SetReportDataSource(ServicesOverviewRO pRO) - { - - // Get calling method name - //StackTrace stackTrace = new StackTrace(); - //Debug.WriteLine(stackTrace.GetFrame(1).GetMethod().Name); - - bool hatGruppen = false; - - //if (pRO == null) - // return; - - if (pRO.Services != null) - { - List servicesBillable = new List(); - - foreach (var sd in pRO.Services) - { - if (sd.IsBillable) - { +using System; +using System.Collections.Generic; +using System.Drawing; +using System.IO; +using System.Text.RegularExpressions; +using BeWo.Report; +using BeWo.Report.ReportObjects; +using BS.Shared.Core; +using DevExpress.XtraReports.UI; + +namespace SkmKrefeld +{ + public partial class Quittierungsbeleg : XtraReport, IBeWoReport + { + public Quittierungsbeleg() + { + InitializeComponent(); + } + + public void SetReportDataSource(ServicesOverviewRO pRO) + { + + // Get calling method name + //StackTrace stackTrace = new StackTrace(); + //Debug.WriteLine(stackTrace.GetFrame(1).GetMethod().Name); + + bool hatGruppen = false; + + //if (pRO == null) + // return; + + if (pRO.Services != null) + { + List servicesBillable = new List(); + + foreach (var sd in pRO.Services) + { + if (sd.IsBillable) + { ServicesOverviewRO.CreateSignatureString(sd); - sd.Notice5 = "E"; - if (sd.ServiceDescription.ToLower().Contains("fehlkontakt")) - { - sd.Notice5 = "F"; - } - else if (sd.IsGroup) - { - hatGruppen = true; - sd.Notice5 = "GR"; - } + sd.Notice5 = "E"; + if (sd.ServiceDescription.ToLower().Contains("fehlkontakt")) + { + sd.Notice5 = "F"; + } + else if (sd.IsGroup) + { + hatGruppen = true; + sd.Notice5 = "GR"; + } servicesBillable.Add(sd); - } - } - - pRO.Services = servicesBillable; - } - - if (String.IsNullOrWhiteSpace(pRO.AbsenceTimes)) - { - lblHatAbwesenheiten.Text = "X"; - } - - if (!hatGruppen) - { - lblHatGruppen.Text = "X"; - } - - ErstelleAbwesenheitenTabelle(pRO); - - bindingSource1.DataSource = pRO; - } - - private void ErstelleAbwesenheitenTabelle(ServicesOverviewRO pRo) - { - if (pRo.Abwesenheiten != null) - { - int newRows = 0; - int index = 1; - foreach (var at in pRo.Abwesenheiten) - { - DevExpress.XtraReports.UI.XRTableRow row = null; - if (index < xrTableAbwesenheiten.Rows.Count) - { - row = xrTableAbwesenheiten.Rows[index]; - } - else - { - row = xrTableAbwesenheiten.InsertRowBelow(xrTableAbwesenheiten.Rows[xrTableAbwesenheiten.Rows.Count - 1]); - newRows++; - } - - row.Cells[0].Text = String.Format("{0:dd.MM.yyyy}", at.Start); - int? days = null; - - if (at.End.HasValue) - { - row.Cells[1].Text = String.Format("{0:dd.MM.yyyy}", at.End); - days = (int)at.End.Value.Subtract(at.Start.Value).TotalDays + 1; - } - else - { - row.Cells[1].Text = "unbekannt"; - } - - row.Cells[2].Text = String.Format("{0:0}", days); - - index++; - } - - if (newRows > 0) - { - lblUnterschriftKlient.Top += newRows * 20; - lblUnterschriftMitarbeiter.Top += newRows * 20; - } - } - } - - // TODO: Wie anzeigen? Alle? - private void EmployeeSignature_BeforePrint(object sender, System.Drawing.Printing.PrintEventArgs e) - { - return; - - if(sender is XRPictureBox pictureBox) - { - var base64String = pictureBox.Tag as string; - - if(!string.IsNullOrWhiteSpace(base64String)) - { - var base64Data = Regex.Match(base64String, @"data:image/(?.+?),(?.+)").Groups["data"].Value; - var binaryData = Convert.FromBase64String(base64Data); - var image = ByteArrayToImage(binaryData); - - pictureBox.Image = image; - } - else - { - pictureBox.Image = null; - } - } - } - - // TODO: Wie anzeigen? Alle? - // TODO: Visibile der Datumstextboxen auf true setzen! - private void CustomerSignature_BeforePrint(object sender, System.Drawing.Printing.PrintEventArgs e) - { - return; - - if(sender is XRPictureBox pictureBox) - { - var base64String = pictureBox.Tag as string; - - if(!string.IsNullOrWhiteSpace(base64String)) - { - var base64Data = Regex.Match(base64String, @"data:image/(?.+?),(?.+)").Groups["data"].Value; - var binaryData = Convert.FromBase64String(base64Data); - var image = ByteArrayToImage(binaryData); - - pictureBox.Image = image; - } - else - { - pictureBox.Image = null; - } - } - } - - private void picSignature_BeforePrint(object sender, System.Drawing.Printing.PrintEventArgs e) - { - XRPictureBox xrBox = sender as XRPictureBox; - //var test = this.GetCurrent - string base64String = xrBox.Tag as string; - if (!String.IsNullOrWhiteSpace(base64String)) - { - var base64Data = Regex.Match(base64String, @"data:image/(?.+?),(?.+)").Groups["data"].Value; - var binData = Convert.FromBase64String(base64Data); - Image img = ByteArrayToImage(binData); - xrBox.Image = Utils.CropImage(img); - } - else - { - xrBox.Image = null; - } - } - - public Image ByteArrayToImage(byte[] byteArrayIn) - { - using(var memoryStream = new MemoryStream(byteArrayIn)) - { - return Image.FromStream(memoryStream); - } - } - } -} + } + } + + pRO.Services = servicesBillable; + } + + if (String.IsNullOrWhiteSpace(pRO.AbsenceTimes)) + { + lblHatAbwesenheiten.Text = "X"; + } + + if (!hatGruppen) + { + lblHatGruppen.Text = "X"; + } + + ErstelleAbwesenheitenTabelle(pRO); + + bindingSource1.DataSource = pRO; + } + + private void ErstelleAbwesenheitenTabelle(ServicesOverviewRO pRo) + { + if (pRo.Abwesenheiten != null) + { + int newRows = 0; + int index = 1; + foreach (var at in pRo.Abwesenheiten) + { + DevExpress.XtraReports.UI.XRTableRow row = null; + if (index < xrTableAbwesenheiten.Rows.Count) + { + row = xrTableAbwesenheiten.Rows[index]; + } + else + { + row = xrTableAbwesenheiten.InsertRowBelow(xrTableAbwesenheiten.Rows[xrTableAbwesenheiten.Rows.Count - 1]); + newRows++; + } + + row.Cells[0].Text = String.Format("{0:dd.MM.yyyy}", at.Start); + int? days = null; + + if (at.End.HasValue) + { + row.Cells[1].Text = String.Format("{0:dd.MM.yyyy}", at.End); + days = (int)at.End.Value.Subtract(at.Start.Value).TotalDays + 1; + } + else + { + row.Cells[1].Text = "unbekannt"; + } + + row.Cells[2].Text = String.Format("{0:0}", days); + + index++; + } + + if (newRows > 0) + { + lblUnterschriftKlient.Top += newRows * 20; + lblUnterschriftMitarbeiter.Top += newRows * 20; + } + } + } + + // TODO: Wie anzeigen? Alle? + private void EmployeeSignature_BeforePrint(object sender, System.Drawing.Printing.PrintEventArgs e) + { + return; + + if(sender is XRPictureBox pictureBox) + { + var base64String = pictureBox.Tag as string; + + if(!string.IsNullOrWhiteSpace(base64String)) + { + var base64Data = Regex.Match(base64String, @"data:image/(?.+?),(?.+)").Groups["data"].Value; + var binaryData = Convert.FromBase64String(base64Data); + var image = ByteArrayToImage(binaryData); + + pictureBox.Image = image; + } + else + { + pictureBox.Image = null; + } + } + } + + // TODO: Wie anzeigen? Alle? + // TODO: Visibile der Datumstextboxen auf true setzen! + private void CustomerSignature_BeforePrint(object sender, System.Drawing.Printing.PrintEventArgs e) + { + return; + + if(sender is XRPictureBox pictureBox) + { + var base64String = pictureBox.Tag as string; + + if(!string.IsNullOrWhiteSpace(base64String)) + { + var base64Data = Regex.Match(base64String, @"data:image/(?.+?),(?.+)").Groups["data"].Value; + var binaryData = Convert.FromBase64String(base64Data); + var image = ByteArrayToImage(binaryData); + + pictureBox.Image = image; + } + else + { + pictureBox.Image = null; + } + } + } + + private void picSignature_BeforePrint(object sender, System.Drawing.Printing.PrintEventArgs e) + { + XRPictureBox xrBox = sender as XRPictureBox; + //var test = this.GetCurrent + string base64String = xrBox.Tag as string; + if (!String.IsNullOrWhiteSpace(base64String)) + { + var base64Data = Regex.Match(base64String, @"data:image/(?.+?),(?.+)").Groups["data"].Value; + var binData = Convert.FromBase64String(base64Data); + Image img = ByteArrayToImage(binData); + xrBox.Image = Utils.CropImage(img); + } + else + { + xrBox.Image = null; + } + } + + public Image ByteArrayToImage(byte[] byteArrayIn) + { + using(var memoryStream = new MemoryStream(byteArrayIn)) + { + return Image.FromStream(memoryStream); + } + } + } +}