예제 #1
0
        public bool LeggInn(Artikkel artikkel)
        {
            if (artikkel.Beskrivelse == ""
                || artikkel.BildeUrl == ""
                || artikkel.Kategori == null
                || artikkel.ThumbnailUrl == "") {
                return false;
            }

            return true;
        }
예제 #2
0
 public bool LeggInn(Artikkel artikkel)
 {
     try {
         using (var db = new DataContext()) {
             var kategori = db.Kategorier.Find(artikkel.Kategori.ID);
             artikkel.Kategori = kategori;
             db.Artikler.Add(artikkel);
             db.SaveChanges();
             Logg.LoggDb("La in artikkel " + artikkel.Artikkelnr);
             return true;
         }
     } catch (Exception e) {
         Logg.LoggFil("ArtikkelDAL.LeggInn(Artikkel)", e.Message);
         return false;
     }
 }
예제 #3
0
 public bool Rediger(int id, Artikkel artikkel)
 {
     try {
         using (var db = new DataContext()) {
             var kategori = db.Kategorier.Find(artikkel.Kategori.ID);
             var endre = db.Artikler.Find(id);
             endre.AntallPaaLager = artikkel.AntallPaaLager;
             endre.Beskrivelse = artikkel.Beskrivelse;
             endre.BildeUrl = artikkel.BildeUrl;
             endre.Kategori = kategori;
             endre.Pris = artikkel.Pris;
             endre.ThumbnailUrl = artikkel.ThumbnailUrl;
             db.SaveChanges();
             Logg.LoggDb("Redigerte artikkel " + id);
             return true;
         }
     } catch (Exception e) {
         Logg.LoggFil("ArtikkelDAL.Rediger(int, Artikkel)", e.Message);
         return false;
     }
 }
예제 #4
0
        public Artikkel HentEnArtikkel(int artikkelNr)
        {
            if (artikkelNr == 0) {
                return null;
            }

            var mobiltelefoner = new Kategori() {
                Navn = "Mobiltelefoner"
            };

            var artikkel = new Artikkel() {
                Artikkelnr = artikkelNr,
                Kategori = mobiltelefoner,
                Beskrivelse = "iPhone 5",
                Pris = 1000,
                AntallPaaLager = 5,
                BildeUrl = "http://i.imgur.com/A9VXpL7.jpg",
                ThumbnailUrl = "http://i.imgur.com/A9VXpL7m.jpg"
            };

            return artikkel;
        }
예제 #5
0
        public ActionResult LeggInn(RedigerArtikkel artikkel)
        {
            if (!(bool)Session["AdminInnlogget"])
            {
                return RedirectToAction("Innlogging", "Admin");
            }

            if (!ModelState.IsValid)
            {
                return View();
            }

            var thumbnailUrl = Util.LagThumbnailUrl(artikkel.BildeUrl);

            var kategori = _kategoriLogikk.HentEnKategori(artikkel.KategoriID);

            var nyArtikkel = new Artikkel()
            {
                AntallPaaLager = artikkel.AntallPaaLager,
                Beskrivelse = artikkel.Beskrivelse,
                BildeUrl = artikkel.BildeUrl,
                Pris = artikkel.Pris,
                ThumbnailUrl = thumbnailUrl,
                Kategori = kategori
            };

            var ok = _artikkelLogikk.LeggInn(nyArtikkel);

            if (!ok)
            {
                return View();
            }

            return RedirectToAction("Liste");
        }
예제 #6
0
        public ActionResult Slett(int id, Artikkel artikkel)
        {
            if (!(bool)Session["AdminInnlogget"])
            {
                return RedirectToAction("Innlogging", "Admin");
            }

            var ok = _artikkelLogikk.Slett(id);
            if (!ok)
            {
                return View();
            }
            return RedirectToAction("Liste");
        }
예제 #7
0
 public bool Rediger(int id, Artikkel artikkel)
 {
     return _repository.Rediger(id, artikkel);
 }
예제 #8
0
 public bool LeggInn(Artikkel artikkel)
 {
     return _repository.LeggInn(artikkel);
 }
