/// <summary> /// Initializes a new instance of the MainViewModel class. /// </summary> public MainViewModel() { PalletItems.Add(new DiagramModel() { ImagePath = "/Demo.YuriOnIce.Relationship;component/ImagesResource/Yuri.png", Name = "Yuri", Detail = "He has a glass heart.", Index = 1, }); PalletItems.Add(new DiagramModel() { ImagePath = "/Demo.YuriOnIce.Relationship;component/ImagesResource/Victory.png", Name = "Victory", Detail = "He is Legend!!!", Index = 2, }); PalletItems.Add(new DiagramModel() { ImagePath = "/Demo.YuriOnIce.Relationship;component/ImagesResource/Yurio.png", Name = "Yurio", Detail = "He is Tigger(Cat?).", Index = 3, }); PalletItems.Add(new DiagramModel() { ImagePath = "/Demo.YuriOnIce.Relationship;component/ImagesResource/Maccachin.png", Name = "Maccachin", Detail = "Maccachin is dog.", Index = 4, }); _layoutRelationshipMap = new RelationshipMap(); }
public bool AddItemToPallet(Order order, OrderLine orderLine, int caseQuantity, Slotting slotting, double buldToPercentage, double overflow, bool stable, bool enforceStability, int maxUnstablePackages, double maxUnstablePercentage) { bool isAdded = false; PalletItem palletItem = new PalletItem(order, orderLine.Sku, caseQuantity, slotting); if (slotting?.PickMethodCode == PickMethodCode.FullLayer || // If item is a layer item set the layer number slotting?.PickMethodCode == PickMethodCode.MixedLayer) { palletItem.Layer = NextLayerNumber; } else // Else check if the inven already exists on this pallet { PalletItem palletItemOnPallet = this.GetPalletItemByInventoryId(orderLine.Sku.InventoryId, order.OrderId); if (palletItemOnPallet != null) { palletItem = palletItemOnPallet; } } if (CanAdd(orderLine, caseQuantity, buldToPercentage, overflow, enforceStability, maxUnstablePackages, maxUnstablePercentage)) { if (PalletItems.Contains(palletItem)) // If inven already exists on this pallet add to it's quantity { palletItem.Quantity += caseQuantity; } else // Else add the item to the pallet { PalletItems.Add(palletItem); } double itemPercentage = orderLine.CalculatePercentageSkuOfItself(caseQuantity); if (!stable) { UnstablePercentage += itemPercentage; if (!UnstablePackageIds.Contains(orderLine.Sku.Package.PackageId)) { UnstablePackageIds.Add(orderLine.Sku.Package.PackageId); } } if (!Orders.Contains(order)) { Orders.Add(order); } isAdded = true; } return(isAdded); }
public void ReverseLayers() { PalletItems.Reverse(); int previousLayerNumber = 0; int layerNumber = 1; foreach (PalletItem palletItem in PalletItems) { if (previousLayerNumber != palletItem.Layer) { layerNumber += 1; } previousLayerNumber = palletItem.Layer; palletItem.Layer = layerNumber; } }
public bool AddItemToPalletWithoutCheck(Order order, OrderLine ordLine, int caseQty, Slotting slotting) { Item sku = ordLine.Sku; PalletItem palletItem = new PalletItem(order, sku, caseQty, slotting); // If item is a layer item set the layer number if (slotting?.PickMethodCode == PickMethodCode.FullLayer || slotting?.PickMethodCode == PickMethodCode.MixedLayer) { palletItem.Layer = NextLayerNumber; } else { // Else check if the inven already exists on this pallet PalletItem palletItemOnPallet = GetPalletItemByInventoryId(sku.InventoryId, order.OrderId); if (palletItemOnPallet != null) { palletItem = palletItemOnPallet; } } // If inven already exists on this pallet add to it's quantity if (PalletItems.Contains(palletItem)) { palletItem.Quantity += caseQty; } else { // Else add the item to the pallet PalletItems.Add(palletItem); } if (!Orders.Contains(order)) { Orders.Add(order); } return(true); }
public async Task <Pallet> GetPalletById(int id) { Pallet result = new Pallet(); try { result = await DataStore.GetPalletAsync(id); var items = new ObservableCollection <PalletItem>(result.PalletItem); PalletItems.Clear(); foreach (var item in items) { PalletItems.Add(item); } } catch (Exception ex) { Debug.WriteLine(ex); } return(result); }
public async Task <ActionResult> Edit(Pallet pallet, [Bind("Id,Pallet,StockItem")] PalletItemsViewModel vm) { var id = _context.StockItems.Where(i => i.Name == vm.StockItem.Name).Select(i => i.Id).FirstOrDefault(); if (pallet.Id != vm.Pallet.Id) { return(NotFound()); } if (ModelState.IsValid) { try { var item = new PalletItems { StockItemId = id, PalletId = vm.Pallet.Id, }; _context.PalletItems.Add(item); await _context.SaveChangesAsync(); return(RedirectToAction(nameof(Edit))); } catch (DbUpdateConcurrencyException) { if (!PalletExists(vm.Pallet.Id)) { return(NotFound()); } else { throw; } } } return(View(vm)); }
public bool ContainsPackage(int packageId) => PalletItems.Any(pi => pi.Sku.Package.PackageId == packageId);
private PalletItem GetPalletItemByInventoryId(int inventoryId, string orderId) => PalletItems.FirstOrDefault(pi => (pi.Layer == 0) && (pi.Sku.InventoryId == inventoryId) && (pi.Order.OrderId == orderId));