/// <summary> /// Vul Totaalregel (Alle 'maandagen' bij elkaar opgeteld voor de hele periode) /// </summary> /// <param name="selxMANDAGEN"></param> /// <param name="DitProject"></param> private string vul_TotaalRegel(List <PoortViewMandagen> selxMANDAGEN, PoortViewProject DitProject) { string regel = TotaalRegel.Replace("{Periode}", "Totaal"); int TOTAAL = 0; Detailregels = 0; // Indien je begint met een totaalgebeuren, dan wil je dat daarna de eerste week-totaalregel begint met een tussenlijntje // om zo iets duidelijker onderscheid te maken tussen het totaaloverzicht en de weektotalen TussenLijntjeNodig = true; DateTime EenWillekeurigeMaandag = new DateTime(2013, 10, 21).Date; for (int Weekdag = 0; Weekdag <= 6; Weekdag++) { var DagNR = EenWillekeurigeMaandag.AddDays(Weekdag).DayOfWeek; int totaal = selxMANDAGEN .Where(x => x.Begintijd.DayOfWeek == DagNR && x.ProjectId == DitProject.ProjectId) .Select(x => x.Uren * 60 + x.Minuten).Sum(); TOTAAL += totaal; regel = regel.Replace("{" + DagNR.ToString() + "}", Uurformaat(totaal)); } if (TOTAAL > 0) { return(regel.Replace("{Totaal}", Uurformaat(TOTAAL))); } else { return(""); } }
/// <summary> /// Vul Detailregel (Losse dagen binnen één week) /// </summary> /// <param name="selxMANDAGEN"></param> /// <param name="DitProject"></param> /// <param name="_ArbeidsRelatieVW"></param> /// <param name="poortViewVakman"></param> /// <param name="_AllArbeidsrelaties"></param> /// <param name="pStartDatum"></param> /// <param name="pEindDatum"></param> private string Vul_DetailRegel(List <PoortViewMandagen> selxMANDAGEN, PoortViewProject DitProject, PoortViewVakman poortViewVakman, DateTime pStartDatum, DateTime pEindDatum, ref string tabel) { // Om de 3 regels de kleur van de kleur van de detailregel omwisselen string regel = DetailRegel.Replace("Detailregel", "DetailregelColor" + ((Detailregels++ % 6) / 3).ToString()); if (DetailregelsLeft-- == 3) // Neem nu extra grote rowspan om vorige rowspans waar deze rij in zit soort van te 'overrulen' { regel = regel.Replace("</tr>", "<td rowspan=\"100\" style=\"page-break-inside:avoid\" > </td></tr>"); } //regel = regel.Replace("{Relatie}", _Ketenpartner ); regel = regel.Replace("{BSN}", poortViewVakman.BSNLandcode + " " + poortViewVakman.Bsn); regel = regel.Replace("{Naam}", poortViewVakman.Naam); int TOTAAL = 0; for (DateTime dag = pStartDatum; dag < pEindDatum; dag = dag.AddDays(1)) { int totaal = selxMANDAGEN .Where(x => x.ProjectId == DitProject.ProjectId && x.VakmanId == poortViewVakman.VakmanId && x.Begintijd.Date == dag.Date) .Select(x => x.Uren * 60 + x.Minuten).Sum(); TOTAAL += totaal; regel = regel.Replace("{" + dag.DayOfWeek + "}", Uurformaat(totaal)); } return(TOTAAL > 0 ? (regel.Replace("{Totaal}", Uurformaat(TOTAAL))) : ""); }
/// <summary> /// Vul detailregel (Alle 'maandagen' bij elkaar opgeteld voor de hele periode) /// </summary> /// <param name="selxMANDAGEN"></param> /// <param name="DitProject"></param> /// <param name="_ArbeidsRelatieVW"></param> /// <param name="poortViewVakman"></param> /// <param name="_AllArbeidsrelaties"></param> private string Vul_DetailRegel(List <PoortViewMandagen> selxMANDAGEN, PoortViewProject DitProject, PoortViewVakman poortViewVakman, ref string tabel) { // Om de 3 regels de kleur van de kleur van de detailregel omwisselen string regel = DetailRegel.Replace("Detailregel", "DetailregelColor" + ((Detailregels++ % 6) / 3).ToString()); //regel = regel.Replace("{Relatie}", _Ketenpartner); regel = regel.Replace("{BSN}", poortViewVakman.BSNLandcode + " " + poortViewVakman.Bsn); regel = regel.Replace("{Naam}", poortViewVakman.Naam); DateTime EenWillekeurigeMaandag = new DateTime(2013, 10, 21).Date; int TOTAAL = 0; for (int Weekdag = 0; Weekdag <= 6; Weekdag++) { var DagNR = EenWillekeurigeMaandag.AddDays(Weekdag).DayOfWeek; int totaal = selxMANDAGEN .Where(x => x.ProjectId == DitProject.ProjectId && x.VakmanId == poortViewVakman.VakmanId && x.Begintijd.DayOfWeek == DagNR) .Select(x => x.Uren * 60 + x.Minuten).Sum(); TOTAAL += totaal; regel = regel.Replace("{" + DagNR.ToString() + "}", Uurformaat(totaal)); } return(TOTAAL > 0 ? regel.Replace("{Totaal}", Uurformaat(TOTAAL)) : ""); }
/// <summary> /// Vul Totaalregel (Alle 'maandagen' bij elkaar opgeteld voor de hele periode) /// </summary> /// <param name="selxMANDAGEN"></param> /// <param name="DitProject"></param> private string vul_TotaalRegel(List <PoortViewMandagen> selxMANDAGEN, PoortViewProject DitProject) { string regel = TotaalRegel.Replace("{Periode}", "Totaal"); int TOTAAL = 0; Detailregels = 0; DateTime EenWillekeurigeMaandag = new DateTime(2013, 10, 21).Date; for (int Weekdag = 0; Weekdag <= 6; Weekdag++) { var DagNR = EenWillekeurigeMaandag.AddDays(Weekdag).DayOfWeek; int totaal = selxMANDAGEN .Where(x => x.Begintijd.DayOfWeek == DagNR && x.ProjectId == DitProject.ProjectId) .Select(x => x.Uren * 60 + x.Minuten).Sum(); TOTAAL += totaal; regel = regel.Replace("{" + DagNR.ToString() + "}", Uurformaat(totaal)); } if (TOTAAL > 0) { return(regel.Replace("{Totaal}", Uurformaat(TOTAAL))); } else { return(""); } }
/// <summary> /// Vul Totaalregel (alle afzonderlijke dagen binnen de gegeven periode van een week) /// </summary> /// <param name="selxMANDAGEN"></param> /// <param name="DitProject"></param> /// <param name="_StartTijd"></param> /// <param name="_EindeTijd"></param> private string Vul_TotaalRegel(List <PoortViewMandagen> selxMANDAGEN, PoortViewProject DitProject, DateTime _StartTijd, DateTime _EindeTijd) { //RegelsOpDezePagina = TotaalRegelPlusLijntje; string regel = TotaalRegel; if (TussenLijntjeNodig) { TussenLijntjeNodig = false; regel = TotaalRegelPlusLijntje; } if (_StartTijd == _EindeTijd.AddDays(-7)) { regel = regel.Replace("{Periode}", "Week " + ET.weeknummerNEW(_StartTijd, true) + ""); } else if (_StartTijd.AddDays(14) == _EindeTijd) { regel = regel.Replace("{Periode}", "Week " + ET.weeknummerNEW(_StartTijd, true) + " en week " + ET.weeknummerNEW(_EindeTijd.AddDays(-7), true)); } else { regel = regel.Replace("{Periode}", "Week " + ET.weeknummerNEW(_StartTijd, true) + " t/m week " + ET.weeknummerNEW(_EindeTijd.AddDays(-7), true)); } int TOTAAL = 0; Detailregels = 0; for (DateTime dag = _StartTijd; dag < _EindeTijd; dag = dag.AddDays(1)) { var TEST = selxMANDAGEN .Where(x => x.Begintijd.Date == dag.Date && x.ProjectId == DitProject.ProjectId) .ToList(); int totaal = selxMANDAGEN .Where(x => x.Begintijd.Date == dag.Date && x.ProjectId == DitProject.ProjectId) .Select(x => x.Uren * 60 + x.Minuten).Sum(); TOTAAL += totaal; regel = regel.Replace("{" + dag.DayOfWeek + "}", Uurformaat(totaal)); } // Indien geen uren deze periode, voeg dan detailregel toe met tekst "Niet gewerkt' if (TOTAAL == 0) { regel += NietGewerkRegel; } return(regel.Replace("{Totaal}", Uurformaat(TOTAAL))); }
/// <summary> /// Vul Totaalregel (alle afzonderlijke dagen binnen de gegeven periode van een week) /// </summary> /// <param name="selxMANDAGEN"></param> /// <param name="DitProject"></param> /// <param name="_StartTijd"></param> /// <param name="_EindeTijd"></param> private string Vul_TotaalRegel(List <PoortViewMandagen> selxMANDAGEN, PoortViewProject DitProject, DateTime _StartTijd, DateTime _EindeTijd) { string regel = TotaalRegel; if (_StartTijd == _EindeTijd.AddDays(-7)) { regel = regel.Replace("{Periode}", "Week " + ET.weeknummerNEW(_StartTijd, true) + ""); } else if (_StartTijd.AddDays(14) == _EindeTijd) { regel = regel.Replace("{Periode}", "Week " + ET.weeknummerNEW(_StartTijd, true) + " en week " + ET.weeknummerNEW(_EindeTijd.AddDays(-7), true)); } else { regel = regel.Replace("{Periode}", "Week " + ET.weeknummerNEW(_StartTijd, true) + " t/m week " + ET.weeknummerNEW(_EindeTijd.AddDays(-7), true)); } int TOTAAL = 0; Detailregels = 0; for (DateTime dag = _StartTijd; dag < _EindeTijd; dag = dag.AddDays(1)) { var TEST = selxMANDAGEN .Where(x => x.Begintijd.Date == dag.Date && x.ProjectId == DitProject.ProjectId) .ToList(); int totaal = selxMANDAGEN .Where(x => x.Begintijd.Date == dag.Date && x.ProjectId == DitProject.ProjectId) .Select(x => x.Uren * 60 + x.Minuten).Sum(); TOTAAL += totaal; regel = regel.Replace("{" + dag.DayOfWeek + "}", Uurformaat(totaal)); } //return (TOTAAL> 0 ? regel.Replace("{Totaal}", Uurformaat(TOTAAL)) : ""); // Return totaalregel altijd, dus ook bij 0-totaal return(regel.Replace("{Totaal}", Uurformaat(TOTAAL))); }