Exemple #1
0
        public void UpdateBil()
        {
            ShowBilAll();
            Console.Clear();
            //Opdater bil efter bruger input
            Console.Write("\nIndtast reg nr: ");
            string regnr = Console.ReadLine();

            if (!string.IsNullOrEmpty(regnr))
            {   //Find ud af hvad brugeren vil ændre
                ShowBil(regnr);

                MenuItem[] Update = new MenuItem[]
                {
                    new MenuItem("Reg nr"),
                    new MenuItem("Kunde Id"),
                    new MenuItem("Mærke"),
                    new MenuItem("Model"),
                    new MenuItem("Årgang"),
                    new MenuItem("Km"),
                    new MenuItem("Brændstof"),
                    new MenuItem("Kml"),
                    new MenuItem("Accepter"),
                    new MenuItem("Tilbage")
                };

                bool accept = false;
                List<string> choosen = new List<string>();
                string valgt = string.Empty;

                while (!accept)
                {
                    switch (menu.MenuSelector(Update,  valgt + "\nHvad vil du ændre?\n"))
                    {
                        case 0:
                            if (!choosen.Contains("Reg_nr"))
                                choosen.Add("Reg_nr");
                            else
                                choosen.Remove("Reg_nr");
                            break;

                        case 1:
                            if (!choosen.Contains("Kunde_Id"))
                                choosen.Add("Kunde_Id");
                            else
                                choosen.Remove("Kunde_Id");
                            break;

                        case 2:
                            if (!choosen.Contains("Maerke"))
                                choosen.Add("Maerke");
                            else
                                choosen.Remove("Maerke");
                            break;

                        case 3:
                            if (!choosen.Contains("Model"))
                                choosen.Add("Model");
                            else
                                choosen.Remove("Model");
                            break;

                        case 4:
                            if (!choosen.Contains("Aargang"))
                                choosen.Add("Aargang");
                            else
                                choosen.Remove("Aargang");
                            break;

                        case 5:
                            if (!choosen.Contains("Km"))
                                choosen.Add("Km");
                            else
                                choosen.Remove("Km");
                            break;

                        case 6:
                            if (!choosen.Contains("Braendstof"))
                                choosen.Add("Braendstof");
                            else
                                choosen.Remove("Braendstof");
                            break;

                        case 7:
                            if (!choosen.Contains("Kml"))
                                choosen.Add("Kml");
                            else
                                choosen.Remove("Kml");
                            break;

                        case 8:
                            accept = true;
                            break;

                        case 9:
                            return;

                        default:
                            break;
                    }

                    valgt = ("Valgt: ");

                    foreach (string s in choosen)
                    {
                        valgt += (s + ", ");
                    }

                    valgt += "\n";
                }

                Bil bil = new Bil();

                foreach (string c in choosen)
                {
                    switch (c.ToLower())
                    {
                        case "reg_nr":
                            Console.WriteLine("Indtast nyt Regnr");
                            bil.RegNR = Console.ReadLine().Trim();
                            break;

                        case "kunde_id":
                            Console.WriteLine("Indtast nyt Kunde ID");
                            bil.KundeID = Convert.ToInt16(Console.ReadLine().Trim());
                            break;

                        case "maerke":
                            Console.WriteLine("Indtast nyt mærke");
                            bil.Maerke = Console.ReadLine().Trim();
                            break;

                        case "model":
                            Console.WriteLine("Indtast ny Model");
                            bil.Model = Console.ReadLine().Trim();
                            break;

                        case "aargang":
                            Console.WriteLine("Indtast ny årgang");
                            bil.Aargang = Convert.ToInt16(Console.ReadLine().Trim());
                            break;

                        case "km":
                            Console.WriteLine("Indtast ny km");
                            bil.Km = Convert.ToInt16(Console.ReadLine().Trim());
                            break;

                        case "braendstof":
                            Console.WriteLine("Indtast nyt Brændstof");
                            bil.Braendstof = Console.ReadLine();
                            break;

                        case "kml":
                            Console.WriteLine("Indtast ny kml");
                            float.TryParse(Console.ReadLine(), out float kml);
                            bil.Kml = kml;
                            break;

                        default:
                            UpdateBil();
                            break;
                    }

                }

                List<string> ToUpdate = new List<string>();

                //Dette finder ud af hvad der skal ændres
                if (!string.IsNullOrEmpty(bil.RegNR))
                    ToUpdate.Add(string.Format("reg_nr = '{0}'", bil.RegNR));

                if (bil.KundeID > 0)
                    ToUpdate.Add(string.Format("Kunde_id = '{0}", bil.KundeID));

                if (!string.IsNullOrEmpty(bil.Maerke))
                    ToUpdate.Add(string.Format("maerke = '{0}'", bil.Maerke));

                if (!string.IsNullOrEmpty(bil.Model))
                    ToUpdate.Add(string.Format("model = '{0}'", bil.Model));

                if (bil.Aargang > 1900)
                    ToUpdate.Add(string.Format("aargang = '{0}'", bil.Aargang));

                if (bil.Km >= 0)
                    ToUpdate.Add(string.Format("km = '{0}'", bil.Km));

                if (!string.IsNullOrEmpty(bil.Braendstof))
                    ToUpdate.Add(string.Format("braendstof = '{0}'", bil.Braendstof));

                if (bil.Kml > 0)
                    ToUpdate.Add(string.Format("kml = '{0}'", bil.Kml));

                string sqlcmd = "Update Biler Set ";

                //Skriv kommandoen
                for (int i = 0; i < ToUpdate.Count; i++)
                {
                    sqlcmd += ToUpdate[i];

                    if (i < (ToUpdate.Count - 1))
                        sqlcmd += ", ";
                }

                sqlcmd += string.Format(" where reg_nr = '{0}'", regnr);
                SQL.Update(sqlcmd);
            }
        }
