[ValidateAntiForgeryToken] //thuoc tinh ngan chan mot yeu cau gia mao public ActionResult Create(ItemProduct item) { if (String.IsNullOrEmpty(item.Id)) { ModelState.AddModelError(nameof(item.Id), "Product's ID is required"); //thong bao loi khi Name co gia tri null/ rong } if (String.IsNullOrEmpty(item.Name)) { ModelState.AddModelError(nameof(item.Name), "The name is required"); //thong bao loi khi Name co gia tri null/ rong } if (String.IsNullOrEmpty(item.Price.ToString())) { ModelState.AddModelError(nameof(item.Price), "Product's price is required"); //thong bao loi khi Name co gia tri null/ rong } if (String.IsNullOrEmpty(item.Amount.ToString())) { ModelState.AddModelError(nameof(item.Amount), "Amount is required"); //thong bao loi khi Name co gia tri null/ rong } if (String.IsNullOrEmpty(item.BranchId)) { ModelState.AddModelError(nameof(item.BranchId), "Branch's ID is required"); //thong bao loi khi Name co gia tri null/ rong } if (String.IsNullOrEmpty(item.ClassifyId)) { ModelState.AddModelError(nameof(item.ClassifyId), "Classify's ID is required"); //thong bao loi khi Name co gia tri null/ rong } if (String.IsNullOrEmpty(item.ProviderId)) { ModelState.AddModelError(nameof(item.ProviderId), "Provider's ID is required"); //thong bao loi khi Name co gia tri null/ rong } if (ModelState.IsValid) //Name hop le { Product p = new Product(); p.Id = item.Id; p.Name = item.Name; p.BranchId = item.BranchId; p.Amount = item.Amount; p.ClassifyId = item.ClassifyId; p.ProviderId = item.ProviderId; p.Details = item.Details; p.Discount = item.Discount; p.Price = item.Price; string image1 = Guid.NewGuid() + Path.GetExtension(item.Image1.FileName); item.Image1.SaveAs(filename: Server.MapPath("~/Images" + image1)); p.Image1 = item.Image1.ToString(); string image2 = Guid.NewGuid() + Path.GetExtension(item.Image2.FileName); item.Image2.SaveAs(filename: Server.MapPath("~/Images" + image1)); p.Image2 = item.Image2.ToString(); string image3 = Guid.NewGuid() + Path.GetExtension(item.Image3.FileName); item.Image3.SaveAs(filename: Server.MapPath("~/Images" + image1)); p.Image3 = item.Image3.ToString(); db.Add(p); return(RedirectToAction("Details", new { id = p.Id })); } return(View()); }
public Boolean DeleteItemProduct(Int32?id) { ItemProduct itemProduct = new ItemProduct(); IEnumerable <ItemProductAssociation> itemProductAssocoation;; id = id.HasValue ? id : 0; try { using (menuzRusDataContext db = new menuzRusDataContext(base.connectionString)) { itemProductAssocoation = db.ItemProductAssociations.Where(m => m.ItemProductId == id); if (itemProductAssocoation != default(ItemProductAssociation)) { db.ItemProductAssociations.DeleteAllOnSubmit(itemProductAssocoation); } itemProduct = db.ItemProducts.Where(m => m.id == id).FirstOrDefault(); if (itemProduct != default(ItemProduct)) { db.ItemProducts.DeleteOnSubmit(itemProduct); } db.SubmitChanges(); } } catch (Exception ex) { return(false); } return(true); }
/// <summary> /// Add a product to cart. /// </summary> /// <param name="id">The identificator of model Product.</param> /// <returns>ActionResult</returns> // GET: Order/AddCart/5 public async Task <ActionResult> AddCart(int id) { Order cart = Session["Cart"] != null ? (Order)Session["Cart"] : new Order(); var product = db.Products.Find(id); if (product != null) { product.Category = await db.Categories.FindAsync(product.CategoryId); var itemProduct = new ItemProduct(); itemProduct.Product = product; itemProduct.ProductId = product.Id; itemProduct.Quantity = 1; if (HasSessionItem(cart, product)) { cart.ItemProduct.FirstOrDefault(x => x.Product.Id == product.Id).Quantity += 1; } else { if (cart.ItemProduct == null) { cart.ItemProduct = new List <ItemProduct>(); } cart.ItemProduct.Add(itemProduct); } cart.Amount = cart.ItemProduct.Select(i => i.Product).Sum(d => d.Price * cart.ItemProduct.FirstOrDefault(x => x.Product.Id == d.Id).Quantity); cart.ItemProduct = cart.ItemProduct.OrderBy(x => x.Product.Category.Name).ToList <ItemProduct>(); Session["Cart"] = cart; } return(RedirectToAction("Cart")); }
public ActionResult Create([Bind(Include = "Id, Product, UnitaryValue, Amount, TotalValue")] ItemProduct itemProduct) { if (ModelState.IsValid) { itemProduct.Product = _ctxItemProduct.Products.First(ip => ip.Id == itemProduct.Product.Id); _ctxItemProduct.ItemsProducts.Add(itemProduct); _ctxItemProduct.SaveChanges(); return(RedirectToAction("Index")); } return(View(itemProduct)); }
public static ItemProduct ConvertToData(this ItemProductModel data) { var model = new ItemProduct(); model.CreatedDate = data.CreatedDate; model.Description = data.Description; model.Id = data.Id; model.IsActive = data.IsActive; model.Name = data.Name; model.Price = data.Price; model.Quantity = data.Quantity; return(model); }
public ActionResult Edit([Bind(Include = "Id, Product, UnitaryValue, Amount, TotalValue")] ItemProduct itemProduct) { if (ModelState.IsValid) { ItemProduct itemProductUpdate = _ctxItemProduct.ItemsProducts.First(ip => ip.Id == itemProduct.Id); itemProductUpdate.Product = _ctxItemProduct.Products.First(p => p.Id == itemProduct.Product.Id); itemProductUpdate.UnitaryValue = itemProduct.UnitaryValue; itemProductUpdate.Amount = itemProduct.Amount; itemProductUpdate.TotalValue = itemProduct.TotalValue; _ctxItemProduct.SaveChanges(); return(RedirectToAction("Index")); } return(View(itemProduct)); }
// GET: Order/AddCart/5 public ActionResult RemoveCart(int id) { Order cart = Session["Cart"] != null ? (Order)Session["Cart"] : new Order(); var product = db.Products.Find(id); if (product != null) { var itemProduct = new ItemProduct(); itemProduct.Product = product; if (HasSessionItem(cart, product)) { cart.ItemProduct.Remove(cart.ItemProduct.FirstOrDefault(x => x.Product.Id == product.Id)); } Session["Cart"] = cart; } return(RedirectToAction("Cart")); }
public Boolean SaveItemProduct(ItemProduct item) { ItemProduct itemQuery = new ItemProduct(); try { using (menuzRusDataContext db = new menuzRusDataContext(base.connectionString)) { if (item.id != 0) { itemQuery = db.ItemProducts.Where(m => m.id == item.id).FirstOrDefault(); } if (itemQuery != default(ItemProduct)) { itemQuery.id = item.id; itemQuery.Type = item.Type; itemQuery.ItemId = item.ItemId; } if (item.id == 0) { db.ItemProducts.InsertOnSubmit(itemQuery); } db.SubmitChanges(); DeleteItemProductAssociations(itemQuery.id); foreach (ItemProductAssociation ipa in item.ItemProductAssociations) { ItemProductAssociation itemsQuery = new ItemProductAssociation(); itemsQuery.ItemProductId = itemQuery.id; itemsQuery.ItemId = ipa.ItemId; db.ItemProductAssociations.InsertOnSubmit(itemsQuery); } db.SubmitChanges(); } } catch (Exception ex) { return(false); } return(true); }
public void UseItemProduct(Creature hero, ItemProduct product) { product.Run(hero); }
public Items() { ItemProduct = new ItemProduct(); ItemScheduleLine = new ItemScheduleLine(); PriceAndTaxCalculationItem = new PriceAndTaxCalculationItem(); }
static void Main(string[] args) { // TODO: Создать Repository Pattern // TODO: Добавить базу данных // TODO: Подумать о паттернах // TODO: Добавить сервисы чатов // Для Кексика // TODO: Логика выбора героя, чтобы пользователь сам выбрать героя + // Продумать что можеть делать герой // Продумай в начала, два режима, первый можно самому выбрать героя, второй рандомно назначается + //Герои #region HeroModels Creature hero1 = new Creature( "Азраэль", "Рыцарь смерти", 1000, 700); hero1.Description = "Восставший воин"; Creature hero2 = new Creature( "Хок", "Головорез", 1000, 500); hero2.Description = "Ловкач"; Creature hero3 = new Creature( "Зик", "Паладин", 1000, 800); hero3.Description = "Воин света"; #endregion //выбор героя первого игрока #region CreateHero Console.WriteLine($"Приветствую, незнакомец. Кто ты?\n(выберите героя по номеру, либо любую другую цифру для рандомного выбора)\n"); Creature[] heroes = new Creature[] { hero1, hero2, hero3 }; for (int i = 0; i < heroes.Length; i++) { Console.WriteLine($"Герой{i + 1}: {heroes[i].HeroClass}. {heroes[i].Description}"); } ; Creature player1 = new Creature("", "", 0, 0); //создание игрока на которого навешиваются доп функции int chan = Int32.Parse(Console.ReadLine()); // упрощенный вариант для ввода чисел if (chan == 1) { player1 = hero1; } else if (chan == 2) { player1 = hero2; } else if (chan == 3) { player1 = hero3; } else { Console.WriteLine($"Рандомный выбор"); Random rnd = new Random(); chan = rnd.Next(1, 3); if (chan == 1) { player1 = hero1; } else if (chan == 2) { player1 = hero2; } else if (chan == 3) { player1 = hero3; } } Console.WriteLine($"Ваш выбор:{player1.Name}. {player1.HeroClass}\nЗдоровье:{player1.HP}поинтов"); Console.WriteLine($"Кошелек:{player1.Gold} золото"); #endregion //модели оружия #region WeaponModels Weapon sword1 = new Weapon( "Большой меч", 200, "Двуручное", 120); Weapon daggers1 = new Weapon( "Кинжалы", 150, "Двуручное", 70); Weapon maul1 = new Weapon( "Гигантский Молот", 250, "Двуручное", 140); #endregion // Выбор оружия для первого игрока #region ChangeWepon ItemProduct[] weapons = new ItemProduct[] { sword1, daggers1, maul1, }; Console.WriteLine($"\nПеред выходом на арену необходимо выбрать оружие:\n"); for (int i = 0; i < weapons.Length; i++) { Console.WriteLine($"Item {i + 1}:{weapons[i].Name}" + $"\n Price:{weapons[i].Price}\n"); } Console.WriteLine($"\nВыберите экипировку\"\n"); int chan2 = Int32.Parse(Console.ReadLine()); if (chan2 == 1) { Console.WriteLine($"\nВыбран:{sword1.Name}\nУрон:{sword1.Damage}\n"); player1.WeaponHero = (sword1.Name, sword1.Damage); player1.BuyItem(sword1); Console.WriteLine($"Золото 1-го игрока:{player1.Gold}\n"); } if (chan2 == 2) { Console.WriteLine($"\nВыбран:{daggers1.Name}\nУрон:{daggers1.Damage}\n"); player1.WeaponHero = (daggers1.Name, daggers1.Damage); player1.BuyItem(daggers1); Console.WriteLine($"Золото 1-го игрока:{player1.Gold}\n"); } if (chan2 == 3) { Console.WriteLine($"\nВыбран:{maul1.Name}\nУрон:{maul1.Damage}\n"); player1.WeaponHero = (maul1.Name, maul1.Damage); player1.BuyItem(maul1); Console.WriteLine($"Золото 1-го игрока:{player1.Gold}\n"); } #endregion Console.WriteLine($"{player1.HeroClass} бьет {player1.WeaponHero.name} на {player1.WeaponHero.damage} урона"); IHeroActions heroActions = new HeroActions(); //игрок атакует другого персонажа player1.Atack(hero3); Console.WriteLine($"{hero3.HP}"); #region Пригодится позже Elixir health_elixir = new Elixir( "Эликсир здоровья", 50); Elixir poison_elixir = new Elixir( "Эликсир яда", 50); Armor plate = new Armor( "Полный доспех", 500, 50); #endregion }