public async Task <IActionResult> PutArtiklar(int id, Artiklar artiklar) { try { if (id != artiklar.Id) { return(BadRequest()); } _context.Entry(artiklar).State = EntityState.Modified; try { await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!ArtiklarExists(id)) { return(NotFound()); } else { throw; } } return(NoContent()); } catch (Exception ex) { System.Diagnostics.Debug.WriteLine(ex.Message); return(RedirectToAction("Index", "Felhanterings")); } }
protected void buttonBuy_Click(object sender, EventArgs e) { KlassBibliotek sqlBibliotek = new KlassBibliotek(); if (Request.Cookies["loggedInUser"] != null) { int kundID = int.Parse(Request.Cookies["loggedInUser"].Value); int orderID = sqlBibliotek.OrderRegistrering(kundID); List <Artiklar> artikelList = sqlBibliotek.ReadAllArtiklar(); List <Artiklar> artiklariVarukorgen = new List <Artiklar>(); string cookieData = Request.Cookies["shoppingCart"].Value; cookieData = cookieData.Replace("%2C", ","); Response.Cookies["shoppingCart"].Value = cookieData; Response.Cookies["shoppingCart"].Expires = DateTime.Now.AddDays(1); if (cookieData != null) { string[] data = cookieData.Split(','); foreach (var artikel in data) { if (artikel != "") { Artiklar artikelIVarukorgen = artikelList.FirstOrDefault(x => x.AID == int.Parse(artikel)); if (artikelIVarukorgen != null) { artiklariVarukorgen.Add(artikelIVarukorgen); } } } } IEnumerable <int> unikaArtiklarIVarukorgen = artiklariVarukorgen.Select(x => x.AID).Distinct(); foreach (var artikelID in unikaArtiklarIVarukorgen) { int antal = artiklariVarukorgen.Where(x => x.AID == artikelID).Count(); int pris = artiklariVarukorgen.FirstOrDefault(x => x.AID == artikelID).pris; sqlBibliotek.VarukorgsRegistrering(artikelID, pris, antal, kundID, orderID); } Response.Cookies["shoppingCart"].Value = ""; Response.Cookies["shoppingCart"].Expires = DateTime.Now.AddDays(-1d); Response.Redirect("/OrderPlaced.aspx?orderID=" + orderID); } else { buyLoggedInLabel.Text = "Du måste logga in först!"; } }
public async Task <ActionResult <Artiklar> > PostArtiklar(Artiklar artiklar) { try { _context.Artiklars.Add(artiklar); await _context.SaveChangesAsync(); return(CreatedAtAction("GetArtiklar", new { id = artiklar.Id }, artiklar)); } catch (Exception ex) { System.Diagnostics.Debug.WriteLine(ex.Message); return(RedirectToAction("Index", "Felhanterings")); } }
public async Task <IActionResult> Create([Bind("Id,Produktnamn,Produktbeskrivning,Tillverkare,Pris,Antal,KategoriId")] Artiklar artiklar) { try { if (ModelState.IsValid) { _context.Add(artiklar); await _context.SaveChangesAsync(); return(RedirectToAction(nameof(Index))); } ViewData["KategoriId"] = new SelectList(_context.Kategoris, "KategoriId", "Kategorinamn", artiklar.KategoriId); return(View(artiklar)); } catch (Exception ex) { System.Diagnostics.Debug.WriteLine(ex.Message); return(RedirectToAction("Felhantering")); } }
public async Task <IActionResult> Edit(int id, [Bind("Id,Produktnamn,Produktbeskrivning,Tillverkare,Pris,Antal,KategoriId")] Artiklar artiklar) { try { if (id != artiklar.Id) { return(NotFound()); } if (ModelState.IsValid) { try { _context.Update(artiklar); await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!ArtiklarExists(artiklar.Id)) { return(NotFound()); } else { throw; } } return(RedirectToAction(nameof(Index))); } ViewData["KategoriId"] = new SelectList(_context.Kategoris, "KategoriId", "KategoriId", artiklar.KategoriId); return(View(artiklar)); } catch (Exception ex) { System.Diagnostics.Debug.WriteLine(ex.Message); return(RedirectToAction("Felhantering")); } }
private void LoadShoppingCart() { //Laddar cookien och plockar ut artikelid för artiklarna i varukorgen. Genererar HTML-tabell. if (Request.Cookies["shoppingCart"] != null) { string cookieData = Request.Cookies["shoppingCart"].Value; cookieData = cookieData.Replace("%2C", ","); Response.Cookies["shoppingCart"].Value = cookieData; Response.Cookies["shoppingCart"].Expires = DateTime.Now.AddDays(1); string[] data = cookieData.Split(','); KlassBibliotek sqlBibliotek = new KlassBibliotek(); List <Artiklar> artikelList = sqlBibliotek.ReadAllArtiklar(); foreach (var artikel in data) { if (artikel != "") { bool exists = false; Artiklar artikelInfo = artikelList.FirstOrDefault(x => x.AID == int.Parse(artikel)); if (artikelInfo != null) { for (int i = 0; i < shoppingCartTable.Rows.Count; i++) { if (artikelInfo.AID.ToString() == shoppingCartTable.Rows[i].Cells[0].Text) { TextBox superTextBox = (TextBox)shoppingCartTable.Rows[i].Cells[2].Controls[0]; int numberOf = int.Parse(superTextBox.Text); numberOf++; int totalPrice = numberOf * artikelInfo.pris; superTextBox.Text = numberOf.ToString(); shoppingCartTable.Rows[i].Cells[4].Text = $"{totalPrice.ToString()}"; exists = true; } } if (!exists) { { TableRow newRow = new TableRow(); TableCell newCell1 = new TableCell(); TableCell newCell2 = new TableCell(); TableCell newCell3 = new TableCell(); TableCell newCell4 = new TableCell(); TableCell newCell5 = new TableCell(); TextBox numberBox = new TextBox(); numberBox.Attributes.Add("type", "number"); numberBox.Attributes.Add("min", "1"); numberBox.Attributes.Add("runat", "server"); numberBox.Attributes.Add("class", "numberBoxes"); numberBox.Text = "1"; numberBox.Attributes.Add("OnTextChanged", "ChangeNumberText"); Button deleteButton = new Button(); deleteButton.Text = "Ta bort Samtliga"; deleteButton.Attributes.Add("class", "deleteButton"); //numberBox.Attributes.Add("autopostback", "true"); numberBox.Attributes.Add("ID", $"numberBox{shoppingCartTable.Rows.Count - 1}"); newCell1.Text = artikelInfo.AID.ToString(); newCell2.Text = artikelInfo.artikelnamn; newCell3.Controls.Add(numberBox); newCell3.Controls.Add(deleteButton); //newCell3.Text = $"<asp:TextBox ID=\"numberTextBox{}\" type=\"number\" min=\"1\" runat=\"server\">1</asp:TextBox>"; newCell4.Text = $"{artikelInfo.pris.ToString()}"; newCell5.Text = $"{artikelInfo.pris.ToString()}"; newCell5.CssClass = "sum"; newRow.Cells.Add(newCell1); newRow.Cells.Add(newCell2); newRow.Cells.Add(newCell3); newRow.Cells.Add(newCell4); newRow.Cells.Add(newCell5); shoppingCartTable.Rows.AddAt(shoppingCartTable.Rows.Count - 1, newRow); } } } } } int superSum = 0; for (int i = 0; i < shoppingCartTable.Rows.Count; i++) { if (shoppingCartTable.Rows[i].Cells[4].CssClass == "sum") { superSum += int.Parse(shoppingCartTable.Rows[i].Cells[4].Text); } } sumOfAll.Text = $"{superSum.ToString()}"; } else { buttonBuy.Visible = false; } }