예제 #9
0
 public void LeggInn(Artikkel artikkel)
 {
     var funnet = Ordrelinjer.FirstOrDefault(ol => ol.Artikkel.Artikkelnr == artikkel.Artikkelnr);
     if (funnet == null) Ordrelinjer.Add(new Ordrelinje(artikkel));
 }
예제 #10
0
        public void Slett_ikke_funnet_Post()
        {
            // Arrange
            var controller = new ArtikkelController(new ArtikkelLogikk(new ArtikkelRepositoryStub()));
            var innArtikkel = new Artikkel()
            {
                Artikkelnr = 0
            };

            var sessionMock = new TestControllerBuilder();
            sessionMock.InitializeController(controller);
            controller.Session["AdminInnLogget"] = true;

            //ACT
            var actionResult = (ViewResult)controller.Slett(0, innArtikkel);

            //ASSERT
            Assert.AreEqual(actionResult.ViewName, "");
        }
예제 #11
0
        public void Slettet_funnet_Post()
        {
            // Arrange
            var controller = new ArtikkelController(new ArtikkelLogikk(new ArtikkelRepositoryStub()));
            var innArtikkel = new Artikkel()
            {
                Artikkelnr = 1
            };

            var sessionMock = new TestControllerBuilder();
            sessionMock.InitializeController(controller);
            controller.Session["AdminInnLogget"] = true;

            // Act
            var actionResult = (RedirectToRouteResult)controller.Slett(1, innArtikkel);

            // Assert
            Assert.AreEqual(actionResult.RouteName, "");
            Assert.AreEqual(actionResult.RouteValues.Values.First(), "Liste");
        }
예제 #12
0
 public Ordrelinje(Artikkel artikkel)
 {
     Artikkel = artikkel;
     Antall = 1;
 }
예제 #13
0
        public bool Rediger(int id, Artikkel artikkel)
        {
            if (id == 0
                || artikkel.Beskrivelse == ""
                || artikkel.BildeUrl == ""
                || artikkel.Kategori == null
                || artikkel.ThumbnailUrl == "") {
                return false;
            }

            return true;
        }
