public void UpdateUploadOrder() { var stacksToSearch = Stacks.ToList(); UploadSequence.Clear(); if (SelectedShip == null) { return; } foreach (var sequence in SelectedShip.GetSequences().OrderBy(s => s.GetId())) { var material = sequence.GetMaterial(); var tonnage = sequence.GetTonnage(); if (stacksToSearch.Count == 0) { return; } var stack = stacksToSearch.FirstOrDefault(s => s.GetMaterial().Equals(material) && s.GetTonnage() >= tonnage); if (stack == null) { return; } var yard = Yards.FirstOrDefault(y => y.GetStacks().Contains(stack)); if (yard == null) { return; } stacksToSearch.Remove(stack); var machine = Machines.FirstOrDefault(m => m.GetYards().Contains(yard)); if (machine == null) { return; } var order = new Order(); order.SetMachine(machine); order.SetStack(stack); order.SetYard(yard); UploadSequence.Add(order); } }
private void ExecuteSaveCommand() { var save = new SaveFileDialog { FileName = "OrdemDeCarregamento.txt", Filter = "Text File | *.txt" }; save.FileOk += (sender, args) => { using (var file = new StreamWriter(save.FileName)) { var seqArray = UploadSequence.ToArray(); for (var i = 0; i < seqArray.Length; i++) { var order = seqArray[i]; file.WriteLine("ORDEM Nº " + i + ": " + order.ToString()); } } MessageBox.Show("Ordem de carregamento salvo com sucesso", "Sucesso", MessageBoxButton.OK, MessageBoxImage.Information); }; save.ShowDialog(); }