//opdrachten tekenen op de ganttchart private void drawEvents(DateTime newFrom, DateTime newTo) { int index = 0; string type = string.Empty; List <BarInformation> lijst = new List <BarInformation>(); foreach (opdracht o in OpdrachtManagement.getOngeredenOpdrachten()) { //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"; } if (eventStart >= newFrom.Subtract(eventEnd - eventStart) && eventEnd <= newTo.Add((eventEnd - eventStart))) { index += 1; lijst.Add(new BarInformation(type + ": " + o.opdracht_id.ToString(), eventStart, eventEnd, barkleur, hoverkleur, index)); } else { } //ganttChart1.AddChartBar(o.opdracht_id.ToString(), null, eventStart, eventEnd, Color.Aqua, Color.Khaki, index); } //contracten tekenen foreach (opdracht o in ContractManagement.getContracten()) { 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.getRitInstantiesVoorChart(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); if (eventStart >= newFrom.Subtract(eventEnd - eventStart) && eventEnd <= newTo.Add((eventEnd - eventStart))) { index += 1; lijst.Add(new BarInformation("Contract: " + o.opdracht_id.ToString(), eventStart, eventEnd, Color.DarkGreen, Color.Green, index)); lijst.Add(new BarInformation("Contract: " + o.opdracht_id.ToString(), eventStart_2, eventEnd_2, Color.DarkGreen, Color.Green, index)); } else { } } } } foreach (BarInformation bar in lijst) { ganttChart1.AddChartBar(bar.RowText, bar, bar.FromTime, bar.ToTime, bar.Color, bar.HoverColor, bar.Index); } }