public ucFactuurContract() { InitializeComponent(); //combobox opvullen met items (facturen), omdat opvullen via datasource "SelectedIndexChanged" triggert. cbbID.Items.Clear(); cbbID.Items.AddRange(ContractManagement.getContracten().ToArray()); cbbID.DisplayMember = "factuur_id_full"; cbbID.ValueMember = "opdracht_id"; cbbKlant.DataSource = KlantManagement.getKlanten(); cbbKlant.DisplayMember = "naam"; cbbKlant.ValueMember = "klant_id"; cbbKlant.SelectedIndex = -1; cbbVertrek.DataSource = LocatieManagement.getLocaties(); cbbVertrek.DisplayMember = "FullAdress"; cbbVertrek.ValueMember = "locatie_id"; cbbVertrek.SelectedIndex = -1; cbbBestemming.DataSource = LocatieManagement.getLocaties(); cbbBestemming.DisplayMember = "FullAdress"; cbbBestemming.ValueMember = "locatie_id"; cbbBestemming.SelectedIndex = -1; dtTot.Value = DateTime.Today; dtVan.Value = DateTime.Today; disableFields(); }
public void fillbasics() { //combobox opvullen met items (contracten), omdat opvullen via datasource "SelectedIndexChanged" triggert. //cbbID.Items.Clear(); //cbbID.Items.AddRange(ContractManagement.getContracten().ToArray()); cbbID.DataSource = ContractManagement.getContracten(); cbbID.DisplayMember = "contract_id_full"; cbbID.ValueMember = "opdracht_id"; cbbID.SelectedIndex = -1; try { cbbID.DropDownWidth = DropDownWidth(cbbID); } catch { } cbbKlant.DataSource = KlantManagement.getKlanten(); cbbKlant.DisplayMember = "naam"; cbbKlant.ValueMember = "klant_id"; cbbKlant.SelectedIndex = -1; cbbVertrek.DataSource = LocatieManagement.getLocaties(); cbbVertrek.DisplayMember = "FullAdress"; cbbVertrek.ValueMember = "locatie_id"; cbbVertrek.SelectedIndex = -1; cbbBestemming.DataSource = LocatieManagement.getLocaties(); cbbBestemming.DisplayMember = "FullAdress"; cbbBestemming.ValueMember = "locatie_id"; cbbBestemming.SelectedIndex = -1; cbbOpstap_1.DataSource = LocatieManagement.getLocaties(); cbbOpstap_1.DisplayMember = "FullAdress"; cbbOpstap_1.ValueMember = "locatie_id"; cbbOpstap_1.SelectedIndex = -1; cbbOpstap_2.DataSource = LocatieManagement.getLocaties(); cbbOpstap_2.DisplayMember = "FullAdress"; cbbOpstap_2.ValueMember = "locatie_id"; cbbOpstap_2.SelectedIndex = -1; dtVan.Value = DateTime.Today; dtTot.Value = DateTime.Today; }
//Methode om contracten te verwijderen private void btnVerwijder_Click(object sender, EventArgs e) { opdracht verwijderContract = (opdracht)cbbID.SelectedItem; if (verwijderContract == null) { MainForm.updateStatus = "U moet een contract selecteren om te verwijderen."; } else { if (ContractManagement.deleteContract(verwijderContract.opdracht_id) == true) { MainForm.updateStatus = "Contract is succesvol verwijderd."; cbbID.DataSource = ContractManagement.getContracten(); cbbID.SelectedIndex = 1; } else { MainForm.updateStatus = "Het contract kon niet worden verwijderd."; } } }
private void btnOpslaan_Click(object sender, EventArgs e) { //Validatie if (Validation.hasValidationErrors(this.Controls)) { return; } //als validatie geslaagd is //if (btnOpslaan.Name == "btnAanmaken") if (cbbID.Visible == false) { opdracht nieuwContract = ContractManagement.addContract((klant)cbbKlant.SelectedItem, dtVan.Value, dtTot.Value, Byte.Parse(txtPlaatsen.Text), txtOmschrijving.Text, txtGezelschap.Text, txtMemo.Text, Decimal.Parse(txtDagprijs.Text), true); //Vertreklocatie toevoegen aan opdracht locatie vertrek = (locatie)cbbVertrek.SelectedItem; ContractManagement.addLocatie(nieuwContract, vertrek, "vertrek"); //Bestemming locatie toevoegen aan opdracht locatie bestemming = (locatie)cbbBestemming.SelectedItem; ContractManagement.addLocatie(nieuwContract, bestemming, "bestemming"); //opstap_1 locatie toevoegen aan opdracht locatie opstap_1 = (locatie)cbbOpstap_1.SelectedItem; ContractManagement.addLocatie(nieuwContract, opstap_1, "opstap_1"); //opstap_2 locatie toevoegen aan opdracht locatie opstap_2 = (locatie)cbbOpstap_2.SelectedItem; ContractManagement.addLocatie(nieuwContract, opstap_2, "opstap_2"); foreach (ucRit ucRit in flpRitten.Controls) { contract_rit rit = new contract_rit(); rit.dag = ucRit.dag; rit.rit1_terug = ucRit.terug_1; rit.rit2_terug = ucRit.terug_2; rit.rit1_vertrek = ucRit.vertrek_1; rit.rit2_vertrek = ucRit.vertrek_2; opdracht_contract_rit ocr = new opdracht_contract_rit(); ocr.contract_rit = rit; ocr.opdracht = nieuwContract; ContractManagement.addRitBijContract(ocr); } //Voor elke usercontrol ucChauffeurkiezer in flpChauffeurs een nieuwe chauffeur link toevoegen aan de veel op veel tussentabel foreach (ucChauffeurKiezer cha in flpChauffeurs.Controls) { opdracht_chauffeur oc = new opdracht_chauffeur(); oc.opdracht = nieuwContract; oc.chauffeur = cha.chauffeur; ContractManagement.addChauffeurBijContract(oc); } //Voor elke usercontrol ucVoertuigKiezer in flpVoertuigen een nieuwe voertuig link toevoegen aan de veel op veel tussentabel foreach (ucVoertuigKiezer voe in flpVoertuigen.Controls) { opdracht_voertuig ov = new opdracht_voertuig(); ov.opdracht = nieuwContract; ov.voertuig = voe.voertuig; ContractManagement.addVoertuigBijOpdracht(ov); } cbbID.DataSource = ContractManagement.getContracten(); //cbbID.SelectedIndex = cbbID.Items.Count - 1; cbbID.SelectedItem = nieuwContract; cbbID.Visible = true; MainForm.updateStatus = "Het contract met ID: " + nieuwContract.opdracht_id + ", is succesvol aangemaakt."; } //else if (btnOpslaan.Name == "btnOpslaan") else if (cbbID.Visible == true) { opdracht oudContract = (opdracht)cbbID.SelectedItem; opdracht updateContract = ContractManagement.updateContract(oudContract.opdracht_id, (klant)cbbKlant.SelectedItem, dtVan.Value, dtTot.Value, Byte.Parse(txtPlaatsen.Text), txtOmschrijving.Text, txtGezelschap.Text, txtMemo.Text, Decimal.Parse(txtDagprijs.Text), true); //Vertreklocatie toevoegen aan opdracht locatie vertrek = (locatie)cbbVertrek.SelectedItem; ContractManagement.addLocatie(updateContract, vertrek, "vertrek"); //Bestemming locatie toevoegen aan opdracht locatie bestemming = (locatie)cbbBestemming.SelectedItem; ContractManagement.addLocatie(updateContract, bestemming, "bestemming"); //opstap_1 locatie toevoegen aan opdracht locatie opstap_1 = (locatie)cbbOpstap_1.SelectedItem; ContractManagement.addLocatie(updateContract, opstap_1, "opstap_1"); //opstap_2 locatie toevoegen aan opdracht locatie opstap_2 = (locatie)cbbOpstap_2.SelectedItem; ContractManagement.addLocatie(updateContract, opstap_2, "opstap_2"); foreach (contract_rit rit in ContractManagement.getRitten(updateContract.opdracht_id)) { Boolean bestaat = false; foreach (ucRit ucRit in flpRitten.Controls) { contract_rit schermrit = new contract_rit(); schermrit.dag = ucRit.dag; schermrit.rit1_terug = ucRit.terug_1; schermrit.rit2_terug = ucRit.terug_2; schermrit.rit1_vertrek = ucRit.vertrek_1; schermrit.rit2_vertrek = ucRit.vertrek_2; if (rit.dag == schermrit.dag && rit.rit1_terug == schermrit.rit1_terug && rit.rit1_vertrek == schermrit.rit1_vertrek && rit.rit2_terug == schermrit.rit2_terug && rit.rit2_vertrek == schermrit.rit2_vertrek) { bestaat = true; break; } } if (bestaat == false) { ContractManagement.deleteRit(updateContract, rit); } } foreach (ucRit ucRit in flpRitten.Controls) { contract_rit rit = new contract_rit(); rit.dag = ucRit.dag; rit.rit1_terug = ucRit.terug_1; rit.rit2_terug = ucRit.terug_2; rit.rit1_vertrek = ucRit.vertrek_1; rit.rit2_vertrek = ucRit.vertrek_2; if (ContractManagement.bestaatRit(updateContract, rit) == false) { opdracht_contract_rit ocr = new opdracht_contract_rit(); ocr.contract_rit = rit; ocr.opdracht = updateContract; ContractManagement.addRitBijContract(ocr); } else { } } //Voor elke usercontrol ucChauffeurkiezer in flpChauffeurs een nieuwe chauffeur link toevoegen aan de veel op veel tussentabel foreach (ucChauffeurKiezer cha in flpChauffeurs.Controls) { opdracht_chauffeur oc = new opdracht_chauffeur(); oc.opdracht = updateContract; oc.chauffeur = cha.chauffeur; ContractManagement.addChauffeurBijContract(oc); } //Voor elke usercontrol ucVoertuigKiezer in flpVoertuigen een nieuwe voertuig link toevoegen aan de veel op veel tussentabel foreach (ucVoertuigKiezer voe in flpVoertuigen.Controls) { opdracht_voertuig ov = new opdracht_voertuig(); ov.opdracht = updateContract; ov.voertuig = voe.voertuig; ContractManagement.addVoertuigBijOpdracht(ov); } MainForm.updateStatus = "Het contract met ID: " + updateContract.opdracht_id + ", is succesvol aangepast."; } }
//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); } }