public async Task <bool> EndreBestilling(int bestillingId, int nyAvgangId, int nyttAntall, int nyBrukerId) { try { Bestillinger endretBestilling = await _db.Bestillinger.FirstOrDefaultAsync(b => b.Id == bestillingId); if (endretBestilling != null) { Avganger nyAvgang = await _db.Avganger.FirstOrDefaultAsync(a => a.Id == nyAvgangId); Brukere nyBruker = await _db.Brukere.FirstOrDefaultAsync(b => b.Id == nyBrukerId); if (nyAvgang != null && nyBruker != null) { endretBestilling.Avgang = nyAvgang; endretBestilling.Antall = nyttAntall; endretBestilling.Bruker = nyBruker; await _db.SaveChangesAsync(); return(true); } return(false); } return(false); } catch { return(false); } }
public async Task <bool> LagBestilling(int avgangId, int antall, int brukerId) { try { var nyBestillingRad = new Bestillinger(); Avganger ValgtAvgang = await _db.Avganger.FindAsync(avgangId); Brukere ValgtBruker = await _db.Brukere.FindAsync(brukerId); if (ValgtAvgang != null) { nyBestillingRad.Avgang = ValgtAvgang; nyBestillingRad.Antall = antall; nyBestillingRad.Bruker = ValgtBruker; _db.Bestillinger.Add(nyBestillingRad); await _db.SaveChangesAsync(); return(true); } else { return(false); } } catch { return(false); } }
public async Task <bool> LagAvgang(int stasjonFraId, int stasjonTilId, string datoTid, int pris) { try { DateTime gittDatoTid = DateTime.Parse(datoTid); Stasjoner stasjonFra = await _db.Stasjoner.FindAsync(stasjonFraId); Stasjoner stasjonTil = await _db.Stasjoner.FindAsync(stasjonTilId); Avganger nyAvgang = new Avganger { StasjonFra = stasjonFra, StasjonTil = stasjonTil, Dato = gittDatoTid, Pris = pris }; await _db.Avganger.AddAsync(nyAvgang); await _db.SaveChangesAsync(); return(true); } catch { return(false); } }
public async Task <bool> SlettAvgang(int avgangId) { try { Avganger slettAvgang = await _db.Avganger.FindAsync(avgangId); _db.Avganger.Remove(slettAvgang); await _db.SaveChangesAsync(); return(true); } catch { return(false); } }
//Generer avganger hver andre time for gitt strekning og dato. //Denne blir kalt hvis det ikke eksisterer noen avganger for gitt strekning og dato public async Task <bool> GenererAvganger(int stasjonFraId, int stasjonTilId, string dato) { try { Stasjoner stasjonFraValg = new Stasjoner(); stasjonFraValg = _db.Stasjoner.Find(stasjonFraId); Stasjoner stasjonTilValg = new Stasjoner(); stasjonTilValg = _db.Stasjoner.Find(stasjonTilId); //Lager DateTime objekt DateTime datetime = DateTime.Parse(dato); if (stasjonFraValg != null && stasjonTilValg != null) { for (int i = 0; i < 24; i += 2) { //Ny avgang Avganger nyAvgangRad = new Avganger { StasjonFra = stasjonFraValg, StasjonTil = stasjonTilValg, Dato = datetime.AddHours(i), Pris = 200 }; _db.Avganger.Add(nyAvgangRad); } await _db.SaveChangesAsync(); return(true); } else { return(false); } } catch { return(false); } }
public async Task <bool> EndreAvgang(int avgangId, string datoTid, int pris) { try { DateTime gittDatoTid = DateTime.Parse(datoTid); Avganger endretAvgang = await _db.Avganger.FirstOrDefaultAsync(a => a.Id == avgangId); if (endretAvgang != null) { endretAvgang.Dato = gittDatoTid; endretAvgang.Pris = pris; await _db.SaveChangesAsync(); return(true); } return(false); } catch { return(false); } }
public static void Initialize(IServiceScope serviceScope) { var context = serviceScope.ServiceProvider.GetService <BestillingContext>(); // må slette og opprette databasen hver gang n?r den skalinitieres (seed`es) context.Database.EnsureDeleted(); context.Database.EnsureCreated(); var stasjonerList = new List <Stasjoner> { new Stasjoner { StasjonsNavn = "Oslo", NummerPaaStopp = int.Parse("1") }, new Stasjoner { StasjonsNavn = "Sandvika", NummerPaaStopp = int.Parse("2") }, new Stasjoner { StasjonsNavn = "Asker", NummerPaaStopp = int.Parse("3") }, new Stasjoner { StasjonsNavn = "Drammen", NummerPaaStopp = int.Parse("4") }, new Stasjoner { StasjonsNavn = "Skoger", NummerPaaStopp = int.Parse("5") }, new Stasjoner { StasjonsNavn = "Sande", NummerPaaStopp = int.Parse("6") }, new Stasjoner { StasjonsNavn = "Holmestrand", NummerPaaStopp = int.Parse("7") }, new Stasjoner { StasjonsNavn = "Kopstadkrysset", NummerPaaStopp = int.Parse("8") }, new Stasjoner { StasjonsNavn = "Horten", NummerPaaStopp = int.Parse("9") } }; var avgang1 = new Avganger { Fra = stasjonerList[0].StasjonsNavn, Til = stasjonerList[1].StasjonsNavn, Tid = "07:00" }; var avgang2 = new Avganger { Fra = stasjonerList[3].StasjonsNavn, Til = stasjonerList[4].StasjonsNavn, Tid = "08:00" }; var avgang3 = new Avganger { Fra = stasjonerList[5].StasjonsNavn, Til = stasjonerList[6].StasjonsNavn, Tid = "11:00" }; var avgang4 = new Avganger { Fra = stasjonerList[7].StasjonsNavn, Til = stasjonerList[8].StasjonsNavn, Tid = "12:00" }; var avgang5 = new Avganger { Fra = stasjonerList[0].StasjonsNavn, Til = stasjonerList[1].StasjonsNavn, Tid = "14:00" }; var avgang6 = new Avganger { Fra = stasjonerList[3].StasjonsNavn, Til = stasjonerList[4].StasjonsNavn, Tid = "15:00" }; var avgang7 = new Avganger { Fra = stasjonerList[5].StasjonsNavn, Til = stasjonerList[6].StasjonsNavn, Tid = "18:00" }; var avgang8 = new Avganger { Fra = stasjonerList[7].StasjonsNavn, Til = stasjonerList[8].StasjonsNavn, Tid = "21:00" }; var bestilling1 = new Bestillinger { Fra = "Oslo", Til = "Drammen", Tid = "07:00", Pris = double.Parse("50"), Dato = "2021-01-13" }; var bestilling2 = new Bestillinger { Fra = "Drammen", Til = "Horten", Tid = "08:00", Pris = double.Parse("50"), Dato = "2021-02-20" }; foreach (Stasjoner s in stasjonerList) { context.Stasjoner.Add(s); } /* * context.Stasjoner.Add(stasjon1); * context.Stasjoner.Add(stasjon2); * context.Stasjoner.Add(stasjon3); */ context.Avganger.Add(avgang1); context.Avganger.Add(avgang2); context.Bestillinger.Add(bestilling1); context.Bestillinger.Add(bestilling2); var db = serviceScope.ServiceProvider.GetService <BestillingContext>(); var adminBruker = new Brukere(); adminBruker.Brukernavn = "Admin1"; string passord = "Passord1"; byte[] salt = BrukerRepository.Salt(); byte[] hash = BrukerRepository.Hash(passord, salt); adminBruker.Passord = hash; adminBruker.Salt = salt; db.Brukere.Add(adminBruker); context.SaveChanges(); }