Ejemplo n.º 1
0
        private ICostoEnvio ObtenerInstanciaCostoEnvioAereo(string _cIdentificadorEmpresa)
        {
            IEscalaPorKM     escalaPorKM     = new EscalaPorKMAereo();
            ICargoExtraEnvio cargoExtraEnvio = new CargoExtraEnvioAereo(escalaPorKM);
            IMargenUtilidad  margenUtilidad  = container.GetInstance <IMargenUtilidad>(_cIdentificadorEmpresa);
            ICostoEnvio      costoEnvio      = new CostoEnvioAereo(cargoExtraEnvio, margenUtilidad);

            return(costoEnvio);
        }
Ejemplo n.º 2
0
        //private readonly IContainer container;

        //public TiempoTrasladoFactory(IContainer _container)
        //{
        //    container = _container ?? throw new ArgumentNullException(nameof(_container));
        //}
        public ITiempoTraslado CrearInstancia(EnumMedioTransporte _enumMedioTransporte)
        {
            ITiempoTraslado tiempoTraslado = null;

            switch (_enumMedioTransporte)
            {
            case EnumMedioTransporte.Maritimo:

                break;

            case EnumMedioTransporte.Terrestre:

                break;

            case EnumMedioTransporte.Aereo:
                IEscalaPorKM                escalaPorKM                = new EscalaPorKMAereo();
                ITiempoExtraTraslado        tiempoExtraTraslado        = new TiempoExtraTrasladoAereo(escalaPorKM);
                IVelocidadEntregaTransporte velocidadEntregaTransporte = new VelocidadEntregaTransporte();
                tiempoTraslado = new TiempoTrasladoAereo(tiempoExtraTraslado, velocidadEntregaTransporte);
                break;
            }
            return(tiempoTraslado);
        }