コード例 #1
0
 private void buttonLogga_Click(object sender, EventArgs e)
 {
     List<string> errorMsg = new List<string>();
     input inmatning = new input();
     if (textBoxEmailLogin.Text == "" | textBoxLosenLogin.Text == "")
         errorMsg.Add("Du måste skriva in både email och lösenord för att logga in.");
     else
     {
         if (inmatning.loggaIn(textBoxEmailLogin.Text, textBoxLosenLogin.Text))
         {
             kund anvandare = new kund(textBoxEmailLogin.Text, textBoxLosenLogin.Text);
             FormBoka minBokning = new FormBoka(anvandare);
             FormHyra minHyrning = new FormHyra(anvandare);
             this.Hide();
             if (radioButtonLaga.Checked)
                 minBokning.ShowDialog();
             else
                 minHyrning.ShowDialog();
             this.Show();
         }
         else
         {
             string[] felmeddelande = inmatning.GetTmpMsgs();
             foreach (string msg in felmeddelande)
                 richTextBoxMeddelanden1.Text += msg;
         }
     }
 }
コード例 #2
0
ファイル: kalender.cs プロジェクト: Jassob/Bokningssystem
        public void Initiate()
        {
            FlowLayoutPanel panel = new FlowLayoutPanel();
            input inmatning = new input();
            panel.Size = this.Size;

            string[] tider = { "8:00 - 10:00", "10:00 - 12:00", "14:00 - 16:00", "16:00 - 18:00" };
            foreach (string tid in tider)
            {
                Label tidLabel = new Label();
                tidLabel.Text = tid;
                tidLabel.AutoSize = true;
                panel.Controls.Add(tidLabel);
                Label färgLabel = new Label();
                färgLabel.Text = "";

                if (inmatning.kollaTidLedig(date,tid))
                    färgLabel.BackColor = Color.Green;
                else
                    färgLabel.BackColor = Color.Red;
                panel.Controls.Add(färgLabel);

            }
        }
コード例 #3
0
ファイル: FormOmOss.cs プロジェクト: Jassob/Bokningssystem
        /// <summary>
        /// KeyPressEventHandler som tar hand om keyPressEvents.
        /// Denna är gjord för att spara informationen som matas in i textboxarnas fält av en administratör
        /// </summary>
        /// <param name="sender">TextBoxen (eller annan control som har keyPressEvent) som startade eventet</param>
        /// <param name="e">Intressant info som genereras av eventet</param>
        private void textBoxKnapptryck(object sender, KeyEventArgs e)
        {
            if (e.KeyCode != Keys.Return)
                return;

            // Se till att inga nya rader skapas
            e.SuppressKeyPress = true;

            input inmatning = new input();
            TextBox textbox = sender as TextBox;
            if (textbox == null)
                throw new Exception("Objektet som startade eventet textBoxKnappTryck var inte en TextBox.");
            string namn = textbox.Name.Substring(7);
            string nyttVarde = null;
            string gammaltVarde = null;
            textbox.Text = textbox.Lines[0];

            switch (namn)
            {
                case "Namn":
                    nyttVarde = textbox.Lines[0];
                    gammaltVarde = företag.GetNamn();
                    break;

                case "Email":
                    if (inmatning.kollaEmail(textbox.Lines[0]))
                    {
                        nyttVarde = textbox.Lines[0];
                        gammaltVarde = företag.GetEmail();
                    }
                    break;

                case "Oppetider":
                    nyttVarde = textbox.Lines[0];
                    gammaltVarde = företag.GetOppetider();
                    break;

                case "Telefon":
                    if (inmatning.kollaTfnNummer(textbox.Lines[0]))
                    {
                        nyttVarde = textbox.Lines[0];
                        gammaltVarde = företag.GetTfn();
                    }
                    break;

                case "Adress":
                    nyttVarde = textbox.Lines[0];
                    gammaltVarde = företag.GetAdress();
                    break;

                case "Postadress":
                    nyttVarde = textbox.Lines[0];
                    gammaltVarde = företag.GetPostAdr();
                    break;

                default:
                    if (DEBUG)
                        MessageBox.Show(string.Format("Denna textbox är ännu inte implementerad i funktionen textBoxKnapptryck, kontakta programansvarig." +
                            " \nInformation: Textboxen {0} är inte implementerad i textBoxKnapptryck, eller så har den fel KeyEvent", textbox.Name));
                    return;
            }

            if (nyttVarde == gammaltVarde)
            {
                initFormOmOss();
                return;
            }

            // Uppdatera företaget med de nya värdena på fältet
            if (företag.SetFalt(namn,nyttVarde) == 0)
                richTextBoxOmOssMsgs.Text = string.Format("Du har nu uppdaterat företagets {0} från {1} till {2}",namn.ToLower(),gammaltVarde,nyttVarde);
            else
            {
                // Gör om string-arrayen till en enda lång string
                string[] tmpMsgs = företag.GetTmpMsgs();
                string allaMsgs = string.Empty;
                foreach (string msg in tmpMsgs)
                    allaMsgs += msg + "\n";

                // Visa felmeddelandena / t i en MessageBox
                richTextBoxOmOssMsgs.Text = string.Format("Uppdateringen av fält {0} lyckades inte, nedan finns mer information. "+
                                            "Detaljer: {1}",namn.ToLower(), allaMsgs);
            }

            // Ta bort fula nyrader
            initFormOmOss();
        }
