private void DivideOrdersByProduct() { foreach (var ord in Orders) { if (!OrderClasses.ContainsKey(ord._ProdID)) { var orderCl = new OrderClass { Equip = ord.Prod.EquipClassArray, Orders = new List <Order> { ord } }; OrderClasses.Add(ord._ProdID, orderCl); for (int i = 0; i < orderCl.Equip.Length; i++) { if (EquipmentClasses.TryGetValue(orderCl.Equip[i], out EquipmentClass eqCl)) { EquipmentClasses[orderCl.Equip[i]].orderClasses.Add(orderCl); } } } else { OrderClasses[ord._ProdID].Orders.Add(ord); } } }
private void DivideEquipement() { foreach (var eq in Equipements) { if (EquipmentClasses.TryGetValue(eq.Type, out EquipmentClass value)) { value.Power += eq.Velocity; value.Equipements.Add(eq); } else { var newEq = new List <Equipement> { eq }; EquipmentClasses.Add(eq.Type, new EquipmentClass { Equipements = newEq, Power = eq.Velocity, Name = eq.Type }); } } }