public kalender(DateTime date, SqlCeDatabase database) { InitializeComponent(); this.date = date.Date.ToString(); db = database; }
/// <summary> /// Konstruktören för klassen kund. /// Använder sig av databasen med tabellen kunder och hämtar fältvärden som email, förnamn, enamn, telefonnummer /// och kollar om det är en administratör. /// </summary> /// <param name="email">Email-adressen som ska användas</param> /// <param name="losen">Lösenordet, som en säkerhetsåtgärd</param> public kund(string email, string losen) { this.db = new SqlCeDatabase(); List<string> errorMsg = new List<string>(); string query = "Select email, fnamn, enamn, losen, tfn, adress from Kunder where email='?x?' and losen='?x?'"; string[] args = { email, losen }; if (db.query(query, args) != 0) errorMsg.AddRange(db.GetTmpMsgs()); else { string[] resultat = db.fetch(); string[] properties = { this.email, this.fnamn, this.enamn, this.losenord, this.tfn, this.adress }; if (resultat.Length == 0) throw new Exception("Lösenordet och e-postadressen stämde inte överens med någon kund i registret"); if (resultat[0] != string.Empty) this.email = resultat[0]; else errorMsg.Add("Fältet för email-adressen är tomt"); if (resultat[1] != string.Empty) this.fnamn = resultat[1]; else errorMsg.Add("Fältet för förnamnet är tomt"); if (resultat[2] != string.Empty) this.enamn = resultat[2]; else errorMsg.Add("Fältet för efternamnet är tomt"); if (resultat[3] != string.Empty) this.losenord = resultat[3]; else errorMsg.Add("Fältet för lösenordet är tomt"); if (resultat[4] != string.Empty) this.tfn = resultat[4]; else errorMsg.Add("Fältet för telefonnummret är tomt"); if (resultat[5] != string.Empty) this.adress = resultat[5]; else errorMsg.Add("Fältet för adressen är tomt"); this.readOnly = false; } this.tmpMsgs = errorMsg.ToArray(); }
/// <summary> /// Konstruktören för FormHyra-formen, här börjar koden från FormHyra. /// Här initalieras alla komponenter och kund objektet sparas som global variabel för formen. /// </summary> /// <param name="anvandare">Kund objektet för den som hyr</param> public FormHyra(kund anvandare) { InitializeComponent(); SqlCeDatabase db = new SqlCeDatabase(); this.anvandare = anvandare; DoljHyr(); fyllHyrningar(); richTextBoxBokningMeny.Text = "Tryck på Ny hyrning för att göra en ny hyrning.\nTryck på Mina hyrningar för att se vad du har hyrt och när."; if (DEBUG) { richTextBoxBokningMeny.Text += "\nNamn: " + anvandare.GetNamn(); richTextBoxBokningMeny.Text += "\nEmail: " + anvandare.GetEmail(); } }
/// <summary> /// Bokar tid för fordonet i databasen, bokar in fordonet som endast registreringsnummer så denna /// funktion förutsätter att bilen är registrerad. /// Lämnar kvar felmeddelande i tmpMsgs-arrayen. /// </summary> /// <param name="anvandare">Kunden / administratörens kundobjekt</param> /// <param name="regnr">Fordonets registreringsnummer</param> /// <param name="datum">Datumet som bokningen gäller</param> /// <returns>Returnerar true om allt gick som det skulle eller falskt annars.</returns> public bool boka(kund anvandare, string regnr, string datum, string spec) { List<string> errorMsgs = new List<string>(); SqlCeDatabase db = new SqlCeDatabase(); string agare = anvandare.GetEmail(); string namn = anvandare.GetNamn(); string fnamn = namn.Substring(0, namn.IndexOf(' ')); string enamn = namn.Substring(namn.IndexOf(' ') + 1); string tfn = anvandare.GetTfn(); string query = "INSERT INTO Bokning " + "(datum, fnamn, enamn, bil, email, tfn, spec) " + "VALUES ('?x?','?x?','?x?','?x?', '?x?', '?x?', '?x?')"; string[] args = new string[7] { datum, fnamn, enamn, regnr, agare, tfn, spec }; if (db.query(query, args) == 0) { int opResultat = db.operation(); if (opResultat == 0) return true; else { errorMsgs.Add("Det blev något fel när din bokning skulle processeras. Kontakta ansvarig för programmet"); if (DEBUG) errorMsgs.AddRange(this.db.GetTmpMsgs()); } } else { errorMsgs.Add("Det blev ett fel vid skapandet av frågan. Kontakta ansvarig för programmet."); if (DEBUG) errorMsgs.AddRange(this.db.GetTmpMsgs()); } if (errorMsgs.Count > 0) { this.tmpMsgs = errorMsgs.ToArray(); } return false; }
/// <summary> /// Konstruktören för FormBoka-formen, här börjar koden från FormBoka. /// Här initalieras alla komponenter och kund objektet sparas som global variabel för formen. /// /// Här tas även bilarna fram och sparas i Listan kundbilar. /// </summary> /// <param name="anvandare">Kund objektet för den som bokar</param> public FormBoka(kund anvandare) { InitializeComponent(); SqlCeDatabase db = new SqlCeDatabase(); bil_objekt bil = new bil_objekt(); this.anvandare = anvandare; List<string> kundBilar = new List<string>(); // Kolla efter bilar registrerade till kunden / användaren. if (bil.kollaKundsBilar(anvandare,"reg") == 2) { if (DEBUG) richTextBoxBokningMeny.Text = "Något är fel med kollaKundsBilar-funktionen i bil_objekt.cs"; } else if (bil.kollaKundsBilar(anvandare) == 0) { kundBilar.AddRange(bil.GetTmpMsgs()); this.kundHarReggadBil = true; } // Lägg till en rad "Ny bil..." och lägg till bilarna till regnr-comboboxens datasource kundBilar.Add("Ny bil..."); comboBoxReg.DataSource = kundBilar; // Fixar så man bara kan välja ett datum i monthCalendar1. monthCalendar1.MaxSelectionCount = 1; panelTider.Hide(); buttonBoka.Hide(); richTextBoxBokningMeny.Text = "Tryck på Ny bokning för att göra en ny bokning.\nTryck på Mina Bokningar för att se vad du har bokat och när."; if (DEBUG) { richTextBoxBokningMeny.Text += "\nNamn: " + anvandare.GetNamn(); richTextBoxBokningMeny.Text += "\nEmail: " + anvandare.GetEmail(); richTextBoxBokningMeny.Text += "\nPersonnummer: " + anvandare.GetPersonnummer(); } }
/// <summary> /// Företagskonstruktör, tar företagets nummeridentitet som parameter och hämtar information ifrån /// tabellen Företag /// </summary> /// <param name="id">Företagets identitet (en int)</param> public foretag(int id) { this.db = new SqlCeDatabase(); string selectQuery = "SELECT Namn, Email, Oppetider, Telefon, Adress, PostAdress, Information" + " FROM Företag WHERE id=?x?"; string[] args = { id.ToString() }; int queryResultat = db.query(selectQuery, args); if (queryResultat != 0) throw new Exception("Det blev något fel med frågan, konsultera db.getTmpMsgs()"); string[] fetchResultat = db.fetch(); if (fetchResultat.Length == 0) throw new Exception("Önskat företag fanns inte i registret, programmet kan inte fortsätta."); this.namn = fetchResultat[0]; this.email = fetchResultat[1]; this.oppetider = fetchResultat[2]; this.tfn = fetchResultat[3]; this.adress = fetchResultat[4]; this.postadr = fetchResultat[5]; this.info = fetchResultat[6]; }
/// <summary> /// Hämtar alla hyrfordon av en typ och sparar dem i tmpMsgs-arrayen; /// </summary> /// <param name="typ">Fordonstypen</param> /// <returns>Statuskoden för funktionen /// 0 - funktionen utfördes utan problem /// 10 - inga fordon hittades /// 20 - kommunikation/frågefel</returns> public int hamtaAllaHyrFordon(string typ) { SqlCeDatabase db = new SqlCeDatabase(); string hyrQuery = "SELECT regnr FROM HyrFordon WHERE typ='?x?'"; string[] args = { typ }; int queryRes = db.query(hyrQuery, args); if (queryRes != 0) { this.tmpMsgs = db.GetTmpMsgs(); return 20; } string[] allaFordon = db.fetch(); if (allaFordon.Length < 1) { this.tmpMsgs = db.GetTmpMsgs(); return 10; } this.tmpMsgs = allaFordon; return 0; }
private void buttonVisa_Click(object sender, EventArgs e) { string queryVisa = "Select * from Kunder"; string[] args = { }; SqlCeDatabase db = new SqlCeDatabase(); int kollaQuery = db.query(queryVisa, args); if (kollaQuery != 0) { string[] läsResultat = db.fetch(); if (läsResultat.Length > 0) { string FullResultat = string.Empty; foreach (string resultat in läsResultat) FullResultat += resultat + "\n"; MessageBox.Show(FullResultat); } } else richTextBoxMeddelanden.Text = db.GetTmpMsgs()[0]; }
/// <summary> /// KollaKundsBilar: Kollar efter kunders bilar och returnerar bara regnumret /// </summary> /// <param name="anvandare">Kundens kundobjekt</param> /// <param name="what">Vad som ska frågas efter i Select-satsen</param> /// <returns>Returnerar ett intvärde /// 0 - om funktion slutfördes utan problem /// 1 - Inga bilar fanns /// 2 - Fel vid frågeformuleringen</returns> public int kollaKundsBilar(kund anvandare, string what) { SqlCeDatabase db = new SqlCeDatabase(); string regQuery = "SELECT ?x? FROM fordon WHERE agare='?x?'"; string[] args = { what, anvandare.GetEmail() }; int queryResultat = db.query(regQuery, args); if (queryResultat == 0) { string[] fetchResultat = db.fetch(); if (fetchResultat.Length < 1) { this.tmpMsgs = db.GetTmpMsgs(); return 1; } else { this.tmpMsgs = fetchResultat; return 0; } } this.tmpMsgs = db.GetTmpMsgs(); return 2; }
/// <summary> /// Kontruktören för boknings_objekt, tar en SqlCeDatabase och en admin som parametrar /// </summary> /// <param name="db">SqlCeDatabase som ska användas för databasen</param> /// <param name="anvandare">admin som bokar</param> public boknings_objekt(SqlCeDatabase db, administrator admin) { this.admin = admin; this.db = db; }
/// <summary> /// Hämtar information som Regnr, marke, modell, arsmodell ifrån hyrfordonets databasen. /// Sparar informationen i en SortedList med strängar som både nycklar och värden. /// Nycklarna är fältnamnen i databasen. /// </summary> /// <param name="reg">En sträng array med alla regnummer som data ska hämtas till</param> /// <returns>En SortedList array med fordonsinformationen i samma ordning som regnumret skickades. /// Innehåller även en nyckel för "regnr"</returns> public SortedList<string, string>[] hamtaValtHyrfordon(string[] reg) { SqlCeDatabase db = new SqlCeDatabase(); List<SortedList<string, string>> fordon = new List<SortedList<string, string>>(); foreach (string regnummer in reg) { string queryFetchFordon = "SELECT regnr, marke, modell, arsmodell from HyrFordon where regnr='?x?'"; string[] args = { regnummer }; int queryRes = db.query(queryFetchFordon, args); if (queryRes != 0) throw new Exception(string.Format("Det blev något fel när frågan skapades.\nFelkod: {0}", queryRes)); SortedList<string,string> ettFordon = db.fetchList(); if (ettFordon.Count > 0) fordon.Add(ettFordon); } if (fordon.Count > 0) return fordon.ToArray(); else throw new Exception("Det fanns inga fordon med de regnumren"); }
/// <summary> /// Bokar en tid för ett fordon för en kund som är oregistread /// </summary> /// <param name="fnamn">Förnamnet på kunden</param> /// <param name="enamn">Efternamnet på kunden</param> /// <param name="regnr">Fordonets registreringsnummer</param> /// <param name="datum">Bokningens datum</param> /// <param name="marke">Fordonets marke</param> /// <param name="modell">Fordonets modell</param> /// <param name="arsmodell">Fordonets årsmodell</param> /// <returns></returns> public bool boka(string fnamn, string enamn, string tfn, string regnr, string datum, string marke, string modell, string arsmodell, string agare, string spec) { List<string> errorMsgs = new List<string>(); SqlCeDatabase db = new SqlCeDatabase(); bil_objekt bil = new bil_objekt(); string tid = datum.Substring(11); datum = datum.Substring(0, 10); int kod = bil.insertFordon(regnr, modell, arsmodell, marke, agare); if (kod == 0) { string query = "INSERT INTO Bokning " + "(datum, fnamn, enamn, bil, tfn, tid, spec) " + "VALUES ('?x?','?x?','?x?', '?x?', '?x?', '?x?', '?x?')"; string[] args = { datum, fnamn, enamn, regnr, tfn, tid, spec }; if (db.query(query, args) == 0) { int opResultat = db.operation(); if (opResultat == 0) return true; else { errorMsgs.Add("Det blev något fel när din bokning skulle processeras. Kontakta systemansvarig"); if (DEBUG) errorMsgs.AddRange(db.GetTmpMsgs()); } } else { errorMsgs.Add("Det blev ett fel vid skapandet av frågan. Kontakta ansvarig för programmet."); if (DEBUG) errorMsgs.AddRange(db.GetTmpMsgs()); } } else { if (DEBUG) errorMsgs.AddRange(bil.GetTmpMsgs()); else errorMsgs.Add("Det blev något fel när ditt fordon skulle registreras"); } if (errorMsgs.Count > 0) { this.tmpMsgs = errorMsgs.ToArray(); } return false; }
/// <summary> /// Kontruktören för boknings_objekt, tar en SqlCeDatabase och en kund som parametrar /// </summary> /// <param name="db">SqlCeDatabase som ska användas för databasen</param> /// <param name="anvandare">kunden som bokar</param> public boknings_objekt(SqlCeDatabase db, kund anvandare) { this.anvandare = anvandare; this.db = db; }
/// <summary> /// Hämtar alla fordon som är hyrda inom ett visst tidsintervall och av en specificerad typ /// och sparar dem i tmpMsgs-arrayen /// </summary> /// <param name="typ">Fordonets typ</param> /// <param name="starttid">Hyrningens startdatum</param> /// <param name="sluttid">Hyrningens slutdatum</param> /// <returns>Statuskod för funktionen /// 0 - funktionen utfördes utan problem /// 10 - inga fordon matchade parametrarna /// 20 - kommunikations/frågefel mo databasen</returns> public int hamtaHyrdaFordon(string typ, string starttid, string sluttid) { SqlCeDatabase db = new SqlCeDatabase(); string checkHyrdaQuery = "SELECT H.Fordon " + "FROM Hyrning AS H INNER JOIN HyrFordon AS F ON H.Fordon = F.regnr " + "WHERE (H.Startdag < '?x?') AND (H.Slutdag > '?x?') AND (F.typ='?x?')"; string[] hyrdaArgs = { starttid, sluttid, typ }; int queryRes = db.query(checkHyrdaQuery, hyrdaArgs); if (queryRes != 0) { this.tmpMsgs = db.GetTmpMsgs(); return 20; } string[] hyrdaFordon = db.fetch(); if (hyrdaFordon.Length < 1) { this.tmpMsgs = db.GetTmpMsgs(); return 10; } this.tmpMsgs = hyrdaFordon; return 0; }
/// <summary> /// Tom konstruktör /// </summary> public user() { this.db = new SqlCeDatabase(); }
public bool loggaIn(string email, string Pw) { SqlCeDatabase db = new SqlCeDatabase(); List<string> errorMsgs = new List<string>(); if (!this.kollaEmail(email)) { errorMsgs.Add("Din email är inte en korrekt formatterad email"); this.tmpMsgs = errorMsgs.ToArray(); return false; } string queryLogin = "******"; string[] arg = { email }; if (db.query(queryLogin, arg) == 0) { string[] sokResultat = db.fetch(); if (sokResultat.Length < 1) { if (db.GetTmpMsgs().Contains("inga värden")) errorMsgs.Add("Din emailadress finns inte i vår databas, är du säker på att du har skapat en användare?\n" + "Om inte, klicka på Skapa användare för att göra just det."); else errorMsgs.AddRange(db.GetTmpMsgs()); this.tmpMsgs = errorMsgs.ToArray(); return false; } if (sokResultat[1] != Pw) { errorMsgs.Add("Det blev fel med kombinationen med lösenord och emailadressen"); this.tmpMsgs = errorMsgs.ToArray(); return false; } return true; } errorMsgs.AddRange(db.GetTmpMsgs()); this.tmpMsgs = errorMsgs.ToArray(); return false; }
/// <summary> /// Hämtar information om hyrfordonen som marke, modell, arsmodell och sparar dem i en SortedList där nycklarna är fältnamnen ifrån databasen. /// </summary> /// <param name="reg">Regnumret som datan ska hämtas om</param> /// <returns>En SortedList med fordonsinformationen. /// Innehåller även en nyckel för "regnr"</returns> public SortedList<string, string> hamtaValtHyrfordon(string reg) { SqlCeDatabase db = new SqlCeDatabase(); SortedList<string, string> fordon = new SortedList<string, string>(); string queryFetchFordon = "SELECT reg,marke,modell,arsmodell from HyrFordon where regnr='?x?'"; string[] args = { reg }; int queryRes = db.query(queryFetchFordon, args); if (queryRes != 0) throw new Exception(string.Format("Det blev något fel när frågan skapades.\nFelkod: {0}", queryRes)); if (db.fetchList().Count == 0) return db.fetchList(); else throw new Exception("Det fanns inget fordon med de regnumret"); }
/// <summary> /// Denna funktion kollar om det finns en bil i registret med detta id. /// </summary> /// <param name="id">Id:et på personen (första tre bokstäverna i förnamn och efternamn)</param> /// <returns>Returnerar ett bool-värde, sant om personen finns, annars falskt.</returns> public bool kollaPersonFinns(string id) { SqlCeDatabase db = new SqlCeDatabase(); string queryKund = "SELECT fnamn,enamn,id from Kunder where id='?x?'"; string[] kundArgs = { id }; if (db.query(queryKund, kundArgs) == 0) { string[] kollPersResultat = db.fetch(); if (kollPersResultat[0] == null) return false; else return true; } else return false; }
/// <summary> /// Hämtar alla bilar som är registrerade på kundens email och sparar dem i tmpMsgs. /// För att hämta arrayen med bilar kör getTmpMgsg. /// </summary> /// <param name="anvandare">Kunden som bilarna är registrerade på</param> /// <returns>Returnerar en returnkod som int-värde. /// 0 - Inga fel uppstod /// 1 - Inga bilar funna /// 2 - Fel vid frågeformuleringen</returns> public int kollaKundsBilar(kund anvandare) { SqlCeDatabase db = new SqlCeDatabase(); string regQuery = "SELECT reg, marke, modell, arsmodell FROM fordon WHERE agare='?x?'"; string[] args = { anvandare.GetEmail() }; int queryResultat = db.query(regQuery, args); if (queryResultat == 0) { SortedList<string,string>[] fetchResultat = db.fetchAllList(); if (fetchResultat.Length < 1) { this.tmpMsgs = db.GetTmpMsgs(); return 1; } else { this.tmpMsgsArray = fetchResultat; return 0; } } this.tmpMsgs = db.GetTmpMsgs(); return 2; }
/// <summary> /// Denna funktion kollar om det finns en bil i registret med detta regnummer. /// </summary> /// <param name="reg">Regnumret på bilen</param> /// <returns>Returnerar ett bool-värde, sant om bilen finns, annars falskt.</returns> public bool kollaBilFinns(string reg) { SqlCeDatabase db = new SqlCeDatabase(); string queryCheckBil = "SELECT reg from Fordon where reg='?x?'"; string[] argsCheckBil = new string[1] { reg }; db.query(queryCheckBil, argsCheckBil); string[] kollaBilRes = db.fetch(); if (kollaBilRes[0] == null) return false; else return true; }
/// <summary> /// Denna funktion lägger till ett fordon i hyrregistret. /// Den använder sig av klassen SQLCeDatabase för att ansluta till en kompakt MSSQL-server/fil. /// </summary> /// <param name="reg">Regnumret på fordonet</param> /// <param name="modell">Fordonets modell</param> /// <param name="arsmodell">Fordonets årsmodell</param> /// <param name="marke">Fordonets märke</param> /// <param name="typ">Typen av fordon</param> /// <returns>Returnerar returnkod som int. /// 0 - Operationen utfördes utan problem /// </returns> public int insertHyrFordon(string reg, string modell, string arsmodell, string marke, string typ) { SqlCeDatabase db = new SqlCeDatabase(); string insertQuery = "INSERT INTO HyrFordon (regnr, typ, modell, arsmodell, marke) values ('?x?','?x?','?x?','?x?','?x?')"; string[] args = { reg, typ, modell, arsmodell, marke }; if (db.query(insertQuery, args) != 0) { this.tmpMsgs = db.GetTmpMsgs(); return 1; } if (db.operation() != 0) { this.tmpMsgs = db.GetTmpMsgs(); return 2; } return 0; }
/// <summary> /// Registrerar ett fordon för oregistrerade kunder /// </summary> /// <param name="reg">Fordonets registreringsnummer</param> /// <param name="modell">Fordonets modell</param> /// <param name="arsmodell">Fordonets årsmodell</param> /// <param name="marke">Fordonets märke</param> /// <param name="agare">Fordonets ägare</param> /// <returns></returns> public int insertFordon(string reg, string modell, string arsmodell, string marke, string agare) { SqlCeDatabase db = new SqlCeDatabase(); List<string> resultat = new List<string>(); List<string> errorMsgs = new List<string>(); string queryNyBil = "INSERT INTO Fordon" + "(reg, modell, arsmodell, marke, agare) " + " values ('?x?','?x?','?x?','?x?','?x?')"; string[] argsNyBil = new string[5] { reg, modell, arsmodell, marke, agare }; int queryResultat = db.query(queryNyBil, argsNyBil); // Skapar en string-array av resultatet från db.query() för att kunna använda i jämförelser och returns int returnkod; if (queryResultat == 0) { int operationResultat = db.operation(); // Skapar en string-array av resultatet från db.operation() för att kunna använda i jämförelser och returns if (operationResultat == 0) { returnkod = 0; } else { errorMsgs.Add("Det blev ett fel när ditt fordon skulle registreras. Kontakta systemansvarig."); if (DEBUG) errorMsgs.AddRange(db.GetTmpMsgs()); returnkod = 1; } } else { errorMsgs.Add("Det blev ett fel med frågeformuleringen. Kontakta systemansvarig."); if (DEBUG) errorMsgs.AddRange(db.GetTmpMsgs()); returnkod = 2; } if (errorMsgs.Count > 0) this.tmpMsgs = errorMsgs.ToArray(); return returnkod; }
/// <summary> /// Kollar om tiden är ledig i bokningsdatabasen /// </summary> /// <param name="date">Datumet som bokningen gäller</param> /// <param name="tid">Tid intervallet ex. HH:MM</param> /// <returns>Sant om det är ledigt, falskt annars</returns> public bool kollaTidLedig(string date, string tid) { SqlCeDatabase db = new SqlCeDatabase(); string tid1 = tid.Substring(0, tid.IndexOf(' ')); string tid2 = tid.Substring(tid.LastIndexOf(' ')+1, 5); string date1 = date + " " + tid1; string date2 = date + " " + tid2; string queryTid = "SELECT * FROM Bokning WHERE datum BETWEEN '?x?' AND '?x?'"; string[] args = { date1, date2 }; if (db.query(queryTid, args) == 0) { string[] resultat = db.fetch(); if (resultat.Length == 0 ) return true; } return false; }
/// <summary> /// Funktion som ska kunna söka efter lediga fordon i specificerad typ under visst tidsinterval /// </summary> /// <param name="typ">Typ av fordon</param> /// <param name="starttid">Starttiden för hyrningen då fordonet måste vara ledig</param> /// <param name="sluttid">Sluttuden för hyrningen då fordonet kommer lämnas tillbaka, måste också vara ledig</param> /// <returns>Returnerar en int /// 0 - Om det finns lediga fordon /// 10 - Om det inte finns några lediga fordon /// 20 - Vid kommunikationsfel med databasen</returns> public int kollaLedigaHyrFordon(string typ, string starttid, string sluttid) { SqlCeDatabase db = new SqlCeDatabase(); string[] allaFordon; string[] hyrdaFordon; int hyrFordonStatus; int allaFordonStatus; /* Hämtar alla hyrfordon och skapar Exceptions om det inte finns fordon */ allaFordonStatus = hamtaAllaHyrFordon(typ); if (allaFordonStatus == 0) allaFordon = GetTmpMsgs(); else if (allaFordonStatus == 10) return 10; else throw new Exception(db.GetTmpMsgs()[0]); /* Hämtar alla hyrfordon som är hyrda under den angivna tidsperioden * och skapar ett Exception om det blev något fel med själva förfrågningen till databasen */ hyrFordonStatus = hamtaHyrdaFordon(typ, starttid, sluttid); if (hyrFordonStatus == 0) hyrdaFordon = GetTmpMsgs(); else if (hyrFordonStatus == 10) { this.tmpMsgs = allaFordon; return 0; } else throw new Exception(db.GetTmpMsgs()[0]); List<string> ledigaFordon = new List<string>(); /* Går igenom alla hyrfordon och kollar om tabellen med hyrda fordon innehåller det registreringsnumret * i så fall händer inget, annars läggs fordonet till i ledigaFordon-listan */ foreach (string fordon in allaFordon) { if (!hyrdaFordon.Contains(fordon)) ledigaFordon.Add(fordon); } /* Returnerar 10 om det inte fanns några lediga fordon */ if (ledigaFordon.Count == 0) return 10; else { this.tmpMsgs = ledigaFordon.ToArray(); return 0; } }
/// <summary> /// Denna funktion lägger till personer till registret. /// Den använder sig av klassen SqlCeDatabase för att ansluta till en kompakt MSSQL-server/fil. /// </summary> /// <param name="args">En array med strängar som representerar värdena till kunden. /// Kan med fördel användas med kollaInmatnings funktionen</param> /// <returns>Returnerar ett intvärde. /// 0 om allt slutade utan problem /// Annars returnerar den db.operation eller db.query felkoden.</returns> public int ReggaKund(string[] args) { SqlCeDatabase db = new SqlCeDatabase(); string query = "Insert into Kunder" + "(fnamn, enamn, email, tfn, adress, personnr, losen)" + " values " + "('?x?','?x?','?x?','?x?','?x?','?x?','?x?')"; if (db.query(query, args) == 0) { if (db.operation() == 0) { int resultat = 0; return resultat; } else { return db.operation(); } } else return db.query(query, args); }
/// <summary> /// Tom konstruktör /// </summary> public kund() { this.db = new SqlCeDatabase(); }