Esempio n. 1
0
        public IHttpActionResult PostWarenkorb(Warenkorb warenkorb)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            db.Warenkorbs.Add(warenkorb);

            try
            {
                db.SaveChanges();
            }
            catch (DbUpdateException)
            {
                if (WarenkorbExists(warenkorb.Id))
                {
                    return(Conflict());
                }
                else
                {
                    throw;
                }
            }

            return(Ok(warenkorb));
        }
Esempio n. 2
0
        public IHttpActionResult PutWarenkorb(int id, Warenkorb warenkorb)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            if (id != warenkorb.Id)
            {
                return(BadRequest());
            }

            db.Entry(warenkorb).State = EntityState.Modified;

            try
            {
                db.SaveChanges();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!WarenkorbExists(id))
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }

            return(StatusCode(HttpStatusCode.NoContent));
        }
Esempio n. 3
0
        protected void IndenWarenkorbButton_Click(object sender, EventArgs e)
        {
            var warenkorb = new Warenkorb();

            warenkorb.FK_BenutzerId = Benutzer.BenutzerId;
            warenkorb.FK_ProduktId  = Produkt.ProduktId;

            //Füge das Produkt in den Warenkorb hinzu
            RequestHelper.SendPostRequest("http://localhost:56058/api/Warenkorb/PostWarenkorb/", warenkorb);
            Response.Redirect("Uebersicht.aspx");
        }
Esempio n. 4
0
        public IHttpActionResult GetWarenkorb(int id)
        {
            Warenkorb warenkorb = db.Warenkorb.Find(id);

            if (warenkorb == null)
            {
                return(NotFound());
            }

            return(Ok(warenkorb));
        }
Esempio n. 5
0
        public IHttpActionResult PostWarenkorb(Warenkorb warenkorb)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            db.Warenkorb.Add(warenkorb);
            db.SaveChanges();

            return(CreatedAtRoute("DefaultApi", new { id = warenkorb.Id }, warenkorb));
        }
Esempio n. 6
0
        public IHttpActionResult DeleteWarenkorb(int id)
        {
            Warenkorb warenkorb = db.Warenkorb.Find(id);

            if (warenkorb == null)
            {
                return(NotFound());
            }

            db.Warenkorb.Remove(warenkorb);
            db.SaveChanges();

            return(Ok(warenkorb));
        }
Esempio n. 7
0
        public async Task WarenkorbErstellenAsync(User user, Warenkorb warenkorb)
        {
            CookieContainer   cookies = new CookieContainer();
            HttpClientHandler handler = new HttpClientHandler();

            handler.CookieContainer = cookies;
            var client = new HttpClient(handler);
            var creds  = await credentialEncryption.Decrypt(user.Credentials);

            var cartId = await GetCartId(creds.L_MAIL, creds.L_PASSWORD, client, cookies);

            foreach (var eintrag in warenkorb.Waren)
            {
                var info = await GetProductInfo(client, eintrag.Ware);

                info["quantity"] = eintrag.Ammount;
                var content = new StringContent($"[{info.ToString()}]", Encoding.UTF8, "application/json");
                var result  = await client.PostAsync($"https://shop.billa.at/api/basket/{cartId}/upsert", content);
            }
        }
Esempio n. 8
0
        public async Task <Warenkorb> WareHinzufuegenAsync(Ware ware, string userId)
        {
            var client    = dbAccess.GetClient();
            var warenKorb = client.CreateDocumentQuery <Warenkorb>(dbAccess.GetWarenkorbCollectionUri()).Where(p => p.UserId == userId).ToArray().FirstOrDefault();

            if (null == warenKorb)
            {
                warenKorb = new Warenkorb()
                {
                    UserId = userId,
                    Waren  = new[] { new WarenkorbEintrag()
                                     {
                                         Ware    = ware,
                                         Ammount = 1
                                     } }
                };
                var doc = await client.CreateDocumentAsync(dbAccess.GetWarenkorbCollectionUri(), warenKorb);

                warenKorb.Id = doc.Resource.Id;
                return(warenKorb);
            }
            else
            {
                var eintrag = warenKorb.Waren.Where(p => p.Ware.LieferantenID == ware.LieferantenID).FirstOrDefault();
                if (null != eintrag)
                {
                    eintrag.Ammount++;
                }
                else
                {
                    warenKorb.Waren = warenKorb.Waren.Union(new[] { new WarenkorbEintrag()
                                                                    {
                                                                        Ware    = ware,
                                                                        Ammount = 1
                                                                    } }).ToArray();
                }
                await client.ReplaceDocumentAsync(
                    UriFactory.CreateDocumentUri(DbAccess.DBName, DbAccess.WarenkorbCollectionName, warenKorb.Id), warenKorb);
            }
            return(warenKorb);
        }
        public async Task <Warenkorb> WareHinzufuegenAsync(Ware ware, string userId)
        {
            var warenKorb = await fileAccess.GetAsync <Warenkorb>(userId, Collection);

            if (null == warenKorb)
            {
                warenKorb = new Warenkorb()
                {
                    UserId = userId,
                    Waren  = new[] { new WarenkorbEintrag()
                                     {
                                         Ware    = ware,
                                         Ammount = 1
                                     } }
                };
                var id = await fileAccess.SaveAsync(userId, Collection, warenKorb);

                warenKorb.Id = id;
                return(warenKorb);
            }
            else
            {
                var eintrag = warenKorb.Waren.Where(p => p.Ware.LieferantenID == ware.LieferantenID).FirstOrDefault();
                if (null != eintrag)
                {
                    eintrag.Ammount++;
                }
                else
                {
                    warenKorb.Waren = warenKorb.Waren.Union(new[] { new WarenkorbEintrag()
                                                                    {
                                                                        Ware    = ware,
                                                                        Ammount = 1
                                                                    } }).ToArray();
                }
                await fileAccess.SaveAsync(userId, Collection, warenKorb);
            }
            return(warenKorb);
        }
Esempio n. 10
0
 private void AddToWarenkorb(ItemVM obj)
 {
     Warenkorb.Add(obj);
 }
 public string Format(Warenkorb ware)
 {
     return(Und(ware.Waren, Format));
 }
 private static float CalcPrice(Warenkorb korb)
 {
     return(korb.Waren.Select(p => p.Ammount * p.Ware.Preis).Sum());
 }