コード例 #4
0
ファイル: FormBoka.cs プロジェクト: Jassob/Bokningssystem
        /// <summary>
        /// Bokafunktionen, bokar in bilen på den valda tiden och datumet.
        /// Funktionen kollar om man bokar en registrerad bil eller om man registrerar en ny och kommer i så fall registrera den nya bilen hos kunden.
        /// </summary>
        /// <param name="sender">Den knappen som startade eventet</param>
        /// <param name="e"></param>
        public void buttonBoka_Click(object sender, EventArgs e)
        {
            boknings_objekt bokning = new boknings_objekt(new SqlCeDatabase(), this.anvandare);
            input inmatning = new input();
            Meddelande();

            if (dag != "" & tid != "")
            {
                // Formatterar datumet och hämtar regnumret
                string datum = dag + " " + tid;
                string regnr = comboBoxReg.Text;
                string spec = richTextBoxMeddelandenBoka.Text;
                // Om det är en reggad bil som är markerad, boka bara bilen på datumet och tiden
                if (this.kundHarReggadBil)
                {
                    if (bokning.boka(this.anvandare, regnr, datum, spec))
                    {
                        richTextBoxMeddelandenBoka.Text = "Bokningen genomfördes utan problem.";
                        richTextBoxMeddelandenBoka.Text += "\nDatumet är " + this.dag + " och tiden " + this.tid;
                    }
                    else
                    {
                        richTextBoxMeddelandenBoka.Text = "Det blev något fel med bokningen";
                        string[] felmeddelande = bokning.GetTmpMsgs();
                        if (felmeddelande.Contains("A duplicate value"))
                            richTextBoxMeddelandenBoka.Text = "Datumet du valt är upptaget, välj ett annat";
                        if (DEBUG)
                        {
                            richTextBoxMeddelandenBoka.ScrollBars = RichTextBoxScrollBars.ForcedBoth;
                            richTextBoxMeddelandenBoka.Text += "\n**** FELMEDDELANDE ****";
                            foreach (string fel in felmeddelande)
                                richTextBoxMeddelandenBoka.Text += "\n" + fel + "\n";
                        }
                    }
                }
                // Om bilen inte är registrerad så registrera bilen först och sen boka in bilen på datument och tiden
                else
                {
                    string modell = textBoxModell.Text;
                    string marke = textBoxMarke.Text;
                    string arsmodell = textBoxArsModell.Text;
                    if (bokning.boka(this.anvandare, regnr, datum, marke, modell, arsmodell, spec))
                    {
                        richTextBoxMeddelandenBoka.Text = "Bokningen genomfördes utan problem.";
                        richTextBoxMeddelandenBoka.Text += "\nDatumet är " + this.dag + " och tiden " + this.tid;
                    }
                    else
                    {
                        richTextBoxMeddelandenBoka.Text = "Det blev något fel med bokningen";
                        string[] felmeddelande = bokning.GetTmpMsgs();
                        if (felmeddelande.Contains("A duplicate value"))
                            richTextBoxMeddelandenBoka.Text = "Datumet du valt är upptaget, välj ett annat";
                        if (DEBUG)
                        {
                            richTextBoxMeddelandenBoka.ScrollBars = RichTextBoxScrollBars.ForcedBoth;
                            richTextBoxMeddelandenBoka.Text += "**** FELMEDDELANDE ****";
                            foreach (string fel in felmeddelande)
                                richTextBoxMeddelandenBoka.Text += "\n" + fel + "\n";
                        }
                    }
                }
                DoljBokningar();
            }
            // Om tiden eller datument är tomt visa felmeddelandet
            else
            {
                richTextBoxMeddelandenBoka.Text = "Du har inte valt vilket datum och vilken tid du vill utföra din bokning";
                if (DEBUG)
                    richTextBoxMeddelandenBoka.Text += "\nDatumet är " + dag + " och tiden är " + tid;
            }
        }
