Beispiel #1
0
        public ActionResult Delete(int id_Quest_Item)
        {
            Quest_Item foo = db.Quest_Item.Find(id_Quest_Item);

            db.Quest_Item.Remove(foo);
            db.Quest.Find(foo.Id_quest).LastEdit = DateTime.Now;
            //updateState-для поиска по пректу
            //блок обновления состояния. да я знаю надо-бы вытащить в функцию
            //но что-то когда вытаскиваю не нравиться. позже может быть перетащю в методы класса
            Quest r     = db.Quest.Find(foo.Id_quest);
            int   state = 1;

            foreach (var item in r.Quest_Item)
            {
                if (item.count > item.countIn)
                {
                    state = 0;
                    break;
                }
            }
            r.State = state;
            //его окончание
            db.SaveChanges();
            return(RedirectToAction("Quest"));
        }
Beispiel #2
0
        public ActionResult AddItemInQuest(int?id_quest, int?Item_count, int?Barcode_Item)    //int? id_item,int? id_quest
        {
            if (id_quest == null || Barcode_Item == null)
            {
                return(RedirectToAction("Index", "Quests"));
            }
            if (Item_count == null)
            {
                Item_count = 1;
            }

            db.Quest.Find((int)id_quest).LastEdit = DateTime.Now;

            int        countin = Utils.countFree((int)Barcode_Item) >= Item_count? (int)Item_count : Utils.countFree((int)Barcode_Item);
            Quest_Item foo     = new Quest_Item()
            {
                Id_item = (int)Barcode_Item, Id_quest = (int)id_quest, count = (int)Item_count, countIn = countin
            };

            if (foo.count != foo.countIn)
            {
                db.Quest.Find((int)id_quest).State = 0;
            }
            db.Quest_Item.Add(foo);

            db.SaveChanges();
            return(RedirectToAction("Details", "Quests", new { id = id_quest }));  //id_quest
        }
Beispiel #3
0
        public ActionResult AddItemInQuest(int id_item, int?Item_count)
        {
            int?Id_Quest = (int?)Session["QuestID"];

            if (Item_count != null && Session["QuestID"] != null)
            {
                if (Utils.countInQuest(id_item, (int)Id_Quest) + Item_count <= 10)
                {
                    int        countin = Utils.countFree(id_item) >= Item_count? (int)Item_count : Utils.countFree(id_item);
                    Quest_Item foo     = new Quest_Item()
                    {
                        Id_item = id_item, Id_quest = (int)Session["QuestID"], count = (int)Item_count, countIn = countin
                    };
                    db.Quest_Item.Add(foo);
                    if (foo.count != foo.countIn)
                    {
                        db.Quest.Find(Id_Quest).State = 0;
                    }
                    db.Quest.Find(foo.Id_quest).LastEdit = DateTime.Now;
                    db.SaveChanges();
                }
            }
            return(RedirectToAction("Index"));
        }