示例#1
0
        public ActionResult Grid()
        {
            var model     = new LootViewModel();
            var lootItems = _lootManager.GetAllLootItems();

            model.LootItems           = lootItems.ToList();
            model.LootSplitSelectList = new SelectList(_lootManager.GetLootSplitDropdownValues(),
                                                       "LootSplitId", "Name");
            return(View(model));
        }
示例#2
0
 public ActionResult Loot(int?id)
 {
     if (id != null)
     {
         int           id2 = Convert.ToInt32(id);
         LootViewModel lm  = new LootViewModel(id2);
         return(View(lm));
     }
     else
     {
         return(RedirectToAction("Donjons", "Home"));
     }
 }
示例#3
0
        public ActionResult SubmitLootSplit(LootViewModel model, string lootSplitName)
        {
            var resultMessage = ResultMessages.JsonResultMessage();

            resultMessage.Message = "Successfully Submitted Loot Split.";
            resultMessage.Success = true;
            //save
            if (model.SelectedLootSplitId == 0)
            {
                try
                {
                    var       failures  = 0;
                    var       successes = 0;
                    var       result    = resultMessage;
                    LootSplit lootSplit = new LootSplit();
                    lootSplit.Name = model.Name;
                    List <SplitItem> splitItems = new List <SplitItem>();

                    foreach (LootItem lootitem in model.LootItems)
                    {
                        if (lootitem.Quantity > 0)
                        {
                            SplitItem splitItem = new SplitItem();
                            splitItem.LootSplitId      = lootSplit.LootSplitId;
                            splitItem.LootItemId       = lootitem.LootItemId;
                            splitItem.LootItemQuantity = lootitem.Quantity;
                            splitItems.Add(splitItem);
                        }
                    }

                    lootSplit.SplitItems = splitItems;
                    lootSplit            = _lootManager.InsertLootSplit(lootSplit);

                    //_lootManager.InsertSplitItems(splitItems, lootSplit.Id);
                    if (failures > 0)
                    {
                        resultMessage.Success = false;
                        resultMessage.Message = "Insert Failed ";
                        return(Json(resultMessage));
                    }
                    resultMessage.Success = true;
                    resultMessage.Message = "Inserted {0} Loot Splits(s).".FormatWith(successes);
                }
                catch (Exception ex)
                {
                    resultMessage.Success = false;
                    resultMessage.Message = "Error Inserting Loot Split. " + ex.Message;
                }
            }
            //load
            else
            {
                model.LootSplitSelectList = new SelectList(_lootManager.GetLootSplitDropdownValues(),
                                                           "LootSplitId", "Name");
                model.LootItems = _lootManager.GetAllLootItems().ToList();
                IEnumerable <SplitItem> splitItems = _lootManager.GetSplitItems(model.SelectedLootSplitId);
                foreach (LootItem lootItem in model.LootItems)
                {
                    foreach (SplitItem splitItem in splitItems)
                    {
                        if (splitItem.LootItemId == lootItem.LootItemId)
                        {
                            lootItem.Quantity = splitItem.LootItemQuantity;
                        }
                    }
                }
                foreach (SelectListItem item in model.LootSplitSelectList)
                {
                    if (item.Value == model.SelectedLootSplitId.ToString())
                    {
                        item.Selected = true;
                    }
                }
            }
            return(View("Index", model));
        }