//events per klant tekenen private void drawEventsForCustomers(DateTime newFrom, DateTime newTo) { int index = 0; string type = string.Empty; List <BarInformation> lijst = new List <BarInformation>(); foreach (klant klant in KlantManagement.getKlanten()) { //opdrachten tekenen foreach (opdracht o in KlantManagement.getOpdrachtenVanKlant(klant)) { //Een start datetime aanmaken en einde datetime aanmaken //Start datum string data_vanaf = o.vanaf_uur; string[] delimiters = { ":" }; string[] vanaf = data_vanaf.Split(delimiters, StringSplitOptions.None); DateTime eventStart = new DateTime(o.vanaf_datum.Year, o.vanaf_datum.Month, o.vanaf_datum.Day, Int32.Parse(vanaf[0]), Int32.Parse(vanaf[1]), 0); //Eind datum string data_tot = o.tot_uur; string[] tot = data_tot.Split(delimiters, StringSplitOptions.None); DateTime eventEnd = new DateTime(o.tot_datum.Year, o.tot_datum.Month, o.tot_datum.Day, Int32.Parse(tot[0]), Int32.Parse(tot[1]), 0); if (o.offerte_datum != null && o.opdracht_datum == null && o.factuur_datum == null) { barkleur = Color.DarkRed; hoverkleur = Color.IndianRed; type = "Offerte"; } else if (o.opdracht_datum != null && o.factuur_datum == null) { barkleur = Color.CornflowerBlue; hoverkleur = Color.DarkBlue; type = "Opdracht"; } else if (o.factuur_datum != null) { barkleur = Color.Gray; hoverkleur = Color.LightGray; type = "Factuur"; } lijst.Add(new BarInformation("Klant: " + klant.naam, eventStart, eventEnd, barkleur, hoverkleur, index)); } //contracten tekenen foreach (opdracht o in KlantManagement.getContractenVanKlant(klant)) { DateTime beginDatum = o.vanaf_datum; TimeSpan lengte = o.tot_datum - o.vanaf_datum; string[] delimiters = { ":" }; foreach (contract_rit cr in ContractManagement.getRitten(o.opdracht_id)) { foreach (rit_instantie ri in ContractManagement.getRitInstanties(cr)) { //Start datum rit 1 string data_vanaf = cr.rit1_vertrek; string[] vanaf = data_vanaf.Split(delimiters, StringSplitOptions.None); DateTime eventStart = new DateTime(ri.datum.Year, ri.datum.Month, ri.datum.Day, Int32.Parse(vanaf[0]), Int32.Parse(vanaf[1]), 0); //Start datum rit 2 string data_vanaf_2 = cr.rit2_vertrek; string[] vanaf_2 = data_vanaf_2.Split(delimiters, StringSplitOptions.None); DateTime eventStart_2 = new DateTime(ri.datum.Year, ri.datum.Month, ri.datum.Day, Int32.Parse(vanaf_2[0]), Int32.Parse(vanaf_2[1]), 0); //Eind datum rit 1 string data_tot = cr.rit1_terug; string[] tot = data_tot.Split(delimiters, StringSplitOptions.None); DateTime eventEnd = new DateTime(ri.datum.Year, ri.datum.Month, ri.datum.Day, Int32.Parse(tot[0]), Int32.Parse(tot[1]), 0); //Eind datum rit 2 string data_tot_2 = cr.rit2_terug; string[] tot_2 = data_tot_2.Split(delimiters, StringSplitOptions.None); DateTime eventEnd_2 = new DateTime(ri.datum.Year, ri.datum.Month, ri.datum.Day, Int32.Parse(tot_2[0]), Int32.Parse(tot_2[1]), 0); lijst.Add(new BarInformation("Klant: " + klant.naam, eventStart, eventEnd, Color.DarkGreen, Color.Green, index)); lijst.Add(new BarInformation("Klant: " + klant.naam, eventStart_2, eventEnd_2, Color.DarkGreen, Color.Green, index)); } } } index += 1; } foreach (BarInformation bar in lijst) { ganttChart1.AddChartBar(bar.RowText, bar, bar.FromTime, bar.ToTime, bar.Color, bar.HoverColor, bar.Index); } }