//GET - EDIT public IActionResult Edit(int?id) { if (id == 0) { return(RedirectToAction("Index")); } Shop shop = _db.Shops.Find(id); if (shop == null) { return(RedirectToAction("Index")); } RefreshItems(); List <ItemOfShop> Inventory = _db.ItemOfShops.Where(i => i.ShopId == shop.Id).ToList(); CEShop newShop = new CEShop { shop = shop, headItems = head, chestItems = chest, handItems = hand, feetItems = feet, ringItems = ring, necklaceItems = necklace, selectedHead = GetSelectedHead(Inventory), selectedChest = GetSelectedChest(Inventory), selectedHand = GetSelectedHand(Inventory), selectedFeet = GetSelectedFeet(Inventory), selectedRing = GetSelectedRing(Inventory), selectedNecklace = GetSelectedNecklace(Inventory) }; return(View(newShop)); }
private List <string> CheckAmountOfItems(CEShop ceShop) { List <string> errStrings = new List <string>(); if (ceShop.selectedHead == null || ceShop.selectedHead.Count < 3) { errStrings.Add("Not enough Head-Items to open shop!"); } if (ceShop.selectedChest == null || ceShop.selectedChest.Count < 3) { errStrings.Add("Not enough Chest-Items to open shop!"); } if (ceShop.selectedHand == null || ceShop.selectedHand.Count < 3) { errStrings.Add("Not enough Hand-Items to open shop!"); } if (ceShop.selectedFeet == null || ceShop.selectedFeet.Count < 3) { errStrings.Add("Not enough Feet-Items to open shop!"); } if (ceShop.selectedRing == null || ceShop.selectedRing.Count < 3) { errStrings.Add("Not enough Ring-Items to open shop!"); } if (ceShop.selectedNecklace == null || ceShop.selectedNecklace.Count < 3) { errStrings.Add("Not enough Necklace-Items to open shop!"); } return(errStrings); }
private void SaveShops(CEShop ceShop) { Shop shop; List <ItemOfShop> shopList = new List <ItemOfShop>(); if (ceShop.shop.Id == 0) { shop = new Shop(); _db.Shops.Add(shop); } else { shop = _db.Shops.Include("itemOfShops") .First(s => s.Id == ceShop.shop.Id); _db.ItemOfShops.RemoveRange(_db.ItemOfShops.Where(i => i.ShopId == shop.Id).ToList()); } shop.ShopName = ceShop.shop.ShopName; _db.SaveChanges(); var AllItems = ceShop.selectedHead.Concat(ceShop.selectedChest) .Concat(ceShop.selectedHand) .Concat(ceShop.selectedFeet) .Concat(ceShop.selectedRing) .Concat(ceShop.selectedNecklace); foreach (var item in AllItems) { shopList.Add(new ItemOfShop { ShopId = shop.Id, ItemId = item }); } _db.ItemOfShops.AddRange(shopList); }
private CEShop ResetCreateShop(CEShop ceShop) { ceShop.headItems = head; ceShop.chestItems = chest; ceShop.handItems = hand; ceShop.feetItems = feet; ceShop.ringItems = ring; ceShop.necklaceItems = necklace; return(ceShop); }
public IActionResult Create(CEShop ceShop) { List <string> errString = CheckAmountOfItems(ceShop); if (errString.Count > 0) { foreach (var err in errString) { ModelState.AddModelError(string.Empty, err); } RefreshItems(); return(View(ResetCreateShop(ceShop))); } SaveShops(ceShop); _db.SaveChanges(); return(RedirectToAction("Index")); }
// GET - CREATE public IActionResult Create() { var obj = new Shop(); RefreshItems(); CEShop newShop = new CEShop { shop = obj, headItems = head, chestItems = chest, handItems = hand, feetItems = feet, ringItems = ring, necklaceItems = necklace, selectedHead = new List <int>(), selectedChest = new List <int>(), selectedHand = new List <int>(), selectedFeet = new List <int>(), selectedRing = new List <int>(), selectedNecklace = new List <int>() }; return(View(newShop)); }