public bool EndreKundePassord(AdminEndreKundePassordView k, byte[] p) { using (var db = new WebshopContext()) { try { var dbKunde = db.Kunder.Find(k.kundeId); dbKunde.mail = k.mail; dbKunde.passord = p; db.Entry(dbKunde).State = EntityState.Modified; db.SaveChanges(); db.Dispose(); return true; } catch (Exception e) { ExceptionWriter.LoggFeil(e, "EndreKundePassord"); return false; } } }
public bool EndreKundeAdmin(ViewKunde k) { using (var db = new WebshopContext()) { try { var dbKunde = db.Kunder.Find(k.kundeId); dbKunde.mail = k.mail; dbKunde.fornavn = k.fornavn; dbKunde.etternavn = k.etternavn; dbKunde.adresse = k.adresse; dbKunde.tlf = k.tlf; dbKunde.postnummer = k.postnummer; db.Entry(dbKunde).State = EntityState.Modified; db.SaveChanges(); return true; } catch (Exception e) { ExceptionWriter.LoggFeil(e, "RegistrerKunde"); return false; } } }
public bool PlasserOrdre(int kundeId) { try { using (var db = new WebshopContext()) { var dbkunde = db.Kunder.Find(kundeId); if (dbkunde == null || dbkunde.kurv == null || dbkunde.kurv.produkter == null || dbkunde.kurv.produkter.Count == 0) { return false; } if (dbkunde.ordre == null) { dbkunde.ordre = new List<Ordre>(); } var nyOrdre = new Ordre() { dato = System.DateTime.Now, kunde = dbkunde, ordrelinjer = new List<OrdreLinje>() }; var kurvP = dbkunde.kurv.produkter; var tempsum = 0; foreach (KurvProdukt kp in kurvP) { var ol = new OrdreLinje() { antall = kp.antall, produkt = kp.produkt, linjesum = kp.antall * kp.produkt.pris }; //db.Produkter.Find(kp.produktId).lager -= kp.antall; tempsum += (kp.antall * kp.produkt.pris); nyOrdre.ordrelinjer.Add(ol); } nyOrdre.sum = tempsum; dbkunde.kurv = null; dbkunde.ordre.Add(nyOrdre); db.SaveChanges(); return true; } } catch (Exception e) { ExceptionWriter.LoggFeil(e, "PlasserOrdre()"); return false; } }
// henter kunde-id fra db for innlogging public int FinnKundeLoggInn(string mail, byte[] passordDb) { using (var db = new WebshopContext()) { Kunde dbKunde = db.Kunder.FirstOrDefault (k => k.passord == passordDb && k.mail == mail); if (dbKunde == null) { return 0; } else { return dbKunde.kundeId; } } }
public bool LeggiKurv(int kundeId, int produktId) { using (var db = new WebshopContext()) { var kunde = db.Kunder.Find(kundeId); var p1 = db.Produkter.Find(produktId); var kurvprodukter = new List<KurvProdukt>(); var kp = new KurvProdukt(); //hvis kunde eller produkt ikke finnes i database if (p1 == null || kunde == null) { return false; } //oppretter kurv hvis den er null if (kunde.kurv == null) { kunde.kurv = new Handlekurv(); } //sjekk om handlekurven er tom if (kunde.kurv.produkter == null) { kp = new KurvProdukt() { antall = 1, produkt = p1, produktId = p1.produktId, kurvId = kunde.kurv.kurvId }; db.KurvProdukter.Add(kp); } else //kurven er ikke tom { // sjekk om varen allerede ligger i kurven kp = db.KurvProdukter.SingleOrDefault( kurvP => kurvP.produkt.produktId == p1.produktId && kurvP.kurvId == kunde.kurv.kurvId); if (kp == null) //varen er ikke i kurven { kp = new KurvProdukt { antall = 1, produkt = p1, produktId = p1.produktId, kurvId = kunde.kurv.kurvId }; db.KurvProdukter.Add(kp); } else //varen er i kurven - øker antall { kp.antall++; } } db.SaveChanges(); return true; } }
public Kunde FinnKunde(int id) { using (var db = new WebshopContext()) { Kunde dbKunde = db.Kunder.FirstOrDefault (k => k.kundeId == id); if (dbKunde != null) return dbKunde; else return null; } }
//henter kundekurven basert på kundeId, oppretter ny hvis kurven er null public List<KurvProduktView> ViewKurvFraId(int id) { using (var db = new WebshopContext()) { var kurv = new Handlekurv(); try { Kunde dbKunde = db.Kunder.Find(id); if (dbKunde != null) { if (dbKunde.kurv == null) { dbKunde.kurv = new Handlekurv(); } if (dbKunde.kurv.produkter == null) { dbKunde.kurv.produkter = new List<KurvProdukt>(); } db.SaveChanges(); var kpviewlist = new List<KurvProduktView>(); foreach (KurvProdukt kp in dbKunde.kurv.produkter) { var kpview = new KurvProduktView(); kpview.navn = kp.produkt.navn; kpview.antall = kp.antall; kpview.pris = kp.produkt.pris; kpviewlist.Add(kpview); } return kpviewlist; } else return null; } catch { return null; } } }
/*public bool EndreKunde(int id, ViewKunde vk) { using (var db = new WebshopContext()) { try { var dbKunde = db.Kunder.Find(id); dbKunde.mail = vk.mail; dbKunde.fornavn = vk.fornavn; dbKunde.etternavn = vk.etternavn; dbKunde.adresse = vk.adresse; dbKunde.tlf = vk.tlf; dbKunde.postnummer = vk.postnummer; db.Entry(dbKunde).State = EntityState.Modified; db.SaveChanges(); db.Dispose(); return true; } catch { return false; } } }*/ public bool SlettKunde(int kundeId) { using (var db = new WebshopContext()) { try { var kunde = db.Kunder.Find(kundeId); db.Kunder.Remove(kunde); db.SaveChanges(); return true; } catch (Exception e) { ExceptionWriter.LoggFeil(e, "SlettKunde"); return false; } } }
public bool RegistrerKunde(Kunde k) { using (var db = new WebshopContext()) { try { db.Kunder.Add(k); db.SaveChanges(); return true; } catch (Exception e) { ExceptionWriter.LoggFeil(e, "RegistrerKunde"); return false; } } }
/* -------- NYTT I OPPGAVE 2 ---------- */ public List<Kunde> HentKundeListe() { var dummy = new List<Kunde>(); using (var db = new WebshopContext()) { try { var kunder = db.Kunder.ToList(); return kunder; } catch (Exception e) { ExceptionWriter.LoggFeil(e, "HentKundeListe"); return dummy; } } }