private void OnItemSelected(object data) { ViewInventory view = Game.instance.views.GetView <ViewInventory>(); if (Game.instance.settingsManager.gameOptionToggles[SettingsManager.GameOption.Multicraft]) { onItemSelected.Fire(data as InventoryItemProxy); } else { view.onInventoryItemProxySelected -= OnItemSelected; WindowManager.instance.RemoveCurrentFullScreenWindow(); iip = data as InventoryItemProxy; } Game.instance.soundManager.PlaySound(eSoundId.eSFX_CharacterEquip); }
private void OnSelection() { if (data != null) { if (iip == null) { ViewInventory view = Game.instance.views.ViewCreate <ViewInventory>(); view.updateCardAfterSelection = true; view.isFusion = true; view.qualityMaximum = FusionQualityMaximum; view.qualityMinimum = FusionQualityMinumum; view.onInventoryItemProxySelected += OnItemSelected; view.ViewShow(); Game.instance.soundManager.PlaySound(eSoundId.eSFX_CardListOpen); } else { iip = null; onItemUnselected.Fire(); Game.instance.soundManager.PlaySound(eSoundId.eSFX_GenericClick); } } }
public void UnregisterFromView() { ViewInventory view = Game.instance.views.GetView <ViewInventory>(); view.onInventoryItemProxySelected -= OnItemSelected; }
public List <ViewInventory> GetListofViewIntentory(ADProjectDb db) { List <InventoryController.InventoryContainer> inventoryContainersList = (from IC in db.ItemCatalogue join SI in db.StockInfo on IC.ItemCatalogueId equals SI.ItemCatalogueId join SC in db.SupplierCatalogue on IC.ItemCatalogueId equals SC.ItemId join S in db.Supplier on SC.SupplierId equals S.SupplierId orderby SC.ItemId, SC.SupplierRank select new InventoryController.InventoryContainer() { itemId = IC.ItemCatalogueId, description = IC.ItemDes, quantity = SI.StockQuantity, roLevel = SI.ReOrderLevel, roQty = SI.ReOrderQuantity, unit = IC.UnitOfMeasure, supplier = S.SupplierName, rank = SC.SupplierRank, location = SI.ItemLocation }).ToList(); // Get the list of itemId in orderdetails are in "Ordered" order List <int> itemInOrderList = (from OD in db.OrderDetail where OD.Order.OrderStatus.OrderStatusId == 3 select OD.ItemId).ToList(); // Get the list of itemId in orderdetails are in "Draft" order List <int> itemInDraftList = (from OD in db.OrderDetail where OD.Order.OrderStatus.OrderStatusId == 1 select OD.ItemId).ToList(); // Get the list of itemId in orderdetails are in "Enquiry" order List <int> itemInEnquiryList = (from OD in db.OrderDetail where OD.Order.OrderStatus.OrderStatusId == 2 select OD.ItemId).ToList(); // Filter out 3 lists based on supplier Rank for each item List <InventoryController.InventoryContainer> itemlistS1 = inventoryContainersList.Where(S => S.rank == 1).ToList(); List <InventoryController.InventoryContainer> itemlistS2 = inventoryContainersList.Where(S => S.rank == 2).ToList(); List <InventoryController.InventoryContainer> itemlistS3 = inventoryContainersList.Where(S => S.rank == 3).ToList(); List <ViewInventory> viewInventories = new List <ViewInventory>(); for (int i = 0; i < itemlistS1.Count; i++) { ViewInventory newEntry = new ViewInventory() { itemId = itemlistS1[i].itemId, description = itemlistS1[i].description, quantity = itemlistS1[i].quantity, rOLevel = itemlistS1[i].roLevel, rOQty = itemlistS1[i].roQty, unit = itemlistS1[i].unit, location = itemlistS1[i].location, supplier1 = itemlistS1[i].supplier, supplier2 = itemlistS2[i].supplier, supplier3 = itemlistS3[i].supplier }; //if low stock level but in an existing orderdetails, status is Ordered //if low stock level and not found in existing orderdetails, status is InSufficient if (itemlistS1[i].quantity <= itemlistS1[i].roLevel) { if (itemInOrderList.Contains(itemlistS1[i].itemId)) { newEntry.status = "Ordered"; } else if (itemInDraftList.Contains(itemlistS1[i].itemId)) { newEntry.status = "Drafted"; } else if (itemInEnquiryList.Contains(itemlistS1[i].itemId)) { newEntry.status = "Enquiring"; } else { newEntry.status = "Insufficient"; } } else { newEntry.status = "Sufficient"; } viewInventories.Add(newEntry); } return(viewInventories); }