private void UpdateAssignedBoxesForIglakPojemnik(string[] selectedBoxes, IglakPojemnik iglakToUpdate) { if (selectedBoxes == null) { iglakToUpdate.Boxes = new List <Box>(); return; } var selectedBoxesHS = new HashSet <string>(selectedBoxes); var krzewIglastyBoxes = new HashSet <int>(iglakToUpdate.Boxes.Select(b => b.BoxID)); foreach (var box in context.Boxes) { if (selectedBoxesHS.Contains(box.BoxID.ToString())) { if (!krzewIglastyBoxes.Contains(box.BoxID)) { iglakToUpdate.Boxes.Add(box); } } else { if (krzewIglastyBoxes.Contains(box.BoxID)) { iglakToUpdate.Boxes.Remove(box); } } } }
public ActionResult EditIglakPojemnik(int productID) { IglakPojemnik iglakPojemnik = iglakPojemnikRepository.IglakiPojemnik.AsQueryable().Include(b => b.Boxes).FirstOrDefault(d => d.ProductID == productID); //iglakPojemnik.Date = DateTime.Now; PopulateAssignedBoxesForIglakPojemnik(iglakPojemnik); return(View(iglakPojemnik)); }
public ActionResult DeleteIglakPojemnik(int productID) { IglakPojemnik deletedIglakPojemnik = iglakPojemnikRepository.DeleteIglakPojemnik(productID); if (deletedIglakPojemnik != null) { TempData["message"] = string.Format("Usunieto {0}", deletedIglakPojemnik.Name); } return(RedirectToAction("IglakPojemnikList")); }
public ActionResult CreateIglakPojemnik() { var iglakPojemnik = new IglakPojemnik(); iglakPojemnik.Date = DateTime.Now; iglakPojemnik.Available = true; iglakPojemnik.Boxes = new List <Box>(); PopulateAssignedBoxesForIglakPojemnik(iglakPojemnik); return(View("EditIglakPojemnik", iglakPojemnik)); }
public IglakPojemnik DeleteIglakPojemnik(int iglakPojemnikID) { IglakPojemnik dbEntry = context.IglakiPojemnik.Find(iglakPojemnikID); if (dbEntry != null) { context.IglakiPojemnik.Remove(dbEntry); context.SaveChanges(); } return(dbEntry); }
public FileContentResult GetImage(int productID) { IglakPojemnik iglakPojemnik = repository.IglakiPojemnik.FirstOrDefault(p => p.ProductID == productID); if (iglakPojemnik != null) { return(File(iglakPojemnik.ImageData, iglakPojemnik.ImageMimeType)); } else { return(null); } }
public ActionResult Details(int?productID) { if (productID == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } IglakPojemnik iglakPojemnik = repository.IglakiPojemnik.FirstOrDefault(k => k.ProductID == productID); if (iglakPojemnik == null) { return(HttpNotFound()); } return(View(iglakPojemnik)); }
public void SaveIglakPojemnik(string[] selectedbox, IglakPojemnik iglakPojemnik) { if (iglakPojemnik.ProductID == 0) { if (selectedbox != null) { iglakPojemnik.Boxes = new List <Box>(); foreach (var box in selectedbox) { var boxnumber = int.Parse(box); var boxToAdd = context.Boxes.Where(b => b.BoxID == boxnumber).FirstOrDefault(); iglakPojemnik.Boxes.Add(boxToAdd); } } context.IglakiPojemnik.Add(iglakPojemnik); } else { IglakPojemnik dbEntry = context.IglakiPojemnik.Include(b => b.Boxes).Where(k => k.ProductID == iglakPojemnik.ProductID).FirstOrDefault(); if (dbEntry != null) { UpdateAssignedBoxesForIglakPojemnik(selectedbox, dbEntry); //Product dbEntry.Name = iglakPojemnik.Name; dbEntry.Date = iglakPojemnik.Date; dbEntry.Description = iglakPojemnik.Description; dbEntry.Price = iglakPojemnik.Price; dbEntry.Discount = iglakPojemnik.Discount; dbEntry.Description = iglakPojemnik.Description; dbEntry.Available = iglakPojemnik.Available; if (dbEntry.Available == true) { dbEntry.Quantity = iglakPojemnik.Quantity; } else { dbEntry.Quantity = null; } dbEntry.HeightMin = iglakPojemnik.HeightMin; dbEntry.HeightMax = iglakPojemnik.HeightMax; dbEntry.ImageData = iglakPojemnik.ImageData; dbEntry.ImageMimeType = iglakPojemnik.ImageMimeType; //IglakiGrunt } } context.SaveChanges(); }
private void PopulateAssignedBoxesForIglakPojemnik(IglakPojemnik iglakPojemnik) { var allBoxes = boxesRepository.Boxes; var iglakPojemnikBoxes = new HashSet <int>(iglakPojemnik.Boxes.Select(i => i.BoxID)); var viewModel = new List <AssignedBoxes>(); foreach (var box in allBoxes) { viewModel.Add(new AssignedBoxes { BoxID = box.BoxID, Title = box.Name, Assigned = iglakPojemnikBoxes.Contains(box.BoxID) }); } ViewBag.Boxes = viewModel; }
public ActionResult EditIglakPojemnik(string[] selectedBoxes, IglakPojemnik iglakPojemnik, HttpPostedFileBase image = null) { if (ModelState.IsValid) { if (image != null) { iglakPojemnik.ImageMimeType = image.ContentType; iglakPojemnik.ImageData = new byte[image.ContentLength]; image.InputStream.Read(iglakPojemnik.ImageData, 0, image.ContentLength); } iglakPojemnikRepository.SaveIglakPojemnik(selectedBoxes, iglakPojemnik); TempData["message"] = string.Format("Zapisano {0} ", iglakPojemnik.Name); return(RedirectToAction("IglakPojemnikList")); } else { return(View(iglakPojemnik)); } }