private string DistribuirPorEstado(Order order) { OrdenEntity orden = null; if (Source == SourceEnum.Api) { orden = OrdenHelper.DesbloquearOrden(order.IdOrden, Source); } if (Source == SourceEnum.ComplementoDMA) { orden = OrdenHelper.ObtenerOrdenbyNumeroOrdenInterno(order.IdOrden); order.NumeroOrdenMercado = orden.NumeroOrdenMercado; order.NumeroOrdenInterno = orden.NumeroOrdenInterno; } else { orden = OrdenHelper.ObtenerOrdenbyID(order.IdOrden); } switch (orden.IdEstado) { case (int)EstadoOrden.Ingresada: return(CancelarOrden(orden, GetUltimaActualizacion(order.Timestamp))); case (int)EstadoOrden.EnMercado: case (int)EstadoOrden.Aplicada: //case (int)EstadoOrden.AplicadaParcial: return(CancelarOrdenMercado(orden, GetUltimaActualizacion(order.Timestamp))); default: throw new M4TraderApplicationException("Estado no Valido para la orden Nro: " + orden.NumeroOrdenInterno); } }