/// <summary> /// Método que permite asignar nuevos datos al paquete /// </summary> /// <param name="_dtoPaqueteria">DTO con los datos del paquete.</param> /// <returns>DTO con los datos del paquete actualizado.</returns> public PaqueteriaDTO AsignarNuevosDatos(ref PaqueteriaDTO _dtoPaqueteria) { PaqueteriaDTO dtoPaqueteria = _dtoPaqueteria; this.IMedioTransporte = lstMediosTransportes.Where(e => e.cNombreMedioTransporte == dtoPaqueteria.cNombreMedioTransporte).FirstOrDefault(); dtoPaqueteria.dCostoEnvio = ObtenerCostoEnvio(dtoPaqueteria.dDistancia); dtoPaqueteria.tsTiempoTraslado = ObtenerTiempoTraslado(dtoPaqueteria.dDistancia); dtoPaqueteria.dtEntrega = ObtenerFechaEntrega(dtoPaqueteria.dtPedido, dtoPaqueteria.tsTiempoTraslado); return(dtoPaqueteria); }
/// <summary> /// Método que permite crear el DTO con los datos de la paquetería. /// </summary> /// <param name="_cNombreEmpresa">Nombre de la empresa.</param> /// <param name="_cNombreLugarOrigen">Nombre del lugar de origen.</param> /// <param name="_cNombreLugarDestino">Nombre del lugar de destino.</param> /// <param name="_cRangoTiempo">Rango del tiempo.</param> /// <param name="_dCostoEnvio">Costo del envío.</param> /// <param name="_dtEntrega">Fecha de entrega.</param> /// <returns>DTO con los datos de la paquetería.</returns> private PaqueteriaDTO CrearPaqueteriaDTO(string _cNombreEmpresa, string _cNombreLugarOrigen, string _cNombreLugarDestino, string _cRangoTiempo, decimal _dCostoEnvio, DateTime _dtEntrega) { PaqueteriaDTO dtoPaqueteria = new PaqueteriaDTO() { cNombreEmpresa = _cNombreEmpresa, cNombreLugarOrigen = _cNombreLugarOrigen, cNombreLugarDestino = _cNombreLugarDestino, cRangoTiempo = _cRangoTiempo, dCostoEnvio = _dCostoEnvio, dtEntrega = _dtEntrega }; return(dtoPaqueteria); }
/// <summary> /// Método que permite buscar la empresa de paquetería más económica. /// </summary> /// <param name="lstEmpresaPaqueteria">Lista de empresas de paqueterías para comparar sus precios económicos.</param> /// <returns>DTO con los datos de la empresa de paquetería con el precio más económico.</returns> public PaqueteriaDTO BuscarEmpresaPaqueteriaEconomica(List <IEmpresaPaqueteria> lstEmpresaPaqueteria) { PaqueteriaDTO dtoPaqueteriaSiguiente = new PaqueteriaDTO(); PaqueteriaDTO dtoPaqueteriaMenorCosto = new PaqueteriaDTO(); decimal dDiferenciaCostoEnvio = 0.0M; foreach (IEmpresaPaqueteria dtoPaqueteriaEconomica in lstEmpresaPaqueteria) { if (dtoPaqueteriaEconomica.cNombreEmpresa != this.dtoPaqueteria.cNombreEmpresa) { List <IMedioTransporte> lstMedioTransporte = dtoPaqueteriaEconomica.lstMediosTransportes.Where(w => w.cNombreMedioTransporte == this.dtoPaqueteria.cNombreMedioTransporte).ToList(); if (lstMedioTransporte.Any()) { foreach (IMedioTransporte mt in lstMedioTransporte) { dtoPaqueteriaSiguiente.cNombreEmpresa = dtoPaqueteriaEconomica.cNombreEmpresa; dtoPaqueteriaSiguiente.cNombreLugarOrigen = this.dtoPaqueteria.cNombreLugarOrigen; dtoPaqueteriaSiguiente.cNombreLugarDestino = this.dtoPaqueteria.cNombreLugarDestino; dtoPaqueteriaSiguiente.dDistancia = this.dtoPaqueteria.dDistancia; dtoPaqueteriaSiguiente.cNombreMedioTransporte = this.dtoPaqueteria.cNombreMedioTransporte; dtoPaqueteriaSiguiente.dtPedido = this.dtoPaqueteria.dtPedido; dtoPaqueteriaEconomica.AsignarNuevosDatos(ref dtoPaqueteriaSiguiente); dDiferenciaCostoEnvio = Math.Abs(this.dtoPaqueteria.dCostoEnvio - dtoPaqueteriaSiguiente.dCostoEnvio); if (string.IsNullOrWhiteSpace(dtoPaqueteriaMenorCosto.cNombreEmpresa)) { if (this.dtoPaqueteria.dCostoEnvio > dtoPaqueteriaSiguiente.dCostoEnvio) { dtoPaqueteriaMenorCosto = dtoPaqueteriaSiguiente; } } else { if (dtoPaqueteriaMenorCosto.dCostoEnvio > dtoPaqueteriaSiguiente.dCostoEnvio) { dtoPaqueteriaMenorCosto = dtoPaqueteriaSiguiente; } } } } } } dtoPaqueteriaMenorCosto.dCostoEnvio = dDiferenciaCostoEnvio; return(dtoPaqueteriaMenorCosto); }
/// <summary> /// Método que permite crear el DTO con los datos de la paquetería. /// </summary> /// <param name="_cNombreEmpresa">Nombre de la empresa.</param> /// <param name="_cNombreMedioTransporte">Nombre del medio de transporte.</param> /// <param name="_cNombreLugarOrigen">Nombre del lugar de origen.</param> /// <param name="_cNombreLugarDestino">Nombre del lugar de destino.</param> /// <param name="_dDistancia">Distancia recorrida.</param> /// <param name="_dCostoEnvio">Costo del envío.</param> /// <param name="_dtPedido">Fecha del pedido.</param> /// <returns>DTO con los datos de la paquetería.</returns> private PaqueteriaDTO CrearPaqueteriaDTO(string _cNombreEmpresa, string _cNombreMedioTransporte, string _cNombreLugarOrigen, string _cNombreLugarDestino, decimal _dDistancia, decimal _dCostoEnvio, DateTime _dtPedido) { PaqueteriaDTO dtoPaqueteria = new PaqueteriaDTO() { cNombreEmpresa = _cNombreEmpresa, cNombreMedioTransporte = _cNombreMedioTransporte, cNombreLugarOrigen = _cNombreLugarOrigen, cNombreLugarDestino = _cNombreLugarDestino, dDistancia = _dDistancia, dCostoEnvio = _dCostoEnvio, dtPedido = _dtPedido }; return(dtoPaqueteria); }
public void ObtenerMensaje_EnviarFechaEntregaIgualFechaActual_DevuelveMensajeErrorEnFuturo(string _cNombreEmpresa) { //Arrange //Variables necesarias para realizar las pruebas. PaqueteriaDTO paqueteriaDTO = CrearPaqueteriaDTO(_cNombreEmpresa, "China", "México", "2 horas", 450, new DateTime(2020, 02, 24, 12, 00, 00)); IObtenerMensaje SUT = new ObtenerMensajePaquete(paqueteriaDTO, new DateTime(2020, 02, 24, 12, 00, 00)); string cMensajeEsperado = $"Tu paquete ha salido de {paqueteriaDTO.cNombreLugarOrigen} y llegará a {paqueteriaDTO.cNombreLugarDestino} " + $"dentro de {paqueteriaDTO.cRangoTiempo} y tendrá un costo de ${paqueteriaDTO.dCostoEnvio} " + $"(Cualquier reclamación con {paqueteriaDTO.cNombreEmpresa})."; string cMensajeActual = string.Empty; //Act //Método que será sometido a pruebas. cMensajeActual = SUT.ObtenerMensaje(); //Assert //Validación de valores esperados. Assert.AreEqual(cMensajeEsperado, cMensajeActual); }
public void ObtenerMensaje_EnviarEmpresaConTransporteExistente_NoDevuelveMensajeError(string _cNombreEmpresa, string _cMedioTransporte) { //Arrange //Variables necesarias para realizar las pruebas. PaqueteriaDTO paqueteriaDTO = new PaqueteriaDTO() { cNombreEmpresa = _cNombreEmpresa, cNombreMedioTransporte = _cMedioTransporte }; IObtenerMensaje SUT = new ObtenerMensajeMedioTransporte(paqueteriaDTO, true); string cMensaje = string.Empty; //Act //Método que será sometido a pruebas. cMensaje = SUT.ObtenerMensaje(); //Assert //Validación de valores esperados. Assert.IsTrue(string.IsNullOrWhiteSpace(cMensaje)); }
public void ObtenerMensaje_EnviarEmpresaDHLConCostoEnvio_DevuelveMensajeError(string _cNombreEmpresa, int _iCostoEnvio) { //Arrange //Variables necesarias para realizar las pruebas. PaqueteriaDTO paqueteriaDTO = new PaqueteriaDTO() { cNombreEmpresa = _cNombreEmpresa, dCostoEnvio = Convert.ToDecimal(_iCostoEnvio) }; IObtenerMensaje SUT = new ObtenerMensajeEmpresaPaqueteriaEconomica(paqueteriaDTO); string cMensajeEsperado = $"Si hubieras pedido en {paqueteriaDTO.cNombreEmpresa} te hubiera costado ${paqueteriaDTO.dCostoEnvio} más barato."; string cMensajeActual = string.Empty; //Act //Método que será sometido a pruebas. cMensajeActual = SUT.ObtenerMensaje(); //Assert //Validación de valores esperados. Assert.AreEqual(cMensajeEsperado, cMensajeActual); }
public void ObtenerMensaje_EnviarEmpresaInexistente_DevuelveMensajeError(string _cNombreEmpresa) { //Arrange //Variables necesarias para realizar las pruebas. PaqueteriaDTO paqueteriaDTO = new PaqueteriaDTO() { cNombreEmpresa = _cNombreEmpresa }; IObtenerMensaje SUT = new ObtenerMensajeEmpresaPaqueteria(paqueteriaDTO, false); string cMensajeEsperado = $"La paquetería: {paqueteriaDTO.cNombreEmpresa} no se encuentra registrada en nuestra red de distribución."; string cMensajeActual = string.Empty; //Act //Método que será sometido a pruebas. cMensajeActual = SUT.ObtenerMensaje(); //Assert //Validación de valores esperados. Assert.AreEqual(cMensajeEsperado, cMensajeActual); }
public void ObtenerMensaje_EnviarEmpresaConTransporteInexistente_DevuelveMensajeError(string _cNombreEmpresa, string _cMedioTransporte) { //Arrange //Variables necesarias para realizar las pruebas. PaqueteriaDTO paqueteriaDTO = new PaqueteriaDTO() { cNombreEmpresa = _cNombreEmpresa, cNombreMedioTransporte = _cMedioTransporte }; IObtenerMensaje SUT = new ObtenerMensajeMedioTransporte(paqueteriaDTO, false); string cMensajeEsperado = $"{paqueteriaDTO.cNombreEmpresa} no ofrece el servicio de transporte {paqueteriaDTO.cNombreMedioTransporte}, te recomendamos cotizar en otra empresa."; string cMensajeActual = string.Empty; //Act //Método que será sometido a pruebas. cMensajeActual = SUT.ObtenerMensaje(); //Assert //Validación de valores esperados. Assert.AreEqual(cMensajeEsperado, cMensajeActual); }
public void BuscarEmpresaPaqueteriaEconomica_EnviarEmpresaFedexConBarco_DevuelveEmpresaDHLMasEconomicaConBarco() { //Arrange //Variables necesarias para realizar las pruebas. decimal dDistancia = 50000; decimal dCostoEnvio = CalcularCostoEnvio(dDistancia, 1, 50); PaqueteriaDTO paqueteriaDTO = CrearPaqueteriaDTO("Fedex", "Barco", "China", "México", dDistancia, dCostoEnvio, new DateTime(2020, 02, 24, 12, 00, 00)); IBuscadorEmpresaPaqueteria SUT = new BuscadorEmpresaPaqueteria(paqueteriaDTO); List <IEmpresaPaqueteria> lstEmpresaPaqueteria = new List <IEmpresaPaqueteria>(); lstEmpresaPaqueteria.Add(CrearEmpresaPaqueteriaDHL()); lstEmpresaPaqueteria.Add(CrearEmpresaPaqueteriaEstafeta()); lstEmpresaPaqueteria.Add(CrearEmpresaPaqueteriaFedex()); //Act //Método que será sometido a pruebas. paqueteriaDTO = SUT.BuscarEmpresaPaqueteriaEconomica(lstEmpresaPaqueteria); //Assert //Validación de valores esperados. Assert.AreEqual("DHL", paqueteriaDTO.cNombreEmpresa); }
public void BuscarEmpresaPaqueteriaEconomica_EnviarEmpresaEstafetaConTren_NoDevuelveOtraEmpresaMasEconomicaConTren() { //Arrange //Variables necesarias para realizar las pruebas. decimal dDistancia = 50000; decimal dCostoEnvio = CalcularCostoEnvio(dDistancia, 5, 20); PaqueteriaDTO paqueteriaDTO = CrearPaqueteriaDTO("Estafeta", "Tren", "China", "México", dDistancia, dCostoEnvio, new DateTime(2020, 02, 24, 12, 00, 00)); IBuscadorEmpresaPaqueteria SUT = new BuscadorEmpresaPaqueteria(paqueteriaDTO); List <IEmpresaPaqueteria> lstEmpresaPaqueteria = new List <IEmpresaPaqueteria>(); lstEmpresaPaqueteria.Add(CrearEmpresaPaqueteriaDHL()); lstEmpresaPaqueteria.Add(CrearEmpresaPaqueteriaEstafeta()); lstEmpresaPaqueteria.Add(CrearEmpresaPaqueteriaFedex()); //Act //Método que será sometido a pruebas. paqueteriaDTO = SUT.BuscarEmpresaPaqueteriaEconomica(lstEmpresaPaqueteria); //Assert //Validación de valores esperados. Assert.IsTrue(string.IsNullOrWhiteSpace(paqueteriaDTO.cNombreEmpresa)); }
/// <summary> /// Método que permite colorear el mensaje que se muestra en el sistema. /// </summary> /// <param name="_dtoPaquete">DTO con los datos del paquete.</param> /// <param name="_dtActual">Fecha del día de hoy.</param> /// <param name="_cMensaje">Texto del mensaje que se va a colorear.</param> public void ColorearMensajePaquete(PaqueteriaDTO _dtoPaquete, DateTime _dtActual, string _cMensaje) { if (!string.IsNullOrWhiteSpace(_cMensaje)) { ColorMensaje srvColorMensaje = new ColorMensaje(); IColorMensaje IColorMensaje; string cColorMensajePaquete = string.Empty; if (_dtoPaquete.dtEntrega < _dtActual) { IColorMensaje = new ColorMensajeVerde(); srvColorMensaje.AgregarColorMensaje(IColorMensaje); } else { IColorMensaje = new ColorMensajeAmarillo(); srvColorMensaje.AgregarColorMensaje(IColorMensaje); } srvColorMensaje.ColorearMensaje(_cMensaje); } }
/// <summary> /// Constructor de la clase. /// </summary> /// <param name="_dtoPaquete">DTO con los datos del paquete.</param> /// <param name="_dtActual">Fecha del día de hoy.</param> public ObtenerMensajePaquete(PaqueteriaDTO _dtoPaquete, DateTime _dtActual) { this.dtoPaquete = _dtoPaquete; this.dtActual = _dtActual; }
/// <summary> /// Constructor de la clase. /// </summary> /// <param name="_dtoPaquete">DTO con los datos del paquete.</param> /// <param name="_lExisteEmpresaPaqueteria">Valor boleano que indica si existe (true) o no (false) la empresa de paquetería.</param> public ObtenerMensajeEmpresaPaqueteria(PaqueteriaDTO _dtoPaquete, bool _lExisteEmpresaPaqueteria) { this.dtoPaquete = _dtoPaquete; this.lExisteEmpresaPaqueteria = _lExisteEmpresaPaqueteria; }
/// <summary> /// Constructor de la clase. /// </summary> /// <param name="_dtoPaqueteria">DTO con los datos de la paquetería.</param> public BuscadorEmpresaPaqueteria(PaqueteriaDTO _dtoPaqueteria) { this.dtoPaqueteria = _dtoPaqueteria; }
/// <summary> /// Método que permite aplicar el rastreo de paquetes. /// </summary> /// <param name="_lstContenidoArchivo">Lista con el contenido del archivo a leer.</param> public void AplicarRastreoPaquete(List <string> _lstContenidoArchivo) { //DTOs. PaqueteriaDTO dtoPaqueteria = new PaqueteriaDTO(); PaqueteriaDTO dtoPaqueteriaActualizado = new PaqueteriaDTO(); PaqueteriaDTO dtoPaqueteriaEconomica = new PaqueteriaDTO(); //Interfaces. IManejadorRangoTiempo IManejadorRangoTiempoAnios = new ManejadorRangoTiempoAnios(); IManejadorRangoTiempo IManejadorRangoTiempoBimestre = new ManejadorRangoTiempoBimestres(); IManejadorRangoTiempo IManejadorRangoTiempoMeses = new ManejadorRangoTiempoMeses(); IManejadorRangoTiempo IManejadorRangoTiempoSemanas = new ManejadorRangoTiempoSemanas(); IManejadorRangoTiempo IManejadorRangoTiempoDias = new ManejadorRangoTiempoDias(); IManejadorRangoTiempo IManejadorRangoTiempoHoras = new ManejadorRangoTiempoHoras(); IManejadorRangoTiempo IManejadorRangoTiempoMinutos = new ManejadorRangoTiempoMinutos(); IMedioTransporte ITransporteTren = new TransporteTren() { cNombreMedioTransporte = "Tren", dCostoKmPeso = 5, dVelocidadEntrega = 80 }; IMedioTransporte ITransporteAvion = new TransporteAvion() { dCostoKmPeso = 10, cNombreMedioTransporte = "Avion", dVelocidadEntrega = 600 }; IMedioTransporte ITransporteBarco = new TransporteBarco() { dCostoKmPeso = 1, cNombreMedioTransporte = "Barco", dVelocidadEntrega = 46 }; IEmpresaPaqueteria IEmpresaDHL = new EmpresaDHL() { cNombreEmpresa = "DHL", dMargenUtilidad = 40, lstMediosTransportes = new List <IMedioTransporte>() { ITransporteAvion, ITransporteBarco } }; IEmpresaPaqueteria IEmpresaEstafeta = new EmpresaEstafeta() { cNombreEmpresa = "Estafeta", dMargenUtilidad = 20, lstMediosTransportes = new List <IMedioTransporte>() { ITransporteTren } }; IEmpresaPaqueteria IEmpresaFedex = new EmpresaFedex() { cNombreEmpresa = "Fedex", dMargenUtilidad = 50, lstMediosTransportes = new List <IMedioTransporte>() { ITransporteBarco } }; IBuscadorEmpresaPaqueteria IBuscadorEmpresaPaqueteria; IObtenerMensaje IObtenerMensaje; IValidadorEmpresaPaqueteria IValidadorEmpresaPaqueteria; IValidadorMedioTransporte IValidadorMedioTransporte; IFormatoTexto IFormatoTexto = new FormatoTexto(); IConvertidorFecha IConvertidorFecha = new ConvertidorFecha(); ICreadorDirectorio ICreadorDirectorio = new CreadorDirectorio(); ICreadorSubdirectorio ICreadorSubdirectorio = new CreadorSubdirectorio(); ICreadorArchivo ICreadorArchivo = new CreadorArchivo(); IEscrituraArchivo IEscrituraArchivoPendiente = new EscrituraArchivo(); IEscrituraArchivo IEscrituraArchivoEntregado = new EscrituraArchivo(); //Atributos. DirectoryInfo directorioEmpresa = null; DirectoryInfo directorioPendiente = null; DirectoryInfo directorioEntregado = null; List <PaqueteriaDTO> lstPaqueteriaDTO = new List <PaqueteriaDTO>(); DateTime dtActual; TimeSpan tsDiferencia = new TimeSpan(); List <IEmpresaPaqueteria> lstEmpresaPaqueteria = new List <IEmpresaPaqueteria>(); string cMensaje = string.Empty; bool lExisteEmpresaPaqueteria = false; bool lExisteMedioTransporte = false; lstEmpresaPaqueteria.Add(IEmpresaDHL); lstEmpresaPaqueteria.Add(IEmpresaEstafeta); lstEmpresaPaqueteria.Add(IEmpresaFedex); ICreadorArchivo.lstArchivo = new List <string>() { "Años.txt", "Bimestre.txt", "Dias.txt", "Horas.txt", "Meses.txt", "Minutos.txt", "Semanas.txt" }; foreach (string cLineaArchivo in _lstContenidoArchivo) { if (!string.IsNullOrWhiteSpace(cLineaArchivo)) { string[] arrLineaArchivoSplit = cLineaArchivo.Split(','); dtActual = IConvertidorFecha.ConvertirFecha("2020/01/23 14:00:00"); dtoPaqueteria.cNombreLugarOrigen = arrLineaArchivoSplit[0]; dtoPaqueteria.cNombreLugarDestino = arrLineaArchivoSplit[1]; dtoPaqueteria.dDistancia = decimal.Parse(arrLineaArchivoSplit[2]); dtoPaqueteria.cNombreEmpresa = IFormatoTexto.AplicarFormato(arrLineaArchivoSplit[3]); dtoPaqueteria.cNombreMedioTransporte = IFormatoTexto.AplicarFormato(arrLineaArchivoSplit[4]); dtoPaqueteria.dtPedido = Convert.ToDateTime(arrLineaArchivoSplit[5]); IValidadorEmpresaPaqueteria = new ValidarEmpresaPaqueteria(); lExisteEmpresaPaqueteria = IValidadorEmpresaPaqueteria.ValidarExistenciaEmpresaPaqueteria(lstEmpresaPaqueteria.Select(s => s.cNombreEmpresa).ToList(), dtoPaqueteria.cNombreEmpresa); IObtenerMensaje = new ObtenerMensajeEmpresaPaqueteria(dtoPaqueteria, lExisteEmpresaPaqueteria); cMensaje = IObtenerMensaje.ObtenerMensaje(); ColorearMensajeError(cMensaje); IEmpresaPaqueteria IEmpresaPaqueteria = lstEmpresaPaqueteria.Where(w => w.cNombreEmpresa == dtoPaqueteria.cNombreEmpresa).FirstOrDefault(); if (string.IsNullOrWhiteSpace(cMensaje)) { IValidadorMedioTransporte = new ValidarMedioTransporte(); lExisteMedioTransporte = IValidadorMedioTransporte.ValidarExistenciaMedioTranporte(IEmpresaPaqueteria.lstMediosTransportes.Select(s => s.cNombreMedioTransporte).ToList(), dtoPaqueteria.cNombreMedioTransporte); IObtenerMensaje = new ObtenerMensajeMedioTransporte(dtoPaqueteria, lExisteMedioTransporte); cMensaje = IObtenerMensaje.ObtenerMensaje(); ColorearMensajeError(cMensaje); } if (string.IsNullOrWhiteSpace(cMensaje)) { directorioEmpresa = ICreadorDirectorio.CrearDirectorio(dtoPaqueteria.cNombreEmpresa); directorioPendiente = ICreadorSubdirectorio.CrearSubdDirectorio(directorioEmpresa, "Pendientes"); directorioEntregado = ICreadorSubdirectorio.CrearSubdDirectorio(directorioEmpresa, "Entregados"); ICreadorArchivo.CrearArchivo(directorioPendiente); ICreadorArchivo.CrearArchivo(directorioEntregado); IEmpresaPaqueteria.AsignarNuevosDatos(ref dtoPaqueteria); dtoPaqueteriaActualizado = dtoPaqueteria; tsDiferencia = (dtActual - dtoPaqueteriaActualizado.dtEntrega); IManejadorRangoTiempoAnios.AsignarSiguienteRangoTiempo(IManejadorRangoTiempoBimestre); IManejadorRangoTiempoBimestre.AsignarSiguienteRangoTiempo(IManejadorRangoTiempoMeses); IManejadorRangoTiempoMeses.AsignarSiguienteRangoTiempo(IManejadorRangoTiempoSemanas); IManejadorRangoTiempoSemanas.AsignarSiguienteRangoTiempo(IManejadorRangoTiempoDias); IManejadorRangoTiempoDias.AsignarSiguienteRangoTiempo(IManejadorRangoTiempoHoras); IManejadorRangoTiempoHoras.AsignarSiguienteRangoTiempo(IManejadorRangoTiempoMinutos); dtoPaqueteria.cRangoTiempo = IManejadorRangoTiempoAnios.ObtenerRangoTiempo(tsDiferencia);//Patrón de diseño: Cadena de Responsabilidad. IObtenerMensaje = new ObtenerMensajePaquete(dtoPaqueteriaActualizado, dtActual); cMensaje = IObtenerMensaje.ObtenerMensaje(); ColorearMensajePaquete(dtoPaqueteriaActualizado, dtActual, cMensaje);//Patrón de diseño: Estrategia. IBuscadorEmpresaPaqueteria = new BuscadorEmpresaPaqueteria(dtoPaqueteria); dtoPaqueteriaEconomica = IBuscadorEmpresaPaqueteria.BuscarEmpresaPaqueteriaEconomica(lstEmpresaPaqueteria); if (!string.IsNullOrWhiteSpace(dtoPaqueteriaEconomica.cNombreEmpresa)) { IObtenerMensaje = new ObtenerMensajeEmpresaPaqueteriaEconomica(dtoPaqueteriaEconomica); cMensaje = IObtenerMensaje.ObtenerMensaje(); Console.WriteLine(cMensaje); } if (dtoPaqueteriaActualizado.dtEntrega < dtActual) { IEscrituraArchivoEntregado.EscribirAchivo(directorioEntregado, cMensaje); } else { IEscrituraArchivoPendiente.EscribirAchivo(directorioEntregado, cMensaje); } } } } }
/// <summary> /// Constructor de la clase. /// </summary> /// <param name="_dtoPaquete">DTO con los datos del paquete.</param> public ObtenerMensajeEmpresaPaqueteriaEconomica(PaqueteriaDTO _dtoPaquete) { this.dtoPaquete = _dtoPaquete; }
/// <summary> /// Constructor de la clase. /// </summary> /// <param name="_dtoPaquete">DTO con los datos del paquete.</param> /// <param name="_lExisteMedioTransporte">Valor boleano que indica si existe (true) o no (false) el medio de transporte.</param> public ObtenerMensajeMedioTransporte(PaqueteriaDTO _dtoPaquete, bool _lExisteMedioTransporte) { this.dtoPaquete = _dtoPaquete; this.lExisteMedioTransporte = _lExisteMedioTransporte; }