Exemple #2
0
        public void UpdateKunde()
        {
            Console.Clear();

            Console.WriteLine("\nIndtast kunde id: ");
            string kid = Console.ReadLine();

            int.TryParse(kid, out int id);

            //Hvis id < 0, Spørg hvad man vil ændre
            if (id > 0)
            {
                MenuItem[] Update = new MenuItem[]
                {
                    new MenuItem("Fornavn"),
                    new MenuItem("Efternavn"),
                    new MenuItem("Adresse"),
                    new MenuItem("Telefon"),
                    new MenuItem("Accepter"),
                    new MenuItem("Tilbage")
                };

                bool accept = false;
                List<string> choosen = new List<string>();

                string valgt = string.Empty;

                while (!accept)
                {
                    switch (menu.MenuSelector(Update, valgt + "\nHvad vil du ændre? "))
                    {
                        case 0:
                            if (!choosen.Contains("Fornavn"))
                                choosen.Add("Fornavn");
                            else
                                choosen.Remove("Fornavn");
                            break;

                        case 1:
                            if (!choosen.Contains("Efternavn"))
                                choosen.Add("Efternavn");
                            else
                                choosen.Remove("Efternavn");
                            break;

                        case 2:
                            if (!choosen.Contains("Adresse"))
                                choosen.Add("Adresse");
                            else
                                choosen.Remove("Adresse");
                            break;

                        case 3:
                            if (!choosen.Contains("Telefon"))
                                choosen.Add("Telefon");
                            else
                                choosen.Remove("Telefon");
                            break;

                        case 4:
                            accept = true;
                            break;

                        case 5:
                            return;

                        default:
                            break;
                    }

                    valgt = ("Valgt: ");

                    foreach (string s in choosen)
                    {
                        valgt += (s + ", ");
                    }

                    valgt += "\n";
                }

                Kunde kunde = new Kunde();

                //Gå igennem alt i valgt og skriv data til en Kunde
                foreach (string c in choosen)
                {
                    switch (c.ToLower())
                    {
                        case "fornavn":
                            Console.WriteLine("Indtast nyt fornavn");
                            kunde.Fornavn = Console.ReadLine().Trim();
                            break;

                        case "efternavn":
                            Console.WriteLine("Indtast nyt efternavn");
                            kunde.Efternavn = Console.ReadLine().Trim();
                            break;

                        case "adresse":
                            Console.WriteLine("Indtast ny adresse");
                            kunde.Adresse = Console.ReadLine().Trim();
                            break;

                        case "telefon":
                            Console.WriteLine("Indtast nyt Telefon nr");
                            kunde.Tlf = Console.ReadLine().Trim();
                            break;

                        default:
                            Console.WriteLine("Ukendt Indput");
                            UpdateKunde();
                            break;
                    }
                }

                //Lav en liste over hvad der skal opdateres
                List<string> ToUpdate = new List<string>();

                //Hvis noget er ændret så sæt dem til ToUpdate listen
                if (!string.IsNullOrEmpty(kunde.Fornavn))
                    ToUpdate.Add(string.Format("fornavn = '{0}'", kunde.Fornavn));

                if (!string.IsNullOrEmpty(kunde.Efternavn))
                    ToUpdate.Add(string.Format("efternavn = '{0}'", kunde.Efternavn));

                if (!string.IsNullOrEmpty(kunde.Adresse))
                    ToUpdate.Add(string.Format("adresse = '{0}'", kunde.Adresse));

                if (!string.IsNullOrEmpty(kunde.Tlf))
                    ToUpdate.Add(string.Format("tlf = '{0}'", kunde.Tlf));

                string sqlcmd = "Update Kunder Set ";

                //for hver ting der skal opdateres, tilføj parametre, og hvis det ikke er den sidste parametre tilføj ", "
                for (int i = 0; i < ToUpdate.Count; i++)
                {
                    sqlcmd += ToUpdate[i];

                    if (i < (ToUpdate.Count - 1))
                        sqlcmd += ", ";
                }

                //Gør kommandoen færdig og kør den
                sqlcmd += " where id = " + id.ToString();
                SQL.Update(sqlcmd);
            }
        }