コード例 #5
0
ファイル: FormBoka.cs プロジェクト: Jassob/Bokningssystem
 /// <summary>
 /// Funktion som kontrollerar vilka tider som redan är upptagna i en speciell dag
 /// </summary>
 /// <param name="dag">Datumet som en sträng</param>
 private void init_panelTider(string dag)
 {
     input inmatning = new input();
     bool någonLedigTid = false;
     // Kolla om tiderna är bokade redan och gör alternativen ovalbara
     // Om ingen tid finns ledig, skriv det i meddelande-rutan
     if (!inmatning.kollaTidLedig(dag, "08:00 - 10:00"))
         timeButton_08.Enabled = false;
     else
     {
         någonLedigTid = true;
         timeButton_08.Enabled = true;
     }
     if (!inmatning.kollaTidLedig(dag, "10:00 - 12:00"))
         timeButton_10.Enabled = false;
     else
     {
         någonLedigTid = true;
         timeButton_10.Enabled = true;
     }
     if (!inmatning.kollaTidLedig(dag, "14:00 - 16:00"))
         timeButton_14.Enabled = false;
     else
     {
         någonLedigTid = true;
         timeButton_14.Enabled = true;
     }
     if (!inmatning.kollaTidLedig(dag, "16:00 - 18:00"))
         timeButton_16.Enabled = false;
     else
     {
         timeButton_16.Enabled = true;
         någonLedigTid = true;
     }
     if (!någonLedigTid)
     {
         if (DEBUG)
             richTextBoxMeddelandenBoka.Text += "Tyvärr, det finns inga lediga tider på din valda dag. Var god välj en ny dag";
         else
             richTextBoxMeddelandenBoka.Text = "Tyvärr, det finns inga lediga tider på din valda dag. Var god välj en ny dag";
     }
     panelTider.Show();
 }
