public async Task <bool> OpprettTur(Tur innTur) { try { var nyTurRad = new Turer(); nyTurRad.Dato = innTur.Dato; nyTurRad.Tid = innTur.Tid; nyTurRad.BarnePris = innTur.BarnePris; nyTurRad.VoksenPris = innTur.VoksenPris; bool startStasjonFunnet = false; List <Stasjon> alleStasjoner = await _db.Stasjoner.ToListAsync(); foreach (var stasjon in alleStasjoner) { if (innTur.StartStasjon.Equals(stasjon.StasjonsNavn)) { nyTurRad.StartStasjon = stasjon; startStasjonFunnet = true; } } if (!startStasjonFunnet) { var startStasjonRad = new Stasjon(); startStasjonRad.StasjonsNavn = innTur.StartStasjon; nyTurRad.StartStasjon = startStasjonRad; } bool endeStasjonFunnet = false; foreach (var stasjon in alleStasjoner) { if (innTur.EndeStasjon.Equals(stasjon.StasjonsNavn)) { nyTurRad.EndeStasjon = stasjon; endeStasjonFunnet = true; } } if (!endeStasjonFunnet) { var endeStasjonRad = new Stasjon(); endeStasjonRad.StasjonsNavn = innTur.EndeStasjon; nyTurRad.EndeStasjon = endeStasjonRad; } _db.Turer.Add(nyTurRad); await _db.SaveChangesAsync(); return(true); } catch (Exception e) { _log.LogInformation(e.Message); return(false); } }
public async Task <bool> SlettTur(int TurId) { try { Turer enTur = await _db.Turer.FindAsync(TurId); _db.Turer.Remove(enTur); _db.SaveChanges(); return(true); } catch { return(false); } }
public async Task <bool> Lagre(BussBestilling innBussBestilling) { int turID = 0; List <Turer> alleTurer = await _db.Turer.ToListAsync(); foreach (var turen in alleTurer) { if (innBussBestilling.StartStasjon.Equals(turen.StartStasjon.StasjonsNavn) && innBussBestilling.EndeStasjon.Equals(turen.EndeStasjon.StasjonsNavn) && innBussBestilling.Tid.Equals(turen.Tid) && innBussBestilling.Dato.Equals(turen.Dato)) { turID = turen.TurId; } } Turer funnetTur = _db.Turer.Find(turID); double totalpris = (innBussBestilling.AntallBarn * funnetTur.BarnePris) + (innBussBestilling.AntallVoksne * funnetTur.VoksenPris); int kundeID = 0; List <Kunde> alleKunder = await _db.Kunder.ToListAsync(); foreach (var kunde in alleKunder) { if (innBussBestilling.Fornavn.Equals(kunde.Fornavn) && innBussBestilling.Etternavn.Equals(kunde.Etternavn) && innBussBestilling.Epost.Equals(kunde.Epost) && innBussBestilling.Kortnummer.Equals(kunde.Kortnummer)) { kundeID = kunde.KId; } } try { var nyBestillingRad = new Bestilling(); nyBestillingRad.AntallBarn = innBussBestilling.AntallBarn; nyBestillingRad.AntallVoksne = innBussBestilling.AntallVoksne; nyBestillingRad.TotalPris = totalpris; nyBestillingRad.Tur = funnetTur; Kunde funnetKunde = await _db.Kunder.FindAsync(kundeID); if (funnetKunde == null) { var kundeRad = new Kunde(); kundeRad.Fornavn = innBussBestilling.Fornavn; kundeRad.Etternavn = innBussBestilling.Etternavn; kundeRad.Telefonnummer = innBussBestilling.Telefonnummer; kundeRad.Epost = innBussBestilling.Epost; kundeRad.Kortnummer = innBussBestilling.Kortnummer; _db.Kunder.Add(kundeRad); await _db.SaveChangesAsync(); nyBestillingRad.kunde = kundeRad; } else { nyBestillingRad.kunde = funnetKunde; } _db.Bestillinger.Add(nyBestillingRad); await _db.SaveChangesAsync(); return(true); } catch (Exception e) { _log.LogInformation(e.Message); return(false); } }