/// <summary> /// Funktion som hyr det valda fordonet /// </summary> /// <param name="sender">label</param> /// <param name="e"></param> private void Hyr(object sender, EventArgs e) { hyrnings_objekt hyrning = new hyrnings_objekt(new SqlCeDatabase(), this.anvandare); bil_objekt hyrabel = new bil_objekt(); Label hyr = sender as Label; string reg = hyr.Name.Substring(4); if (hyrning.hyra(this.anvandare, startdag.ToShortDateString(), slutdag.ToShortDateString(), reg)) { DoljHyr(); richTextBoxMeddelandenHyra.Text = "Bokningen genomfördes utan problem."; richTextBoxMeddelandenHyra.Text += "\n\nDu har nu hyrt en;\n" + fordon as string + "\nRegnummer: " + reg + "\nStartdagen: " + startdag.ToShortDateString() + "\nSlutdagen: " + slutdag.ToShortDateString(); } else { richTextBoxMeddelandenHyra.Text = "Det blev något fel med hyrningen"; string[] felmeddelande = hyrning.GetTmpMsgs(); if (DEBUG) { richTextBoxMeddelandenHyra.ScrollBars = RichTextBoxScrollBars.ForcedBoth; richTextBoxMeddelandenHyra.Text += "\n**** FELMEDDELANDE ****"; foreach (string fel in felmeddelande) richTextBoxMeddelandenHyra.Text += "\n" + fel + "\n"; } } }
/// <summary> /// En funktion som tar bort en hyrning, använder namnet på den label som kallade funktionen. /// Kräver att labelns namn är Tabort_ID, där ID är ett nummer som stämmer överens med identiteten /// </summary> /// <param name="sender">Den labeln som kallade funktionen</param> /// <param name="e">Oanvänd parameter för denna funktion, följer med ClickOnEvent</param> private void TaBort(object sender, EventArgs e) { Label Tabort = sender as Label; string namn = Tabort.Name.Substring(7); int hyrningar; if (!int.TryParse(namn, out hyrningar)) MessageBox.Show("Detta är inget id: " + namn); else { hyrnings_objekt hyrning = new hyrnings_objekt(new SqlCeDatabase(), this.anvandare); int TabortHyrning = hyrning.tabortMinaHyrningar(hyrningar); tableLayoutPanelHyrning.Controls.Clear(); fyllHyrningar(); } }
/// <summary> /// Funktion som skriver ut vilka fordon man har hyrt och vilka datum det gäller /// </summary> private void fyllHyrningar() { hyrnings_objekt hyrning = new hyrnings_objekt(new SqlCeDatabase(), this.anvandare); SortedList<string, string>[] HyrningsResultat = hyrning.hamtaMinaHyrningar(); if (HyrningsResultat.Length == 0) { this.tableLayoutPanelHyrning.Hide(); this.labelHyrningMeddelande.Text = "Du har inga hyrda fordon"; this.labelHyrningMeddelande.Show(); } if (this.tableLayoutPanelHyrning.Visible) { int length = HyrningsResultat.Length; for (int i = 0; i < length; i++) { SortedList<string, string> hyrningsString = HyrningsResultat[i] as SortedList<string, string>; Label labelHyrningStartDatum = new Label(), labelHyrningSlutDatum = new Label(), labelHyrningFordon = new Label(), labelTabortHyrningar = new Label(); Label[] labelHyrning = { labelHyrningStartDatum, labelHyrningSlutDatum, labelHyrningFordon, labelTabortHyrningar }; for (int o = 0; o < 4; o++) { switch (o) { case 0: labelHyrning[o].Text = hyrningsString["Startdag"]; break; case 1: labelHyrning[o].Text = hyrningsString["Slutdag"]; break; case 2: labelHyrning[o].Text = hyrningsString["Fordon"]; break; case 3: labelHyrning[o].Text = "Ta bort"; labelHyrning[o].Name = "Tabort_" + hyrningsString["Hyrning"]; labelHyrning[o].Cursor = Cursors.Hand; labelHyrning[o].Click += new System.EventHandler(this.TaBort); break; } this.tableLayoutPanelHyrning.Controls.Add(labelHyrning[o]); } } } }