private void popularListaOrdens() { Console.WriteLine("Buscando ordens pendentes..."); OrderList orderList = api.obterOrdensPendentes(); //ListaOrdem.oReturn.Clear(); foreach (Ordem ordem in orderList.oReturn) { bool add = true; if (ordem.status == Constantes.STATUS_ORDEM_PENDENTE && Convert.ToDecimal(ordem.amount) <= quantidadeMaxima) { foreach (Ordem cOrdem in ListaOrdem.oReturn) { if (ordem.id == cOrdem.id) { add = false; } } if (add) { api.imprimirOrdem("Nova ordem encontrada:", ordem); ListaOrdem.oReturn.Add(ordem); } } } for (int i = ListaOrdem.oReturn.Count - 1; i >= 0; --i) { bool remover = false; Ordem ordem = ListaOrdem.oReturn[i]; foreach (Ordem cOrdem in orderList.oReturn) { if (ordem.id == cOrdem.id && cOrdem.status.ToUpper().Trim() == Constantes.STATUS_ORDEM_CANCELADA) { Console.WriteLine("Ordem cancelada no site ID: " + ordem.id); remover = true; break; } if (ordem.id == cOrdem.id && cOrdem.status.ToUpper().Trim() == Constantes.STATUS_ORDEM_EXECUTADA) { Console.WriteLine("Ordem executada ID: " + ordem.id); remover = true; break; } } if (remover) { ListaOrdem.oReturn.RemoveAt(i); } } }
private void popularListaOrdens() { Console.WriteLine("Buscando ordens pendentes..."); OrderList orderList = api.obterOrdensPendentes(); //ListaOrdem.Clear(); if (orderList == null || orderList.oReturn == null || orderList.oReturn.Count == 0) { throw new Exception("Atenção, não foi encontrado ordens pendentes. Crie primeiro uma ordem de compra e uma ordem de venda manualmente no site da Bitcointoyou"); } foreach (Ordem ordem in orderList.oReturn) { bool add = true; if (ordem.status.ToUpper().Trim() == Constantes.STATUS_ORDEM_PENDENTE && Convert.ToDecimal(ordem.amount) <= api.parametros.quantidadeMaxima) { foreach (Ordem cOrdem in ListaOrdem) { if (ordem.id == cOrdem.id) { add = false; } } if (add) { Console.WriteLine("Nova ordem encontrada ID: " + ordem.id); ListaOrdem.Add(ordem); } } } for (int i = ListaOrdem.Count - 1; i >= 0; --i) { bool remover = false; Ordem ordem = ListaOrdem[i]; foreach (Ordem cOrdem in orderList.oReturn) { if (ordem.id == cOrdem.id && cOrdem.status.ToUpper().Trim() == Constantes.STATUS_ORDEM_CANCELADA) { remover = true; break; } } if (remover) { Console.WriteLine("Ordem cancelada no site ID: " + ordem.id); ListaOrdem.RemoveAt(i); } } }