コード例 #6
0
        /// <summary>
        /// Bokar fordonet för kunden som är inskrivna i panelNyBok
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void buttonBoka_Click(object sender, EventArgs e)
        {
            boknings_objekt bokningar = new boknings_objekt(new SqlCeDatabase(), this.admin);
            input nyKund = new input();
            string namn, tfn, persnnr, adress, email, reg, marke, modell, arsmodell, beskr, datum;
            namn = maskedTextBoxNamn.Text;
            tfn = maskedTextBoxTfn.Text;
            persnnr = maskedTextBoxPersnnr1.Text;
            adress = maskedTextBoxAdress1.Text;
            email = maskedTextBoxEmail1.Text;
            reg = maskedTextBoxReg.Text;
            marke = maskedTextBoxMarke.Text;
            modell = maskedTextBoxModell.Text;
            arsmodell = maskedTextBoxArsmodell.Text;
            beskr = richTextBoxBokMeddelande.Text;
            datum = labelNyBokDag.Text + " " + labelNyBokTid.Text;

            // Om något av de obligatoriska fälten är tomma avbryt
            if (namn == string.Empty | tfn == string.Empty | persnnr == string.Empty | adress == string.Empty | email == string.Empty | reg == string.Empty | marke == string.Empty | modell == string.Empty | arsmodell == string.Empty)
            {
                MessageBox.Show("Du måste fylla i alla fälten");
                return;
            }

            //Kollar om kundvärderna kan stämma
            MaskedTextBox[] inmatningsBoxar = { maskedTextBoxNamn, maskedTextBoxPersnnr1, maskedTextBoxEmail1, maskedTextBoxAdress1, maskedTextBoxTfn };
            string[] inmatVärden = nyKund.kollaInmatning(inmatningsBoxar);
            if (DEBUG && nyKund.GetTmpMsgs().Length > 0)
                {
                    string[] errorMsgs = nyKund.GetTmpMsgs();

                    foreach (string meddelande in errorMsgs)
                        richTextBoxMeddelanden.Text += meddelande + "\n";
                }

            int regResultat = nyKund.ReggaAdminKund(inmatVärden);
            if (regResultat == 0)
            {
                richTextBoxMeddelanden.Text = "Kunden registrerades utan problem!";
            }
            else
            {
                string[] felmeddelande = nyKund.GetTmpMsgs();
                if (felmeddelande.Contains("a duplicate value"))
                    richTextBoxMeddelanden.Text = "Det finns redan ett konto med denna emailadress eller med detta personnummer. " +
                        "\nKontrollera att du inte redan skapat ett konto.\n";
                else
                {
                   if (DEBUG)
                       richTextBoxMeddelanden.Text += felmeddelande[1]; // Index utanför matrixen...
                   else
                       richTextBoxMeddelanden.Text += "Det blev ett fel när du skulle registreras.\nFörsök gärna lite senare.";
                }
            }

            string fnamn, enamn;
            if (namn.Contains(' '))
            {
                fnamn = namn.Substring(0,namn.IndexOf(' '));
                enamn = namn.Substring(namn.IndexOf(' '));
            }
            else
            {
                fnamn = namn;
                enamn = "";
            }
            if (bokningar.boka(fnamn, enamn, tfn, reg, datum, marke, modell, arsmodell, namn, beskr))
                richTextBoxFormAdminMsgs.Text = "Bokningen utfördes utan problem!";
            else
            {
                if (DEBUG)
                    richTextBoxFormAdminMsgs.Lines = bokningar.GetTmpMsgs();
                else
                    richTextBoxFormAdminMsgs.Text = "Det blev något fel med bokningen";
            }
            richTextBoxFormAdminMsgs.Show();
        }
コード例 #7
0
        private void buttonRegistrera_Click(object sender, EventArgs e)
        {
            input inmatning = new input();
            richTextBoxMeddelanden.Text = "";
            if (textBoxLosen.Text == textBoxLosenBek.Text)
            {
                TextBox[] inmatningsBoxar = { textBoxNamn, textBoxEmail, textBoxTelefon, textBoxAdress, textBoxPersnr, textBoxLosen };
                string[] inmatVärden = inmatning.kollaInmatning(inmatningsBoxar);
                if (DEBUG && inmatning.GetTmpMsgs().Length > 0)
                {
                    string[] errorMsgs = inmatning.GetTmpMsgs();

                    foreach (string meddelande in errorMsgs)
                        richTextBoxMeddelanden.Text += meddelande + "\n";
                }
                int regResultat = inmatning.ReggaKund(inmatVärden);
                if (regResultat == 0)
                {
                    if (DEBUG)
                        richTextBoxMeddelanden.Text += "Ditt konto registrerades utan problem!\nDu kan nu logga in.";
                    else
                        richTextBoxMeddelanden1.Text = "Ditt konto registrerades utan problem!\nDu kan nu logga in.";
                    splitContainer1.Panel2Collapsed = true;
                }
                else
                {
                    string[] felmeddelande = inmatning.GetTmpMsgs();
                    if (felmeddelande.Contains("a duplicate value"))
                        richTextBoxMeddelanden.Text = "Det finns redan ett konto med denna emailadress eller med detta personnummer. " +
                            "\nKontrollera att du inte redan skapat ett konto.\n";
                    else
                    {
                        if (DEBUG)
                            richTextBoxMeddelanden.Text += felmeddelande[1];
                        else
                            richTextBoxMeddelanden.Text += "Det blev ett fel när du skulle registreras.\nFörsök gärna lite senare.";
                    }
                }
            }
            else richTextBoxMeddelanden.Text += "Dina lösenord stämmer inte överens\n";
        }