public void CrearPaqueteria_EnviarInterfaceTransporteVacia_CreaPaqueteriaSinListaTransporte() { Paqueteria Paqueteria = new Paqueteria(); List <IInicializarTransportes> lstIInicializarTransportes = new List <IInicializarTransportes>(); ITransportesPorPaqueteria ITransportesPorPaqueteria = new CrearTransportes(lstIInicializarTransportes); PaqueteriaDHL PaqueteriaDHL = new PaqueteriaDHL(ITransportesPorPaqueteria); Paqueteria = PaqueteriaDHL.CrearPaqueteria(); Assert.IsTrue(!Paqueteria.lstETransporte.Any()); }
public void CrearPaqueteria_EnviarInterfaceTransporte_CreaPaqueteriaConMargerUtilidas() { Paqueteria Paqueteria = new Paqueteria(); List <IInicializarTransportes> lstIInicializarTransportes = new List <IInicializarTransportes>(); lstIInicializarTransportes.Add(new TransporteAvion()); ITransportesPorPaqueteria ITransportesPorPaqueteria = new CrearTransportes(lstIInicializarTransportes); PaqueteriaDHL PaqueteriaDHL = new PaqueteriaDHL(ITransportesPorPaqueteria); Paqueteria = PaqueteriaDHL.CrearPaqueteria(); Assert.IsTrue(Paqueteria.iMargenUtilidad != 0); }
public void CrearPaqueteria_EnviarInterfaceTransporte_CreaPaqueteriaConNombreEmpresa() { Paqueteria Paqueteria = new Paqueteria(); List <IInicializarTransportes> lstIInicializarTransportes = new List <IInicializarTransportes>(); lstIInicializarTransportes.Add(new TransporteAvion()); ITransportesPorPaqueteria ITransportesPorPaqueteria = new CrearTransportes(lstIInicializarTransportes); PaqueteriaDHL PaqueteriaDHL = new PaqueteriaDHL(ITransportesPorPaqueteria); Paqueteria = PaqueteriaDHL.CrearPaqueteria(); Assert.IsTrue(!string.IsNullOrEmpty(Paqueteria.EEmpresa.ToString())); }
public IPaqueterias CrearInstancia(string cPaqueteria) { IPaqueterias paqueteria; switch (cPaqueteria.ToUpper().Trim()) { case "DHL": paqueteria = new PaqueteriaDHL(new TransporteFabrica()); break; case "ESTAFETA": paqueteria = new PaqueteriaEstafeta(new TransporteFabrica()); break; case "FEDEX": paqueteria = new PaqueteriaFedex(new TransporteFabrica()); break; default: throw new Exception($"La Paquetería: {cPaqueteria} no se encuentra registrada en nuestra red de distribución."); } return(paqueteria); }
static void Main(string[] args) { Console.WriteLine(""); string RutaPedido = @"C:\Proyectos\ProyectoFinal_BPPD\RastreoPaquetes\Pedidos.csv"; IObtenedorFechaActual obtenedorFecha = new FechaActual(); IProcesadorExpresionesMensaje procesadorExpresiones = new ProcesardorExpresionMensajes(obtenedorFecha); IValidadorEstatusEntrega validadorEstatusEntrega = new EstatusEntrega(obtenedorFecha); IProcesadorMensajes procesadorMensajes = new ProcesaMensaje(); IPresentadorMensaje presentadorMensaje = new ImprimirMensajeConsola(); RangoBase rgBase = new RangoBase(obtenedorFecha); RangoMinutos minutos = new RangoMinutos(rgBase); RangoHoras horas = new RangoHoras(rgBase); RangoDias dia = new RangoDias(rgBase); RangoMeses mes = new RangoMeses(rgBase); minutos.SetSiguienteCalculo(horas); horas.SetSiguienteCalculo(dia); dia.SetSiguienteCalculo(mes); IFormatoEntradaFactory formatoFactory = new FormatoEntradaCSV(); var formatoEntrada = formatoFactory.GenerarInstaciaFormatoEntrada(); List <Pedido> lstPedidos = formatoEntrada.ObtenerEntradaPedidos(RutaPedido); IMediosTransporte mediosTransporte; mediosTransporte = new TransporteTren(); mediosTransporte = new TransporteBarco(); mediosTransporte = new TransporteAvion(); IEmpresasPaqueteria empresasPaqueteria = new PaqueteriaDHL(mediosTransporte, procesadorExpresiones, validadorEstatusEntrega, minutos, procesadorMensajes, presentadorMensaje); empresasPaqueteria.ProcesarRastreo(lstPedidos[0]); }
public void Menu() { string cFormatoMesaje = string.Empty, cMensajePedido = string.Empty; bool lEntregado = false; DateTime dtFechaHoy = DateTime.Now; List <string> lstErrores = new List <string>(), lstMensajes = new List <string>(); List <Pedido> lstPedido = new List <Pedido>(); List <Paqueteria> lstPaqueteria = new List <Paqueteria>(); ILectorArchivo IlectorArchivo = new LectorArchivoTexto(); IValidacion IValidacion = new Validaciones(); List <IInicializarTransportes> lstIInicializarTransportes = new List <IInicializarTransportes>(); IVerificarOpcionEconomica IVerificarOpcionEconomica = new EvaluarOpcionEconominca(); IAsignarPaqueteria IAsignarPaqueteria = new AsignarEntidades(); cFormatoMesaje = "Tu paquete {0} de {1} y {2} a {3} {4} {5} y {6} un costo de {7} (Cualquier reclamación con {8})."; ObtenerMinutos ObtenerMinutos = new ObtenerMinutos(); ObtenerHoras ObtenerHoras = new ObtenerHoras(); ObtenerDias ObtenerDias = new ObtenerDias(); ObtenerMeses ObtenerMeses = new ObtenerMeses(); ObtenerMinutos.Siguiente(ObtenerHoras); ObtenerHoras.Siguiente(ObtenerDias); ObtenerDias.Siguiente(ObtenerMeses); IGenerarMensaje IGenerarMensaje = new GenerarMensajePedido(ObtenerMinutos, IVerificarOpcionEconomica); lstIInicializarTransportes.Clear(); lstIInicializarTransportes.Add(new TransporteBarco()); ITransportesPorPaqueteria ITransportesPorPaqueteria = new CrearTransportes(lstIInicializarTransportes); IInicializarPaqueterias IInicializarPaqueterias = new PaqueteriaFedex(ITransportesPorPaqueteria); lstPaqueteria.Add(IInicializarPaqueterias.CrearPaqueteria()); lstIInicializarTransportes.Clear(); lstIInicializarTransportes.Add(new TransporteAvion()); lstIInicializarTransportes.Add(new TransporteBarco()); ITransportesPorPaqueteria = new CrearTransportes(lstIInicializarTransportes); IInicializarPaqueterias = new PaqueteriaDHL(ITransportesPorPaqueteria); lstPaqueteria.Add(IInicializarPaqueterias.CrearPaqueteria()); lstIInicializarTransportes.Clear(); lstIInicializarTransportes.Add(new TransporteTren()); ITransportesPorPaqueteria = new CrearTransportes(lstIInicializarTransportes); IInicializarPaqueterias = new PaqueteriaEstafeta(ITransportesPorPaqueteria); lstPaqueteria.Add(IInicializarPaqueterias.CrearPaqueteria()); lstPedido = IlectorArchivo.ObtenerPedidos(); foreach (Pedido entPedido in lstPedido) { Console.ResetColor(); lstErrores = new List <string>(); lstErrores = IValidacion.ValidarCampos(entPedido, lstPaqueteria); if (!lstErrores.Any()) { IAsignarPaqueteria.AsignarEntidadPaqueteria(entPedido, lstPaqueteria); cMensajePedido = IGenerarMensaje.CrearMensajeDePedido(entPedido, dtFechaHoy, cFormatoMesaje, lstPaqueteria, ref lEntregado); if (lEntregado) { Console.ForegroundColor = ConsoleColor.Green; } else { Console.ForegroundColor = ConsoleColor.Yellow; } Console.WriteLine(cMensajePedido + "\n"); } else { foreach (string cError in lstErrores) { Console.ForegroundColor = ConsoleColor.Red; Console.WriteLine(cError + "\n"); } } } Console.ReadLine(); }