public void FillTest(int n) { n = Math.Min(n, 100); Items.Clear(); Users.Clear(); Supplies.Clear(); var defImg = new Bitmap(Path.GetFullPath("item.png")); for (int i = 0; i < n; i++) { Items.Add(new Item($"Product_{i}", i % 2 == 0 ? "l" : "kg", i + 1, 10000, defImg)); Users.Add(new User($"User_{i}", "1234")); } for (int i = 0; i < n; i++) { var k = new List <Portion>(10); for (int j = 0; j < 10; j++) { k.Add(new Portion { Item = Items[(i + j) % n], Amount = 1 + (i + j) % 100 }); Items[i % n].Sold += 1 + (i + j) % 100; } Users[i].History = k; Supplies.Add(new Supply(k, DateTime.Now - TimeSpan.FromDays(n - i))); } Supplies.Reverse(); UpdateSupplies(); }
public Matrix ToMatrix() { if (Demands.Sum() > Supplies.Sum()) { var difference = Demands.Sum() - Supplies.Sum(); Supplies.Add(difference); } else if (Supplies.Sum() > Demands.Sum()) { var difference = Supplies.Sum() - Demands.Sum(); Demands.Add(difference); } var newMatrix = new Matrix(Supplies.Count, Demands.Count) { Demands = Demands.ToArray(), Supplies = Supplies.ToArray() }; for (int i = 0; i < Rows; i++) { for (int j = 0; j < Columns; j++) { newMatrix[i, j] = new Cell { Value = Array[i][j].Value, State = State.NotAllocated }; } } return(newMatrix); }