예제 #14
0
        public void Liste()
        {
            //Arrange

            var controller = new OrdreController(new OrdreLogikk(new OrdreRepositoryStub()));
            var forventetResultat = new List<Ordre>();
            var sessionMock = new TestControllerBuilder();
            sessionMock.InitializeController(controller);

            controller.Session["AdminInnlogget"] = true;
            var kunden = new Kunde() {
                Adresse = "Osloveien 123",
                Epost = "*****@*****.**",
                Etternavn = "Hansen",
                Fornavn = "Per",
                Passord = Crypto.LagHash("asdf"),
                Postnummer = "0221",
                Poststed = "Oslo",
                Tlf = "94000000"
            };

            var mobiltelefoner = new Kategori() {
                Navn = "Mobiltelefoner"
            };
            var artikkel = new Artikkel() {
                Kategori = mobiltelefoner,
                Beskrivelse = "iPhone 5",
                Pris = 1000,
                AntallPaaLager = 5,
                BildeUrl = "http://i.imgur.com/A9VXpL7.jpg",
                ThumbnailUrl = "http://i.imgur.com/A9VXpL7m.jpg"
            };
            var ordrelinje = new Ordrelinje() {
                Antall = 1,
                Artikkel = artikkel,
                PrisPerStk = 1000,
                TotalSumLinje = 1000
            };
            var ordrelinjer = new List<Ordrelinje>();
            ordrelinjer.Add(ordrelinje);
            ordrelinjer.Add(ordrelinje);
            var ordre = new Ordre() {
                Kunde = kunden,
                Adresse = "Osloveien 123",
                Postnummer = "0221",
                Poststed = "Oslo",
                Ordrelinjer = ordrelinjer
            };
            forventetResultat.Add(ordre);
            forventetResultat.Add(ordre);
            forventetResultat.Add(ordre);
            //Act
            var actionresult = (ViewResult)controller.Liste();
            var resultat = (List<Ordre>)actionresult.Model;

            //Assert

            Assert.AreEqual(actionresult.ViewName, "");
            for (int i = 0; i < resultat.Count; i++) {
                Assert.AreEqual(forventetResultat[i].Navn, resultat[i].Navn);
                Assert.AreEqual(forventetResultat[i].Adresse, resultat[i].Adresse);
                Assert.AreEqual(forventetResultat[i].Kunde.Fornavn, resultat[i].Kunde.Fornavn);
                Assert.AreEqual(forventetResultat[i].Kunde.Etternavn, resultat[i].Kunde.Etternavn);
                Assert.AreEqual(forventetResultat[i].Kunde.Adresse, resultat[i].Kunde.Adresse);
                Assert.AreEqual(forventetResultat[i].Kunde.Epost, resultat[i].Kunde.Epost);
                Assert.AreEqual(forventetResultat[i].Kunde.Aktiv, resultat[i].Kunde.Aktiv);
                Assert.AreEqual(forventetResultat[i].Kunde.Kundenummer, resultat[i].Kunde.Kundenummer);
                Assert.AreEqual(forventetResultat[i].Kunde.Tlf, resultat[i].Kunde.Tlf);
                Assert.AreEqual(forventetResultat[i].Kunde.Poststed, resultat[i].Kunde.Poststed);
                Assert.AreEqual(forventetResultat[i].Kunde.Postnummer, resultat[i].Kunde.Postnummer);
                for (int j = 0; j < forventetResultat[i].Kunde.Passord.Length; j++) {
                    Assert.AreEqual(forventetResultat[i].Kunde.Passord[j], resultat[i].Kunde.Passord[j]);
                }
                Assert.AreEqual(forventetResultat[i].Ordredato, resultat[i].Ordredato);
                for (int j = 0; j < forventetResultat[i].Ordrelinjer.Count; j++) {
                    Assert.AreEqual(forventetResultat[i].Ordrelinjer[j].Antall, resultat[i].Ordrelinjer[j].Antall);
                    Assert.AreEqual(forventetResultat[i].Ordrelinjer[j].Artikkel.AntallPaaLager, resultat[i].Ordrelinjer[j].Artikkel.AntallPaaLager);
                    Assert.AreEqual(forventetResultat[i].Ordrelinjer[j].Artikkel.Artikkelnr, resultat[i].Ordrelinjer[j].Artikkel.Artikkelnr);
                    Assert.AreEqual(forventetResultat[i].Ordrelinjer[j].Artikkel.Beskrivelse, resultat[i].Ordrelinjer[j].Artikkel.Beskrivelse);
                    Assert.AreEqual(forventetResultat[i].Ordrelinjer[j].Artikkel.BildeUrl, resultat[i].Ordrelinjer[j].Artikkel.BildeUrl);
                    Assert.AreEqual(forventetResultat[i].Ordrelinjer[j].Artikkel.Pris, resultat[i].Ordrelinjer[j].Artikkel.Pris);
                    Assert.AreEqual(forventetResultat[i].Ordrelinjer[j].Artikkel.Slettet, resultat[i].Ordrelinjer[j].Artikkel.Slettet);
                    Assert.AreEqual(forventetResultat[i].Ordrelinjer[j].Artikkel.ThumbnailUrl, resultat[i].Ordrelinjer[j].Artikkel.ThumbnailUrl);
                    Assert.AreEqual(forventetResultat[i].Ordrelinjer[j].Artikkel.Kategori.Navn, resultat[i].Ordrelinjer[j].Artikkel.Kategori.Navn);
                    Assert.AreEqual(forventetResultat[i].Ordrelinjer[j].Artikkel.Kategori.Slettet, resultat[i].Ordrelinjer[j].Artikkel.Kategori.Slettet);
                    Assert.AreEqual(forventetResultat[i].Ordrelinjer[j].PrisPerStk, resultat[i].Ordrelinjer[j].PrisPerStk);
                    Assert.AreEqual(forventetResultat[i].Ordrelinjer[j].TotalSumLinje, resultat[i].Ordrelinjer[j].TotalSumLinje);
                }
                Assert.AreEqual(forventetResultat[i].Ordrenummer, resultat[i].Ordrenummer);
                Assert.AreEqual(forventetResultat[i].Postnummer, resultat[i].Postnummer);
                Assert.AreEqual(forventetResultat[i].Poststed, resultat[i].Poststed);
                Assert.AreEqual(forventetResultat[i].TotalSum, resultat[i].TotalSum);
            }
        }