public List <Contenedor> ProcesarString(List <string> eventos, char separador) { List <Contenedor> contenedores = new List <Contenedor>(); foreach (string evento in eventos) { string[] contenido = evento.Split(separador); if (contenido.Length == 2) { DateTime fechaActual = new DateTime(2020, 01, 01); //DateTime.Now DateTime fechaEvento = _convertidorFecha.ConvertirFecha(contenido[1]); TipoEvento tipo = _obtenedorTipoEvento.ObtenerTipoEvento(fechaActual, fechaEvento); EscalaTiempo escala = _obtenedorEscala.ObtenerEscalaTiempo(fechaActual, fechaEvento); int duracionEvento = _obtenedorDuracion.ObtenerDuracion(fechaActual, fechaEvento, escala); Contenedor contenedor = new Contenedor() { Tipo = tipo, Escala = escala, Duracion = duracionEvento, Nombre = contenido[0] }; contenedores.Add(contenedor); } } return(contenedores); }
public void RePoblarPedido(IPedido pedido, DateTime fechaActual, int margenUtilidad, ITransporte transporte) { pedido.EscalaTiempo = _obtenedorEscala.ObtenerEscalaTiempo(fechaActual, pedido.FechaHora); pedido.Tiempo = _obtenedorTipoEvento.ObtenerTipoEvento(fechaActual, pedido.FechaHora); pedido.Duracion = _obtenedorDuracion.ObtenerDuracion(fechaActual, pedido.FechaHora, pedido.EscalaTiempo); pedido.Costo = _calculador.CalcularCosto(transporte.CostoKm, pedido.Distancia, margenUtilidad); pedido.FechaEntrega = _calculador.CalcularFechaEntrega(pedido.FechaHora, pedido.Duracion, pedido.EscalaTiempo); }