public static List <Item_Tag> GetListOfItemTags() { List <Item_Tag> ITRecords = new List <Item_Tag>(); Item_Tag Whisper_Weapon = GetSampleItemTag(); ITRecords.Add(Whisper_Weapon); Item_Tag Whisper_Wondorous = new Item_Tag { Item_id = Guid.Parse("709135c3-6f89-46cb-80ae-4097b621e3b0"), Tag_id = Guid.Parse("e2c7f8a3-52ba-4dc2-baaf-4026718b1f03") }; ITRecords.Add(Whisper_Wondorous); Item_Tag Knuckles_Wondorous = new Item_Tag { Item_id = Guid.Parse("026a7dff-5e85-4e6d-94c6-6613828e5df6"), Tag_id = Guid.Parse("e2c7f8a3-52ba-4dc2-baaf-4026718b1f03") }; ITRecords.Add(Knuckles_Wondorous); Item_Tag Knuckles_HeavyArmor = new Item_Tag { Item_id = Guid.Parse("026a7dff-5e85-4e6d-94c6-6613828e5df6"), Tag_id = Guid.Parse("35d27332-ccc3-40b2-b2d1-a91715ad0917") }; ITRecords.Add(Knuckles_HeavyArmor); return(ITRecords); }
public void SetTagForItem(Guid item_id, Guid Tag_id) { Item_Tag newRecord = new Item_Tag { Item_id = item_id, Tag_id = Tag_id }; itemsContext.Item_Tags.Add(newRecord); }
public static Item_Tag GetSampleItemTag() { Item_Tag Whisper_Weapon = new Item_Tag { Item_id = Guid.Parse("709135c3-6f89-46cb-80ae-4097b621e3b0"), Tag_id = Guid.Parse("172e8478-e1bd-49ba-a7a7-6455d5a58c6e") }; return(Whisper_Weapon); }
public void SetAllTagsForItem(Guid Item_id, IEnumerable <Guid> tag_ids) { List <Item_Tag> itemTags = new List <Item_Tag>(); foreach (Guid tag_id in tag_ids) { Item_Tag record = new Item_Tag { Item_id = Item_id, Tag_id = tag_id }; itemTags.Add(record); } itemsContext.Item_Tags.AddRange(itemTags); }
public ActionResult AddItem(ItemViewModel model) { if (ModelState.IsValid) { var item = new Item { Name = model.Name, Price = model.Price, Store = model.Store, Quantity = model.Quantity, Measurement = model.Measurement, PersonId = currentPersonId, }; db.Items.Add(item); if (model.TagIds != null) { foreach (int t in model.TagIds) { var itemTag = new Item_Tag { ItemId = item.Id, TagId = t, }; db.ItemTags.Add(itemTag); } } db.SaveChanges(); return(RedirectToAction("Index")); } else { model.TagCollection = from t in db.Tags where t.PersonId == currentPersonId select t; return(PartialView(model)); } }
public ActionResult EditItem(int id, ItemViewModel model) { var item = db.Items.Where(i => i.Id == id).FirstOrDefault(); item.Name = model.Name; item.Price = model.Price; item.Store = model.Store; item.Quantity = model.Quantity; item.Measurement = model.Measurement; //check for existing Item_Tags for this item to ensure no duplicates are bing added List <int> thisItemExistingTagIds = (from i in db.Items join existingItemTag in db.ItemTags on i.Id equals existingItemTag.ItemId join tag in db.Tags on existingItemTag.TagId equals tag.Id where i.Id == item.Id select tag.Id).ToList(); if (model.TagIds != null) { foreach (int t in model.TagIds) { if (!thisItemExistingTagIds.Contains(t)) { var itemTag = new Item_Tag { ItemId = item.Id, TagId = t, }; db.ItemTags.Add(itemTag); } } //remove tags from item if they have been untagged foreach (int tagIdToRemove in thisItemExistingTagIds) { if (!model.TagIds.Contains(tagIdToRemove)) { var tagToRemove = (from t in db.ItemTags where t.TagId == tagIdToRemove && t.ItemId == model.Id select t).First(); db.ItemTags.Remove(tagToRemove); } } } //remove all existing tags if none are selected else if (model.TagIds == null && thisItemExistingTagIds != null) { foreach (int tagIdToRemove in thisItemExistingTagIds) { var tagToRemove = (from t in db.ItemTags where t.TagId == tagIdToRemove && t.ItemId == model.Id select t).First(); db.ItemTags.Remove(tagToRemove); } } if (ModelState.IsValid) { db.SaveChanges(); TempData["Success"] = "Changes Saved!"; return(RedirectToAction("Index")); } else { model.TagCollection = from t in db.Tags where t.PersonId == currentPersonId select t; return(PartialView(model)); } }